Appium ANDROID_主页环境变量问题

Appium ANDROID_主页环境变量问题,appium,Appium,祝大家新年快乐,如果有人能帮我解决这个问题,我将不胜感激 我刚刚在MAC OS High Sierra v 10.13.2上安装了appium 1.7.2服务器,通过下面的命令运行appium。 appium-a 127.0.0.1-p 4723--日志级别=调试 下面是我的.bash_档案 n.nadarajah@EGHJ-MACRDV01 ~ $ cat ~/.bash_profile # Setting PATH for Python 2.7 # The original version

祝大家新年快乐,如果有人能帮我解决这个问题,我将不胜感激

我刚刚在MAC OS High Sierra v 10.13.2上安装了appium 1.7.2服务器,通过下面的命令运行appium。
appium-a 127.0.0.1-p 4723--日志级别=调试


下面是我的.bash_档案

n.nadarajah@EGHJ-MACRDV01 ~ $ cat ~/.bash_profile
# Setting PATH for Python 2.7
# The original version is saved in .bash_profile.pysave
ANDROID_HOME=/Users/n.nadarajah/Library/Android/sdk
JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_151.jdk/Contents/Home
ANDROID_PLATFORM_TOOLS=$ANDROID_HOME/platform-tools
ANDROID_TOOLS=$ANDROID_HOME/tools
PATH="/Library/Frameworks/Python.framework/Versions/2.7/bin:${PATH}:$JAVA_HOME:$ANDROID_HOME:
$ANDROID_PLATFORM_TOOLS:$ANDROID_TOOLS"
export PATH
n.nadarajah@EGHJ-MACRDV01 ~ $ echo $ANDROID_HOME
/Users/n.nadarajah/Library/Android/sdk

回显$ANDRIOD_HOME env变量

n.nadarajah@EGHJ-MACRDV01 ~ $ cat ~/.bash_profile
# Setting PATH for Python 2.7
# The original version is saved in .bash_profile.pysave
ANDROID_HOME=/Users/n.nadarajah/Library/Android/sdk
JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_151.jdk/Contents/Home
ANDROID_PLATFORM_TOOLS=$ANDROID_HOME/platform-tools
ANDROID_TOOLS=$ANDROID_HOME/tools
PATH="/Library/Frameworks/Python.framework/Versions/2.7/bin:${PATH}:$JAVA_HOME:$ANDROID_HOME:
$ANDROID_PLATFORM_TOOLS:$ANDROID_TOOLS"
export PATH
n.nadarajah@EGHJ-MACRDV01 ~ $ echo $ANDROID_HOME
/Users/n.nadarajah/Library/Android/sdk

下面是关于测试执行的Appium日志。

n.nadarajah@EGHJ-MACRDV01 ~ $ appium -a 127.0.0.1 -p 4723 --log-l . 
level=debug
info: Welcome to Appium v1.4.16 (REV 
ae6877eff263066b26328d457bd285c0cc62430d)
info: Appium REST http interface listener started on 127.0.0.1:4723
info: [debug] Non-default server args: {"address":"127.0.0.1"}
info: Console LogLevel: debug
info: --> POST /wd/hub/session {"capabilities":{"alwaysMatch":
{"platformName":"Android"},"firstMatch":
[{}]},"desiredCapabilities":{"deviceName":"Android 
Emulator","app":"/Users/n.nadarajah/sites/Resilient-
QA/EndToEndTesting/apks/app-
debug.apk","platformName":"Android","automationName":"appium",
"appPackage":"com.resilientplc.smartnumbers.debug"}}
info: Client User-Agent string: Python http auth
info: [debug] No appActivity desired capability or server param. 
Parsing from apk.
info: [debug] Using local app from desired caps: 
/Users/n.nadarajah/sites/Resilient-QA/EndToEndTesting
/apks/app-debug.apk
info: [debug] Creating new appium session 
a5cfbee9-bcd6-41af-a90c-0389ab244d2c
info: Starting android appium
info: [debug] Getting Java version
info: Java version is: 1.8.0_151
info: [debug] Checking whether adb is present
warn: The ANDROID_HOME environment variable is not set to the Android 
SDK root directory path. 
ANDROID_HOME is required for compatibility with SDK 23+. 
Checking along PATH for adb.
info: [debug] executing cmd: which adb
info: [debug] Using adb from /Users/n.nadarajah/
Library/Android/sdk/platform-tools/adb
info: [debug] Parsing package and activity from app manifest
info: [debug] Checking whether aapt is present
warn: The ANDROID_HOME environment variable is not set to the Android 
SDK root directory path. 
ANDROID_HOME is required for compatibility with SDK 23+. 
Checking along PATH for aapt.
info: [debug] executing cmd: which aapt
error: Problem parsing package and activity from manifest: Error: Could 
not find aapt. Please set the ANDROID_HOME environment 
variable with the Android SDK root directory path.
info: [debug] Cleaning up android objects
info: [debug] Cleaning up appium session
error: Failed to start an Appium session, err was: Error: Could not 
find aapt. Please set the ANDROID_HOME environment variable 
with the Android SDK root directory path.
info: [debug] Error: Could not find aapt. 
Please set the ANDROID_HOME environment variable with the 
Android SDK root directory path.at ADB.<anonymous> 
(/usr/local/lib/node_modules/appium
/node_modules/appium-adb/lib/adb.js:126:12)
    at ChildProcess.exithandler (child_process.js:279:5)
    at ChildProcess.emit (events.js:159:13)
    at maybeClose (internal/child_process.js:943:16)
    at Socket.stream.socket.on (internal/child_process.js:363:11)
    at Socket.emit (events.js:159:13)
    at Pipe._handle.close [as _onclose] (net.js:568:12)
info: [debug] Responding to client with error: {"status":33,"value":
{"message":"A new session could not be created. 
(Original error: Could not find aapt. Please set the ANDROID_HOME 
environment variable with the Android SDK root 
directory path.)","origValue":"Could not find aapt. Please set the 
ANDROID_HOME environment variable with the 
Android SDK root directory path."},"sessionId":null}
info: <-- POST /wd/hub/session 500 164.317 ms - 344
n。nadarajah@EGHJ-MACRDV01 ~$appium-A127.0.0.1-P4723--log-l。
级别=调试
信息:欢迎使用Appium v1.4.16(修订版
ae6877eff263066b26328d457bd285c0cc62430d)
信息:Appium REST http接口侦听器于127.0.0.1:4723启动
信息:[调试]非默认服务器参数:{“地址”:“127.0.0.1”}
信息:控制台日志级别:调试
信息:-->POST/wd/hub/session{“功能”:{“alwaysMatch”:
{“platformName”:“Android”},“firstMatch”:
[{}]},“desiredCapabilities”:{“deviceName”:“Android
Emulator,“应用程序”:“/Users/n.nadarajah/sites/Resilient-
QA/EndToEndTesting/apks/app-
debug.apk,“platformName”:“Android”,“automationName”:“appium”,
“appPackage”:“com.resilientplc.smartnumbers.debug”}
信息:客户端用户代理字符串:Python http auth
信息:[调试]没有appActivity所需的功能或服务器参数。
从apk解析。
信息:[调试]使用所需CAP的本地应用程序:
/用户/n.nadarajah/sites/resilive-QA/EndToEndTesting
/apks/app-debug.apk
信息:[调试]正在创建新的应用程序会话
a5cfbee9-bcd6-41af-a90c-0389ab244d2c
信息:启动android appium
信息:[调试]正在获取Java版本
信息:Java版本为:1.8.0_151
信息:[调试]检查adb是否存在
警告:ANDROID_HOME环境变量未设置为ANDROID
SDK根目录路径。
ANDROID_HOME需要与SDK 23+兼容。
检查adb的路径。
信息:[调试]正在执行cmd:哪个adb
信息:[调试]从/Users/n.nadarajah使用adb/
Library/Android/sdk/platform tools/adb
信息:[调试]正在分析应用程序清单中的包和活动
信息:[调试]正在检查aapt是否存在
警告:ANDROID_HOME环境变量未设置为ANDROID
SDK根目录路径。
ANDROID_HOME需要与SDK 23+兼容。
正在沿路径检查aapt。
信息:[调试]正在执行cmd:哪个aapt
错误:分析清单中的包和活动时出现问题:错误:无法
找不到aapt。请设置ANDROID_家庭环境
具有Android SDK根目录路径的变量。
信息:[调试]正在清理android对象
信息:[调试]正在清理应用程序会话
错误:无法启动应用程序会话,错误为:错误:无法
找到aapt。请设置ANDROID_HOME环境变量
使用Android SDK根目录路径。
信息:[调试]错误:找不到aapt。
请使用
Android SDK根目录路径。位于ADB。
(/usr/local/lib/node_modules/appium)
/node_modules/appium adb/lib/adb.js:126:12)
在ChildProcess.exithandler(child_process.js:279:5)
在ChildProcess.emit(events.js:159:13)
在maybeClose(内部/子进程js:943:16)
在Socket.stream.Socket.on(internal/child_process.js:363:11)
在Socket.emit(events.js:159:13)
at Pipe.\u handle.close[as\u onclose](net.js:568:12)
信息:[调试]响应客户端时出错:{“状态”:33,“值”:
{“消息”:“无法创建新会话。
(原始错误:找不到aapt。请将ANDROID\u设置为HOME
具有Android SDK根目录的环境变量
目录路径。),“origValue”:“找不到aapt。请设置
带有
Android SDK根目录路径“}”,sessionId:null}

信息:我已经弄清了这个问题的真相, 结果我错过了另一个android环境变量

在上面的例子中,我错过了ANDROID构建工具

在撰写本文时,以下是appium所需的环境变量列表

ANDROID_HOME=/Users/n.nadarajah/Library/Android/sdk
JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_151.jdk/
Contents/Home/bin
ANDROID_PLATFORM_TOOLS=$ANDROID_HOME/platform-tools
ANDROID_TOOLS=$ANDROID_HOME/tools
ANDROID_BUILD_TOOLS=$ANDROID_HOME/build-tools/27.0.3

将上述所有环境变量附加到$PATH

以下是环境变量的工作列表:

导出ANDROID_HOME=/Users/user/Library/ANDROID/sdk

导出路径=$ANDROID_HOME/:$PATH
出口 PATH=$ANDROID_HOME/platform tools/:$PATH
出口 PATH=$ANDROID_HOME/tools/:$PATH导出PATH=/usr/local/bin/:$PATH

启动ctl setenv ANDROID_HOME/Users/user/Library/ANDROID/sdk


对highSierra有效,当然,调整你的路径…

对我在莫哈韦有效

编辑
~/.bash
后,我使用:

source ~/.bash_<profile or rc>
source~/.bash_

它不仅加载新的变量值,还报告文件中的任何错误。

这里我已经在默认路径中安装了android studio

首先设置Android home:创建一个新的系统变量

ANDROID_HOME : C:\Users\<user name>\AppData\Local\Android\Sdk
ANDROID\u HOME:C:\Users\\AppData\Local\ANDROID\Sdk
在path系统变量中添加以下三个路径

C:\Users\<user name>\AppData\Local\Android\Sdk\platform-tools
C:\Users\<user name>\AppData\Local\Android\Sdk\tools
C:\Users\<user name>\AppData\Local\Android\Sdk\tools\bin
C:\Users\\AppData\Local\Android\Sdk\platform tools
C:\Users\\AppData\Local\Android\Sdk\tools
C:\Users\\AppData\Local\Android\Sdk\tools\bin

Hi,@Kovacic试图将您的代码放在MacOs High Sierra 10.13.4版本中,但该版本不起作用,并说“未找到Android SDK。请确保已安装。如果它不在默认位置,请设置Android_HOME环境变量”。但它在MacOS High Sierra 10.13.3版本的设备中工作。我犯错误的地方。请确保这是您的路径“/Users/XXXXXXX/Library/Android/sdk”,或者在控制台中键入“which Android”并将/Android替换为“/sdk”,您应该可以在运行“which Android”时获得此输出。o/p:-is/Users//Library/Android/sdk/tools//Android如何编辑输出路径。您好,@Kovacic改变了你说的话,但没有运气。是否存在任何版本缺陷。