У меня есть вопрос об андроиде FileProvider. Я хочу сохранить PDF-документ и открыть его с помощью программы по умолчанию. Я не хочу сохранять его во внешнем хранилище.
После того, как я успешно сохранил pdf файл в FilesDirectory/export/temp.pdf,
Я пытался создать URI с помощью FileProvider.getUriForFile().
File path = new File(getFilesDir(), "export");
File pdf = new File(path + File.separator + "temp.pdf");
pdf.getParentFile().mkdirs();
if (!pdf.exists())
pdf.createNewFile();
Uri uri = FileProvider.getUriForFile(getApplicationContext(), "?", pdf);
Вопрос: Что мне нужно передать в качестве второго параметра "Власть" - расположение моих файлов, класс, который может предоставить URI-разрешения или что-то еще? Все, что я пробовал, приводило к исключению IllegalArgumentException или исключению NullPointerException. Мой FileProvider (XML):
<provider
android:name="android.support.v4.content.FileProvider"
android:authorities="com.example.myApp.myActivity"
android:exported="false"
android:grantUriPermissions="true">
<meta-data
android:name="android.support.FILE_PROVIDER_PATHS"
android:resource="@xml/file_path"/>
</provider>
ссылка Файл:
<?xml version="1.0" encoding="utf-8"?>
<paths xmlns:android="http://schemas.android.com/apk/res/android">
<cache-path name="pdfTemplates" path="export/" />
</paths>