开源 iOS 设备自动化工具-go-ios 介绍

👉官网/GitHub 仓库:

GitHub - danielpaulus/go-ios: This is an operating system independent implementation of iOS device features. You can run UI tests, launch or kill apps, install apps etc. with it. · GitHub

简介

go-ios 是一个用 Go 语言编写的开源 iOS 设备自动化工具,目标是提供跨平台(Linux、Windows、Mac)的稳定生产级 iOS 设备自动化解决方案。

核心特性

功能 说明
🖥️ 跨平台 Linux / Windows / Mac 通用
📱 安装应用 支持 .ipa 和 .app 格式安装
🧪 运行 XCTests 支持 WebDriverAgent 等 XCTest
🚀 启停应用 启动和关闭 iOS 应用
🔌 调试代理 可逆向工程 Mac 工具
🔗 自动配对 无需手动点击设备配对弹窗
🖼️ 自动安装 Developer Image 运行 ios image auto 自动处理
🌡️ 热状态控制 可设置设备热状态
🌐 网络配置 网络相关控制

安装方式

复制代码
# npm 安装(最简单)

npm install -g go-ios

# 安装后查看帮助

ios --help

# iOS 17+ 需要启动隧道

sudo ios tunnel start

Windows 额外步骤: 需要下载 wintun.dll 放入 C:/Windows/system32/

在 midscene 中的作用

midscene 通过 go-ios 连接 iOS 设备,iOS 17+ 必须通过隧道模式连接(就是你在日志里看到的 Tunnel server started),go-ios 负责建立本地隧道到 iOS 设备的 lockdown 服务。

相关链接

资源 地址
GitHub GitHub - danielpaulus/go-ios: This is an operating system independent implementation of iOS device features. You can run UI tests, launch or kill apps, install apps etc. with it. · GitHub
NPM https://npmjs.org/package/go-ios
Discord https://discord.gg/Zr8J3bCdkv
作者 Twitter @daniel1paulus
作者 Blog https://daniel-paulus.medium.com/

go-ios 是 midscene 等工具在非 Mac 平台连接 iOS 设备的核心底层依赖。