branch.io documentationsでは、ブランチSDKはディープリンクデータをActivity
に送信するように設定することしかできないことに気付きました。これらのメソッドは、セットアップ分岐SDKに呼び出さなければなりません。ブランチSDKがアクティビティではなくIntentServiceにデータを送信する方法
@Override
public void onStart()
{
super.onStart();
Branch branch = Branch.getInstance();
branch.initSession(new Branch.BranchReferralInitListener()
{
@Override
public void onInitFinished(JSONObject referringParams, BranchError error)
{
if (error == null)
{
// params are the deep linked params associated with the link that the user clicked -> was re-directed to this app
// params will be empty if no data found
// ... insert custom logic here ...
}
else
{
Log.i("MyApp", error.getMessage());
}
}
}, this.getIntent().getData(), this);
}
@Override
public void onNewIntent(Intent intent)
{
this.setIntent(intent);
}
あなたがメソッドを参照してくださいとしてinitSession()
のみ第三の入力のためのActivity
を受け入れます。逆方向データをIntentService
に送信する必要があります。私は何かを逃していますか、ブランチはそれを行う方法を提供していますか?そうでない場合は、どのように機能を提供できますか?私は目に見えない活動を開始し、それを介してデータをIntentService
に渡すことができることを知っていますが、起動が遅くなることを読んだことがあります。助言がありますか?
SDKは方法を提供します。私はそれがちょうど誤用かそれの特徴かどうかわかりません。私はそれを試して、それは働いた。アクティビティを追加する必要はありません。 –
こんにちはMelika。インテントサービスの動作が、私たちのアプローチをサポートすることを意味するものではなく、常に確実に機能するという理由だけで、安全にデータを返すアクティビティライフサイクルの方法に依存しています。私はあなたが何かを調理してうれしいですが、ちょうど頭が上がっています、それは私たちが現在サポートしているものではありません:)。 – Evan
ああ、私はあなたがブランチの貢献者の1人であることに気づいた。それはちょうど誤用です。返信してくれてありがとう。 –