ディープリンクにBranch.ioを使用しています。アプリが既にインストールされている場合は、すべてが正常に動作しますが、これはアプリのインストール後の最初の実行であるならば、次のコードは、(ONSTART内側)Branch.io Androidにインストールした後に最初にBranchUniversalObjectを取得する
Branch branch = Branch.getAutoInstance(getApplicationContext());
branch.initSession(new Branch.BranchUniversalReferralInitListener() {
@Override
public void onInitFinished(BranchUniversalObject branchUniversalObject,
LinkProperties linkProperties, BranchError branchError) {
DeepLinkUtil.processBranchIntent(branchUniversalObject);
}
});
を実行されることはありません私はPlayStoreからインストールしていないのですが、サーバーからダウンロードします。リンクをクリックすると、ブラウザでダウンロードが開始され、ダウンロードしたAPKをクリックしてインストールすることができます。インストール後、最初にAPKを開くと、上記のコードは実行されません。 I)は(ONSTARTに次のコードを追加しました
:インストール後に初めて実行する場合
Branch branch = Branch.getAutoInstance(getApplicationContext());
JSONObject installParams = branch.getFirstReferringParams();
if (installParams == null) {
Log.d(TAG, "processIntent: installParams: null");
} else {
Log.d(TAG, "processIntent: installParams: " + installParams.toString());
}
、インストールparamsがNULLでないですが、空であります - {}。 2回目の実行時には、インストールされたparamsにはクリックされたリンクからの正しい情報が含まれていますが、 'is_first_session'は現在falseです。
マニフェストに登録されているリファラーレシーバーをインストールしていますが、PlayStoreのみのインストールやインストールで動作するかどうかはわかりません。
インストール後に初めて参照リンクを取得するには、他に何が必要ですか?
あなたの#2で何を意味するのかわかりません。私の質問に投稿したものはすべて、アクティビティのonStart()からのものです。アプリケーションのonCreate()にはBranch.getAutoInstance()とBranch.enablePlayStoreReferrer()があります。 –
これはおそらく問題です。アクティビティには含まれないコード(特にBranch.getAutoInstance')があります。私は、すべての計画通りであることを確認するために、統合の手順に戻ることをお勧めします。 –
あなたは正しいです、私はBranch.getAutoInstance()とBranch.getInstance()を混乱させました。名前の最善の選択ではありません。これが問題の根源なのかどうかは確かではありません。 –