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);
}
});
我不是从Play商店中安装下面的代码,但从服务器下载。当我点击链接时,下载从浏览器开始,然后我可以点击下载的APK来安装它。安装完成后,第一次打开APK时,上面的代码永远不会执行。
我已经添加以下代码在调用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不为空,但空 - {}。第二次运行时,安装params包含来自点击链接的正确信息,但'is_first_session'现在为false。
我确实安装了在清单中注册的referrer接收器,但我不清楚它是否适用于PlayStore只安装或任何安装。
在安装后第一次运行时,我还需要做些什么来获取推荐链接?
不确定你在#2中的含义。我在我的问题中发布的所有内容均来自Activity的onStart()。在应用程序的onCreate()我有Branch.getAutoInstance()和Branch.enablePlayStoreReferrer()。 –
这可能是问题 - 你有一些代码(特别是'Branch.getAutoInstance'),它根本不应该在Activity中。我建议通过集成指令返回,以确保一切都按计划进行。 –
你是对的,我混淆了Branch.getAutoInstance()和Branch.getInstance() - 不是名称的最佳选择:)不确定这是否是问题的根源,需要进一步实验。 –