You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用applicationIdSuffix后Android Deeplink失效问题求助

解决Debug版本Deeplink失效问题

针对你遇到的Debug版本添加applicationIdSuffix后Deeplink无法工作的问题,按以下步骤排查修复:

1. 修正关联文件中的非法指纹

你的assetlinks.json里第一个SHA256指纹包含非法字符6Q(SHA256仅允许0-9、A-F字符),这会直接导致系统验证失败。删除或替换这个无效指纹,确保所有指纹格式合法。

2. 确保Debug签名指纹正确配置

Debug版本默认使用Android Studio自带的debug keystore,你需要获取该签名的SHA256并添加到关联文件中:

  • 执行命令获取Debug指纹:
    keytool -list -v -keystore ~/.android/debug.keystore -alias androiddebugkey -storepass android -keypass android
    
    Windows环境替换路径为C:\Users\<你的用户名>\.android\debug.keystore
  • 将获取到的SHA256指纹添加到assetlinks.json的sha256_cert_fingerprints数组中,确保对应Debug包名com.app.test.debug。

3. 验证关联文件的可访问性

确保assetlinks.json放置在网站的.well-known目录下,且能通过HTTPS正常访问:

  • 访问https://<你的域名>/.well-known/assetlinks.json,确认返回的JSON格式正确、无语法错误,且包名、指纹与Debug版本完全匹配。
  • 清除浏览器缓存,避免读取旧的无效文件。

4. 检查系统验证状态

使用adb命令查看Deeplink的验证状态:

adb shell dumpsys package domain-preferred-apps

找到你的域名*.app.test.com,查看对应的status是否为verified。如果是unverified,说明关联文件配置仍有问题,回到前面步骤排查。

5. 确认Manifest配置无差异

你的AndroidManifest中的intent-filter配置全局生效,Debug版本可直接继承,但需确认:

  • 没有在build.gradle.kts的debug构建类型中通过manifestPlaceholders或其他方式修改intent-filter参数。
  • 保留android:autoVerify="true",这是启用自动验证的关键。

完成以上步骤后,卸载Debug版本并重新安装,再测试Deeplink即可正常工作。

内容的提问来源于stack exchange,提问作者El_even

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.04 13:22:05