我已經在SO和網上搜索過類似的問題,而其他人似乎遇到了這個問題,他們的解決方案對我而言並不適用。Firebase動態鏈接無法正常工作 - DFL參數
DFL parameter in Firebase Dynamic Links Builder
與Android開始,我試圖實現我的應用程序動態鏈接。該應用程序需要動態鏈接上的附加參數,因此我正在根據此處的信息手動構建鏈接:https://firebase.google.com/docs/dynamic-links/create-manually。
我創建以下列方式(代碼簡稱爲這篇文章的目的)
Uri.Builder builder = new Uri.Builder()
.scheme("https")
.authority(AppPrivate.Invitation.APP_CODE + ".app.goo.gl")
.path("/")
.appendQueryParameter("link", link)
.appendQueryParameter("apn", AppPrivate.PACKAGE)
.appendQueryParameter("dfl", desktopLink);
對於我的使用情況下,我的鏈接link
和desktopLink
參數是相同的 - 他們是我的網站上實際工作的網址。無論用戶用動態鏈接點擊什麼設備,它都應該執行所需的操作。再次,爲了簡單得到這個工作,我已經鏈接到我們的主網站(https://www.mytravelerapp.com)。
當我從我的Android設備發送邀請,我基於代碼示例這裏的意圖:https://github.com/firebase/quickstart-android/blob/master/invites/app/src/main/java/com/google/firebase/quickstart/invites/MainActivity.java
return new AppInviteInvitation.IntentBuilder(context.getString(R.string.content_trip_invitation_title))
.setMessage(message)
.setDeepLink(uri)
.setCustomImage(Uri.parse(AppPrivate.Invitation.TRIP_INVITE_DEEP_LINK_IMAGE))
.setCallToActionText(context.getString(R.string.content_trip_invitation_cta))
.build();
然而,當我通過電子郵件收到邀請我的桌面上,它總是轉到Play商店列表,無論我添加到最初的深層鏈接(DFL,AFL)。這裏的鏈接從「行動呼籲」按鈕從電子郵件樣本:
https://a3d4u.app.goo.gl/i/225742434763-3bd2c2fa-45f0-4ed8-aca3-37760d27d971
我還沒有實現在Android應用中的接收器監聽傳入的鏈接,所以我不能確認是否或者深層鏈接在該平臺上行爲不當。
我非常感謝任何關於桌面鏈接丟失的建議或建議。
謝謝!
啊,所以如果您使用手動方式來生成動態鏈接,那麼您不需要使用AppInviteInvitation intent builder?那麼,正如您所提到的,您只需調用用戶個人設備上可用的應用程序的常規共享意圖?那麼它在技術上可以用於社交媒體渠道,電子郵件,短信等?感謝您的澄清 - 在閱讀規格時並不完全表達這種聯繫。這也解釋了爲什麼該活動不會迴應我的主機 - 我不得不使用app_code.app.goo.gl主機而不是我的.com。 – Kyle
快速跟進 - 如果我刪除了AppInviteInvitation構建器,並只發送通過手動創建動態鏈接構建的Uri,則會出現Google 400錯誤。這是它創建的鏈接(一旦我找到工作,我會縮短它) - https://a3d4u.app.goo.gl/?link=https%253A%252F%252Fwww.mytravelerapp.com&apn=edu.bsu。 android.apps.traveler&dfl = https%3A%2F%2Fwww.mytravelerapp.com&amv = 635 – Kyle
請在鏈接上追加&d = 1以查看調試頁面。這裏https://a3d4u.app.goo.gl/?link=https%253A%252F%252Fwww.mytravelerapp.com&apn=edu.bsu.android.apps.traveler&dfl=https%3A%2F%2Fwww.mytravelerapp。com&amv = 635&d = 1您可以看到鏈接參數(深層鏈接)有問題。 試試這個,而不是https://a3d4u.app.goo.gl/?link=https%3A//www.mytravelerapp.com&apn=edu.bsu.android.apps.traveler&dfl=https%3A%2F%2Fwww。 mytravelerapp.com&amv = 635 –