6

这是我们的 android 应用程序的屏幕截图,但是当它打开时,地址栏是可见的,如图所示如何使用受信任的网络活动隐藏该 url(地址栏)?

这里的屏幕截图 我们也使用 Chrome Dev 作为我们的默认浏览器,但是每次打开 android 应用程序时它都不会正常工作。请为此提出解决方案。提前致谢!

4

2 回答 2

2

您可能已选择让 Google Play 使用他们生成的密钥为您的版本签名,并且仅使用您的密钥进行上传。

如果你这样做了,只需将Release Management -> App Signing下的App 签名证书SHA-256 指纹复制到文件中。assetlinks.json

于 2019-02-17T23:36:59.833 回答
0

Google 需要验证网站的所有者和应用的所有者是否相同。为了执行此验证,它将在 /.well-known/assetlinks.json 位置查找assetlinks.json

此assetlinks.json 应包含相应android 应用程序的sha256 以及package_name、命名空间和一些其他信息,如此处所示。

[{
  "relation": ["delegate_permission/common.handle_all_urls"],
  "target": {
    "namespace": "android_app",
    "package_name": "org.chromium.twa.svgomg",
    "sha256_cert_fingerprints": [
          "82:04:C5:DB:19:A8:B9:8A:27:14:F0:3E:F5:23:2C:6B:B6:B9:63:10:F2:F9:CD:44:72:AA:C6:7E:09:E1:1C:47",
          "91:45:8F:34:E3:13:E4:58:1C:12:21:7A:FD:1E:BD:5C:BE:9B:DE:2C:1E:57:DC:0D:2B:0E:91:1D:A6:36:CA:E8"
        ]
      }
    }]

您还需要更新 AndroidManifest.xml,如下所示。

<application>
    ...
    <meta-data android:name="asset_statements"
android:resource="@string/asset_statements" />
    ...
  </application>

为此,我们需要在 strings.xml 文件中添加asset_statements,如下所示。

<string name="asset_statements">
        [{
            \"relation\": [\"delegate_permission/common.handle_all_urls\"],
            \"target\": {
                \"namespace\": \"web\",
                \"site\": \"https://svgomg.firebaseapp.com\"}
        }]
</string>

反斜杠是强制性的。完成所有这些后,请确保您从 Chrome 70 开始针对 chrome dev 原因,不支持 TWA。

于 2018-11-14T04:22:11.750 回答