6

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

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

但问题是所有应用商店,尤其是亚马逊应用商店(在 Kindle 中),也可以处理这种意图吗?
我知道以下 URI 必须将用户重定向到亚马逊应用商店:

http://www.amazon.com/gp/mas/dl/android?p=package

但是,我不想拥有两个二进制文件,一个用于普通 Android,另一个用于 Amazon。

4

1 回答 1

3

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

所以你会有类似的东西

boolean AMAZON_APK=true;
boolean ANDROID_APK =false;
....

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

if(AMAZON_APK)
  //launch amazon intent
if(ANDROID_APK)
  //launch android market intent
....

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

于 2012-06-25T10:23:53.480 回答