AppLinks on Android 12 - 仅打开浏览器
AppLinks on Android 12 - opens browser only
我有以下清单代码:
<activity
android:name=".InterceptorActivity"
android:launchMode="singleTask"
android:parentActivityName=".HomeActivity"
tools:ignore="UnusedAttribute"
android:theme="@style/Theme.Startup"
android:exported="true">
<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:scheme="http"/>
<data android:host="www.mysite.com"/>
<data android:pathPrefix="/myPage"/>
<data android:pathPrefix="/myFavourites"/>
</intent-filter>
</activity>
assetlinks.json 看起来不错并且已正确上传。但是所有应用程序link仍然只能在浏览器中打开,我看到该应用程序支持link,但未选中。
同时命令“adb shell pm get-app-links “com.myapp.android” returns
com.myapp.android:
ID: 893......
Signatures: [13:03....DA]
Domain verification state:
www.myapp.com: legacy_failure
为什么?请帮忙。
我确定您已经访问过以下内容link:https://developer.android.com/studio/write/app-link-indexing
稍微改进您的清单以清理代码
<intent-filter android:autoVerify="true" tools:node="merge">
<action android:name="android.intent.action.VIEW"/>
<category android:name="android.intent.category.DEFAULT"/>
<category android:name="android.intent.category.BROWSABLE"/>
<data android:host="${hostName}" android:pathPrefix="/auth/login" android:scheme="https"/>
检查您的 assetlinks.json 文件 https://DOMAIN.well-known/assetlinks.json
我遇到了 Apple M1 芯片的问题 link 在基于英特尔的机器上工作,我提出了理论 Android Studio 未在 M1 机器上验证应用程序 Link
原因是文件语法不正确。
正确的是:
[
{
"relation": [
"delegate_permission/common.get_login_creds"
],
"target": {
"namespace": "web",
"site": "{siteurl}"
}
},
{
"relation": [
"delegate_permission/common.get_login_creds"
],
"target": {
"namespace": "android_app",
"package_name": "com.my.app.android",
"sha256_cert_fingerprints": [
"B4:...:9M"
]
}
},
{
"relation": [
"delegate_permission/common.handle_all_urls"
],
"target": {
"namespace": "android_app",
"package_name": "com.my.app.android",
"sha256_cert_fingerprints": [
"B4...9M"
]
}
},
{
"relation": [
"delegate_permission/common.handle_all_urls"
],
"target": {
"namespace": "android_app",
"package_name": "com.my.app.android.dev",
"sha256_cert_fingerprints": [
"BK...9Q"
]
}
}
]
我有以下清单代码:
<activity
android:name=".InterceptorActivity"
android:launchMode="singleTask"
android:parentActivityName=".HomeActivity"
tools:ignore="UnusedAttribute"
android:theme="@style/Theme.Startup"
android:exported="true">
<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:scheme="http"/>
<data android:host="www.mysite.com"/>
<data android:pathPrefix="/myPage"/>
<data android:pathPrefix="/myFavourites"/>
</intent-filter>
</activity>
assetlinks.json 看起来不错并且已正确上传。但是所有应用程序link仍然只能在浏览器中打开,我看到该应用程序支持link,但未选中。
同时命令“adb shell pm get-app-links “com.myapp.android” returns
com.myapp.android:
ID: 893......
Signatures: [13:03....DA]
Domain verification state:
www.myapp.com: legacy_failure
为什么?请帮忙。
我确定您已经访问过以下内容link:https://developer.android.com/studio/write/app-link-indexing
稍微改进您的清单以清理代码
<intent-filter android:autoVerify="true" tools:node="merge">
<action android:name="android.intent.action.VIEW"/>
<category android:name="android.intent.category.DEFAULT"/>
<category android:name="android.intent.category.BROWSABLE"/>
<data android:host="${hostName}" android:pathPrefix="/auth/login" android:scheme="https"/>
检查您的 assetlinks.json 文件 https://DOMAIN.well-known/assetlinks.json
我遇到了 Apple M1 芯片的问题 link 在基于英特尔的机器上工作,我提出了理论 Android Studio 未在 M1 机器上验证应用程序 Link
原因是文件语法不正确。 正确的是:
[
{
"relation": [
"delegate_permission/common.get_login_creds"
],
"target": {
"namespace": "web",
"site": "{siteurl}"
}
},
{
"relation": [
"delegate_permission/common.get_login_creds"
],
"target": {
"namespace": "android_app",
"package_name": "com.my.app.android",
"sha256_cert_fingerprints": [
"B4:...:9M"
]
}
},
{
"relation": [
"delegate_permission/common.handle_all_urls"
],
"target": {
"namespace": "android_app",
"package_name": "com.my.app.android",
"sha256_cert_fingerprints": [
"B4...9M"
]
}
},
{
"relation": [
"delegate_permission/common.handle_all_urls"
],
"target": {
"namespace": "android_app",
"package_name": "com.my.app.android.dev",
"sha256_cert_fingerprints": [
"BK...9Q"
]
}
}
]