UIAutomatorViewer 安装指南 (macOS m3pro 芯片)

UIAutomatorViewer 安装指南 (macOS m3pro 芯片)

环境信息

  • 系统:macOS (Apple Silicon / M 系列芯片)
  • Java:OpenJDK 25.0.1 (Homebrew 安装)
  • 安装日期:2025 年 11 月 28 日

一、安装步骤

1. 安装 Maven(临时使用,完成后可卸载)

bash 复制代码
brew install maven
mvn -version  # 验证安装

2. 克隆项目代码

bash 复制代码
cd /Users/wang/Library/Android/sdk/platform-tools
git clone https://github.com/cmlanche/uiautomatorviewer-standalone.git

3. 替换 SWT 库(适配 macOS ARM64)

原项目的 SWT 库是 Windows 版本,需要下载 macOS ARM64 版本:

bash 复制代码
# 下载 macOS ARM64 版本的 SWT
curl -L -o /tmp/swt-macos.zip "https://download.eclipse.org/eclipse/downloads/drops4/R-4.29-202309031000/swt-4.29-cocoa-macosx-aarch64.zip"

# 解压
cd /tmp && unzip -o swt-macos.zip -d swt-macos

# 替换项目中的 swt.jar
cp /tmp/swt-macos/swt.jar /Users/wang/Library/Android/sdk/platform-tools/uiautomatorviewer-standalone-1.0/libs/swt.jar

4. Maven 打包

bash 复制代码
cd /Users/wang/Library/Android/sdk/platform-tools/uiautomatorviewer-standalone-1.0
mvn clean package -DskipTests

5. 复制 jar 包到 adb 同级目录

bash 复制代码
cp target/uiautomatorviewer-standalone-1.1-all.jar /Users/wang/Library/Android/sdk/platform-tools/

6. 配置快捷命令

将以下内容添加到 ~/.zshrc

bash 复制代码
# UIAutomatorViewer 快捷命令
alias uiviewer="cd /Users/wang/Library/Android/sdk/platform-tools && /opt/homebrew/Cellar/openjdk/25.0.1/libexec/openjdk.jdk/Contents/Home/bin/java -XstartOnFirstThread -jar ./uiautomatorviewer-standalone-1.1-all.jar"

使配置生效:

bash 复制代码
source ~/.zshrc

7. 清理(可选)

bash 复制代码
# 删除临时文件
rm -rf /tmp/swt-macos /tmp/swt-macos.zip

# 删除源代码目录
rm -rf /Users/wang/Library/Android/sdk/platform-tools/uiautomatorviewer-standalone-1.0

# 卸载 maven(不再需要)
brew uninstall maven

二、使用方法

在任意终端输入:

bash 复制代码
uiviewer

即可启动 UIAutomatorViewer。


三、重要说明

  1. 必须使用 Java 17+:新版 SWT 库需要 Java 17 或更高版本,本机使用 Java 25
  2. 必须在 adb 目录下运行:程序需要调用 adb,所以 jar 包必须放在 adb 同级目录
  3. 必须使用 -XstartOnFirstThread 参数:这是 macOS 上 SWT 应用的要求

四、文件位置

文件 路径
jar 包 /Users/wang/Library/Android/sdk/platform-tools/uiautomatorviewer-standalone-1.1-all.jar
adb /Users/wang/Library/Android/sdk/platform-tools/adb
Java /opt/homebrew/Cellar/openjdk/25.0.1/libexec/openjdk.jdk/Contents/Home/bin/java

相关推荐
我命由我1234510 小时前
Kotlin 开发 - lateinit 关键字
android·java·开发语言·kotlin·android studio·android-studio·android runtime
Yang-Never2 天前
Git -> Git Worktree 工作树
android·开发语言·git·android studio
小北的博客3 天前
如何在 Android studio 中使用 cursor 插件
android studio·intellij-idea·ai编程·android-studio·插件·cursor
码云数智-园园4 天前
PHP 8.x 命名的参数与属性(Attribute):告别注释,构建真正的元数据
android·ide·android studio
shuangrenlong5 天前
android studio突然一直importing卡住
android·ide·android studio
大黄说说5 天前
匹配表达式 vs. Switch语句:现代PHP中的条件逻辑重构
android·ide·android studio
我命由我123455 天前
Kotlin 开发 - 双冒号操作符(引用顶层函数、引用成员函数、引用构造函数、引用属性、引用类)
android·java·开发语言·kotlin·android studio·android jetpack·android-studio
我命由我123455 天前
Kotlin 开发 - sealed 关键字
android·java-ee·kotlin·android studio·android jetpack·android-studio·android runtime
我命由我123456 天前
Java 开发 - CountDownLatch 不需要手动关闭
android·java·开发语言·jvm·kotlin·android studio·android-studio
我命由我123456 天前
Android 广播 - 显式广播与隐式广播
android·java·开发语言·java-ee·kotlin·android studio·android-studio