私はほとんど多くの同様のリンクを見つけました-そしてどれも役に立ちませんでした
- Gmail で /storage/emulated/0/Android/data/myapppackage/cache/..pdf からファイルを取得できない
- /storage/emulated/0/download/..pdf に同じファイルをダウンロードすれば添付可能
コード -
protected void sendEmail(Context ctx, String filePath){
Intent emailIntent = new Intent(Intent.ACTION_SEND);
emailIntent.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION);
Uri uri = Uri.fromfile(new File(filePath)));
emailIntent.setType("application/pdf");
emailIntent.putExtra(Intent.EXTRA_STREAM, uri);
emailIntent.putExtra(Intent.EXTRA_SUBJECT, "PDF"));
ctx.startActivity(emailIntent);
}
file_provder.xml
<?xml version="1.0" encoding="utf-8"?>
<paths xmlns:android="http://schemas.android.com/apk/res/android">
<cache-path name="cache" path="/" />
<files-path name="files" path="/" />
</paths>
次のリンクを試してみましたが、これはほぼ完璧に思えますが、私には機能しません - FileProvider と Intent を介して GMail にキャッシュ ファイルを添付すると機能しません