Facebook延迟深层链接不起作用

Posted

技术标签:

【中文标题】Facebook延迟深层链接不起作用【英文标题】:Facebook deferred deep linking not working 【发布时间】:2018-09-26 14:23:51 【问题描述】:

如果用户在 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。 谁能帮帮我?我被困在深层链接的某个地方,我想通过深层链接提示我的应用程序。任何代码或示例将不胜感激。

【问题讨论】:

【参考方案1】:

你需要在launch Activity(MainActivity)中从FacebookDeeplink获取数据,这和你在ViewProductSimple中获取数据的方式是一样的。 因为随后用户安装您的应用并打开您的应用,facebook 深层链接将被发送到 MainActivity(启动活动)。

【讨论】:

我试图在我的启动活动中获取数据,但我得到空响应..你能分享一些例子吗..? 我的问题已经解决了。问题是,我在 facebook 设置中提到了错误的类,我在 SplashActivity 中获取了数据。在更改它之后......一切正常。感谢您的回答。

以上是关于Facebook延迟深层链接不起作用的主要内容,如果未能解决你的问题,请参考以下文章

Facebook 应用程序的深层链接(使用 fb: 协议)在 Facebook 应用程序内浏览器中不起作用

如果应用程序已通过深层链接打开,Android 深层链接将不起作用

深层链接意图不起作用

Http 302 重定向到深层链接在 Android 中不起作用

如果应用程序通过深层链接打开,共享元素转换不起作用

OAuth 回调 URI 的 Android 深层链接不起作用