使用BubbleWrap CLI构建TWA时提示androidSdk路径错误的问题
解决BubbleWrap CLI构建TWA时的Android SDK错误与Node.js实验警告
一、修复"The given androidSdk isn't correct"错误
这个错误主要有两个核心原因,我帮你逐一排查解决:
路径拼写错误
看你~/.bubblewrap/config.json里的配置内容:{"jdkPath":"~/application/jdk", "androidSdkPath":"~/application/andoid-sdk"}这里明显把
android-sdk拼写成了andoid-sdk(少了一个字母r),这是最直接的问题,先把拼写修正为android-sdk。波浪号路径解析问题
部分场景下,配置文件里的~无法被BubbleWrap正确解析为用户主目录,建议替换成绝对路径。你可以先执行echo $HOME命令获取自己的主目录绝对路径,比如你的主目录是/home/your-name,修改后的配置应该是:{"jdkPath":"/home/your-name/application/jdk", "androidSdkPath":"/home/your-name/application/android-sdk"}验证Android SDK完整性
确保android-sdk目录是完整的,包含必要组件(比如Android SDK Platform、Build Tools等)。可以通过执行$ANDROID_HOME/tools/bin/sdkmanager --list命令查看已安装组件,确认没有缺失关键部分。
二、消除"fs.promises API is experimental"警告
这个警告是因为Debian 10默认的Node.js版本偏低(通常是12.x及以下),fs.promises在当时属于实验性API。解决方法是升级Node.js到稳定LTS版本:
- 先卸载旧版本Node.js:
sudo apt remove nodejs npm - 添加NodeSource的LTS版本源(以18.x LTS为例):
curl -fsSL https://deb.nodesource.com/setup_18.x | sudo -E bash - - 重新安装Node.js和npm:
sudo apt-get install -y nodejs - 验证版本:
升级到Node.js 14.x及以上版本后,node -vfs.promises已经成为稳定API,这个警告就会消失。
最后验证
修改配置并完成Node.js升级后,重新执行bubblewrap build命令,应该就能正常构建TWA了。
内容的提问来源于stack exchange,提问作者Bhautik Chudasama
相关产品推荐
相关产品推荐

