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

测试Android DeepLinking报错:无法解析Intent启动Activity

排查Deep Link无法解析Intent的问题

问题原因分析

从错误日志和你的Manifest配置来看,核心问题有两处:

  1. Scheme大小写不匹配:错误日志里的Intent数据显示为fooApp:///...(首字母大写),但你Manifest中配置的scheme是全小写的fooapp,Android的Intent scheme匹配区分大小写,这会导致系统无法定位到对应Activity。
  2. Host配置不合理:你在<data>标签里设置了android:host="",这种配置无法正确匹配fooapp://这种不带host的URI格式——Android的intent-filter匹配规则中,指定空host时,系统会期望URI包含host部分(哪怕是空值),但fooapp://的格式无法触发该匹配。

解决方案

1. 统一Scheme大小写

确保测试命令的scheme和Manifest配置完全一致,使用全小写格式:

adb shell am start -W -a android.intent.action.VIEW -d "fooapp://"

2. 调整Manifest的Deep Link配置

修改<data>标签,移除多余的android:host=""属性,仅保留scheme即可匹配fooapp://格式的URI:

<!-- Deep Linking for fooapp:// -->
<intent-filter>
    <action android:name="android.intent.action.VIEW" />
    <category android:name="android.intent.category.DEFAULT" />
    <category android:name="android.intent.category.BROWSABLE" />

    <!-- 仅保留scheme,匹配fooapp://格式的URI -->
    <data android:scheme="fooapp" />
</intent-filter>

3. 确保配置生效

修改Manifest后卸载并重新安装应用(避免旧配置缓存),再执行测试命令。若仍有问题,可通过以下命令查看应用已注册的Intent Filter,确认Deep Link配置是否正确:

adb shell dumpsys package your.package.name | grep -A 10 "Intent Filter"

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.18 06:27:38