问题描述
我想使用BubbleWrap CLI构建TWA
当我尝试使用bubblewrap build
| |) /_,--.,--| |-.| |-.| |,---.,--,--.--.,---.
| .-. | || | .-. | .-. | | .-. | |.'.| | .--',-. | .-. |
| '--' ' '' | `-' | `-' | \ --| .'. | | \ '-' | '-' '
`------' `----' `---' `---'`--'`----'--' '--`--' `--`--| |-'
`--'
(node:1798) ExperimentalWarning: The fs.promises API is experimental
cli ERROR The given androidSdk isn't correct.
它显示错误cli Eroor The given androidSdk isn't correct
这是我的文件结构是
- application
|
|- jdk
|- android-sdk
|- my-app
我的~/.bubblewrap/config.json
包含
{
"jdkPath":"~/application/jdk","androidSdkPath":"~/application/andoid-sdk"
}
我的操作系统
PRETTY_NAME="Debian GNU/Linux 10 (buster)"
NAME="Debian GNU/Linux"
VERSION_ID="10"
VERSION="10 (buster)"
VERSION_CODENAME=buster
ID=debian
HOME_URL="https://www.debian.org/"
SUPPORT_URL="https://www.debian.org/support"
BUG_REPORT_URL="https://bugs.debian.org/"
解决方法
我让Bubblewrap使用了从https://developer.android.com/studio下载的最新版本的命令行工具。 (当前为6858069)
下载的存档文件将具有一个名为cmdline-tools的目录,需要将其重命名为tools并将其放置在android-sdk目录中。
您的目录结构应该像
./android-sdk/
./android-sdk/tools
./android-sdk/tools/bin
./android-sdk/tools/lib
然后,Bubblewrap要求输入android-sdk,我使用了android-sdk目录的绝对路径,而不是使用〜(波浪号)字符。我不相信Bubblewrap支持〜,因为它是节点应用程序,根据https://github.com/nodejs/node/issues/684,节点默认情况下不支持〜。这同样适用于您的jdk路径。
Bubblewrap将继续,并要求您接受许可证。之后,它将开始将额外的文件下载到android-sdk目录,因此也需要读写访问权限。
,解决无法执行时收到地址错误消息的问题。只需复制sdk/tools/bin/sdkmanager.bat
并将其复制到同一目录中的sdk/tools/bin/sdkmanager
。
*修改android-sdk的文件夹,使其看起来像这样:android-sdk->工具-> bin,lib
可选命令:
bubblewrap updateConfig --androidSdkPath [your android-sdk path]
运行bubblewrap doctor
来检查所有
希望这会有所帮助。