Firebase动态链接onSuccess也没有onFailure被调用

时间:2018-01-24 16:05:26

标签: android firebase firebase-dynamic-links

我正在使用以下代码

        FirebaseDynamicLinks.getInstance()
                            .getDynamicLink(getIntent())
                            .addOnSuccessListener(this, new OnSuccessListener<PendingDynamicLinkData>() {
                                @Override
                                public void onSuccess(PendingDynamicLinkData pendingDynamicLinkData) {
...
     }
                            })
                            .addOnFailureListener(this, new OnFailureListener() {
                                @Override
                                public void onFailure(@NonNull Exception e) {

                                }
                            });

我有些设备,当我没有启动深度链接时,onSuccess被调用pendingDynamicLinkData == null,这很好,但在某些设备上,onSuccess和onFailure都没有被调用。如何解决这个问题?

1 个答案:

答案 0 :(得分:1)

如果我说对了,您的意思是说您的Firebase动态链接中发生了两种情况:-

情况1->在某些设备上,正在调用onSuccess(PendingDynamicLinkDataendingDynamicLinkData)方法。 (这是预期的行为)

情况2->在某些设备上,既没有调用onSuccess(PendingDynamicLinkDataendingDynamicLinkData)回调,也没有调用onFailure(Exception e)。

我认为,如果您不执行当前位于用户前面的活动中代码的“ Firebase.getInstance()...”部分,或者现在编写此代码的活动现在正在执行,则可以这样做在后台。

例如:如果您在SplashActivity中执行此代码(Firebase.getInstance()...代码的一部分),通常会在几秒钟后消失,而MainActivity现在出现在用户面前,则在某些情况下设备既不会调用您的OnSuccess(PendingDynamicLinkDataendingDynamicLinkData),也不会调用您的onFailure(Exception e)回调。