2017-07-31 180 views
2

我已經通過了Firebase教程,我已經實施了Firebase SDK +動態鏈接+管理我的應用程序以支持關聯域,並且一切正常,但動態鏈接無法在安裝中生存Firebase動態鏈接不能安裝

我創建通過控制檯火力地堡的動態鏈接,

  1. 當已安裝的應用程序,一切工作正常。動態鏈接啓動我的應用程序與相關內容

  2. 當我的應用程序沒有安裝,動態鏈接打開AppStore按預期,比我通過Xcode安裝應用程序,但沒有任何反應,我沒有收到任何內容首次發佈。

我做了什麼:

  1. 確保計劃URL在Xcode - >目標 - > MYAPP - >信息 - > URL類型是一樣的我的應用程序捆綁標識符。
  2. 請確保在我的FireBaseURL/apple-app-site-association內容正常: {「applinks」:{「apps」:[],「details」:[{「appID」:「MyTeamID.com .foo.bla 「 」路徑「: 」/ *「]}]}}
  3. 確保我的AppDelegate定義
  4. 我試圖不要在AppDelegate中[FIROptions defaultOptions定義] .deepLinkURLScheme = @」 com.foo.bla「
  5. 確保在關聯的域下沒有額外的'/'或其他東西。我支持的域名是applinks:FireBaseURL。
  6. 仔細檢查在Firebase控制檯中定義的TeamID是否與我的應用程序TeamID相同。
  7. 當然,我已經在StackOverFlow中搜索了很多,沒有找到任何成功的解決方案。

有什麼建議嗎?

UPDATE

好了,我發現,不知怎的,我使用的是舊版本的SDK火力地堡的,所以我更新了火力地堡SDK +開始對細胞,而不是在Wi-Fi和一切工作奇蹟般有效。 感謝@Oleksiy Ivanov

+0

WiFi通常應該可以工作。如果連接到WiFi的設備共享相同的公共IP,則可能會有例外。這將使安裝App後難以實現匹配。 現在很高興它的作品! –

回答

1

@MKaro您可以將日誌記錄添加到您的UIApplicationDelegate方法應用程序中:openURL:options:並打印出第一次啓動後傳遞到您的應用程序的鏈接嗎?如果找到鏈接,它將在這裏傳遞。當Firebase動態鏈接無法檢索鏈接時,仍然會以「解除」鏈接調用此方法(這種方式記錄不完善)。如果首次啓動後沒有看到對此方法的任何調用,則表示Firebase動態鏈接配置​​錯誤。

另一件需要注意的事情是,Firebase動態鏈接僅在首次安裝後纔會檢查掛起的動態鏈接。您必須移除應用程序以強制檢索鏈接。

嘗試WiFI vs Cellular上的第一個安裝場景可能是值得的。網絡的類型可能會影響到這一點。

+0

嗨@Oleksiy,謝謝你的迴應。在第一次啓動時,我沒有收到任何有關此方法的信息,我在該方法上寫了日誌記錄+斷點,但在第一次啓動時沒有收到響應。只有當我的應用程序已經安裝在設備上並且點擊鏈接時,纔會調用此方法。 我想要做的是根據FireBase視頻教程,我點擊的鏈接,當應用程序沒有安裝在手機上,重新指向AppStore,但我沒有從AppStore下載應用程序,我正在通過Xcode安裝它。 – MKaro

+0

從Xcode安裝很好,這應該工作。現在檢查如何爲您打開支持案例。 –

+0

@MKaro來自我們的支持人員:「我們需要他們的電子郵件地址才能打開支持憑單,因此我認爲最好讓他們使用我們的支持門戶並將問題作爲錯誤提交,而這不會計算在內向他們提供的門票「。 –

1

您試圖完成的深層鏈接被稱爲延期深入鏈接。這是指在未安裝應用程序時深層鏈接用戶的過程。不幸的是,Firebase在很多cases中失敗。延期深度鏈接的過程越來越複雜,所以我建議搬到我的公司,Branch

雖然我有偏見,但我們的鏈接通過安裝過程工作,我們的延期深層鏈接finger printing methods比Firebase更可靠。集成包括(1)安裝框架(2)註冊(延期深層鏈接是免費的)(3)將您的套件ID和應用程序ID提供給您的分支儀表板(4)配置您的plist(5)通過回電您的應用程序代表。我可以向你保證,這是一條更安全,更簡單的路線。

+0

Hi @ clayjones94,感謝您的回覆, 但是我使用FireBase作爲第三方解決方案, 我唯一的問題是動態鏈接無法在安裝和首次啓動後繼續存在。 如果我點擊鏈接,當我有應用程序安裝即時消息獲取我的iOS應用程序中的動態鏈接的內容。 – MKaro

+0

對不起,我讀你的帖子錯了,並編輯我的答案。我無法與Firebase交談,但以我作爲應用程序開發人員的個人體驗,我從Firebase切換到Branch(然後最終爲Branch工作)是一條更加可靠的途徑。我們推遲的深度鏈接貫穿整個安裝過程。 – clayjones94

+0

謝謝,我會考慮如果我不會找到合適的解決方案。目前,我更願意等待幾天,並收到一些答案。 無論如何謝謝你! – MKaro