一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線(xiàn)課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

鴻蒙ArkUI-X跨平臺(tái)開(kāi)發(fā):【 應(yīng)用工程結(jié)構(gòu)說(shuō)明】

jf_46214456 ? 來(lái)源:jf_46214456 ? 作者:jf_46214456 ? 2024-05-19 21:05 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

ArkUI-X應(yīng)用工程結(jié)構(gòu)說(shuō)明

簡(jiǎn)介

本文檔配套ArkUI-X,將OpenHarmony ArkUI開(kāi)發(fā)框架擴(kuò)展到不同的OS平臺(tái),比如AndroidiOS平臺(tái),讓開(kāi)發(fā)者基于ArkUI,可復(fù)用大部分的應(yīng)用代碼(UI以及主要應(yīng)用邏輯)并可以部署到相應(yīng)的OS平臺(tái),降低跨平臺(tái)應(yīng)用開(kāi)發(fā)成本。

應(yīng)用工程目錄結(jié)構(gòu)介紹

跨平臺(tái)應(yīng)用工程目錄結(jié)構(gòu),包含一套為ArkUI開(kāi)發(fā)者提供的應(yīng)用工程模板,提供構(gòu)建OpenHarmony應(yīng)用,HarmonyOS應(yīng)用,Android應(yīng)用,iOS應(yīng)用的能力。

ArkUI-X應(yīng)用工程目錄結(jié)構(gòu)
  ├── .arkui-x
  │   ├── android                 // Android平臺(tái)相關(guān)代碼
  │   └── ios                     // iOS平臺(tái)相關(guān)代碼
  ├── AppScope
  ├── entry
  ├── hvigor
  ├── build-profile.json5
  ├── hvigorfile.ts
  ├── hvigorw
  ├── hvigorw.bat
  ├── local.properties
  └── oh-package.json5
  
`HarmonyOS與OpenHarmony鴻蒙文檔籽料:mau123789是v直接拿`

搜狗高速瀏覽器截圖20240326151344.png
此應(yīng)用目錄結(jié)構(gòu)設(shè)計(jì)思想是從OpenHarmony應(yīng)用工程原生支持跨平臺(tái)角度出發(fā),在OpenHarmony應(yīng)用工程之上疊加Android和iOS應(yīng)用工程,ArkTS代碼和resources資源在OpenHarmony側(cè)完成編譯,Native代碼仍在各自平臺(tái)應(yīng)用工程中完成編譯。

編譯構(gòu)建說(shuō)明

  • ArkTS源碼

ArkTS源碼通過(guò)OpenHarmony SDK工具鏈生成abc(Ark Byte Code),并分別拷貝到Android和iOS應(yīng)用工程,作為平臺(tái)應(yīng)用資源進(jìn)行管理。

  • ArkUI應(yīng)用資源

ArkUI Resources資源也通過(guò)OpenHarmony SDK工具鏈進(jìn)行編譯,編譯后的ArkUI資源分別拷貝到Android和iOS應(yīng)用工程,作為平臺(tái)應(yīng)用資源進(jìn)行管理。

  • ArkUI框架資源

ArkUI框架資源隨ArkUI-X SDK進(jìn)行發(fā)布,應(yīng)用構(gòu)建時(shí)會(huì)自動(dòng)打包到ArkUI-X應(yīng)用中,可保證ArkUI-X應(yīng)用在各平臺(tái)上UX渲染一致性。

開(kāi)發(fā)前請(qǐng)熟悉鴻蒙開(kāi)發(fā)指導(dǎo)文檔:[gitee.com/li-shizhen-skin/harmony-os/blob/master/README.md]

綜上所述,Android平臺(tái)上通過(guò)assets管理ArkTS編譯產(chǎn)物、ArkUI應(yīng)用資源和ArkUI框架資源,iOS平臺(tái)上通過(guò)Bundle Resources管理ArkTS編譯產(chǎn)物、ArkUI應(yīng)用資源和ArkUI框架資源。

Android應(yīng)用工程結(jié)構(gòu)

ArkUI-X Android應(yīng)用工程
├── app
│   ├── libs
│   │   ├── arkui_android_adapter.jar                   // ArkUI-X跨平臺(tái)適配層,在SDK中發(fā)布
│   │   └── arm64-v8a
│   │       └── libarkui_android.so                     // ArkUI-X跨平臺(tái)引擎庫(kù),在SDK中發(fā)布
│   │       └── libhilog.so                             // ArkUI-X日志庫(kù),在SDK中發(fā)布
│   │       └── libresourcemanager.so                   // ArkUI-X資源管理庫(kù),在SDK中發(fā)布
│   ├── src
│   │   ├── androidTest
│   │   ├── main
│   │   │   ├── assets
│   │   │   │   └── arkui-x                             // ArkUI應(yīng)用編譯后的字節(jié)碼文件和Resources,作為資源文件存放在assets/arkui-x中
│   │   │   │       ├── entry                           // ArkUI單個(gè)模塊的編譯結(jié)果
│   │   │   │       │   ├── ets                         // ArkUI單個(gè)模塊代碼的編譯結(jié)果:包括字節(jié)碼文件以及sourceMap文件
│   │   │   │       │   │   ├── sourceMaps.map
│   │   │   │       │   │   └── modules.abc
│   │   │   │       │   ├── resources.index             // ArkUI單個(gè)模塊資源的編譯結(jié)果:resources資源的編譯結(jié)果
│   │   │   │       │   ├── resources                   // resources資源中的rawfile資源,不會(huì)進(jìn)行編譯。
│   │   │   │       │   └── module.json
│   │   │   │       ├── entry_test                      // ohosTest,僅僅Debug模式構(gòu)建包含。
│   │   │   │       └── systemres                       // ArkUI框架自帶的系統(tǒng)資源
│   │   │   ├── java/com/example/mayapp
│   │   │   │   ├── MyApplication.java                  // 基于StageApplication擴(kuò)展MyApplication
│   │   │   │   └── EntryEntryAbilityActivity.java      // 基于StageActivity擴(kuò)展EntryEntryAbilityActivity
│   │   │   ├── res
│   │   │   └── AndroidManifest.xml
│   │   └── test
│   ├── build.gradle
│   └── proguard-rules.pro
├── gradle/wrapper
├── build.gradle
├── gradle.properties
├── gradlew
├── gradlew.bat
└── settings.gradle

iOS應(yīng)用工程結(jié)構(gòu)

ArkUI-X iOS應(yīng)用工程
├── app.xcodeproj
│   ├── project.xcworkspace
│   ├── xcuserdata
│   └── project.pbxproj
├── app
│   ├── Assets.xcassets
│   ├── Base.Iproj
│   ├── AppDelegate.h
│   ├── AppDelegate.m                               // 應(yīng)用入口, 驅(qū)動(dòng)StageApplication的生命周期
│   ├── EntryEntryAbilityViewController.h           
│   ├── EntryEntryAbilityViewController.m           // 基于StageViewController擴(kuò)展EntryEntryViewController
│   ├── Info.plist
│   └── main.m
├── arkui-x                                         // ArkUI應(yīng)用編譯后的字節(jié)碼文件和Resources,作為資源文件存放在assets/arkui-x中
│   ├── entry                                       // ArkUI單個(gè)模塊的編譯結(jié)果
│   │   ├── ets                                     // ArkUI單個(gè)模塊代碼的編譯結(jié)果:包括字節(jié)碼文件以及sourceMap文件
│   │   │   ├── sourceMaps.map
│   │   │   └── modules.abc
│   │   ├── resources.index                         // ArkUI單個(gè)模塊資源的編譯結(jié)果:resources資源的編譯結(jié)果
│   │   ├── resources                               // resources資源中的rawfile資源,不會(huì)進(jìn)行編譯。
│   │   └── module.json
│   ├── entry_test                                  // ohosTest,僅僅Debug模式構(gòu)建包含。
│   └── systemres                                   // ArkUI框架自帶的系統(tǒng)資源
└── frameworks                                      // ArkUI跨平臺(tái)Framework動(dòng)態(tài)庫(kù):包含ArkUI-X的框架以及插件

審核編輯 黃宇

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 開(kāi)發(fā)
    +關(guān)注

    關(guān)注

    0

    文章

    373

    瀏覽量

    41510
  • 框架
    +關(guān)注

    關(guān)注

    0

    文章

    404

    瀏覽量

    17890
  • 鴻蒙
    +關(guān)注

    關(guān)注

    60

    文章

    2618

    瀏覽量

    44038
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    鴻蒙開(kāi)發(fā)學(xué)習(xí):初探【ArkUI-X

    **簡(jiǎn)單來(lái)說(shuō),ArkTS + ArkUI-X 對(duì)標(biāo)的框架為 flutter,一次代碼,編譯為 native 全平臺(tái)運(yùn)行**
    的頭像 發(fā)表于 05-13 15:58 ?1658次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>開(kāi)發(fā)</b>學(xué)習(xí):初探【<b class='flag-5'>ArkUI-X</b>】

    鴻蒙ArkUI-X平臺(tái)開(kāi)發(fā):【命令行工具(ACE Tools)】

    ACE Tools是一套為ArkUI-X項(xiàng)目平臺(tái)應(yīng)用開(kāi)發(fā)者提供的命令行工具,支持在Windows/Ubuntu/macOS平臺(tái)運(yùn)行,用于構(gòu)
    的頭像 發(fā)表于 05-21 17:39 ?2897次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>ArkUI-X</b><b class='flag-5'>跨</b><b class='flag-5'>平臺(tái)</b><b class='flag-5'>開(kāi)發(fā)</b>:【命令行工具(ACE Tools)】

    鴻蒙ArkUI-X平臺(tái)開(kāi)發(fā):【SDK目錄結(jié)構(gòu)介紹】

    本文檔配套ArkUI-X,將OpenHarmony ArkUI開(kāi)發(fā)框架擴(kuò)展到不同的OS平臺(tái),比如Android和iOS平臺(tái),讓
    的頭像 發(fā)表于 05-20 16:28 ?1223次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>ArkUI-X</b><b class='flag-5'>跨</b><b class='flag-5'>平臺(tái)</b><b class='flag-5'>開(kāi)發(fā)</b>:【SDK目錄<b class='flag-5'>結(jié)構(gòu)</b>介紹】

    ArkUI-X開(kāi)發(fā)指南:【SDK配置和構(gòu)建說(shuō)明

    ArkUI-X SDK是ArkUI-X開(kāi)源項(xiàng)目的編譯產(chǎn)物,可將ArkUI-X SDK集成到現(xiàn)有Android和iOS應(yīng)用工程中,使開(kāi)發(fā)者基于
    的頭像 發(fā)表于 05-25 16:48 ?3511次閱讀
    <b class='flag-5'>ArkUI-X</b><b class='flag-5'>開(kāi)發(fā)</b>指南:【SDK配置和構(gòu)建<b class='flag-5'>說(shuō)明</b>】

    ArkUI-X平臺(tái)框架接入指南

    ArkUI平臺(tái)框架(ArkUI-X)進(jìn)一步將ArkUI開(kāi)發(fā)框架擴(kuò)展到了多個(gè)OS
    發(fā)表于 05-18 18:21

    ArkUI-X平臺(tái)應(yīng)用改造指南

    框架已有API進(jìn)行開(kāi)發(fā)。 ??根據(jù)當(dāng)前ArkUI-X框架的適配現(xiàn)狀,可分為三種改造方式,結(jié)合架構(gòu)圖commons層 NetWork進(jìn)行說(shuō)明。至于工程中具體的文件部署細(xì)節(jié)詳見(jiàn):
    發(fā)表于 06-16 23:05

    ArkUI-X平臺(tái)技術(shù)落地-華為運(yùn)動(dòng)健康(一)

    開(kāi)發(fā)工作量以及保證體驗(yàn)一致性,對(duì)于運(yùn)動(dòng)健康A(chǔ)pp而言,顯得尤為重要。作為鴻蒙NEXT系統(tǒng)生態(tài)中的重要一員,ArkUI-X框架是我們平臺(tái)技術(shù)
    發(fā)表于 06-18 22:53

    ArkUI-X平臺(tái)技術(shù)落地-華為運(yùn)動(dòng)健康(二)

    進(jìn)行通信: 1.數(shù)據(jù)平臺(tái)的bridge -- 負(fù)責(zé)平臺(tái)業(yè)務(wù)層 和 數(shù)據(jù)平臺(tái)之間交互的接口定義; 2.設(shè)備類(lèi)的bridge -- 負(fù)責(zé)上層業(yè)務(wù)層 和 設(shè)備能力之間的交互(目前由于
    發(fā)表于 06-18 23:04

    ArkUI-X應(yīng)用工程結(jié)構(gòu)說(shuō)明

    )并可以部署到相應(yīng)的OS平臺(tái),降低平臺(tái)應(yīng)用開(kāi)發(fā)成本。 應(yīng)用工程目錄結(jié)構(gòu)介紹
    發(fā)表于 06-19 23:11

    資訊速遞 | ArkUI-X 預(yù)覽版已正式開(kāi)源!

    者快速擴(kuò)展對(duì)應(yīng)平臺(tái)上已有的能力。 ● ArkUI-X還提供了和OpenHarmony一致的測(cè)試框架:測(cè)試工程的目錄結(jié)構(gòu),同樣也和OpenHarmony的
    發(fā)表于 08-11 16:10

    鴻蒙平臺(tái)框架:【ArkUi-X】創(chuàng)建工程

    鴻蒙推出了鴻ArkUi-X 框架所以就寫(xiě)個(gè)文章分享一下
    的頭像 發(fā)表于 05-13 17:48 ?1544次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>跨</b><b class='flag-5'>平臺(tái)</b>框架:【<b class='flag-5'>ArkUi-X</b>】創(chuàng)建<b class='flag-5'>工程</b>

    鴻蒙ArkUI-X平臺(tái)技術(shù):【開(kāi)發(fā)準(zhǔn)備】

    本文檔適用于ArkUI平臺(tái)應(yīng)用開(kāi)發(fā)的初學(xué)者。通過(guò)開(kāi)發(fā)環(huán)境搭建、應(yīng)用工程創(chuàng)建、編譯和運(yùn)行,熟悉
    的頭像 發(fā)表于 05-24 10:40 ?986次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>ArkUI-X</b><b class='flag-5'>跨</b><b class='flag-5'>平臺(tái)</b>技術(shù):【<b class='flag-5'>開(kāi)發(fā)</b>準(zhǔn)備】

    鴻蒙ArkUI-X平臺(tái)技術(shù):【開(kāi)發(fā)初體驗(yàn)】

    在DevEco Studio中導(dǎo)入ArkUI-X Sample,快速創(chuàng)建平臺(tái)工程。
    的頭像 發(fā)表于 05-17 15:54 ?1220次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>ArkUI-X</b><b class='flag-5'>跨</b><b class='flag-5'>平臺(tái)</b>技術(shù):【<b class='flag-5'>開(kāi)發(fā)</b>初體驗(yàn)】

    鴻蒙ArkUI-X語(yǔ)言調(diào)用說(shuō)明平臺(tái)差異化【Android、ios動(dòng)態(tài)化】

    ArkUI-X支持動(dòng)態(tài)化,使用者可以根據(jù)自己需要?jiǎng)討B(tài)發(fā)布平臺(tái)內(nèi)容,從而使平臺(tái)部分和宿主應(yīng)用進(jìn)行解耦。
    的頭像 發(fā)表于 05-23 14:38 ?1480次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>ArkUI-X</b><b class='flag-5'>跨</b>語(yǔ)言調(diào)用<b class='flag-5'>說(shuō)明</b>:<b class='flag-5'>平臺(tái)</b>差異化【Android、ios動(dòng)態(tài)化】

    ArkUI-X構(gòu)建Android平臺(tái)AAR及使用

    本教程主要講述如何利用ArkUI-X SDK完成Android AAR開(kāi)發(fā),實(shí)現(xiàn)基于ArkTS的聲明式開(kāi)發(fā)范式在android平臺(tái)顯示。包括: 1.
    的頭像 發(fā)表于 06-12 22:45 ?218次閱讀