あなたはそれを適切にテストする必要があります、私は私のユースケースを投稿しています、それがあなたの問題を解決することを願っています:)
紹介URL -
https://play.google.com/store/apps/details?id=com.mypackage&referrer=utm_source%3Dmobisoc%26utm_content%3D{transaction_id}%26utm_campaign%3D1
紹介を受けるためのコード -
public static final String KEY_UTM_SOURCE = "utm_source";
public static final String KEY_UTM_CONTENT = "utm_content";
public static final String KEY_UTM_CAMPAIGN = "utm_campaign";
public void onReceive(Context context, Intent intent) {
Utils.log("Referral Received");
try {
String referrer = intent.getStringExtra("referrer");
if (referrer != null && !referrer.equals("")) {
Utils.log("Referral Received - " + referrer);
String[] referrerParts = referrer.split("&");
String utmSource = getData(KEY_UTM_SOURCE, referrerParts);
String utmContent = getData(KEY_UTM_CONTENT, referrerParts);
String utmCampaign = getData(KEY_UTM_CAMPAIGN, referrerParts);
if (utmSource != null && utmSource.equals("mobisoc")) {
sendLogToMobisocServer(context, utmContent);
} else if (utmSource != null && utmSource.equals("app_share")) {
RawStorageProvider.getInstance(context).dumpDataToStorage(RaghuKakaConstants.REFFERAL_FOR, utmContent);
}
updateRKServerForReferral(context, utmSource, utmCampaign, utmContent);
}
} catch (Exception e) {
e.printStackTrace();
}
}
private String getData(String key, String[] allData) {
for (String selected : allData)
if (selected.contains(key)) {
return selected.split("=")[1];
}
return "";
}
次に、最も重要な部分のテストです。参照はローカルでテストできます。電話を接続するだけで、 を使用してシェル プロンプトを開きますadb shell
。そして、参照データをブロードキャストします。コマンド シーケンスの例を次に示します。
C:\Users\Neo\Desktop>adb shell
$ am broadcast -a com.android.vending.INSTALL_REFERRER -n com.mypackage/<className of your ReferralReceiver with package> --es "referrer" "utm_source%3Dmobisoc%26utm_content%3D{transaction_id}%26utm_campaign%3D1"
追加 -
https://play.google.com/store/apps/details?id=com.mypackage& referrer=utm_source%3Dmobisoc%26utm_content%3D{transaction_id}%26utm_campaign%3D1
私のリンクを見てください。ユーザーがそのリンクを介してプレイストアにアクセスし、アプリをインストールする場合。次に、アプリが初めて起動するときに、onReceive メソッドが自動的に起動され、referrer= の後にすべてのデータが取得されます。
ブロードキャスト -
$ am broadcast -a com.android.vending.INSTALL_REFERRER -n com.mypackage/<className of your ReferralReceiver with package> --es "referrer" "utm_source%3Dmobisoc%26utm_content%3D{transaction_id}%26utm_campaign%3D1"
テストのために、アプリをプレイストアに公開する必要はありません。onReceive の最初のポイントにデバッグ ポイントを配置し、デバッグ モードで起動し、投稿したコマンド シーケンスを実行するだけで、「referrer」タグの後にすべてのデータが取得されます。したがって、これにより、リファラー リンクの作成中に追加する必要があるデータを決定できます。
さらに説明が必要な場合はお知らせください:)