Вот решение, которое я придумал, используя приведенный ниже совет от 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 */}
}