
Android App Links 验证返回错误码 1024,根本原因在于 assetlinks.json 中缺失关键权限 delegate_permission/common.handle_all_urls,该权限是系统执行自动验证(autoVerify)的强制前提,与是否上架 Play Store 无关。
android app links 验证返回错误码 1024,根本原因在于 `assetlinks.json` 中缺失关键权限 `delegate_permission/common.handle_all_urls`,该权限是系统执行自动验证(autoverify)的强制前提,与是否上架 play store 无关。
App Links 的自动验证机制(由 android:autoVerify="true" 触发)要求服务端的 assetlinks.json 文件必须包含 handle_all_urls 权限声明,否则即使签名、域名、HTTPS 等配置全部正确,系统仍会拒绝验证并返回状态码 1024(含义为 “Verification failed: missing required relation”)。
✅ 正确的 assetlinks.json 结构
您当前的文件仅声明了 common.get_login_creds,这适用于 WebAuthn/Passkey 场景,但不足以启用 App Links 自动验证。必须为 Android App 目标添加 handle_all_urls 权限:
[{
"relation": ["delegate_permission/common.handle_all_urls"],
"target": {
"namespace": "android_app",
"package_name": "com.unibeam.passkey1",
"sha256_cert_fingerprints": [
"55:E2:84:F9:9B:59:82:02:FA:2B:87:B9:90:77:8F:8D:62:3F:32:CC:76:92:47:0C:A8:73:7C:AE:11:8D:B6:0C",
"0E:67:51:BF:E4:C4:01:7F:CB:7D:4C:1E:02:7E:DF:8D:40:25:9A:5C:20:2A:AB:96:71:15:F1:46:40:09:58:3D"
]
}
}]
⚠️ 注意:
handle_all_urls是 App Links 自动验证的唯一必需关系(required relation);get_login_creds属于可选扩展权限,用于 Passkey 登录,不能替代前者。
? 同时确保 Manifest 配置合规
您的 <intent-filter></intent-filter> 基本正确,但需确认两点:
- 必须同时声明
http和httpsscheme(已满足); -
android:host必须与assetlinks.json中声明的域名完全一致(含大小写、无尾斜杠) —— 您使用unibeam.github.io是正确的; -
android:autoVerify="true"已设置,且 intent-filter 位于正确的 Activity 内。
无需在 Play Store 发布即可验证:调试版 APK 安装后,只要签名指纹匹配且 assetlinks.json 可公开访问(HTTP 状态码 200),adb shell pm verify-app-links --re-verify com.unibeam.passkey1 即可触发重验证。
? Passkey 场景的补充配置(可选但推荐)
若需同时支持 Passkey 登录,建议采用双目标结构(Web + Android),并在 assetlinks.json 中追加 Web 站点声明:
[
{
"relation": ["delegate_permission/common.handle_all_urls", "delegate_permission/common.get_login_creds"],
"target": {
"namespace": "android_app",
"package_name": "com.unibeam.passkey1",
"sha256_cert_fingerprints": ["..."]
}
},
{
"relation": ["delegate_permission/common.handle_all_urls", "delegate_permission/common.get_login_creds"],
"target": {
"namespace": "web",
"site": "https://unibeam.github.io"
}
}
]
? 提示:Web 端声明需配合 Android 应用内
DigitalAssetLinksAPI 或asset_statements元标签(见 FIDO Android 文档),但 App Links 验证本身不依赖此步骤。
Android Remote Control下载远程控制 Android 设备,支持截图、自动化操作手机 App 等功能。本应用使用 uiautomator2 作为底层框架,通过 ADB 连接设备,用户无需 Root(1)查看手机屏幕;(2)自动化操作手机 App;(3)远程安装/卸载应用……
✅ 验证与排错流程
使用官方校验工具检查 JSON 格式与可访问性:
https://digitalassetlinks.googleapis.com/v1/statements:list?source.web.site=https://unibeam.github.io&relation=delegate_permission/common.handle_all_urls-
清除旧验证状态并重试:
adb shell pm clear-app-links com.unibeam.passkey1 adb shell pm verify-app-links --re-verify com.unibeam.passkey1
-
查看最终状态:
adb shell pm get-app-links --user cur com.unibeam.passkey1
成功时
unibeam.github.io状态应显示verified,而非1024。
总结:错误码 1024 是明确的配置缺失信号,修复核心在于补全 handle_all_urls 权限。App Links 功能完全离线可用,与应用分发渠道无关;Passkey 支持则在此基础上叠加扩展,二者可协同工作,但验证逻辑彼此独立。











