Android特定的MIME类型列表?
我被要求在我的一个安卓应用程序中添加一个“共享”方法,允许用户通过1)Facebook 2)短信和3)电子邮件进行共享 在研究过程中,我发现要允许用户从“消息传递”应用程序中进行选择,我需要创建以下意图:Android特定的MIME类型列表?,android,mime-types,Android,Mime Types,我被要求在我的一个安卓应用程序中添加一个“共享”方法,允许用户通过1)Facebook 2)短信和3)电子邮件进行共享 在研究过程中,我发现要允许用户从“消息传递”应用程序中进行选择,我需要创建以下意图: Intent messageIntent = new Intent(Intent.ACTION_SEND); messageIntent.putExtra(Intent.EXTRA_SUBJECT, title); messageIntent.putExtra(Inte
Intent messageIntent = new Intent(Intent.ACTION_SEND);
messageIntent.putExtra(Intent.EXTRA_SUBJECT, title);
messageIntent.putExtra(Intent.EXTRA_TEXT, content);
messageIntent.setType("vnd.android-dir/mms-sms");
// title and content set elsewhere...
这种方式很有效,虽然我的列表中也有电子邮件客户
我的问题:
ACTION\u SEND
用于通过MIME类型共享内容。任何应用程序都可以为任何给定的MIME类型提供ACTION\u SEND
支持,因为任何应用程序的开发人员都可以编写他们想要的内容。任何给定的应用程序是“消息传递客户端”、“邮件客户端”还是其他应用程序都取决于最终用户。你没有办法了解用户的想法,也没有任何法律手段阻止其他程序员编写他们想要的东西
现在,有各种各样的脚本kiddie黑客,通过应用程序ID(又称包名)将共享列表限制在某些应用程序中。然而,虽然只有一个Facebook(尽管我似乎记得他们有一些应用程序),但有很多短信和电子邮件应用程序,如果不是不可能的话,你很难列出所有这些应用程序的列表,更不用说长期维护这些应用程序了
我的strong建议是有效地格式化您的内容,并允许用户使用他们希望的应用程序共享这些内容。这是我的直觉告诉我的。不幸的是,这些特性/用户界面是由“上级”(即项目经理/设计师)提供给我的。我会告诉他们这不是Android的方式,看看他们怎么说。