Mac M1 平台搭建 appium 环境

前言:

楼主使用的Mac 是M1芯片的,网上很多教程都是基于intel 芯片的,所有步骤都是楼主自己根据网上教程和遇到的问题各种摸索出来的,原创文章,转载需标注

设备:
Mac Book pro (macOS Big Sur 版本 11.4  M1芯片)

所需环境:

 - 安装JDK并设置环境变量
 - 安装Android SDK并设置环境变量
 - 安装homebrew
 - 安装nodejs
 - 安装xcode(直接去app store中下载即可)
 - 安装appium,appium-doctor
 - 下载appium-desktop.app

特别注意:关于配置环境变量,基于M1 的SHELL是zsh,所以需要把环境变量配置在~/.zshrc 中。非M1芯片配置在~ /etc/.bash_profile中。(因为我是后面才发现这点的,所以前面JDK配置到了~ /etc/.bash_profile中,后面发现了才迁移的,小伙伴们提前确定自己的配置文件地址)



一、搭建Java环境

1. 下载 jdk:Java Downloads | Oraclehttps://www.oracle.com/java/technologies/javase/javase-jdk8-downloads.html

2. 安装: 

小白安装,一直继续就好

备注:楼主下载了jdk1.8.0.271 的版本,配置sdk时,打开tools 文件下android一直失败,最后换成了jdk1.8.0.221版本才成功

3. 安装路径:

Java安装在:/Library/Java/JavaVirtualMachines 这个目录下面(如果没有,可以通过cp 命令将jdk包复制到/Library/Java/JavaVirtualMachines目录

Java的主目录在:

/Library/Java/JavaVirtualMachines/jdk1.8.0_221.jdk/Contents/Home

这里里面,我们配置Java的环境变量也是这个目录

4. 配置环境变量:

在终端内打开 ~ /etc/.bash_profile(非M1芯片)

新建一个 .bash_profile ,打开该文件 

 配置环境变量信息Mac M1 平台搭建 appium 环境_第1张图片具体内容复制如下:

JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_211.jdk/Contents/Home
PATH=$JAVA_HOME/bin:$PATH:.
CLASSPATH=$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar:.
export JAVA_HOME
export PATH
export CLASSPATH

 配置完成,需要source .bash_profile 使文件生效

通过查询 echo $JAVA_HOME ,查询结果与配置匹配,即表示配置成功

二、 安装android-sdk
方法一:

进入以下链接下载:AndroidDevTools - Android开发工具 Android SDK下载 Android Studio下载 Gradle下载 SDK Tools下载https://www.androiddevtools.cn/#Mac M1 平台搭建 appium 环境_第2张图片

Mac M1 平台搭建 appium 环境_第3张图片

2. 安装:

下载完成后,进入对应的路径,选中Android sdk包下的tools文件夹,按下command+option+c按钮,复制当前路径,然后进入终端,粘贴刚才的路径,将目录切换至tools目录下后,在终端输入“./Android”打开SDK Manager的图形界面 (简单点就是在tools目录下双击android打开SDK Manager的图形界)

打开的管理界面如下,选中前3项进行安装就可以了:
    

Mac M1 平台搭建 appium 环境_第4张图片

下一步把两项都勾选上:

Mac M1 平台搭建 appium 环境_第5张图片

配置环境变量:在终端中输入 open .bash_profile,打开配置文件后在文件中添加以下2行:

export JAVA_HOME=$(/usr/libexec/java_home)
export ANDROID_HOME=/usr/local/android-sdk-macosx

command + c 保存后,在终端中输入 source .bash_profile,保存本次配置。

注:这种方法网上一堆教程,但是楼主的Mac pro使用的是M1芯片,不知道哪里出错,SDK manager 管理器打开后无法进行点击操作,找了很久都没有解决办法,因此放弃这种方法,通过安装android studio 来下载SDK,步骤如下。

方法二:安装android studio

1、进入官网,选择正确的资源包 

Mac M1 平台搭建 appium 环境_第6张图片

2、下载完成后,双击打开,开始安装

Mac M1 平台搭建 appium 环境_第7张图片Mac M1 平台搭建 appium 环境_第8张图片

 Mac M1 平台搭建 appium 环境_第9张图片Mac M1 平台搭建 appium 环境_第10张图片

选择自己想要的版本进行下载,直至成功

配置环境变量,基于M1 的SHELL是zsh,看过网上的一些解答,楼主把jdk的配置也移到了~/.zshrc 中

首先在终端 open ~/.zshrc ,如果没有则touch一个

然后配置以下内容

# jdk
export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_211.jdk/Contents/Home/(注:这里的jdk版本根据自己下载的变更)
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export PATH=$JAVA_HOME/bin:$PATH:

# Android SDK
export ANDROID_HOME=/Users/lumi/Library/Android/sdk
export PATH=${PATH}:${ANDROID_HOME}/platform-tools
export PATH=${PATH}:${ANDROID_HOME}/tools
export PATH=${PATH}:${ANDROID_HOME}/platforms
export PATH=${PATH}:${ANDROID_HOME}/build-tools/31.0.3(注:这里的build- tools版本号根据自己在sdk manager 安装的变更)

执行命令 source ~/.zshrc 使配置生效

输入adb 验证sdk安装配置成功

Mac M1 平台搭建 appium 环境_第11张图片

三、安装Homebrew 

 Homebrew 简称 brew,是Mac OSX上的软件包管理工具,能在Mac中方便的安装软件或者卸载软件

安装:

打开终端,输入命令后等待完成即可

/bin/zsh -c "$(curl -fsSL https://gitee.com/cunkai/HomebrewCN/raw/master/Homebrew.sh)"

四、安装nodejs

安装 npn 前需要先安装nodejs

打开终端,输入命令后等待完成即可

brew install node

接着安装npm,国内的可以直接用淘宝的npm,避免掉各种网络问题

npm install -g cnpm --registry=https://registry.npm.taobao.org

五、安装Xcode

直接在App store中搜索xcode,下载安装

Mac M1 平台搭建 appium 环境_第12张图片

安装成功后在终端可以查看到版本号

六、安装python(顺带下载,网上的教程基本没说要安装python)

这里我们使用阿里的镜像地址点此进入,截止目前最新支持ARM版的是3.9.1,点击此版本

 

下载完成后开始安装,一直下一步就好,直至完成 

 在终端中输入python 查看是否安装成功,如下则成功

 Mac 环境自动存在python2.7,在安装完python 3.9.1后,可以通过配置,使默认指向python3.9.1

(1)Python3安装路径 在 /Library/Frameworks/Python.framework/Versions
(2)打开.bash_profile文件 :open .zshrc
(3)在文件里添加环境变量地址,如下:

alias python=/Library/Frameworks/Python.framework/Versions/3.9/bin/python3.9 
export PYTHON_HOME=/Library/Frameworks/Python.framework/Versions/3.9
export PATH=$PATH:$PYTHON_HOME/bin

source ~/.zshrc 是配置生效

备注:which python3.9 查到 /usr/local/bin/python3.9 是它的快捷方式存在路径

再次在终端输入python,查看是否是python3.9.1,如下,修改生效

 七、安装appium desktop版本

1、官网地址:https://github.com/appium/appium-desktop/releases

2、下载版本
Mac M1 平台搭建 appium 环境_第13张图片

3、安装:下载完成后打开进行安装即可

八、环境验证

以上步骤便是Mac 搭建appium 所需的全部环境,接下来需要对安装的环境正确性进行验证

安装 appium-doctor:npm install appium-doctor -g(如果权限被限制,加上sudo)

开始检查,在终端输入:appium-doctor

框框里的所有内容都☑️时,证明环境配置都正确了,如果有错误的地方,一定要进行修复

 九、appium-doctor 查出问题&解决

1、homebrew 安装后执行 brew install 报错

Error: /usr/local/Homebrew is not writable. You should change the
ownership and permissions of /usr/local/Homebrew back to your
user account:
sudo chown -R $(whoami) /usr/local/Homebrew
Error: The following directories are not writable by your user:
/usr/local/Homebrew
 
You should change the ownership of these directories to your user.
sudo chown -R $(whoami) /usr/local/Homebrew
 
And make sure that your user has write permission.
chmod u+w /usr/local/Homebrew

解决方法:
出现这种错误,就是环境变量出错了,M1安装homebrew 的路径是在 /opt/homebrew中,环境变量需要指向正确的路径

# home-brew
export PATH=/opt/homebrew/bin:$PATH
export PATH=/opt/homebrew/sbin:$PATH

2、Error running xcrun simctl

解决方法: 安装Xcode
 

3、Carthage was NOT found!

解决方法:终端运行下面的命令

 brew install carthage

4、ANDROID_HOME environment variable is NOT set!

解决方法:由于目前没有适配与M1的Android SDK,所以我们通过安装android studio 解决,参考文章上面的步骤,正确配置环境变量

   export ANDROID_HOME=/Users/gao/Library/Android/sdk
   export PATH=${PATH}:${ANDROID_HOME}/platform-tools
   export PATH=${PATH}:${ANDROID_HOME}/tools
   export PATH=${PATH}:${ANDROID_HOME}/platforms
   export PATH=${PATH}:${ANDROID_HOME}/build-tools/31.0.3(楼主装的是31.0.3版本,这里需要替换成你自己装的版本,可以在android studio的sdk manager查看到)

5、JAVA_HOME environment variable is NOT set!

解决方法出现这种错误基本还是环境变量出错了

# jdk
export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_211.jdk/Contents/Home/(Java环境基本安装在这里,如果是M1,还可用zulu jdk,这个是适配Arm架构的jdk,自动会配置好环境变量,简单)
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export PATH=$JAVA_HOME/bin:$PATH:

6、adb, android, emulator could not be found because ANDROID_HOME or ANDROID_SDK_ROOT is NOT set
解决方法:把问题4解决了,这个问题也就解决了

7、DevToolsSecurity is NOT enable

解决方法:

楼主在检查的时候,发现Xcode Command Line Tools are installed in:/Applications/Xcode.app/Contents/Developer 是正确的,只有DevToolsSecurityis 提示enable,经过各种查找最后找到解决方法

在终端输入

 /usr/sbin/DevToolsSecurity -enable

输入用户密码后就开启成功了,重开终端再次检查,就没问题了

十、总结

Mac M1芯片 搭建appium网上的教程真的不多,很多问题在网上都找不到解决方案,全部都是自己一步步摸索的,现在记录此文,一是为了自己以后再搭建环境可以有完整的教程,二是为其他使用M1芯片的小伙伴顺利搭建环提供便利,希望真的能帮助到大家,如有转载,需要标注文章原创处处。

以上便是appium 环境搭建的全部过程,撒花!

你可能感兴趣的:(appium,java,android,sdk)