问题 Android Intent Data Uri查询参数


我试图使用这样的意图启动我的应用程序:

adb shell am start -a android.intent.action.VIEW -d "my_scheme://my_host?queryParam1=QueryParam1&queryParam2=QueryParam2"

(我已使用方案“my_app_scheme”和主机“my_host”注册了数据意图过滤器)

但是,当我这样做

getIntent().getData()

我得到的只是URI

"my_scheme://my_host?queryParam1=QueryParam1"

只有第一个查询参数设置在 getIntent().getData()。你知道为什么会这样吗?我该如何解决?


10028
2018-04-07 19:46


起源



答案:


通过使用“\”转义“&”来尝试它

adb shell am start -a android.intent.action.VIEW -d "my_scheme://my_host?queryParam1=QueryParam1\&queryParam2=QueryParam2"

12
2018-04-07 20:35



这对我来说根本不起作用。我将以下内容放在KitKat和Lollipop设备上 - adb shell am start -a android.intent.action.VIEW -d“my_scheme:// my_host?queryParam1 = QueryParam1 \&queryParam2 = QueryParam2”Starting:Intent {act = android.intent.action.VIEW dat = my_scheme:// my_host?queryParam1 = QueryParam1 \} - Matthew
事实证明平台工具版本21存在一个错误。此处为OP stackoverflow.com/questions/13615841/... - faridghar


答案:


通过使用“\”转义“&”来尝试它

adb shell am start -a android.intent.action.VIEW -d "my_scheme://my_host?queryParam1=QueryParam1\&queryParam2=QueryParam2"

12
2018-04-07 20:35



这对我来说根本不起作用。我将以下内容放在KitKat和Lollipop设备上 - adb shell am start -a android.intent.action.VIEW -d“my_scheme:// my_host?queryParam1 = QueryParam1 \&queryParam2 = QueryParam2”Starting:Intent {act = android.intent.action.VIEW dat = my_scheme:// my_host?queryParam1 = QueryParam1 \} - Matthew
事实证明平台工具版本21存在一个错误。此处为OP stackoverflow.com/questions/13615841/... - faridghar