appium+android各配置参数获取'platformName'、'platformVersion'、appActivity、deviceName、webdriver.Remote
----------------------------------------------------------------------------------------------
--------------------------------------------------------------------------------------------
1 | adb shell getprop ro.build.version.release # 获取PlatformVersion |
1 | adb devices - l # 获取deviceName |
1 | adb shell dumpsys activity | findstr "mResume" # 获取appPackage和appActivity |
第一个命令结果是12,即Android系统版本(platformVersion)是12
第二个命令查看设备的详细信息,JAD-AL50 是设备名(deviceName)
第三个命令可以找到你当前手机正在打开的应用信息,也就是说你要测什么app就提前打开这个app,然后通过第三个命令获取这个app的信息,后面appium连接的时候就会打开这个app。
我打开的是”今日头条“,所以,
com.ss.android.article.news 就是对应的appPackage
.activity.MainActivity 就是对应的appActivity
------------------------------------------------------------------------------------------------------------------------
-----------------------------------------------------------------------------------------------------------------------
如果开发有给apk,那么可以在电脑上获得appPackage和appActivity
其他参数noReset、dontStopAppOnReset、skipDeviceInitialization、unicodeKeyBoard
1 2 3 4 | "noReset" : "true" , / / 不清空缓存信息 "dontStopAppOnReset" : "true" , / / 首次启动的时候,不停止app "skipDeviceInitialization" : "true" , / / 跳过安装,权限设置等操作 "unicodeKeyBoard" : "true" / / 输入中文 |
其他获取方法:
appPackage 可以通过uiautomator获取

图中1的获取--'platformName'、'platformVersion'(也可以直接通过真机或模拟机查看)
点击appium右上角的运行按钮,可通过上面查看platformName 和 platformVersion
平台版本这边填写的是API的版本,用最新版的 AppiumDesktop运行时一直报下面的错误:
An unknown server-side error occurred while processing the command. Original error: Unable to find an active device or emulator with OS 23. The following are available: M************O (5.1.1)
这时候将平台版本改为“5.1.1”后再次运行,结果正常.
图中2的获取--appActivity
优先:更多查看
adb shell
dumpsys activity|grep mFocusedActivity
如果没有结果,第二行试着用
1 | dumpsys activity|grep mFocusedWindow |
可以同时获取到appPackage和appActivity
斜杠前面是appPackage:com.ss.android.article.news
斜杠后面是appActivity : com.ss.android.article.news.activity.MainActivity
法一:
Cmd-->adb shell-->dumpsys package <包名>
法二:
adb shell
monkey -p 包名 -v -v -v 1
获取到的日志中cmp={}的就是启动activity
法三:
appPackage和appActivity的获取
“adb shell dumpsys window w |findstr \/ |findstr name=” 命令获取(需要提前将APP在手机上打开)
但是通过验证,上面方式获取到的appActivity,运行时启动页activity会报错(目前不知道该问题出在哪里)
法四:
Cmd-->adb shell-->dumpsys window windows | grep -E ‘mCurrentFocus
但是通过验证,上面方式获取到的appActivity,运行时启动页activity会报错(目前不知道该问题出在哪里)
注意:cmd terminal的查找命令在linux和mac操作系统中对应关键字时grep,在Windows操作系统中对应关键字是 findstr
图中3的获取--deviceName
adb devices即可
图中4的获取--webdriver.Remote
远程控制,通过appium可设置;若是真机,直接填写http://localhost:4723/wd/hub 或者http://127.0.0.1:4723/wd/hub即可
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?