4

我计划不仅在 Google Play 上分发我的应用程序,而且在其他几个市场上分发,例如 Opera Mobile Store、Yandex Store、Amazon App Store。对于“评分”按钮,我需要链接到商店页面。是否可以查明使用哪个市场下载我的应用程序?

当然,我可以为每个市场编译单独的 APK,但我想制作一个通用 APK。OpenIAB 库解决了不同的 IAP API,但现在我遇到了链接到市场的问题。

4

1 回答 1

5

一般来说,如果您使用一些广告来分发您的应用程序,您可以使用 Google 的一些工具:

简而言之,您需要将 Google Analitics 插入您的应用程序(当然,如果您还没有使用它),并使用它调用的工具:

活动衡量

然后您可以签署分期付款的接收方:

<receiver
        android:name=".system.RefferReceiver"
        android:exported="true">
        <intent-filter>
            <action android:name="com.android.vending.INSTALL_REFERRER" />
        </intent-filter>
    </receiver>

您可以处理接收器内部的逻辑:

public class RefferReceiver extends BroadcastReceiver {

@Override
public void onReceive(final Context context, Intent intent) {
    String referrer = intent.getStringExtra("referrer");
    //do some logic
}

编辑: 对不起,我没有正确阅读你的问题。如果您只想了解应用的市场来源,您可以使用:

 String installerMarket = getPackageManager().getInstallerPackageName("your_package_name");
    if (installerMarket == null){
        //do some default case
    }
    else if ("com.android.vending".equals(installerMarket)) {
        //link to google play
    } else  if ("com.amazon.venezia".equals(installerMarket)){
        //link to amazon
    } else if //you got the idea, you need to know the name of every market  store installer
    }
于 2015-07-02T09:04:36.880 回答