Anbox Cloud Appliance安装系统APK提示文件不存在问题求助
问题描述
在Anbox Cloud Appliance中尝试通过hook安装系统应用时,持续收到APK not found或APK doesn't exist报错,尽管尝试了多种路径写法。此前使用pre-start.sh作为hook文件名时曾成功安装,所有路径写法均有效,但现在无论调整路径、甚至将hook文件重命名回pre-start.sh都无法解决问题。按照官方文档建议使用--apk="${ADDON_DIR}/app.apk"路径也无效。
当前目录结构:
├── app.apk ├── hooks │ └── pre-start └── manifest.yaml
pre-start文件中的命令:
if [ "$INSTANCE_TYPE" = "regular" ]; then exit 0 fi aam install-system-app \ --package-name=com.canonical.anbox.out_of_band_v2 \ --apk=/home/faraz/mine/app.apk
控制台报错日志:
Jul 26 10:25:13 ams-cqhnisc921260635dot0 anbox-starter[1142]: ERROR: apk file /home/faraz/mine/app.apk doesn't exist
确认APK确实存在于指定目录,且已授予全部权限。
解决方案
1. 修正APK路径逻辑
Anbox Cloud的Addon运行在独立隔离环境中,本地绝对路径/home/faraz/mine/app.apk在该环境内无法访问,必须使用Addon内部的环境变量定位文件:
if [ "$INSTANCE_TYPE" = "regular" ]; then exit 0 fi aam install-system-app \ --package-name=com.canonical.anbox.out_of_band_v2 \ --apk="${ADDON_DIR}/app.apk"
2. 检查hook配置与权限
- 确认
manifest.yaml中正确声明hook路径:hooks: pre-start: hooks/pre-start - 给
pre-start文件添加可执行权限:chmod +x hooks/pre-start
3. 重新打包部署Addon
确保所有文件被正确打包进Addon并重新部署:
anbox-cloud-appliance addon create my-addon .
4. 调试路径有效性(可选)
在pre-start脚本中添加调试命令,验证路径是否正确:
echo "ADDON_DIR路径: ${ADDON_DIR}" >> /var/log/anbox-addon-debug.log ls -l "${ADDON_DIR}/app.apk" >> /var/log/anbox-addon-debug.log
部署后查看日志文件,确认APK文件是否被正确识别。
内容的提问来源于stack exchange,提问作者Faraz2079
相关产品推荐
相关产品推荐

