前提・実現したいこと
AndroidでダウンロードしたPDFを外部アプリ(ブラウザ)などで表示したい。
発生している問題・エラーメッセージ
filesフォルダにdocumentというフォルダを作成しその下にダウンロードしたPDFファイルを保存するところまでは確認できたのですが、その後、PDFの表示ができません。(エミュレータでfiles/documemtにファイルがあることは確認済み)
下記のコードだとエラー処理の方に入っています。
該当のソースコード
Java
1File file = new File(getApplicationContext().getFilesDir()+"/PDF.pdf"); 2if (file.exists()) { 3 try{ 4 Uri uri = FileProvider.getUriForFile( 5 getApplicationContext(), 6 BuildConfig.APPLICATION_ID + ".fileprovider", 7 file); 8 Intent intent = new Intent(Intent.ACTION_VIEW); 9 intent.setDataAndType(uri, "application/pdf"); 10 intent.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION); 11 startActivity(intent); 12 }catch(ActivityNotFoundException e){ 13 Log.d("error", "えらーです"); 14 } 15}
試したこと
ここを参考にpathsファイルとmanifestファイルへの追記は下記のように行ったのですがPDFの表示ができませんでした。
xml:res/xml/paths.xml
1<?xml version="1.0" encoding="utf-8"?> 2<paths> 3 <files-path name="document" path="document/" /> 4</paths>
xml:AndroidManifest.xml
1<provider 2 android:name="android.support.v4.content.FileProvider" 3 android:authorities="${applicationId}.fileprovider" 4 android:exported="false" 5 android:grantUriPermissions="true"> 6 <meta-data 7 android:name="android.support.FILE_PROVIDER_PATHS" 8 android:resource="@xml/paths"/> 9</provider>
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/12/04 12:51