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

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

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

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

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

jf_46214456 ? 來源:jf_46214456 ? 作者:jf_46214456 ? 2024-05-23 14:38 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

動(dòng)態(tài)化介紹

簡(jiǎn)介

ArkUI-X支持動(dòng)態(tài)化,使用者可以根據(jù)自己需要?jiǎng)討B(tài)發(fā)布跨平臺(tái)內(nèi)容,從而使跨平臺(tái)部分和宿主應(yīng)用進(jìn)行解耦。動(dòng)態(tài)化能力支持如下兩個(gè)典型場(chǎng)景:

  1. 框架動(dòng)態(tài)化:指ArkUI跨平臺(tái)開發(fā)框架本身可以做到動(dòng)態(tài)下發(fā),即應(yīng)用發(fā)布時(shí)可以不帶框架基礎(chǔ)庫,降低應(yīng)用原始發(fā)布包體積,在需要時(shí)才從云端動(dòng)態(tài)下發(fā)和執(zhí)行加載;
  2. 特性動(dòng)態(tài)化:指用ArkTS語言開發(fā)的特性可以做到動(dòng)態(tài)化,和宿主應(yīng)用解耦,獨(dú)立發(fā)布、升級(jí)版本;

說明 :應(yīng)用在使用動(dòng)態(tài)化能力時(shí)需要遵循目標(biāo)終端操作系統(tǒng)應(yīng)用上架規(guī)則,如果違規(guī)可能有下架風(fēng)險(xiǎn),風(fēng)險(xiǎn)由各自應(yīng)用承擔(dān)。 開發(fā)前請(qǐng)熟悉鴻蒙開發(fā)指導(dǎo)文檔 :[gitee.com/li-shizhen-skin/harmony-os/blob/master/README.md]

實(shí)踐參考

  • [Android平臺(tái)動(dòng)態(tài)化開發(fā)指南]

Android平臺(tái)動(dòng)態(tài)化開發(fā)指南

簡(jiǎn)介

本文介紹如何在Android平臺(tái)進(jìn)行ArkUI-X動(dòng)態(tài)化開發(fā),包括動(dòng)態(tài)化目錄規(guī)則及約束。

適用場(chǎng)景

動(dòng)態(tài)化主要包括兩個(gè)典型場(chǎng)景:

  • 場(chǎng)景1:框架動(dòng)態(tài)化,為了降低應(yīng)用ROM體積占用,及滿足動(dòng)態(tài)升級(jí)框架目的;
  • 場(chǎng)景2:特性Bundle動(dòng)態(tài)化,特性和宿主應(yīng)用發(fā)布解耦;

開發(fā)指南

目錄說明

動(dòng)態(tài)加載時(shí)要求應(yīng)用沙箱內(nèi)目錄架構(gòu)如下所示:

/data/data/應(yīng)用/files/arkui-x    
├── feature1                    # 跨平臺(tái)特性1
│   ├── ets                     # ets目錄
│   │   ├──sourceMaps.map
│   │   └──modules.abc
│   ├── resources.index         
│   ├── resources              
│   ├── module.json
│   └── libs                    # 特性bundle帶的so庫
│       ├── arm64-v8a
│       ├── armeabi-v7a
│       └── x86_64  
├── systemres                   # ArkUI公共資源
└── libs                        # 根目錄下libs庫
    ├── arm64-v8a               
    │    └──libarkui_android.so    # ArkUI-X引擎
    ├── armeabi-v7a           
    └── x86_64
  1. /data/data/應(yīng)用/files/arkui-x 可以視為ArkUI-X動(dòng)態(tài)加載的沙箱根目錄,框架和特性Bundle均需要放在這個(gè)目錄下;
  2. 根目錄下的libs文件夾放置引擎(libarkui_android.so),及其他公共庫;
  3. 根目錄下要求按照module級(jí)別組織, 不可以重名 ;

    加載優(yōu)先級(jí)

  • 引擎so庫:優(yōu)先加載應(yīng)用lib目錄下,如果未找到則去應(yīng)用沙箱根目錄加載;

  • 插件so庫:優(yōu)先加載應(yīng)用lib目錄下,如果未找到則去應(yīng)用沙箱根目錄嘗試加載,最后去插件自身的libs目錄加載;

  • module加載:優(yōu)先從應(yīng)用assets目錄下尋找,如果找不到則去沙箱內(nèi)嘗試加載;

  • systemres加載:同上,優(yōu)先加載應(yīng)用assets目錄,找不到則去沙箱內(nèi)加載;
    注意 :不建議應(yīng)用同一個(gè)module,即預(yù)制到應(yīng)用assets內(nèi)又在沙箱同時(shí)部署。

    框架初始化

    如果應(yīng)用使用了框架引擎動(dòng)態(tài)化,首次下載引擎庫后將其放置/data/data/應(yīng)用/files/arkui-x/libs/arm64-v8a

目錄,之后再打開對(duì)應(yīng)跨平臺(tái)界面時(shí)初始化框架:

appDelegate = new StageApplicationDelegate();
appDelegate.initApplication(this)

后續(xù)再打開應(yīng)用,建議按照正常流程在Application里初始化框架,提前完全引擎庫加載,提高跨平臺(tái)模塊加載速度;

  • [iOS平臺(tái)動(dòng)態(tài)化開發(fā)指南]

iOS平臺(tái)動(dòng)態(tài)化開發(fā)指南

簡(jiǎn)介

本文介紹如何在iOS平臺(tái)進(jìn)行ArkUI-X動(dòng)態(tài)化開發(fā),包括動(dòng)態(tài)化目錄規(guī)則及約束。

適用場(chǎng)景

由于iOS平臺(tái)AppStore不允許應(yīng)用動(dòng)態(tài)更新so庫,因此ArkUI-X在iOS上動(dòng)態(tài)化只能更新界面及業(yè)務(wù)邏輯構(gòu)成的abc,不支持so庫動(dòng)態(tài)加載。應(yīng)用需要將ArkUI-X基礎(chǔ)庫、插件及業(yè)務(wù)so庫提前打包到應(yīng)用內(nèi)上架。

開發(fā)指南

目錄結(jié)構(gòu)

iOS平臺(tái)ArkUI-X沙箱內(nèi)目錄結(jié)構(gòu)如下所示:

/Data/Application/應(yīng)用/Documents/files/arkui-x    
├── feature1                    # 跨平臺(tái)特性1
│   ├── ets                     # ets目錄
│   │   ├──sourceMaps.map
│   │   └──modules.abc
│   ├── resources.index         
│   ├── resources              
│   └── module.json
└── systemres                   # ArkUI公共資源

`HarmonyOSOpenHarmony鴻蒙文檔籽料:mau123789是v直接拿`

搜狗高速瀏覽器截圖20240326151450.png

  1. /Data/Application/應(yīng)用/Documents/files/arkui-x可以視為ArkUI-X動(dòng)態(tài)加載的沙箱根目錄,特性Bundle需要放在這個(gè)目錄下;
  2. 根目錄下要求按照module級(jí)別組織, 不可以重名 ;

加載優(yōu)先級(jí)

  • module加載:優(yōu)先從應(yīng)用根目錄下尋找,如果找不到則去沙箱內(nèi)嘗試加載;
  • systemres加載:同上,優(yōu)先加載應(yīng)用根目錄下的資源,找不到則去沙箱內(nèi)加載;
    注意 :不建議應(yīng)用同一個(gè)module,即預(yù)制到應(yīng)用內(nèi)又在沙箱同時(shí)部署。

審核編輯 黃宇

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

    關(guān)注

    12

    文章

    3971

    瀏覽量

    129890
  • iOS
    iOS
    +關(guān)注

    關(guān)注

    8

    文章

    3399

    瀏覽量

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

    關(guān)注

    59

    文章

    2571

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評(píng)論

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

    鴻蒙ArkUI-X語言調(diào)用說明:【平臺(tái)橋接開發(fā)指南(Android)】

    平臺(tái)橋接用于客戶端(ArkUI)和平臺(tái)AndroidiOS)之間傳遞消息,即用于ArkUI
    的頭像 發(fā)表于 05-25 16:26 ?1183次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>ArkUI-X</b><b class='flag-5'>跨</b><b class='flag-5'>語言</b><b class='flag-5'>調(diào)用</b><b class='flag-5'>說明</b>:【<b class='flag-5'>平臺(tái)</b>橋接開發(fā)指南(<b class='flag-5'>Android</b>)】

    鴻蒙ArkUI-X語言調(diào)用說明:【平臺(tái)橋接開發(fā)指南(Android)Bridge API】

    本模塊提供ArkUI端和AndroidiOS平臺(tái)端消息通信的功能,包括數(shù)據(jù)傳輸、方法調(diào)用和事件調(diào)用
    的頭像 發(fā)表于 05-25 16:30 ?1244次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>ArkUI-X</b><b class='flag-5'>跨</b><b class='flag-5'>語言</b><b class='flag-5'>調(diào)用</b><b class='flag-5'>說明</b>:【<b class='flag-5'>平臺(tái)</b>橋接開發(fā)指南(<b class='flag-5'>Android</b>)Bridge API】

    鴻蒙ArkUI-X平臺(tái)差異化:【運(yùn)行態(tài)差異化(@ohos.deviceInfo)】

    邏輯不同,或使用了不支持平臺(tái)的API,就需要根據(jù)平臺(tái)不同進(jìn)行一定代碼差異化適配。當(dāng)前僅支持在代碼運(yùn)行態(tài)進(jìn)行差異化,接下來詳細(xì)介紹場(chǎng)景及如何
    的頭像 發(fā)表于 05-25 16:37 ?2508次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>ArkUI-X</b><b class='flag-5'>平臺(tái)</b><b class='flag-5'>差異化</b>:【運(yùn)行態(tài)<b class='flag-5'>差異化</b>(@ohos.deviceInfo)】

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

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

    ArkUI-x平臺(tái)Bridge最佳實(shí)踐

    ;一碼三平臺(tái)\" 前面講到的bridge主要是解決開發(fā)者在進(jìn)行ArkTS代碼開發(fā)時(shí),需要使用的鴻蒙API不支持平臺(tái)的問題,在Android
    發(fā)表于 06-10 23:06

    ArkUI-X平臺(tái)差異化

    : 1.自身業(yè)務(wù)邏輯不同平臺(tái)本來就有差異; 2.在OpenHarmony上調(diào)用了不支持平臺(tái)的API,這就需要在OpenHarmony上仍然
    發(fā)表于 06-10 23:08

    ArkUI-XAndroid平臺(tái)動(dòng)態(tài)化開發(fā)指南

    本文介紹如何在Android平臺(tái)進(jìn)行ArkUI-X動(dòng)態(tài)化開發(fā),包括動(dòng)態(tài)目錄規(guī)則及約束。 適用場(chǎng)
    發(fā)表于 06-15 23:33

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

    的HarmonyOS Next應(yīng)用,配套ArkUI-X平臺(tái)框架,可以快速改造為平臺(tái)應(yīng)用,縮短開發(fā)周期,同時(shí)還能確保應(yīng)用在 Harmony
    發(fā)表于 06-16 23:05

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

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

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

    管理,調(diào)用方在調(diào)用bridge方法的時(shí)候,只需要指定bridge的類型和對(duì)應(yīng)的bridge方法名,即可像調(diào)用原生ts方法一樣調(diào)用bridge方法。
    發(fā)表于 06-18 23:04

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

    簡(jiǎn)介 本文檔配套ArkUI-X,將OpenHarmony ArkUI開發(fā)框架擴(kuò)展到不同的OS平臺(tái),比如AndroidiOS
    發(fā)表于 06-19 23:11

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

    較高。使用ArkUI-X平臺(tái)項(xiàng)目后,復(fù)雜單品詳情頁代碼一次編寫支持運(yùn)行到Android、iOS和HarmonyOS(OpenHarmony
    發(fā)表于 08-11 16:10

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

    在DevEco Studio中導(dǎo)入ArkUI-X Sample,快速創(chuàng)建平臺(tái)工程。
    的頭像 發(fā)表于 05-17 15:54 ?1166次閱讀
    <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ù):【開發(fā)初體驗(yàn)】

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

    本文檔配套ArkUI-X,將OpenHarmony ArkUI開發(fā)框架擴(kuò)展到不同的OS平臺(tái),比如AndroidiOS
    的頭像 發(fā)表于 05-19 21:05 ?910次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>ArkUI-X</b><b class='flag-5'>跨</b><b class='flag-5'>平臺(tái)</b>開發(fā):【 應(yīng)用工程結(jié)構(gòu)<b class='flag-5'>說明</b>】

    鴻蒙ArkUI-X語言調(diào)用說明:【平臺(tái)橋接(@arkui-x.bridge)】

    平臺(tái)橋接用于客戶端(ArkUI)和平臺(tái)AndroidiOS)之間傳遞消息,即用于ArkUI
    的頭像 發(fā)表于 05-21 15:09 ?1257次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>ArkUI-X</b><b class='flag-5'>跨</b><b class='flag-5'>語言</b><b class='flag-5'>調(diào)用</b><b class='flag-5'>說明</b>:【<b class='flag-5'>平臺(tái)</b>橋接(@<b class='flag-5'>arkui-x</b>.bridge)】