Отложенная глубокая ссылка Facebook не работает

Как я могу получить данные ссылки на приложение, если мое приложение не было установлено, когда пользователь коснулся глубокой ссылки в приложении facebook? На удивление мало документации от facebook по этому вопросу. Вот содержание манифеста класса глубокой ссылки.

<activity
            android:name=".ui.activities.ViewProductSimple"
            android:label="Clicky Online Shopping App"
            android:launchMode="singleTask"
            android:screenOrientation="portrait" >

            <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="www.clicky.pk" android:scheme="http"/>
                <data android:host="www.clicky.pk" android:scheme="https"/>
            </intent-filter>

        </activity>

Это моя глубокая ссылка: https://www.clicky.pk/index.php/dispatch=products.view%26product_id=268522

Это класс ViewProductSimple, откуда я получаю глубокую ссылку.

FacebookSdk.sdkInitialize(getApplicationContext());
    Uri targetUrl = AppLinks.getTargetUrlFromInboundIntent(this, getIntent());
    if (targetUrl != null)
    {
        Log.i("Activity", "App Link Target URL: " + targetUrl.toString());
        Toast.makeText(this, targetUrl.toString(), Toast.LENGTH_SHORT).show();
        String scheme = targetUrl.getQueryParameter("dispatch");
        String id = scheme.substring(25);
        productId = Integer.parseInt(id);
        getProductFromServer();
    }

Проблема в том, что когда я отправляю глубокую ссылку через «App Ads Helper», я получаю уведомление в Facebook, если приложение установлено, оно работает отлично, но если приложение не установлено, оно приводит меня в магазин игр, и после его установки просто откройте MainActivity. Может ли кто-нибудь помочь мне? я застрял где-то в глубокой ссылке, и я хочу подсказать свое приложение через глубокую ссылку. Любой код или пример будут высоко оценены.


person Ayyaz Mughal    schedule 26.09.2018    source источник


Ответы (1)


Вам нужно получить данные из FacebookDeeplink в активности запуска (MainActivity), точно так же, как вы получили их в ViewProductSimple. Поскольку затем пользователь устанавливает ваше приложение и открывает ваше приложение, глубокая ссылка facebook будет отправлена ​​​​в MainActivity (активность запуска).

person NhatVM    schedule 26.09.2018
comment
Я пытался получить данные в своей активности запуска, но я получаю нулевой ответ... не могли бы вы поделиться каким-нибудь примером...? - person Ayyaz Mughal; 27.09.2018
comment
Моя проблема была решена. Проблема заключалась в том, что я упомянул неправильный класс в настройках Facebook и получил данные в SplashActivity.. после его изменения.. все работает. Спасибо за ответ. - person Ayyaz Mughal; 28.09.2018