Android Studio获取keystore的sha-256指纹报错如何手动生成assetlinks.json
问题解决方案
一、报错排查遗漏配置项
- 检查keystore文件路径是否包含中文、空格或者特殊字符,Arctic Fox版本对非ASCII字符路径的解析存在已知bug,会导致无法正常读取keystore提取指纹
- 核对填写的keystore密码、alias别名、alias密码是否完全匹配,注意输入时不要误带前后空格,该版本的Assistant输入框不会自动 trim 首尾空白字符
- 确认debug keystore的配置是否正确,Windows默认路径是
C:\Users\你的用户名\.android\debug.keystore,Mac/Linux默认路径是~/.android/debug.keystore,debug keystore默认密码为android,默认alias为androiddebugkey,alias默认密码同样为android - 检查项目build.gradle配置中对应构建变体下是否配置了正确的签名信息,签名配置未同步到构建变体时Assistant也会读取失败
二、手动创建assetlinks.json方法
完全可以不依赖App Links Assistant手动生成,操作步骤如下:
- 手动提取keystore的SHA256指纹,打开终端执行命令:
keytool -list -v -keystore 你的keystore文件路径 -alias 你的alias名称
如果执行keytool命令提示找不到指令,先切换到本地JDK或者Android SDK内置JDK的bin目录下执行即可,输入对应密码后,复制输出中SHA256字段的完整值 - 创建名为
assetlinks.json的文件,内容格式如下:
[ { "relation": ["delegate_permission/common.handle_all_urls"], "target": { "namespace": "android_app", "package_name": "你的应用包名", "sha256_cert_fingerprints": ["你刚才提取的SHA256指纹"] } } ]
- 将该文件上传到你的网站根目录下的
.well-known文件夹内,确保访问https://你的域名/.well-known/assetlinks.json可以正常获取到文件内容即可
内容的提问来源于stack exchange,提问作者AndroidDev
相关产品推荐
相关产品推荐

