開源鴻蒙 OpenHarmony 4.0 Beta2 發布,多平臺開發框架 ArkUI-X 首發
8 月 7 日消息,開源鴻蒙近日在 gitee 發布了 OpenHarmony 4.0 Beta2 版本更新,帶來了標準系統能力的持續完善。
此外,方舟開發框架 ArkUI-X 1.0.0 于 8 月 6 日迎來 Canary1 版本,主要能力范圍包括:
- 應用開發范式:支持基于 ArkTS 的聲明式開發范式。
- 應用開發模型:支持 Stage 開發模型。
- 開發者工具:提供 DevEco Studio(IDE)和 ACE Tools(命令行)兩種 ArkUI-X 應用構建工具。
- 混合開發能力:ArkTS 聲明式開發范式和 Stage 模型支持集成在現有 iOS / Android 應用中,通過現有應用加載,解析和運行。
- 跨語言調用能力:提供 FFI(Node-API)和平臺橋接兩種機制,用于 API 擴展和平臺插件開發。
- 基礎測試調試:支持單元 / UI / XTS 集成測試和 ArkTS 斷點調試。
據介紹,方舟開發框架(IT之家注:簡稱 ArkUI)為 OpenHarmony 應用的 UI 開發提供了完整的基礎設施,包括簡潔的 UI 語法、豐富的 UI 功能(組件、布局、動畫以及交互事件),以及實時界面預覽工具等,可以支持開發者進行可視化界面開發。
ArkUI-X 進一步將 ArkUI 擴展到了多個 OS 平臺:目前支持 OpenHarmony、HarmonyOS、Android、 iOS,后續會逐步增加更多平臺支持。開發者基于一套主代碼,就可以構建支持多平臺應用。
開源鴻蒙 OpenHarmony 4.0 Beta2 更新內容:
應用框架
- 更新 ArkTS 卡片刷新方式,支持通過數據代理的方式刷新內容。
- ArkTS 卡片支持靜態卡片配置、靜態圖展示。
ArkUI
- Xcomponent 組件支持 Texture 模式繪制、popup 支持位置自定義、彈框支持通過鍵盤 ESC 鍵逐層退出、ListItem 支持長距離左滑刪除手勢、ArkTS / JS 卡片支持渲染完成回調、Image / Text 組件支持隱私遮罩、ContextMenu 支持分段顯示能力。
- 動畫效果增強,包括:布局屬性、背景圖片大小位置屬性、顯隱屬性支持隱式動效,list 支持 scrollToIndex 動效、Tabs 模糊動效、popup 出現 / 消失動效,支持自定義動畫,滿足開發者多種多樣動畫訴求。
- 開發效率增強:支持命名路由的能力,借助此能力可針對不同頁面設置不同的切換動效;輕量級 ArkUI 框架支持定義全局數據對象,可進行應用內頁面間的數據共享。
- 全局 API 支持 Stage 模型多實例場景。
應用包管理
- 支持對應用分發類型和附件信息的設置和查詢。
- 支持通過文件擴展名列出支持打開該文件的應用列表,實現了文件擴展名與應用的匹配關系。
- 支持企業應用的安裝管理,對于證書類型為“enterprise”的應用,安裝需要申請“ohos.permission.INSTALL_ENTERPRISE_BUNDLE”。
分布式數據管理
- UDMF(統一數據管理框架)支持跨設備拖拽場景下對分布式目錄的文件臨時授權。
- 提供 RDBstore NDK 接口 :包含增 / 刪 / 改 / 查 / 事務、數據加密、數據分級保護、備份 / 恢復能力。
- Key-Value 和分布式數據對象支持根據數據量自動選擇數據同步的通道。系統會根據數據量大小自動選擇藍牙通道或基于 WiFi 的 P2P 通道進行數據的同步。
分布式軟總線
- 支持對基于軟總線連接的 link 信息進行管理。
- 支持會話級的傳輸能力協商,可通過協商確定設備間傳輸的能力。
分布式硬件
- 分布式場景下的音頻錄制時延性能得到優化。
- 分布式文件系統支持在以藍牙引導的 P2P 連接環境下進行文件互訪。
- 支持組網設備名稱變化的監聽。
文件管理
- 支持公共圖片文件在設備端和云端進行同步(設備登錄的帳號需開通云端服務),支持通過 picker 選擇云端的圖片。
- 支持應用定制備份恢復的目錄。
- 支持公共圖片的分類管理,用戶可以在圖庫中通過相冊對用戶圖片進行組織分類。
- 支持應用監聽沙箱內的文件的增改刪。
- 支持應用跨設備分享沙箱內的文件。
圖形顯示及窗口
圖形
- 支持對選定區域取色,可選定區域后獲得該區域的主色值、平均色值等參數并按需使用。
- 支持設置旋轉中心在 Z 軸錨點的偏移,允許在旋轉過程中修改渲染的錨點。
- 圖形處理依賴的渲染庫升級至 Skia 0310 新版本,提升了顯示性能。
窗口
- 優化了 display 模塊的參數值獲取方式,從原先軟件方式優化為從硬件直接獲取真實值。
- 窗口控件化能力增強:窗口以控件化的方式支持窗口屬性、子窗口、模態窗口、窗口效果、窗口裝飾、亮滅屏流程、截屏錄屏。
媒體
音頻
- 支持音效框架:設備廠商可配置音效策略和加載自定義音效;應用可查詢音頻輸出的音效模式,切換或關閉音效模式。
- 支持系統內錄音能力:可根據音頻場景屬性篩選,錄制系統內播放的音頻數據。
- 支持獲取音頻設備顯示名:播放對象詳細信息內可獲取當前播放輸出歸屬的設備名。
媒體播放
支持音效參數配置,可以在音頻框架支持音效的能力基礎上進一步配置音效。
音視頻編解碼
- 支持通過 Native API 查詢系統的音視頻編解碼能力。
- 支持通過 Native API 完成音視頻封裝,即將音頻、視頻等編碼后的媒體數據,按一定的格式存儲到文件里。
- 支持通過 Native API 完成音視頻解封裝,即從比特流數據中取出音頻、視頻等媒體幀數據。
事件通知
- 支持選定通知并批量刪除通知。
- emitter 支持取消按條件指定訂閱回調能力。
基礎通信
- WiFi 支持后臺掃描的能力。
- WiFi 支持 STA 模式下的隨機 MAC 能力。
網絡與通信
- 支持與服務器端通過 TCP Socket 進行通信。
- 支持用戶將數據傳送到遠程服務器。
- 支持 HTTPS 證書的管理適配。
- 支持網卡代理。
系統服務管理
- 支持系統服務按需啟動,例如外部調用、事件觸發,同時支持在設備空閑時自動退出系統服務。
- 系統服務配置格式優化,使用 JSON 格式替代 XML 格式。
電源
- 新增接口,支持設置系統立即進入睡眠狀態。
- 新增休眠源定制能力,支持根據不同的休眠源定制事件及行為。
- 新增喚醒源定制能力,支持根據不同的喚醒源定制喚醒事件。
多模輸入
- 支持將鍵盤輸入設備的原始事件映射為歸一化交互的意圖事件,使開發者在開發應用時無需關注輸入行為是來自觸控還是鍵盤。
- 支持用戶根據個人習慣設置觸控板功能的個性化配置:
- 支持兩種觸發模式映射鼠標左鍵功能: 按壓、輕點。
- 支持兩種觸發模式映射鼠標右鍵功能:點按左 / 右下角、雙指點按或輕點。
- 跟蹤速度:支持 10 檔速度調節。
- 支持兩種交互模式映射鼠標滾輪功能:內容隨手指移動方向、內容隨手指反向移動。
主題框架
- 鎖屏管理服務支持鎖屏事件回調機制、靜態 / 動態壁紙、查詢鎖屏時的業務狀態。
- 壁紙管理服務支持自定義壁紙、鎖屏 / 解鎖操作、重置壁紙。
上傳下載
支持查詢上傳和下載的任務、任務狀態信息同步和任務記錄持久化、任務狀態查詢和異常的恢復。
安全
加解密算法庫框架
- 提供 DSA 數字簽名算法能力。
- 提供 DSA、ECC、RSA 密鑰解析和密鑰參數的獲取能力。
- 提供安全隨機數生成算法類型的獲取能力。
- 提供 SM4 密鑰的隨機生成與轉換,以及加密解密能力。
- 提供 SM3 密鑰的 HMAC 和 HASH 的能力。
- 提供 SM2 密鑰的隨機生成與轉換、簽名及驗簽、以及加密解密能力。
密鑰管理
- 支持 HUKS 密鑰加密保護。
- 支持 KeyAttestation 公鑰證書中增加對密鑰所屬業務身份字段。
- 支持標準 HDI 南向接口。
設備互信認證
支持在以下兩種場景的設備間互信認證流程中生成假名,支持識別及和標識設備的假名化名稱。
- 對使用同帳號登錄的多個設備進行互信認證。
- 對非同帳號的點對點互聯的兩個設備進行互信認證。
程序訪問控制
- 優化權限管理的菜單呈現,拆分媒體和文件的權限組,相應權限的授權粒度更加精細化。
- 支持 treble 架構下對 SELinux 的兼容能力。
帳號
- 支持帳號授權能力擴展和三方應用使用帳號授權能力。
- 支持對域帳號插件的管理,從而支持域帳號管理和認證能力。
WebView
- W3C 能力補充完善:補充 Web Camera 能力,以及 bindContextMenu、Select、date 類型 input 等 H5 標簽能力。
- 支持多渲染進程的進程拆分。
- 支持文字、圖片基礎拖拽能力。
- 支持 WebRTC 的視頻會議能力(不含攝像頭共享)。
- 支持渲染進程獨立 SELinux 標簽,增強安全基礎能力。
ArkCompiler
- 方舟運行時支持 JSContext 功能;支持動態 PGO 功能,可采集運行期的類型和函數熱點信息,并生成 AP 文件;支持動態 import 加載 NAPI 庫。
- 方舟編譯器 type 編譯模式下前端編譯工具鏈切換到 es2abc。
- NAPI buffer、object、arraybuffer、object type 接口功能補齊。
- Taskpool 支持任務中斷和取消,支持定義任務組(TaskGroup),支持對任務的狀態和調度信息進行打點,支持超長等待的任務進行識別和恢復。
- 編譯構建能力提供 OpenHarmony 系統 user 和 root 不同權限版本的構建,user 版本能力同步支持 Wukong 測試工具和 XTS 測試能力。
- 編譯工具鏈支持預覽器上的調試能力。
DFX
- 提供統一的采集框架能力,方便開發者對應用的調試調測。
- 提供統一的 trace 采集能力。
- 提供 Native 的 HiTraceMeter 打點接口。
- 性能雷達提供工具類,方便各業務模塊(子系統)在業務流程上傳遞性能埋點記錄及結算性能數據。
內核
代碼執行權限管控能力增強,新增了以下能力:
- 支持安全內存機制。
- 提供滿足不同場景的代碼執行權限管控策略。
- 提供代碼執行權限管控的全生命周期管理能力。
- 支持解析可執行文件獲取代碼段信息。
- 支持代碼頁的完整性保護能力。
驅動
擴展設備驅動框架提供以下能力:
- 擴展設備驅動框架基于“驅動擴展 Ability(DriverExtensionAbility)”的能力,構建應用態擴展驅動包的開發、部署、安裝、更新、卸載、運行能力,開放全流程生命周期管理能力。
- 支持三方設備廠商開發的非標準協議的可插拔 USB 設備擴展驅動包,正常安裝到 OpenHarmony 系統。插入 USB 設備后,能正常識別 USB 設備并與擴展驅動包匹配。
- 支持三方應用通過擴展外部設備管理框架查詢并綁定 USB 設備擴展驅動包,完成對擴展驅動包定制功能的操作。
相機驅動提供以下能力:
- 提供 USB 相機熱插拔識別能力,支持開機啟動檢查識別和啟動后熱插拔識別。
- 支持 USB 相機的預覽、拍照、錄像能力,提供相機格式、分辨率查詢和配置能力。
- 編解碼驅動提供 JPEG 圖片硬件解碼加速能力,包括獲取硬件解碼信息,初始化 / 去初始化,解碼,申請 / 釋放 buffer,提升用戶瀏覽圖片流暢度體驗。
- 傳感器驅動提供溫濕度傳感器設備驅動能力,支持小型設備溫濕度器件查詢,器件使能 / 去使能,數據查詢能力,豐富智能設備傳感器能力。