如何通过Windows Subsystem for Android命令行传参启动应用?
解决WSA中通过Windows命令行启动带参数的Android应用问题
核心结论
WsaClient.exe的/launch参数仅支持唤起应用,无法直接传递自定义启动参数到应用。要实现带参数启动,需借助WSA内置的ADB工具执行am start命令,和你之前通过ADB操作的逻辑一致。
具体操作步骤
确认WSA已开启ADB调试
打开WSA设置 → 开发者选项 → 开启「ADB调试」(你已经能通过ADB启动应用,此步骤应该已完成)。在Windows命令行中执行带参数的启动命令
直接调用WSA的ADB工具发送带参数的Intent,命令格式如下:- 若ADB已添加到系统环境变量
PATH:adb shell am start -n com.myproject.testparameters/.你的主Activity类名 -e 参数键1 参数值1 -e 参数键2 参数值2 - 若未配置环境变量,使用WSA自带的ADB完整路径:
C:\Users\myuser\AppData\Local\Packages\MicrosoftCorporationII.WindowsSubsystemForAndroid_8wekyb3d8bbwe\LocalState\platform-tools\adb.exe shell am start -n com.myproject.testparameters/.你的主Activity类名 -e 参数键1 参数值1 -e 参数键2 参数值2
替换其中的
com.myproject.testparameters为你的应用包名,.你的主Activity类名为启动Activity的完整类名(如.MainActivity),参数键和参数值替换为你需要传递的内容。- 若ADB已添加到系统环境变量
(可选)确保ADB已连接到WSA
若执行命令时提示设备未连接,先执行连接命令:adb connect 127.0.0.1:58526端口号可在WSA开发者选项中查看「ADB连接地址」确认。
补充说明
WsaClient.exe无公开的传参参数,调用/help无输出是正常现象,官方未提供该工具的详细参数说明。- 此方法完全等价于你之前通过ADB启动应用的操作,只是直接在Windows命令行中调用WSA的ADB工具完成。
内容的提问来源于stack exchange,提问作者Jafuentes
相关产品推荐
相关产品推荐

