Как я могу отключить 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-файлов. Хотя я бы не особо задумывался об интеллекте пользователей... Не проще ли удалить эти загруженные карты?