Как я могу отключить Adobe Reader, чтобы сохранить файл PDF в загрузках?

Я работаю с приложением для Android, которое я показываю PDF-файл во внешнем PDF-ридере. Я заметил, что когда я использую Adobe Reader, он сохраняет файл PDF в папке загрузок в моем телефоне каждый раз, когда я открываю PDF.

Есть ли какой-нибудь флаг или что-то, чтобы обойти эту проблему, чтобы пользователи не загружали карту?

Мой код:

package com.example.sbny.activities;

import java.io.*;
import java.util.ArrayList;
import java.util.Date;

import android.app.Activity;
import android.content.ActivityNotFoundException;
import android.content.ContentProvider;
import android.content.Intent;
import android.content.res.AssetManager;
import android.net.Uri;
import android.os.Bundle;
import android.os.Environment;
import android.util.Log;
import android.view.Window;
import android.widget.Toast;
import com.example.sbny.R;
import com.example.sbny.data.Coupon;
import com.example.sbny.data.Paper;
import com.example.sbny.database.DatabaseHelper;
import com.example.sbny.database.tables.AdcDB;
import com.example.sbny.database.tables.CouponDB;
import com.example.sbny.utils.FileUtil;
import android.support.v4.content.*;
import com.example.sbny.utils.Logger;

public class LasSollefteabladet extends Activity{

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        this.requestWindowFeature(Window.FEATURE_NO_TITLE);
        setContentView(R.layout.las_sollefteabladet);




        AdcDB adcDb = new AdcDB(DatabaseHelper.getInstance().getReadableDatabase());
        Paper paper = adcDb.getPaper();
        File paperFile = FileUtil.getFile(paper.getUrl());
        Uri contentUri = null;
        try
        {
            contentUri = FileProvider.getUriForFile(this, "com.example.sbny.fileprovider", paperFile);
        }
        catch (IllegalArgumentException e) {
            Logger.log("kan inte dela filen");
        }



        Intent intent = new Intent(Intent.ACTION_VIEW);
        intent.setDataAndType(contentUri,"application/pdf");
        intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
        intent.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION);
        intent.addFlags(Intent.FLAG_GRANT_WRITE_URI_PERMISSION);
        intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_WHEN_TASK_RESET);

        try
        {
            getApplicationContext().startActivity(intent);
        }
        catch (ActivityNotFoundException e)
        {
            Toast.makeText(LasSollefteabladet.this, "NO Pdf Viewer", Toast.LENGTH_SHORT).show();
        }



    }



    @Override
    protected void onRestart()
    {
        super.onRestart();
        Intent nextScreen = new Intent(getApplicationContext(), ManadensSollefteablad.class);
        nextScreen.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
        startActivity(nextScreen);
        Logger.log("onRestart");
    }

}

2 ответа

Вы не можете скрыть приложение от всплывающего предложения, потому что этот фильтр намерений определен в этом конкретном приложении, которое перечислено во всплывающем предложении.

Вы не можете изменить настройки Android приложения по умолчанию, используемого для открытия файлов. Единственное, что вы можете сделать, - это направить пользователей на изменение программы по умолчанию для открытия PDF-файлов. Хотя я бы не особо задумывался об интеллекте пользователей... Не проще ли удалить эти загруженные карты?

Другие вопросы по тегам