ArkUI-X框架开发快速入门【坚果派】

ArkUI-X框架开发快速入门

ArkUI框架

ArkUI是一套构建分布式应用的声明式UI开发框架。它具备简洁自然的UI信息语法、丰富的UI组件、多维的状态管理,以及实时界面预览工具,帮助您提升应用开发效率,并能在多种设备上实现生动而流畅的用户体验。

ArkUI-X

ArkUI-X进一步将ArkUI扩展到了多个OS平台:目前支持OpenHarmony、HarmonyOS,Android、 iOS,后续会逐步增加更多平台支持。开发者基于一套主代码,就可以构建支持多平台的精美、高性能应用。

API扩展

API扩展包括两部分内容:

一是复用OpenHarmony NAPI机制,在Android和iOS平台实现OpenHarmony的接口定义;

二是支持开发者基于Android和iOS平台接口能力或三方库能力扩展业务插件。

环境准备

  • 编译环境需要Ubuntu18.04及以上版本,macOS需要11.6.2及以上版本。

  • 安装编译所需的程序包。

    [Linux]

    sudo apt-get install binutils git-core gnupg flex bison gperf build-essential zip curl zlib1g-dev gcc-multilib g++-multilib libc6-dev-i386 lib32ncurses5-dev x11proto-core-dev libx11-dev lib32z-dev ccache libgl1-mesa-dev libxml2-utils xsltproc unzip m4
    

    [macOS]

    brew install wget coreutils
    

配置Java环境

说明: 建议下载JDK11.0.2以上版本,下载请点击此处

[Linux]

// 配置环境变量
export JAVA_HOME=/home/usrername/path-to-java-sdk
export PATH=${JAVA_HOME}/bin:${PATH}

[macOS]

// 配置环境变量
export JAVA_HOME=/Users/usrername/path-to-java-sdk
export PATH=$JAVA_HOME/bin:$PATH

配置Android SDK环境

[Linux]

通过命令行工具下载和管理Android SDK,命令行工具使用说明详见sdkmanager官方指导。SDK版本下载要求如下:

./sdkmanager --install "ndk;21.3.6528147" --sdk_root=/home/usrername/path-to-android-sdk
./sdkmanager --install "platforms;android-26" --sdk_root=/home/usrername/path-to-android-sdk
./sdkmanager --install "build-tools;28.0.3" --sdk_root=/home/usrername/path-to-android-sdk
// 配置环境变量
export ANDROID_HOME=/home/usrername/path-to-android-sdk
export PATH=${ANDROID_HOME}/tools:${ANDROID_HOME}/tools/bin:${ANDROID_HOME}/build-tools/28.0.3:${ANDROID_HOME}/platform-tools:${PATH}

[macOS]

通过IDE SDK管理器下载和管理Android SDK,NDK版本要求为:21.3.6528147,SDK Platform版本为:26。

// 配置环境变量
export ANDROID_HOME=/Users/usrername/path-to-android-sdk
export PATH=$ANDROID_HOME/tools:$ANDROID_HOME/tools/bin:$ANDROID_HOME/build-tools/28.0.3:$ANDROID_HOME/platform-tools:$PATH

配置iOS SDK环境

  • Xcode和Command Line Tools for Xcode应用可前往Mac App Store应用商店下载安装。

  • Command Line Tools也可使用命令方式安装:

    xcode-select --install
    

ArkUI-X代码下载

前提条件

  1. 注册码云gitee帐号。

  2. 注册码云SSH公钥,请参考码云帮助中心

  3. 安装git客户端git-lfs并配置用户信息。

    git config --global user.name "yourname"
    git config --global user.email "your-email-address"
    git config --global credential.helper store
    
  4. 安装码云repo工具,可以执行如下命令。

    curl -s https://gitee.com/oschina/repo/raw/fork_flow/repo-py3 > /usr/local/bin/repo  #如果没有权限,可下载至其他目录,并将其配置到环境变量中
    chmod a+x /usr/local/bin/repo
    pip3 install -i https://repo.huaweicloud.com/repository/pypi/simple requests
    

下载方法

  • ArkUI-X主干代码获取

    方式一(推荐):通过repo + ssh下载(需注册公钥,请参考码云帮助中心)。

    mkdir arkui
    cd arkui
    repo init -u [email protected]:arkui-x/manifest.git -b master --no-repo-verify
    repo sync -c --no-tags -j12
    

    方式二:通过repo + https下载。

    mkdir arkui
    cd arkui
    repo init -u https://gitee.com/arkui-x/manifest.git -b master --no-repo-verify
    repo sync -c
    repo forall -c 'git lfs pull'
    
  • ArkUI-X开发分支代码获取

    方式一(推荐):通过repo + ssh下载(需注册公钥,请参考码云帮助中心)。

    mkdir arkui
    cd arkui
    repo init -u [email protected]:arkui-x/manifest.git -b master --no-repo-verify -m arkui-dev.xml
    repo sync -c --no-tags -j12
    

    方式二:通过repo + https下载。

    mkdir arkui
    cd arkui
    repo init -u https://gitee.com/arkui-x/manifest.git -b master --no-repo-verify -m arkui-dev.xml
    repo sync -c --no-tags -j12
    

ArkUI-X编译

使用build.sh编译脚本

使用build.sh编译脚本进行编译,编译脚本常用选项

--product-name    # 必须  编译的产品名称,如:arkui-x
--target-os       # 必须  编译的跨平台目标,如:android或ios
--target-cpu      # 可选  指定target侧CPU架构,如:arm或arm64
--build-target    # 可选  指定编译目标,可以指定多个
--gn-args         # 可选  gn参数,支持指定多个
--ninja-args      # 可选  ninja参数,如:--ninja-args=-dkeeprsp
--log-level       # 可选  指定log等级,如:info或debug
--help, -h        # 可选  命令行help辅助命令

新下载代码或更新代码时,需要下载或更新预编译工具链,命令如下

./build/prebuilts_download.sh --build-arkuix

编译命令示例

查看编译脚本支持的选项

./build.sh -h

ArkUI-X Android平台编译命令:

./build.sh --product-name arkui-x --target-os android

ArkUI-X iOS平台编译命令:

./build.sh --product-name arkui-x --target-os ios

猜你喜欢

转载自blog.csdn.net/qq_39132095/article/details/132788669