6

次のリンクで説明されているようにインテントを送信すると、ユーザーがGooglePlayにリダイレクトされることがわかっています。

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

しかし、問題は、すべてのアプリストア、特にAmazon App Store(Kindle)がこのインテントも処理できることです。
次のURIがユーザーをAmazonアプリストアにリダイレクトする必要があることを知っています。

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

ただし、通常のAndroid用とAmazon用の2つのバイナリは必要ありません。

4

1 に答える 1

3

一般的な方法はありません。ここで行うことは、コードに一連のフラグを設定することです。

だからあなたは次のようなものを持っているでしょう

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

次に、Amazonに公開する場合と、Android Playに公開する場合に、適切な値を設定します。マーケットを立ち上げる前のコードでは、一連のifステートメントでフラグをチェックし、特定のマーケットがサポートするものに応じて適切なインテントを立ち上げます。いくつかの変数を変更するだけでよいので、これは大したことではありません。

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

ここでより完全な例を見ることができます。インテントを使用してAmazonAppStore検索を実行し、開発者名でフィルタリングするにはどうすればよいですか?また、一部の市場が市場の意図などをサポートしていない場合は、モバイルWebサイトへのリンクを起動し、そこからユーザーにアプリを紹介することができます。

于 2012-06-25T10:23:53.480 に答える