アプリへの招待を受け取った後、招待された人はリンクをクリックします。アプリが既にインストールされているかどうかに基づいて、彼はアプリ ストアに誘導され、最終的に AppInite リンクを処理する Actiity に移動します。
私のディープリンクは次のようになります: http://example.com/app-invite/
user_id は登録ユーザーの ID です (バックエンド サーバー内)。ユーザーの正しいIDを取得できます。
ディープリンクを扱うコードです。
private void processReferralIntent(Intent intent) {
String invitationId = AppInviteReferral.getInvitationId(intent);
String deepLink = AppInviteReferral.getDeepLink(intent);
String userId = deepLink.substring(deepLink.lastIndexOf("/") + 1);
Utility.displayToast("userid " + userId);
// Handle the deep link. For example, open the linked
// content, or apply promotional credit to the user's
// account.
Log.d(TAG, "Found Referral: " + invitationId + ":" + deepLink);
((TextView) findViewById(R.id.deep_link_text))
.setText(getString(R.string.deep_link_fmt, deepLink));
((TextView) findViewById(R.id.invitation_id_text))
.setText(getString(R.string.invitation_id_fmt, invitationId));
}
招待者が初めてアプリをインストールする場合、アプリの招待リンクをクリックすると、招待者と招待者の両方にプロモーション クレジットを与えたいと思います。
これが初めてであることをどうやって知ることができますか? アプリが既にインストールされているため、processReferralIntent() が呼び出されます。