我使用ACTION_VIEW的意图在Android上查看照片,但它没有打开图库在查看其他图片时的任何选项(特别是分享)。有人知道如何让它有这些选择吗?
Intent intent = new Intent(Intent.ACTION_VIEW);
intent.setDataAndType(location, mimeType);
intent.setFlags(Intent.FLAG_ACTIVITY_NO_HISTORY);
这些问题类似,但没有答案
Intent Action_View for image opens gallery with no delete option
Android image intent : sharing/editing options
而有趣的是这两个问题都谈到了那些可用的选项......所以我不确定我做错了什么。
答案 0 :(得分:0)
但它没有打开图库在查看其他图片时的任何选项(特别是分享)
有大约20亿台Android设备,由数千种设备型号组成。其中许多设备型号都会附带一系列支持Intent
结构的活动,许多实际设备都会有其他支持它的应用程序,由用户安装。没有人必须提供“分享”选项。
任何人都知道如何让它有这些选择吗?
严格地说,你不能。
这些图像查看应用程序是由开发人员编写的,这些开发人员可以随心所欲。也许内部使用的活动与ACTION_VIEW
不同。也许它是相同的活动,但它们仅在内部达到活动时提供这些选项(而不是通过ACTION_VIEW
来自外部应用程序)。也许他们只共享某些Uri
方案或MIME类型。也许他们不分享图像,因为它是星期二。
而且,根据用户拥有并选择使用的图像查看应用程序,不同设备上的行为会有所不同。
如果您想拥有“分享”选项,将其放入您的应用。如果您希望该共享选项位于显示图像的屏幕上,会在您的应用中显示图像。现在,您将所有这些应用程序委托给第三方应用程序,这些应用程序不必执行您想要的操作。