在Android中将用户重定向到App Store

Bea*_*ear 5 android android-intent

众所周知,我们可以按照以下链接中的描述发送意图,然后将用户重定向到Google Play.

Uri marketUri = Uri.parse("market://details?id=" + packageName);
Intent marketIntent = new Intent(Intent.ACTION_VIEW, marketUri);
startActivity(marketIntent);
Run Code Online (Sandbox Code Playgroud)

但问题是所有的应用商店,特别是亚马逊App Store(在Kindle中),也可以处理这个意图吗?
我知道以下URI必须将用户重定向到amazon app store:

http://www.amazon.com/gp/mas/dl/android?p=package
Run Code Online (Sandbox Code Playgroud)

但是,我不希望有两个二进制文件,一个用于普通的Android,另一个用于亚马逊.

mbw*_*asi 3

没有通用方法,这里要做的就是在代码中设置一堆标志。

所以你会有类似的东西

boolean AMAZON_APK=true;
boolean ANDROID_APK =false;
....
Run Code Online (Sandbox Code Playgroud)

然后,当您想要发布到 amazon 以及想要发布到 Android Play 时,您可以设置适当的值。在启动市场之前,在代码中,您将使用一堆 if 语句检查标志,并根据特定市场支持的内容启动适当的意图。这并不是什么大问题,因为您只需更改一些变量。

if(AMAZON_APK)
  //launch amazon intent
if(ANDROID_APK)
  //launch android market intent
....
Run Code Online (Sandbox Code Playgroud)

您可以在此处查看更完整的示例。如何使用 Intent 进行 Amazon App Store 搜索并按开发者名称进行过滤?此外,如果某些市场不支持市场意图等任何内容,您可以启动指向移动网站的链接,并将用户从那里引导至您的应用程序。