Android 从play store安装后未收到Firebase动态链接

Android 从play store安装后未收到Firebase动态链接,android,firebase,firebase-dynamic-links,Android,Firebase,Firebase Dynamic Links,在我的场景中,我在我的应用程序中生成一个带有一些分析参数的动态链接,并使用下面的代码行 .setAndroidParameters(new DynamicLink.AndroidParameters.Builder("XX.XXX.debug").build()) 工作正常,正在生成短链接,当我从其他窗口点击链接时,它会打开我的应用程序,动态链接会成功捕获到我的启动屏幕中。这是我的应用程序的调试版本 后来,我也考虑在发行版上测试它。因此,我生成了一个发布apk,并将上面的代码行修改为 .set

在我的场景中,我在我的应用程序中生成一个带有一些分析参数的动态链接,并使用下面的代码行

.setAndroidParameters(new DynamicLink.AndroidParameters.Builder("XX.XXX.debug").build())
工作正常,正在生成短链接,当我从其他窗口点击链接时,它会打开我的应用程序,动态链接会成功捕获到我的启动屏幕中。这是我的应用程序的调试版本

后来,我也考虑在发行版上测试它。因此,我生成了一个发布apk,并将上面的代码行修改为

.setAndroidParameters(new DynamicLink.AndroidParameters.Builder("XX.XXX").build())
正在从中删除调试部分。我在playstore的ALPHA频道发布了我的应用程序

我从playstore重新安装了发布版本,生成了链接并复制了它。现在,为了测试deeplink,我卸载了我的应用程序的发布版本

到目前为止还不错

现在我点击了从先前发布版本生成的复制链接,它打开play store,重定向到我的应用程序,安装alpha版本

我点击了playstore的open按钮,我的应用程序启动了启动屏幕,在那里应该可以检测到深层链接

问题1->未检测到深层链接

问题2->再次点击该深度链接应该会打开我的应用程序,但它会打开游戏商店。

请帮忙

编辑 我的意图过滤器是这样的

        <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="xxxx.app.goo.gl"
                android:scheme="http" />
            <data
                android:host="xxxx.app.goo.gl"
                android:pathPattern=".*"
                android:scheme="https" />

        </intent-filter>

您需要为您的链接实际所在的域添加链接。您可以将动态链接视为常规链接的包装器


因此,与其为myapp.app.goo.gl添加过滤器,不如为myapp.com添加过滤器

首先,有两个生成器构造函数 1.默认构造函数,表示打开应用程序 2.构造函数采用开放参数字符串,表示是否需要URl 因此,解决问题的方法是

    Uri uri = Uri.parse("https://www.google.jo/");
    Uri uri1 = uri.buildUpon().appendQueryParameter("order", "725").build();
    DynamicLink dynamicLink = FirebaseDynamicLinks.getInstance().createDynamicLink()
            .setLink(uri1)
            .setDynamicLinkDomain("rw4r7.app.goo.gl")
            .setAndroidParameters(
                    new DynamicLink.AndroidParameters.Builder("com.example.android")
                            .setMinimumVersion(1)
                            .build())
            // Open links with this app on Android
            .setAndroidParameters(new DynamicLink.AndroidParameters.Builder().build())
            .setGoogleAnalyticsParameters(
                    new DynamicLink.GoogleAnalyticsParameters.Builder()
                            .setSource("orkut")
                            .setMedium("social")
                            .setCampaign("example-promo")
                            .build())
            .setItunesConnectAnalyticsParameters(
                    new DynamicLink.ItunesConnectAnalyticsParameters.Builder()
                            .setProviderToken("123456")
                            .setCampaignToken("example-promo")
                            .build())
            .setSocialMetaTagParameters(
                    new DynamicLink.SocialMetaTagParameters.Builder()
                            .setTitle("Example of a Dynamic Link")
                            .setDescription("This link works whether the app is installed or not!")
                            .build())
            // Open links with com.example.ios on iOS
            .buildDynamicLink();

    Uri dynamicLinkUri = dynamicLink.getUri();
    Task<ShortDynamicLink> shortLinkTask = FirebaseDynamicLinks.getInstance().createDynamicLink()
            .setLink(uri1)
            .setDynamicLinkDomain("rw4r7.app.goo.gl")
            .setLongLink(dynamicLinkUri)

            // Set parameters
            // ...
            .buildShortDynamicLink()
            .addOnCompleteListener(this, new OnCompleteListener<ShortDynamicLink>() {
                @Override
                public void onComplete(@NonNull Task<ShortDynamicLink> task) {
                    if (task.isSuccessful()) {
                        // Short link created
                        Uri shortLink = task.getResult().getShortLink();
                        Uri flowchartLink = task.getResult().getPreviewLink();
                        Intent intent = new Intent();
                        intent.setAction(Intent.ACTION_SEND);
                        intent.putExtra(Intent.EXTRA_TEXT, shortLink.toString());
                        intent.setType("text/plain");
                        intent.putExtra("testsawalha", "testSawalha");
                        startActivity(intent);
                    } else {
                        // Error
                        // ...
                    }
                }
            });
Uri=Uri.parse(“https://www.google.jo/");
Uri uri1=Uri.buildOn().appendQueryParameter(“order”,“725”).build();
DynamicLink DynamicLink=FirebaseDynamicLinks.getInstance().createDynamicLink()
.setLink(uri1)
.SetDynamicLink域(“rw4r7.app.goo.gl”)
.setAndroidParameters(
新的DynamicLink.AndroidParameters.Builder(“com.example.android”)
.setMinimumVersion(1)
.build())
//在Android上打开与此应用程序的链接
.setAndroidParameters(新的DynamicLink.AndroidParameters.Builder().build())
.SetGoogleAnalytics参数(
新的DynamicLink.GoogleAnalyticsParameters.Builder()
.setSource(“orkut”)
.setmedia(“社交”)
.setCampaign(“示例促销”)
.build())
.SetiTunes连接分析参数(
新的DynamicLink.ItunesConnectAnalyticsParameters.Builder()
.setProviderToken(“123456”)
.setCampaignToken(“示例促销”)
.build())
.SetSocialMetagParameters(
新的DynamicLink.SocialMetaTagParameters.Builder()
.setTitle(“动态链接示例”)
.setDescription(“无论是否安装应用程序,此链接都有效!”)
.build())
//在ios上打开com.example.ios的链接
.buildDynamicClink();
Uri dynamicLinkUri=dynamicLink.getUri();
Task shortLinkTask=FirebaseDynamicLinks.getInstance().createdynamicclink()
.setLink(uri1)
.SetDynamicLink域(“rw4r7.app.goo.gl”)
.setLongLink(dynamicLinkUri)
//设置参数
// ...
.buildShortDynamicClink()
.addOnCompleteListener(这是新的OnCompleteListener(){
@凌驾
未完成的公共void(@NonNull任务){
if(task.issusccessful()){
//短链接已创建
Uri shortLink=task.getResult().getShortLink();
Uri flowchartLink=task.getResult().getPreviewLink();
意图=新意图();
intent.setAction(intent.ACTION\u SEND);
intent.putExtra(intent.EXTRA_TEXT,shortLink.toString());
intent.setType(“文本/普通”);
意图。putExtra(“testsawalha”、“testsawalha”);
星触觉(意向);
}否则{
//错误
// ...
}
}
});

对于问题1:我们收到一些来自Play store的alpha频道安装报告,未发送安装参考广播-动态链接取决于此以获取深度链接。对于问题2:您是否可以检查在清单中为其他域设置了意图过滤器(请随意编辑问题,以便更容易地包含您的清单和域)@IanBarber-对于问题1,我是否可以期望它在生产渠道中工作,或者何时可以得到修复。@IanBarber-对于问题2-我已根据您的请求进行了编辑,发布了我的意图过滤器。问题1:是的,应该可以在生产渠道中工作。