我为分支初始化设置了网络超时,但很多时候初始化最终需要的时间比它应该长10倍。我知道这是因为我的应用程序应该只在初始化过程中由于深层链接而在Splash屏幕上。如何让它更快?或者有更好的方法来处理深层链接吗?
答案 0 :(得分:1)
分支初始化过程涉及发送网络请求然后等待响应,因此这总是需要一些时间 - 通常响应时间应该是2-3秒,并且具有良好的互联网连接。
我建议您在Splash Activity的onStart()方法中的任何其他代码之前尽快启动Branch的initSession
,并且您应该能够减少启动页面显示的时间。
此外,默认情况下,Branch将延迟安装调用(仅安装而不是将来打开/重新安装),最长时间为1.5秒。我们延迟安装调用以捕获通过Google Play传递的安装引荐来源字符串,这会增加归因并推迟深度链接的准确性。我们不会延迟任何其他呼叫,并且安装呼叫仅在用户首次打开您的应用时发生。
如果我们在1.5秒之前收到引荐来源字符串,我们将立即触发呼叫,这意味着此延迟最多为1.5秒,但不能保证花费那么长时间。
如果您想优化第一次安装调用,只需将以下代码粘贴到Application类中,我们就不会延迟第一次安装调用。
public final class CustomApplicationClass {
@Override
public void onCreate() {
super.onCreate();
// initialize the Branch object
Branch.setPlayStoreReferrerCheckTimeout(0);
Branch.getAutoInstance(this);
}
}