У меня есть следующий код, чтобы открыть PDF для моего приложения Android:
Uri uri = FileProvider.getUriForFile(getActivity(),
BuildConfig.APPLICATION_ID + ".provider", downloadedFile);
Intent intent = new Intent(Intent.ACTION_VIEW);
intent.setDataAndType(uri, "application/pdf");
intent.setFlags(Intent.FLAG_ACTIVITY_NO_HISTORY);
intent.setFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION);
Intent intent1 = Intent.createChooser(intent, "Open With");
try {
startActivity(intent1);
} catch (ActivityNotFoundException e) {
Toast.makeText(getContext(), "No PDF viewer found",
Toast.LENGTH_SHORT).show();
}
Это работает для программ просмотра PDF "Drive PDF Viewer", "Amazon Kindle", но для Adobe Acrobat не открывается.
Пример pdf-файла: 1808.10867v1.pdf - может ли причиной быть имя файла?
Edit:
Я попытался использовать 1808_10867v1.pdf в качестве имени файла, и оно все равно не открывалось.