我正在尝试使用类似intent.putExtra(Intent.EXTRA_STREAM, Uri.fromFile(file));
文件位于路径中的文件共享文件data/data/my.package.name/folder/fileName
,每当我尝试使用 Gmail 应用程序发送文件时,我都会收到错误消息。
我认为这是由于文件的读取权限,而我的问题是如何授予对文件的意图访问权限,而不必将文件复制到另一个位置。
谢谢
我正在尝试使用类似intent.putExtra(Intent.EXTRA_STREAM, Uri.fromFile(file));
文件位于路径中的文件共享文件data/data/my.package.name/folder/fileName
,每当我尝试使用 Gmail 应用程序发送文件时,我都会收到错误消息。
我认为这是由于文件的读取权限,而我的问题是如何授予对文件的意图访问权限,而不必将文件复制到另一个位置。
谢谢
试试这个可能对你有帮助。
您正在尝试使用 将文件作为电子邮件附件发送intents
。
文件为空的原因是data/data/my.package.name/folder/fileName
由于 Android 的安全模型(该data/data/my.package.name/folder/fileName
目录对您的应用程序是私有的),电子邮件应用程序无法访问 中的文件。
要在 android 中的电子邮件上附加文件,您必须先将文件保存在外部存储器中。
共享内容的标准机制是通过 ContentProvider。 http://developer.android.com/training/enterprise/app-compatibility.html#sharing_files