Ссылка Firebase Dynami c не работает после первой установки из Play Store и не открывает Deep Link после первой установки - PullRequest
1 голос
/ 15 января 2020

Я создал Dynamic Link в консоли Firebase. У меня есть опция «Ссылка» в приложении, которая создает ссылку Dynami c, и ссылка передается через некоторые носители. Согласно документации Firebase, если приложение еще не установлено, оно открывает Play Store и позволяет пользователю загрузить приложение. Но после загрузки приложения (в соответствии с документацией) оно должно показать опцию Continue, чтобы открыть приложение в первый раз, чтобы работал ожидаемый поток ссылок Dynami c. Но я не получил такую ​​опцию для Первой установки из Play Store, и она показывает опцию Open, которая разрывает ссылку Dynami c и открывает приложение с самого начала.
Код для генерации Dynamic Link равен

String e="https://myappinvite.page.link/?link=https://myappinvite.page.link/?referid=10&apn=com.learnandro&amv=16&st=Please Install the App&si="+some Image Url+"&afl=https://play.google.com/store/apps/details?id=app Package name";

Task<ShortDynamicLink> shortLinkTask = FirebaseDynamicLinks.getInstance()
                        .createDynamicLink()
                        .setLongLink(Uri.parse(e))
                        .buildShortDynamicLink()
                        .addOnCompleteListener(new OnCompleteListener<ShortDynamicLink>() {
                            @Override
                            public void onComplete(@NonNull Task<ShortDynamicLink> task) {
                                Uri get=task.getResult().getShortLink();
                                Intent sh=new Intent(Intent.ACTION_SEND);
                                sh.setType("text/plain");
                                sh.putExtra(Intent.EXTRA_TEXT,"Vi                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               ew the Amazing Event   "+get);
                                startActivity(Intent.createChooser(sh,"View"));
                            }
                        });  

Файл Manifest выглядит следующим образом

<activity android:name=".login.LoginActivity">
            <intent-filter>
                <action android:name="android.intent.action.VIEW" />
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
            <intent-filter>
                <action android:name="android.intent.action.VIEW"/>
                <category android:name="android.intent.category.DEFAULT" />
                <category android:name="android.intent.category.BROWSABLE" />
                <category android:name="android.intent.category.LAUNCHER"/>
                <data
                    android:host="myappinvite.page.link"
                    android:scheme="https" />
            </intent-filter>
        </activity>  

Это код для получения динамической c ссылки, если он найден внутри onCreate Действия

FirebaseDynamicLinks.getInstance().getDynamicLink(getIntent())
                .addOnSuccessListener(new OnSuccessListener<PendingDynamicLinkData>() {
                    @Override
                    public void onSuccess(PendingDynamicLinkData pendingDynamicLinkData) {
                        if (pendingDynamicLinkData !=null) {
                            Uri getDynamicLink=pendingDynamicLinkData.getLink();
                            String id=getDynamicLink.getQueryParameter("referid");
                        }
                    }
                });

Чего на самом деле не хватает, чтобы не получить весь опыт Dynami c Link?

...