使用文件发送邮件至 Android 11 的操作

Lor*_*ani 4 email android file android-intent

我在使用 Android 11 与 Gmail 应用程序或其他电子邮件发送器共享“.zip”文件时遇到问题。

Intent email_intent = new Intent(Intent.ACTION_SENDTO, Uri.fromParts("mailto",mailTo, null));
email_intent.putExtra(Intent.EXTRA_SUBJECT, "Log App");
email_intent.putExtra(Intent.EXTRA_TEXT,"");
email_intent.putExtra(Intent.EXTRA_STREAM, FileProvider.getUriForFile(getApplicationContext(), BuildConfig.APPLICATION_ID+".provider",new File(log)));
startActivity(Intent.createChooser(email_intent, getString(R.string.invia_tramite)));
Run Code Online (Sandbox Code Playgroud)

我没有使用 requestLegacy 等,而是使用 getExternalFilesDir。11 的较低版本可以使用。

请拯救我的日子:)

谢谢

Lor*_*ani 11

通过替换解决:

Intent email_intent = new Intent(Intent.ACTION_SEND);
email_intent.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION);
Run Code Online (Sandbox Code Playgroud)

<manifest> </manifest>放入:

<queries>
    <intent>
        <action android:name="android.intent.action.SEND"/>
        <data android:mimeType="*/*" />
    </intent>
</queries>
Run Code Online (Sandbox Code Playgroud)