目的是想将 arkui-x 用于安卓app开发, 好给以后的鸿蒙开发打一点基础。看了下发现创建项目的工具有两套:图形界面 ide (DevEco studio)和 命令行下的工具 (ACE-tools)
arkui-x 的 gicode 仓库里面有文档说:
IDE工具(DevEco Studio)
DevEco Studio为ArkUI-X应用构建提供了简单的集成开发环境,版本要求:V4.1 Release及以上。请参考社区版本软件和工具配套关系完成DevEco Studio下载和安装。
请参考DevEco Studio跨平台开发环境配置说明,完成基于DevEco Studio的ArkUI-X开发环境配置。
命令行工具(ACE Tools)
ACE Tools默认随ArkUI-X SDK发布,获取渠道请参见ArkUI-X SDK介绍。推荐使用DevEco Studio进行ArkUI-X SDK下载。
请参考命令行跨平台开发环境配置说明完成基于命令行的ArkUI-X开发环境配置。
首先, 想尝试 deveco, 上官网看下发现体积实在是太大,2.7GB,放弃使用
其次 , 想尝试 arkuix sdk中的命令行创建项目,但实测发现无法自动复制 arkui-x 的运行时依赖库
命令行工具 ace 体验步骤如下:
1). arkui-x sdk 的下载及安装
gitcode 仓库说下载 ArkUI-X SDK, 就能得到 ace 这个命令行工具, 所以下载解压即可
2). 创建 arkui-x 项目,敲指令
bash
ace create demo
得到一个叫 demo 的目录, 体积约 200KB
demo/ 中应是 deveco studio 的项目文件,暂时不体验
demo/.arkui-x/ 中包含 as 和 xcode 项目文件
3). 为项目目录中的 android studio 项目添加 arkui-x 库
cd demo && ace build apk # 失败
cd demo && ace build ios # 失败
所以, demo 中的 android 、ios 两个非原生平台的项目, 目前都不能使用 ace 来添加依赖库。
报错如下:
node:internal/fs/utils:347
throw err;
^
Error: ENOENT: no such file or directory, open '/sdk/default/sdk-pkg.json'
at Object.openSync (node:fs:590:3)
at Object.readFileSync (node:fs:458:35)
at ite (/opt/apps/arkui-x/toolchains/ace_tools/lib/ace_tools.js:344:29683)
at /opt/apps/arkui-x/toolchains/ace_tools/lib/ace_tools.js:344:30124
at build (/opt/apps/arkui-x/toolchains/ace_tools/lib/ace_tools.js:344:31156)
at X.<anonymous> (/opt/apps/arkui-x/toolchains/ace_tools/lib/ace_tools.js:344:211329)
at X._actionHandler (/opt/apps/arkui-x/toolchains/ace_tools/lib/ace_tools.js:1:16102)
at /opt/apps/arkui-x/toolchains/ace_tools/lib/ace_tools.js:1:24490
at X._chainOrCall (/opt/apps/arkui-x/toolchains/ace_tools/lib/ace_tools.js:1:23122)
at X._parseCommand (/opt/apps/arkui-x/toolchains/ace_tools/lib/ace_tools.js:1:24466) {
errno: -2,
syscall: 'open',
code: 'ENOENT',
path: '/sdk/default/sdk-pkg.json'
}
尝试:
/opt/apps/arkui-x$ find ./ -name sdk-pkg.json
项目目录下和 ArkUI-X SDK 解压目录下均没有这个文件!
尝试:
set|grep SDK|grep ARK
输出
ARKUIX_SDK_HOME=/opt/apps/arkui-x
确定arkui-SDK的环境变量指向了正确的路径
上面 添加依赖库 那一步 出现的错误 ,不知道如何解决。
由此 ace 目前无法为它创建的安卓项目复制必要的依赖库 。
问AI, 得到的回复是可以自己手动复制依赖库
ls -al /opt/apps/arkui-x/engine/lib/arkui # 发现确实有安卓版的 arkui 库文件( jar 和 so )
于是尝试手动复制:
bash
cd demo/.arkui-x
mkdir -p android/app/libs/
mkdir -p android/app/libs/arm64-v8a/
cp -f /opt/apps/arkui-x/engine/lib/arkui/arkui_android_adapter.jar android/app/libs/
cp -f /opt/apps/arkui-x/engine/lib/arkui/android-arm64-release/libarkui_android.so android/app/libs/arm64-v8a/
重新使用 android studio 打开 demo/.arkui-x/android 这个路径,项目加载成功了!
接着编译得到 app-debug.apk ,然后在手机上安装失败了,k40手机上也没有给出具体原因。