2016-02-08 217 views
5

我抓我的頭如何我應該在模擬器上測試我的branch.io集成。如何在模擬器中測試Branch.io?

對於鏈接生成,我使用JavaScript/web SDK而不是iOS SDK。當您點擊某個按鈕以在着陸頁上查看應用中的內容時,它會生成鏈接並按照該鏈接進行操作。

所有這些工作都很好,但是當我在模擬器中打開跳轉頁面時,它實際上並不會嘗試打開具有相同捆綁標識符的電話上的本地應用程序。

我想這可能是因爲當前的應用程序商店的URL框是空白的(因爲它還不存在)...但我不知道我應該如何測試它是否工作,如果我可以' t得到深層鏈接在本地觸發它。

謝謝!

+0

還有什麼運氣呢?無法讓它工作... –

+1

它只適用於不在模擬器中的設備,也必須從messeges/email鏈接點擊它,而不是從移動瀏覽器/ url欄中點擊它。最重要的是,分支文檔對於推薦深度鏈接是錯誤的,您應該嘗試使用HTTP API來生成鏈接,然後將其添加爲href =「」(如果您像我一樣進行網頁瀏覽) – Tallboy

+0

是的,終於搞定了:)不得不從'Notes'中打開它。它實際上是「有點」在模擬器中工作。如果你點擊鏈接,然後打開應用程序,它將在處理程序中具有最新的分支參數。 –

回答

1

@Tallboy,可惜模擬器不適合用於測試深層鏈接的原因有兩個:

  1. 沒有App Store中的模擬器,所以你不能看到真正的重定向行爲
  2. 模擬器不支持通用鏈接

你是絕對正確的 - 你可以點擊鏈接,然後手動打開應用程序。在這種情況下,我們使用我們的「延遲深度鏈接」機制來確定之前點擊過的鏈接。該方法在我們的文檔here中進行了討論。

如果您有任何疑問,請詢問。您也可以通過[email protected]聯繫分支團隊。

2

不完全是理想的,但如果你只是想通過分公司鏈接靜態PARAMS傳遞給你的應用程序和測試應用程序的執行他們的模擬器,你可以硬編碼他們在科initSessionWithLaunchOptions:andRegisterDeepLinkHandler:塊。每次應用程序再次變爲活動狀態時(即,如果它後退)和應用程序啓動時,即使在application:didFinishLaunchingWithOptions:中使用該塊,也會調用該塊。

分支處理程序塊傳入一個params字典,您可以覆蓋它們(它們將爲零或只包含幾個鍵,如果該塊未從輕敲鏈接調用)或者只創建您自己的傳入您的應用程序。

這顯然不適用於測試桌面網站重定向或App Store下載(或針對Branch的許多其他用例),但是如果您只是想測試從點擊鏈接重定向到您應用的特定視圖(或者在我的情況下,當我沒有可用的4S進行測試時,如何在4S上看到動態生成的視圖),它可以完成工作。