更新:20170703 使用Android Studio 3.0 Canary 5 修改了一些AndroidManifest和build.gradle文件,
Base& AndroidManifest和App的AndroidManifest从内到内移动,如下所示:
<application ...>
<meta-data android:name="asset_statements" android:resource="@string/asset_statements" />
<activity ...>
</application>
resource asset_statements:
<string name="asset_statements">[{\n \"relation\": [\"delegate_permission/common.handle_all_urls\"],\n \"target\": {\n \"namespace\": \"web\",\n \"site\": \"https://example.com\",\n }\n}]</string>
网络验证成功通过(见下方截图),上传了新的APK和ZIP(即时应用),但仍然存在无法推出即时应用的问题。
通过&#34;实时聊天&#34;联系谷歌Playstore支持,承诺将在几天后回复但仍无响应。
------旧帖子------- 我正在使用Android Studio 3.0 Canary 4(预览版)。
Installable APK和Instant App(zip)都已成功上传。
Installable APK已经推出。
我只有1个Base模块(功能模块),在Base的AndroidManifest中只有1个活动:
<application
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:roundIcon="@mipmap/ic_launcher"
android:supportsRtl="true"
android:theme="@style/AppTheme"
>
<activity
android:name="com.example.test.app.base.activity.MainActivity"
android:configChanges="locale|layoutDirection|orientation|keyboardHidden|screenSize"
android:windowSoftInputMode="adjustResize"
android:launchMode="singleTop"
>
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
<category android:name="android.intent.category.LAUNCHER"/>
</intent-filter>
<meta-data
android:name="default-url"
android:value="https://example.com/instantapp/.*" />
<meta-data
android:name="asset_statements"
android:resource="@string/asset_statements" />
<intent-filter android:order="1" 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="http" />
<data android:scheme="https" />
<data android:host="example.com" />
<data android:pathPattern="/instantapp/.*"/>
</intent-filter>
</activity>
</application>
我的assets_statements在/res/string.xml中定义:
<string name="asset_statements" translatable="false">
[{
\"include\": \"https://example.com/.well-known/assetlinks.json\"
}]
</string>
错误 在开始发布此版本之前解决这些错误。
您的网站&#39; mysite.com&#39;尚未通过Digital Assets Link协议链接到您的应用。请通过Digital Assets Link协议将您的网站链接到您的应用。
警告
注意:example.com仅用于替换我的真实域名。
请帮我理解有什么问题以及如何解决?
答案 0 :(得分:2)
如果您使用Google Play App Signing,则您的本地密钥库包含上传密钥,该密钥与应用程序签名密钥不同。
在这种情况下,使用keytool获取的SHA256指纹不是您应该包含Digital Assets Link json文件的指纹。
可以在Google Play控制台的“发布管理/应用程序签名/应用程序签名证书”下获取正确的SHA256指纹。
答案 1 :(得分:0)
您需要在深层链接中使用路径模式: 确保您使用的是实际域而不是example.com
https://example.com/instantapp