如何通过ACTION_SEND Intent与各种应用共享HTML文件

时间:2011-09-09 12:23:17

标签: android

我正在尝试通过“分享”按钮将HTML文件发送到Android上的Google文档。我目前使用的代码基本上是:

Intent share = new Intent(Intent.ACTION_SEND);
share.setType(mimeType);
share.putExtra(Intent.EXTRA_STREAM, Uri.parse(file.getPath()));
startActivity(Intent.createChooser(share, "Some Title");

“file”的类型为File,并指向某处存储的某个文件。我通过使用MimeTypeMap.getMimeTypeFromExtension()方法得到Mime类型(我不确定它应该是什么,但我很确定我解析为text / html)。

以上代码适用于与Dropbox共享文件,但使用Google文档时,我会收到上传失败的通知。此外,默认电子邮件客户端仅强制关闭,附件因GMail而失败。

我正在使用的设备上的默认文件管理器(ASUS Transformer运行3.2)也有“共享”选项,一切正常,使用相同的文件(Dropbox,GDocs,Mail),所以我很遗憾什么,但我不知道是什么。任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:1)

在其他地方找到答案,有点related threads。这行代码: share.putExtra(Intent.EXTRA_STREAM, Uri.parse(file.getPath()));

需要像这样改变:

share.putExtra(Intent.EXTRA_STREAM, Uri.parse("file://" + file.getPath()));

我不确定Dropbox做什么不同以接受它,但其余的都没有。