2017-04-25 1 views
0

ディープリンクに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のみのインストールやインストールで動作するかどうかはわかりません。

インストール後に初めて参照リンクを取得するには、他に何が必要ですか?

答えて

0

アレックスブランチからここに:

話すべきことのいくつか。

  1. getFirstReferringParamsメソッドは、あなたが期待しているものではありません。そのデバイスのに最初にインストールされたのリンク上のデータを返します。そのため、そのインストールがブランチリンクから参照されなかった場合、戻り値は設計上空になります。これは最初のインストールで、そのデバイス上ではとなりますので、これらの値はインストールの間でも変更されません。テスト目的でこれが異なるようにしたい場合は、debug modeを参照してください。
  2. カスタムApplicationクラスのActivityonStart()メソッドのonStart()メソッドのブランチスニペットを誤ってマージした可能性があります。その場合は、SDK integration guideを確認すると役立ちます。
+0

あなたの#2で何を意味するのかわかりません。私の質問に投稿したものはすべて、アクティビティのonStart()からのものです。アプリケーションのonCreate()にはBranch.getAutoInstance()とBranch.enablePlayStoreReferrer()があります。 –

+0

これはおそらく問題です。アクティビティには含まれないコード(特にBranch.getAutoInstance')があります。私は、すべての計画通りであることを確認するために、統合の手順に戻ることをお勧めします。 –

+0

あなたは正しいです、私はBranch.getAutoInstance()とBranch.getInstance()を混乱させました。名前の最善の選択ではありません。これが問題の根源なのかどうかは確かではありません。 –

関連する問題