java—是否可以在许多其他应用程序使用的模块中使用deeplink?

bweufnob  于 2021-06-29  发布在  Java
关注(0)|答案(1)|浏览(415)

我正在尝试创建一个.aar文件以供其他应用程序使用。在这个模块中,用户需要离开应用程序,因为支付。我想打开后,付款完成的应用程序和网站上的按钮是点击。如果它在我的应用程序中,我可以通过添加 intent-filter 用于清单中的深度链接。但现在我不知道如何读取清单和应用程序上定义的深层链接。
我找了找,找不到任何答案。
提前谢谢。

2ic8powd

2ic8powd1#

您可以添加 Activity 并定义相同的 intent-filter 在你的舱单上 Activity .
因此,当浏览器完成支付流,他们可以启动你的图书馆的 Activity 使用深层链接。
我强烈建议阅读android应用程序链接以及。
这样你就可以在你的生活中处理好每件事 .aar 而终端应用开发者不必为你扮演接力者的角色。
这种方法有一个重要的优点,那就是在多个应用程序集成了您的应用程序时要小心 .aar 在同一台设备上。在这种情况下,支付流程结束后,android会向用户推荐这两个应用,这是错误的,可能会导致意外的结果。
有一个简单的解决方法是使用 $applicationId 输入为活动定义的意图筛选器。只需确保您的浏览器将使用正确的 applicationId 当它完成的时候。
以下是该活动清单的完整示例:

<activity
            android:name=".CallBackActivity"
            android:label="@string/app_name">

            <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="https" />
                 <data android:host="www.yourDomainName.com" />
                 <data android:pathPattern="payment/$applicationId" />
            </intent-filter>
</activity>

相关问题