【问题标题】:How can I do an Amazon App Store search using an Intent and filter it by developer name?如何使用 Intent 进行 Amazon App Store 搜索并按开发者名称过滤?
【发布时间】:2011-11-22 23:55:42
【问题描述】:

有没有办法在 Kindle Fire 上启动 Intent 以导致 AppStore 应用打开并显示某个开发者的所有应用?例如,在安装了 Android Market 的手机/平板电脑上,我可以这样做:

           Intent otherApps = new Intent(Intent.ACTION_VIEW,Uri.parse("market://search?q=pub:\"" + developerName + "\""));
           activity.startActivity(otherApps);

并在 Android 电子市场中显示我的所有应用。我可以通过亚马逊应用商店做到这一点吗?如果是这样,怎么做?我已经用其他看似有效的名称(例如“ZeptoLab”)尝试了该 Intent,但没有得到任何过滤。它只是让我进入完全未经过滤的 App Store。使用“market://details?id=package.name”查找特定应用似乎确实有效。

【问题讨论】:

    标签: android android-intent amazon google-play kindle


    【解决方案1】:

    来自https://developer.amazon.com/help/faq.html#Marketing

    为了营销目的指向您的应用,请使用 URL http://www.amazon.com/gp/mas/dl/android?p=packagename(其中 packagename 是您的应用包名称)。

    如果您想链接到 Amazon Appstore 上所有应用程序的列表,请使用 URL http://www.amazon.com/gp/mas/dl/android?p=packagename&showAll=1

    例如http://www.amazon.com/gp/mas/dl/android?p=com.rovio.angrybirds&showAll=1

    所有这些都可以在这里看到:https://developer.amazon.com/sdk/in-app-purchasing/sample-code/deeplink.html

    更新(深度链接):

    amzn://apps/android?p=
    

    【讨论】:

      【解决方案2】:

      最好的方法是查看their website(或here),目前声明如下:

      【讨论】:

        【解决方案3】:

        亚马逊现在支持他们自己的深层链接:https://developer.amazon.com/appsandservices/apis/earn/in-app-purchasing/docs/deeplink

        例如您可以使用 uri amzn://apps/android?p=my.package.name 开始一个意图。

        【讨论】:

          【解决方案4】:

          来自 - https://developer.amazon.com/help/tuabg.html

          对于应用内广告或基于移动浏览器的链接,请: 使用此链接结构:http://www.amazon.com/gp/mas/dl/android?p=com.example.package/ref=mas_pm_app_name

          如需指向我们美国商店中您的所有应用列表的链接,请: 使用这个链接结构:http://www.amazon.com/gp/mas/dl/android?p=com.example.package&showAll=1

          现在,您认为亚马逊会在他们自己的网站上正确显示此内容,但我以粗体显示的第一部分是错误的。实际上应该是这样的:

          http://www.amazon.com/gp/mas/dl/android?p=com.example.package&ref=mas_pm_app_name

          注意包名和引用之间的 & 而不是 /。希望这对其他人有所帮助,因为这个小细节浪费了我的一些时间......

          【讨论】:

          • 我联系了亚马逊,他们在文档中解决了这个问题
          • 也不对。例如,如果您居住在德国并且您访问 .com 网站,那么该应用将被列为“由于地理限制而无法使用”
          【解决方案5】:

          这是我使用 chiuki 的以下建议提出的解决方案:

          我在我的一个资源文件中添加了一个布尔值,指示该应用程序是在 Amazon AppStore 还是 Android Market 中发布。是的,每当你发布你的应用程序时,你都必须更改它,但想想它有点像在发布时记得将 debuggable 设置为“false”。把它放在检查清单上。它是这样的:

          在资源文件中:

           <bool name="app_is_in_amazon_app_store">true< /bool>
          

          在代码中:

          public class SomeUtil
          {
          
          
           private static Boolean isInAmazonAppStore;
          
          
           public static boolean isInAmazonAppStore(Activity activity)
           {
          
                 if (isInAmazonAppStore == null) 
                  {
                     isInAmazonAppStore =   activity.getResources().getBoolean(R.bool.app_is_in_amazon_app_store) ;
                  }
          
                 return isInAmazonAppStore;
          
           }
          
              public static void startOtherMarketAppsActivity(Activity activity)
              {
                  try
                  {
                      Intent otherApps = null;
          
                      if (isInAmazonAppStore(activity))
                      {
                        otherApps = new Intent(Intent.ACTION_VIEW,Uri.parse("http://www.amazon.com/gp/mas/dl/android?p=" + getPackageNameInAmazonAppStore(activity) + "&showAll=1")); 
                      }
                      else
                      {
                        otherApps = new Intent(Intent.ACTION_VIEW,Uri.parse("market://search?q=pub:\"" + getAndroidDeveloperName(activity) + "\""));
                      }
          
                      activity.startActivity(otherApps);
                  }
                  catch(Exception ex){  /* error handling */} 
          }
          

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 2012-04-21
            • 2016-11-21
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2019-10-06
            • 2021-12-18
            • 1970-01-01
            相关资源
            最近更新 更多