具有自定义权限的深层链接

问题描述 投票:0回答:1

我使用 this 创建了一个带有自动验证的深层链接 按照指示,

android:导出

tag 需要设置为 true 才能由操作系统启动 Activity。 我想知道,是否可以添加自定义/创建的权限

    <permission android:name="com.sample.app.DEEP_LINK_PERMISSION"/>

将此自定义/创建的权限添加到活动标记中,仍然可以使深层链接正常工作吗?

<activity
        android:name=".sample.ui.CustomActivity"
        android:exported="true"
        android:permission="com.sample.app.DEEP_LINK_PERMISSION">
        <intent-filter android:autoVerify="true">
            <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="someValue" />
            <data android:path="someValue" />
        </intent-filter>
    </activity>

添加自定义/创建权限后,深度解析链接已停止工作。有没有办法保留自定义/创建的权限并使深层链接正常工作?

android android-permissions android-deep-link
1个回答
0
投票

添加

android:permission="com.sample.app.DEEP_LINK_PERMISSION"
表示“只有持有
com.sample.app.DEEP_LINK_PERMISSION
的应用程序才能启动此活动”。现有的 Web 浏览器不太可能拥有该权限。因此,他们无法开始您的活动。

您有三个主要选择:

  1. 开始省钱,然后收购谷歌、三星等。然后,用你新获得的权力,命令他们将你的自定义权限添加到他们的应用程序中。这可能需要一些时间。
  2. 消除权限,以便浏览器可以启动您的活动。请记住,某些浏览器(例如 Firefox 和 Samsung Internet)默认情况下可能不支持深层链接。
  3. 消除深层链接,因此只有您的应用程序(或拥有您的自定义权限的其他应用程序)可以启动该活动。

更一般地说,您应该退后一步,考虑使用此自定义权限的目标是什么。

© www.soinside.com 2019 - 2024. All rights reserved.