Android 如何接受特定于应用程序包名称的市场意向

Android 如何接受特定于应用程序包名称的市场意向,android,android-intent,intentfilter,Android,Android Intent,Intentfilter,我一直在研究这个问题,但我似乎只发现了相反的情况,即您希望启动意图,以便在Play Store上查看您的应用程序。我想知道是否可以接受URI的意图,例如(market://details?id=com.my.packagename)仅当URI包含应用程序的包名时 我们的想法是在网站上有一个链接,可以启动应用程序(如果已经安装),也可以返回启动Play Store,打开应用程序的下载页面(如果没有安装) 我尝试了几种意图过滤器与market方案和my.packagename数据的组合,以及诸如此类

我一直在研究这个问题,但我似乎只发现了相反的情况,即您希望启动意图,以便在Play Store上查看您的应用程序。我想知道是否可以接受URI的意图,例如(
market://details?id=com.my.packagename
)仅当URI包含应用程序的包名时

我们的想法是在网站上有一个链接,可以启动应用程序(如果已经安装),也可以返回启动Play Store,打开应用程序的下载页面(如果没有安装)


我尝试了几种意图过滤器与
market
方案和
my.packagename
数据的组合,以及诸如此类的东西,但应用程序没有显示为接收器。

我认为这是不可能的。如果您制定了自定义方案,例如
my scheme://
,则必须已安装您的应用程序才能处理该方案。最重要的是浏览器(Chrome、默认浏览器、Firefox…):它们将如何处理这种定制方案?为了安全起见,他们可能会忽略它

除此之外,“市场://方案”现在已被弃用(),谷歌已切换回正常的HTTPS格式:

https://play.google.com/store/apps/details?id=your.package.name

我想这是不可能的。如果您制定了自定义方案,例如
my scheme://
,则必须已安装您的应用程序才能处理该方案。最重要的是浏览器(Chrome、默认浏览器、Firefox…):它们将如何处理这种定制方案?为了安全起见,他们可能会忽略它

除此之外,“市场://方案”现在已被弃用(),谷歌已切换回正常的HTTPS格式:

https://play.google.com/store/apps/details?id=your.package.name

实现这一点的方法是编写一个小型web服务,例如使用Google App Engine

你的网站应该链接到,你的应用程序可以截取。位于yournamehere.appspot.com的web服务只需将重定向发送到market://... (或者……如果你愿意)


这样,当您的应用程序安装后,它将拦截链接点击。如果不是,您的web服务将重定向到market应用程序。

方法是编写一个小型web服务,例如使用Google app Engine

你的网站应该链接到,你的应用程序可以截取。位于yournamehere.appspot.com的web服务只需将重定向发送到market://... (或者……如果你愿意)

这样,当您的应用程序安装后,它将拦截链接点击。如果不是,您的web服务将重定向到market应用程序