使用ADB启动具有多个查询字符串参数的网页

本文关键字:字符串 查询 参数 网页 ADB 启动 使用 | 更新日期: 2023-09-27 18:03:00

我正在尝试在虚拟android设备中启动一个网页。页面的地址接受多个查询字符串参数。由于某些原因,当在所有参数中传递url时,在第一个&(包括&)

我有一个非常简单的c# WinForm应用程序来测试这个。我使用MadBee NuGet包发送命令到android虚拟机。

当我发送命令时,我看到url被加载,但正如我所描述的,它缺少第一个&

之后的参数下面是我调用的代码片段:
command = "am start -a android.intent.action.VIEW -d http://w18299:8009/Assignment/manage?assigner=57072352&unitID=6443&secret=asdasdasdasdasd&assignee=57072352";
ConsoleOutputReceiver creciever = new ConsoleOutputReceiver();
device.ExecuteShellCommand(command, creciever);

有没有人知道为什么这些参数不能在Android上使用?

使用ADB启动具有多个查询字符串参数的网页

你的参数"make it across to Android"很好。您没有意识到的是,您的命令正在被设备端的Android shell解析,并且&对它具有特殊含义。要阻止shell&视为特殊符号,请使用如下引号:

command = "am start -a android.intent.action.VIEW -d 'http://w18299:8009/Assignment/manage?assigner=57072352&unitID=6443&secret=asdasdasdasdasd&assignee=57072352'";