使用intent共享私有文件

时间:2013-01-13 17:37:49

标签: android android-intent

我正在尝试使用intent.putExtra(Intent.EXTRA_STREAM, Uri.fromFile(file));文件位于路径data/data/my.package.name/folder/fileName中的内容来共享文件,每当我尝试使用Gmail应用程序发送文件时,我都会收到错误。< / p>

我认为这是由于文件的读取权限,我的问题是如何赋予文件的intent访问权限,而不必将文件复制到另一个位置。

由于

2 个答案:

答案 0 :(得分:2)

试试这可能对你有帮助。

您正尝试使用intents将该文件作为电子邮件附件发送。

该文件为空的原因是电子邮件应用程序无法访问data/data/my.package.name/folder/fileName中的文件,原因是Androids安全模型(data/data/my.package.name/folder/fileName目录是您应用的私有目录)。 / p>

要在android中的电子邮件中附加文件,您必须先将文件保存在外部存储器中。

答案 1 :(得分:1)

共享内容的标准机制是通过ContentProvider。 http://developer.android.com/training/enterprise/app-compatibility.html#sharing_files