Как открыть PDF-файл с помощью Intent с SD-карты

Я пытаюсь запустить Intent, чтобы открыть pdf-файл в папке моих ресурсов в моем приложении. Я прочитал десятки сообщений, но все еще застрял. По-видимому, мне нужно сначала скопировать pdf на SD-карту, а затем запустить Intent. Это все еще не работает.

Я думаю, что проблема заключается в запуске 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

За исключением случаев, когда этот код запускается, я получаю следующее всплывающее уведомление (не создается моим приложением):

«Неподдерживаемый тип документа»

Но я могу открыть документ вручную через установленное приложение для просмотра PDF. Любая помощь будет очень признательна.

48
задан Nikhil Lamba 10 May 2012 в 07:55
поделиться