Я пытаюсь запустить Intent
, чтобы открыть PDF-файл внутри папки моих ресурсов в моем приложении. Я читал десятки сообщений, но я все еще застрял. По-видимому, мне нужно скопировать pdf-файл на SD-карту, а затем запустить Intent
. Это все еще не работает.Как открыть PDF с помощью намерения с SD-карты
Я думаю, что проблема заключается в Intent
запуске, так что я просто пытаюсь открыть файл «example.pdf», который я скопировал на SD-карту, используя этот код:
Log.w("IR", "TRYING TO RENDER: " + Environment.getExternalStorageDirectory().getAbsolutePath()+"/example.pdf");
Intent intent = new Intent(Intent.ACTION_VIEW);
intent.setDataAndType(Uri.parse(Environment.getExternalStorageDirectory().getAbsolutePath()+"/example.pdf"), "application/pdf");
intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
try {
startActivity(intent);
Log.e("IR", "No exception");
}
catch (ActivityNotFoundException e) {
Log.e("IR", "error: " + e.getMessage());
Toast.makeText(InvestorRelations.this,
"No Application Available to View PDF",
Toast.LENGTH_SHORT).show();
}
Это мой выход LogCat ,
05-10 10:35:10.950: W/IR(4508): TRYING TO RENDER: /mnt/sdcard/example.pdf
05-10 10:35:10.960: E/IR(4508): No exception
исключением случаев, когда этот код запускается, я получаю следующее Toast (не производится моим приложением)
«Не поддерживаемый тип документа»
Но я могу открыть документ вручную через Приложение для просмотра PDF. Любая помощь была бы чрезвычайно оценена.
Спасибо за окончание моего поиска. Почему это работает, а не анализирует URL-адрес из строки? –
Как я могу перейти на конкретную страницу? там в любом случае? –
@PratikButani. Поскольку вы используете стороннее приложение pdf для открытия pdf-файла, вы не можете обрабатывать навигацию по страницам в pdf для любой конкретной страницы. – user370305