gpt4 book ai didi

java - 我无法通过我的应用程序从 firebase 检索动态链接,因为 pendingdynamiclinkdata 为 null

转载 作者:行者123 更新时间:2023-11-29 22:56:53 25 4
gpt4 key购买 nike

我正在尝试从 firebase 检索 deeplink URL,但始终显示为空。

我在 list 中添加了以下代码,我也尝试使用短动态 URL,即 https://example555.page.link/y6N7但它仍然显示为空。

            <intent-filter>
<action android:name="android.intent.action.VIEW"/>
<category android:name="android.intent.category.DEFAULT"/>
<category android:name="android.intent.category.BROWSABLE"/>
<data
android:host="example555.page.link"
android:scheme="https"
/>

</intent-filter>

这是我获取动态链接的代码:

             FirebaseDynamicLinks.getInstance()
.getDynamicLink(getIntent())
.addOnSuccessListener(this, new
OnSuccessListener<PendingDynamicLinkData>() {
@Override
public void onSuccess(PendingDynamicLinkData
pendingDynamicLinkData) {
Uri deepLink = null;

if (pendingDynamicLinkData != null) {
deepLink = pendingDynamicLinkData.getLink();
}
}
})
.addOnFailureListener(this, new OnFailureListener() {
@Override
public void onFailure(@NonNull Exception e) {
Log.w(TAG, "getDynamicLink:onFailure", e);
}
});

最佳答案

好吧,在我苦苦思索了这么多小时之后,我找到了一个解决方案,它帮助我找到了解决方案:

从头说起太糟糕了:1.创建动态链接。2. 将以下代码添加到您的 list 中

      <intent-filter>
<action android:name="android.intent.action.VIEW"/>
<category android:name="android.intent.category.DEFAULT"/>
<category android:name="android.intent.category.BROWSABLE"/>
<data
android:host="example555.page.link"
android:scheme="https"/>

</intent-filter>
  1. 在您的主要 Activity 中添加此代码:

           FirebaseAnalytics mFirebaseAnalytics;
    mFirebaseAnalytics=FirebaseAnalytics.getInstance(this);

    FirebaseDynamicLinks.getInstance()
    .getDynamicLink(getIntent())
    .addOnSuccessListener(this, new
    OnSuccessListener<PendingDynamicLinkData>() {
    @Override
    public void onSuccess(PendingDynamicLinkData pendingDynamicLinkData) {
    // Get deep link from result (may be null if no link is found)
    Uri deepLink = null;

    if (pendingDynamicLinkData != null) {
    deepLink = pendingDynamicLinkData.getLink();

    Log.w("deepLink", "" + deepLink);
    String cn=String.valueOf(deepLink.getQueryParameters("utm_campaign"));
    String cm = String.valueOf(deepLink. getQueryParameters("utm_medium"));
    String cs = String.valueOf(deepLink.getQueryParameters("utm_source"));

    if (cs != null && cn != null) {
    Bundle params = new Bundle();
    params.putString(FirebaseAnalytics.Param.CAMPAIGN, cn);
    params.putString(FirebaseAnalytics.Param.MEDIUM, cm);
    params.putString(FirebaseAnalytics.Param.SOURCE, cs);

    mFirebaseAnalytics.logEvent(FirebaseAnalytics.Event.CAMPAIGN_DETAILS, params);
    mFirebaseAnalytics.logEvent(FirebaseAnalytics.Event.APP_OPEN, params);
    }


    }
    }
    })
    .addOnFailureListener(this, new OnFailureListener() {
    @Override
    public void onFailure(@NonNull Exception e) {
    Log.w("TAG", "getDynamicLink:onFailure", e);
    }
    });
  2. 现在是时候测试您的应用程序了:谷歌搜索您的网址,即 example555.page.link之后它会将您重定向到应用程序,然后您填写并输出。如果这有效,谢谢。

关于java - 我无法通过我的应用程序从 firebase 检索动态链接,因为 pendingdynamiclinkdata 为 null,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57354043/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com