Detox安卓测试引用错误Android SDK路径提示无aapt可执行文件如何解决
解决方案
这个错误由Android SDK环境变量重复拼接触发,Detox读取路径时叠加了两次SDK根路径,按以下步骤修改即可:
1. 修正环境变量配置
打开你当前使用的shell配置文件(~/.zshrc/~/.bash_profile/~/.bashrc),检查ANDROID_HOME、ANDROID_SDK_ROOT的配置,确保没有重复赋值、路径末尾没有多余斜杠,正确配置参考:
export ANDROID_HOME=/Users/me/Library/Android/sdk export ANDROID_SDK_ROOT=$ANDROID_HOME export PATH=$PATH:$ANDROID_HOME/emulator export PATH=$PATH:$ANDROID_HOME/tools export PATH=$PATH:$ANDROID_HOME/tools/bin export PATH=$PATH:$ANDROID_HOME/platform-tools
修改后执行source ~/.zshrc(对应你使用的配置文件)生效,重启终端后执行echo $ANDROID_HOME确认输出为/Users/me/Library/Android/sdk即可。
2. 检查Detox配置
打开项目根目录下的Detox配置文件(通常为.detoxrc.js、detox.config.js或package.json内的detox字段),确认安卓配置的buildToolsVersion仅填写版本号,不要写完整路径:
module.exports = { // 其余配置省略 configurations: { android: { type: "android.apk", binaryPath: "android/app/build/outputs/apk/release/app-release.apk", build: "cd android && ./gradlew assembleRelease assembleAndroidTest -DtestBuildType=release", buildToolsVersion: "30.0.3" } } }
Detox会自动读取ANDROID_HOME路径拼接对应版本的build-tools目录,手动填写全路径会导致重复拼接。
3. 重新运行测试
清理安卓构建缓存后重新执行测试即可:
cd android && ./gradlew clean cd .. && detox build --configuration android detox test --configuration android
内容的提问来源于stack exchange,提问作者Attila
相关产品推荐
相关产品推荐

