2017-09-26 71 views
0

我有一個網絡超時設置爲我的分支初始化,但很多次初始化結束了比它應該長10倍。我知道這一點,因爲我的應用程序應該只在初始化過程中由於深度鏈接而在Splash屏幕上。我如何讓它更快?還是有更好的方法來處理深層鏈接?初始化過程超出網絡超時

回答

1

分支初始化過程涉及發送網絡請求,然後等待響應,所以這總是需要一些時間 - 通常響應時間應該是2-3秒,並且體面的互聯網連接。 我建議在Splash Activity的onStart()方法中的任何其他代碼之前儘快開始Branch的initSession,並且應該能夠減少啓動頁面顯示的時間。

另外,默認情況下,分支將延遲安裝調用(僅安裝,而不是任何未來的打開/重新安裝),時間最長爲1.5秒。我們推遲安裝電話以捕獲通過Google Play傳遞的安裝推薦鏈接字符串,這會增加歸因並延緩深度鏈接的準確性。我們不會延遲其他任何通話,並且只有在用戶第一次打開您的應用時纔會發出安裝通話。

如果我們在1.5秒之前收到引薦人字符串,我們會立即開始接聽電話,這意味着延遲時間長達1.5秒,但不能保證持續這麼長時間。

如果您想優化第一次安裝調用,只需將以下代碼粘貼到您的應用程序類中,並且我們不會延遲第一次安裝調用。

public final class CustomApplicationClass { 
    @Override 
    public void onCreate() { 
     super.onCreate(); 
     // initialize the Branch object 
     Branch.setPlayStoreReferrerCheckTimeout(0); 
     Branch.getAutoInstance(this); 
    } 
}