要删除受信任的 Web 活动的 URL 栏,它需要 Android 应用程序和网站之间的关联。该关联必须以两种方式建立,即从应用程序链接到网站以及从网站链接到应用程序。
建立从应用程序到网站的关联
1.添加如下asset_statements
字符串app>res>values>strings.xml
并更改站点属性的内容以匹配受信任的 Web 活动打开的架构和域:
<resources>
<string name="asset_statements">
[{
\"relation\": [\"delegate_permission/common.handle_all_urls\"],
\"target\": {
\"namespace\": \"web\",
\"site\": \"https://my.site.com\"}
}]
</string>
</resources>
2.将上述内容添加到您的asset_statements
AndroidManifest.xml 中,如下所示,并在您的 Launcher Activity 中设置正确:meta-data
application
data scheme and host
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.my.application">
<application>
<meta-data
android:name="asset_statements"
android:resource="@string/asset_statements" />
<activity android:name=".LauncherActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
<!--
This intent-filter allows the Trusted Web Activity to handle Intents to open the app
-->
<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"/>
<!-- To handle links to the target URL-->
<data
android:scheme="https"
android:host="my.site.com"/>
</intent-filter>
</activity>
</application>
</manifest>
建立从网站到应用程序的关联
您必须assetlinks.json
在路径下将文件上传到您的网站:https://my.site.com/.well-known/assetlinks.json
assetlinks.json 应如下所示:
[{
"relation": ["delegate_permission/common.handle_all_urls"],
"target": {
"namespace": "android_app",
"package_name": "com.example.my.application",
"sha256_cert_fingerprints":
["5B:49:F7:CB:BL:C8:6K:CJ:5F:D8:33:2A:DA:FA:71:18:88:N9:49:9C:D3:66:98:35:B4:A2:2C:EC:B9:65:6C:65"]
}
}]
从上面的文件中,您必须设置正确的包名称和正确的SHA-256 指纹(密钥库签名哈希)。
有一种简单的方法可以assetlinks.json file
从 Android Studio 生成上述和上述哈希。您必须转到 Android StudioTools > App Links Assistant
并单击Open Digital Asset Links File Generator
并添加您的站点域、应用程序包名称并选择您的发布密钥库文件,如下所示,然后单击Generate Digital Asset Links file
按钮生成assetlinks.json
可以上传到站点的文件。还有一个非常有用的链接,描述了关联将您的应用与您的网站关联
要验证链接是否正确,有一个Link and Verify
按钮来验证从网站到应用程序的关联是否正确,如下图示例所示:
如果上传到站点的 Sha256 用于发布密钥库,则在上述步骤之后,您必须生成一个发布 apk 文件,现在如果打开该文件,您应该会看到 Header Url Bar 已成功删除。我已经测试了上述步骤,它按预期工作。
注意:
如果您选择让 Google Play 使用他们生成的密钥对您的版本进行签名,您只需在Google Play 控制台 -> 设置 -> 应用完整性下复制应用签名密钥证书 SHA-256 指纹并将其放入资产链接.json 文件。