iOS升级后Appium Inspector无法正常工作的解决求助
iOS 15.6升级后Appium Inspector卡在“Gathering initial app source”循环的解决方案
问题背景
此前iOS移动端自动化配置运行正常,升级iOS设备至15.6版本后功能失效。已同步升级Xcode至13.4.1、Appium Desktop至1.22.3、Appium Inspector至2022.7.1,Xcode可正常访问iOS设备,但Appium Inspector持续显示“Gathering initial app source”并陷入循环,且无法降级iOS版本。
具体解决步骤
1. 手动编译并验证WebDriverAgent
- 找到WebDriverAgent项目路径:通常位于Appium安装目录下的
node_modules/appium-xcuitest-driver/WebDriverAgent,用Xcode打开WebDriverAgent.xcodeproj。 - 配置签名:在Xcode中选择对应iOS设备,设置正确的开发者签名(需与Xcode访问设备的签名一致),直接编译项目到目标设备,确保编译无报错。
- 验证运行:在iOS设备上确认WebDriverAgent图标存在,或通过终端执行
idevicedebug run com.facebook.WebDriverAgentRunner启动服务,检查是否有启动失败的报错信息。
2. 调整Appium Inspector的Capabilities参数
- 确认
udid准确性:用终端执行idevice_id -l获取设备真实UDID,替换Inspector配置中的udid值,避免自动识别错误。 - 增加超时参数:在Capabilities中添加
wdaLaunchTimeout: 300000(5分钟)和wdaConnectionTimeout: 60000,给WebDriverAgent足够的启动和连接时间(iOS15.6对权限验证更严格,启动速度变慢)。 - 禁用预编译WDA:添加
usePrebuiltWDA: false,强制Appium重新编译适配当前iOS版本的WebDriverAgent,避免预编译版本不兼容。
3. 检查设备权限与信任设置
- 信任开发者证书:进入iOS设备「设置」-「通用」-「VPN与设备管理」,确认WebDriverAgent对应的开发者证书已被信任。
- 验证设备状态:在Xcode的「Window」-「Devices and Simulators」中,选中目标设备,确保「Show as run destination」已勾选,设备状态显示为「Ready」。
- 重启服务与设备:重启iOS设备和Appium Desktop服务,清除权限缓存后重新尝试连接。
4. 确认组件版本兼容性
- 更新XCUITest Driver:终端执行
appium driver list查看xcuitest驱动版本,需确保版本支持iOS15.6(建议4.20.0及以上),若版本过低执行appium driver update xcuitest更新。 - 校验Xcode命令行工具路径:执行
xcode-select -p,确认路径指向Xcode13.4.1的安装目录(默认/Applications/Xcode.app/Contents/Developer),若路径错误执行sudo xcode-select -s /Applications/Xcode.app/Contents/Developer修正。
内容的提问来源于stack exchange,提问作者Robot1988
相关产品推荐
相关产品推荐

