不接收Firebase动态链接参数

时间:2020-07-12 10:24:08

标签: android firebase firebase-dynamic-links dynamic-links

我正在尝试将查询参数传递给Dynamic Link中的链接,但是当我收到数据时,查询参数不存在。

此生成代码:

        ListType listType = listPK.getListType();

        //Uri.Builder.
        Uri link = Uri.parse(
                String.format("https://www.seleniti.com/famulo/invitetoshare/?listId=%s&listType=%s",
                        listId,
                        listType
                )
        );
        DynamicLink dynamicLink = FirebaseDynamicLinks.getInstance().createDynamicLink()
                .setLink(link)
                .setDomainUriPrefix("https://famulo.page.link/invitetoshare")
                // Open links with this app on Android
                .setAndroidParameters(new DynamicLink.AndroidParameters.Builder("com.seleniti.famulo").build())
                // Open links with com.example.ios on iOS
                .setIosParameters(new DynamicLink.IosParameters.Builder("com.seleniti.famulo.ios").build())
                .buildDynamicLink();

        String urlString = dynamicLink.getUri().toString();

动态返回以下链接网址: https://famulo.page.link/invitetoshare?apn=com.seleniti.famulo&ibi=com.seleniti.famulo.ios&link=https://www.seleniti.com/famulo/invitetoshare/?listId=kPLZpp809gePpBiBojsngjZdg6A3:b77a593f-4c96-48e2-8f25-77058974ffe9&listType=SHOPPING_LIST

但是当我使用此代码获取动态链接数据

        FirebaseDynamicLinks.getInstance()
                .getDynamicLink(getIntent())
                .addOnSuccessListener(this, pendingDynamicLinkData -> {
                    // Get deep link from result (may be null if no link is found)
                    Uri deepLink = null;
                    if (pendingDynamicLinkData != null) {
                        deepLink = pendingDynamicLinkData.getLink();


                        String listId = deepLink.getQueryParameter("listId");
                        ListType listType = ListType.from(deepLink.getQueryParameter("listType"));

                        if (listId != null && listType != null) {
                            goToList(listType, listId, ViewAction.InviteToShare, null);
                        }
                    }

两个查询参数listId和listType的结果均为null。

在这里我已经咨询了所有其他有相同问题的相关问题,但是我没有找到合适的问题。

AndroidManifest.xml也包含以下行:

<intent-filter android:autoVerify="true">
                <action android:name="android.intent.action.VIEW" />
                <category android:name="android.intent.category.DEFAULT" />
                <category android:name="android.intent.category.BROWSABLE" />

                <data
                    android:host="famulo.page.link/invitetoshare"
                    android:scheme="https"
                    android:pathPattern="/?link"/>
                <data
                    android:host="famulo.page.link/invitetoshare"
                    android:pathPattern="/?link"
                    android:scheme="http" />
            </intent-filter>

0 个答案:

没有答案