【问题标题】:DeepLink opens app but callback in not firing until the app goes to backgroundDeepLink 打开应用程序,但在应用程序进入后台之前不会触发回调
【发布时间】:2018-09-24 11:08:10
【问题描述】:

已编辑:

现在我对深度链接的唯一问题是每当我点击 deeplink 并且我的应用程序没有运行它会打开我的 后台的 HomeActivity 和深层链接的 Activity。如果我按回 HomeActivity 中的按钮我的应用程序最小化,当我再次启动它时 deeplink Activity 仅在那时被调用并被重定向到正确的 活动。

大家好,我想从此参考实现 Facebook 深度链接 https://developers.facebook.com/docs/app-ads/deep-linking。 我成功了,但是如果我的应用程序没有运行,它只会在单击 Facebook 应用程序的深层链接时将我重定向到主屏幕。我似乎找不到解决办法,谁能帮帮我?

我已按照分步说明进行操作:

创建 FB 应用 将 FB sdk 添加到 Android 应用程序 当我运行该应用程序时,它会被 Facebook 检测到,并在 https://developers.facebook.com/tools/app-ads-helper/ 上进行验证

<activity
        android:name=".activities.FacebookAdActivity"
        android:launchMode="singleTask"
        android:screenOrientation="portrait"
        android:theme="@style/AppTheme">

        <intent-filter>
            <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" />

            <data android:scheme="com.example.myapp" />
        </intent-filter>
    </activity>

【问题讨论】:

    标签: android facebook deep-linking applinks


    【解决方案1】:

    您的 AndroidManifest.xml 中的 &lt;data&gt; 标记应如下所示 -

    <data android:scheme="yourScheme" android:host="com.your.package"
                        android:pathPrefix="/FacebookAdActivity"/>
    

    在 facebook 中提供完整路径 yourScheme://com.your.package/FacebookAdActivity 这应该直接打开广告活动

    【讨论】:

    • 感谢您的回答。现在,每当我单击链接时,我的深层链接都会在后台打开,或者如果我的应用程序未运行,则使用 adb shell 对其进行测试(这意味着它会在后台打开我的 HomeActivity 和 DeeplinkActivity)。如果它正在运行,它将被重定向到正确的 Activity,
    • 您是说您的活动在后台打开?但是 Activity 会有一个视图权限,它应该作为应用程序打开
    • 我将演示流程,以便您更好地理解我:从 facebook 应用程序单击应用程序链接 > 应用程序打开 > 启动 HomeActivity > 按返回按钮最小化应用程序并返回您之前的位置facebook 应用程序 > 从概览按钮再次启动应用程序会让您转到 DeepLinkActivity。
    • 那么您配置启动家庭活动的方式有问题。请检查您在 AndroidManifest.xml 文件中为您的活动提到的活动标志
    • 你是对的。有一个重定向功能,这就是它发生的原因。谢谢。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-07-29
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多