OpenHarmony 3.1 Release
Version Description
OpenHarmony 3.1 Release provides the following enhancements over OpenHarmony 3.1 Beta:
Enhanced basic capabilities for the standard system
Local basic audio/video playback capabilities, video hardware codecs, basic camera preview and photographing capabilities.
RenderService framework, 2D/3D drawing, and new animation and display effect framework.
A new window management framework, which provides more flexible window framework capabilities and supports full-screen, split-screen, window modes, and cross-window content dragging.
Display management capability that supports split-screen display, enhanced screen-on/off management, and window animation and effect.
Basic functions of the mouse, keyboard, and touchpad, and basic capabilities of common sensors such as acceleration sensors, gyroscope sensors, Hall effect sensors, and vibrators.
Locale selection, new and enhanced internationalization features, system resources, and rawfile resources.
Management for time and time zone synchronization, pasteboard, lock screen, static wallpaper, and downloading.
System service status monitoring, cross-device oncall (cross-device FA startup), continuous tasks, transient tasks, and Work Scheduler.
Enhanced memory management, basic power management, and enhanced process scheduling.
Local accounts, binding of domain accounts and local accounts, distributed account ID derivation and status management, local application permission management, and distributed permission management.
Basic capabilities and JS APIs related to Wi-Fi Station (STA), Access Point (AP), and Point-to-Point (P2P); Capabilities and JS APIs related to Bluetooth Basic Rate (BR), Bluetooth Serial Port Profile (SPP), and Bluetooth Low Energy (BLE); new location subsystem that provides the location service framework capability.
Enhanced distributed capabilities for the standard system
DSoftBus network switching, P2P connection, streaming, and Bluetooth.
Enhanced hardware collaboration and resource sharing: mirroring and extended projection.
Enhanced device online/offline and personal identification number (PIN) authentication functions, storage management, application sandbox isolation, public data sandbox isolation, distributed databases, distributed data objects, local database access, and cross-application database access.
Enhanced application framework capabilities for the standard system
ArkUI custom drawing, Lottie animations, and keyboard and mouse interaction.
Declarative <Web> and XComponent components.
Widget capabilities, including adding, deleting, and updating widgets.
Multi-user capability: multi-device basic JS toolchain and runtime capability; basic functions such as multi-HAP installation, implicit query, multi-user, and permission management; distributed notification and notification templates.
Enhanced application capabilities for the standard system
More system applications, including the Home Screen, System UI, Settings, Camera, Gallery, Call, Contacts, Messaging, Notepad, File Selector, and Input Method.
Version Mapping
Table 1 Version mapping of software and tools
Software/Tool | Version | Remarks |
---|---|---|
OpenHarmony | 3.1 Release | NA |
SDK | Ohos_sdk 3.1 Release (API Version 8 Release) Ohos_sdk 3.2 Canary (API Version 9 Canary) |
NA |
(Optional) HUAWEI DevEco Studio | 3.0 Beta3 for OpenHarmony | Recommended for developing OpenHarmony applications |
(Optional) HUAWEI DevEco Device Tool | 3.0 Release | Recommended for developing OpenHarmony smart devices |
Note: The canary release is a preliminary release open only to specific developers. This release does not promise API stability and may require tolerance of instability.
Source Code Acquisition
Prerequisites
-
Register your account with Gitee.
-
Register an SSH public key for access to Gitee.
-
Install the git client and git-lfs, and configure user information.
git config --global user.name "yourname" git config --global user.email "your-email-address" git config --global credential.helper store
-
Run the following commands to install the repo tool:
curl -s https://gitee.com/oschina/repo/raw/fork_flow/repo-py3 > /usr/local/bin/repo # If you do not have the permission, download it to another directory and configure it as an environment variable by running the chmod a+x /usr/local/bin/repo command. pip3 install -i https://repo.huaweicloud.com/repository/pypi/simple requests
Acquiring Source Code Using the repo Tool
Method 1 (recommended)
Use the repo tool to download the source code over SSH. (You must have an SSH public key for access to Gitee.)
repo init -u git@gitee.com:openharmony/manifest.git -b refs/tags/OpenHarmony-v3.1-Release --no-repo-verify
repo sync -c
repo forall -c 'git lfs pull'
Method 2
Use the repo tool to download the source code over HTTPS.
repo init -u https://gitee.com/openharmony/manifest.git -b refs/tags/OpenHarmony-v3.1-Release --no-repo-verify
repo sync -c
repo forall -c 'git lfs pull'
Acquiring Source Code from Mirrors
Table 2 Mirrors for acquiring source code
Source Code | Version | Mirror | SHA-256 Checksum |
---|---|---|---|
Full code base (for mini, small, and standard systems) | 3.1 Release | Download | Download |
Hi3516 standard system solution (binary) | 3.1 Release | Download | Download |
RK3568 standard system solution (binary) | 3.1 Release | Download | Download |
Hi3861 mini system solution (binary) | 3.1 Release | Download | Download |
Hi3516 mini system solution - LiteOS (binary) | 3.1 Release | Download | Download |
Hi3516 mini system solution - Linux (binary) | 3.1 Release | Download | Download |
Standard system SDK package (macOS) | 3.1 Release | Download | Download |
Standard system SDK package (Windows/Linux) | 3.1 Release | Download | Download |
Standard system SDK package | 3.2 Canary | Loaded only by using HUAWEI DevEco Studio | NA |
Compiler toolchain | NA | Download | NA |
What's New
This version has the following updates to OpenHarmony 3.1 Beta.
Feature Updates
Table 3 Feature updates
Subsystem | Standard System | Mini and Small Systems |
---|---|---|
Resource scheduling | - Continuous tasks, transient tasks, and Work Scheduler are added. - Reminder agents are added. The following requirements are involved: I4QT41 [New feature] Reminder agent management I4QU0W [New feature] Transient task management I4QT3S [New feature] Continuous task management I4QU0P [New feature] Work Scheduler I4QT45 [New feature] Querying historical application usage statistics within a given time range |
NA |
Multimodal input | - The basic functions of the mouse, keyboard, and touchpad are supported. - Subscription to full-screen gesture events is supported. The following requirements are involved: I4WWRZ [Multimodal] Mouse button functions I4WWS0 [Multimodal] Mouse wheel function I4WWSR [Multimodal] Basic keyboard functions I4WWT8 [Multimodal] Basic touchpad functions I4WWSN [Multimodal] Subscription of single-system key events |
NA |
System service management | - The function of system service status monitoring is added. - The function of dynamically loading local system services is added. - The functions of adding, deleting, modifying, querying, and synchronizing device profiles are added. - The function of registering device profile events is added. - An ability continuation framework is added to supports continuation of distributed objects and application stack information on another device. - Cross-device oncall (remote FA startup) is added. - The capability of obtaining remote device missions and mission snapshots in real time is added. The following requirements are involved: I4MBRV [Samgr] System service status monitoring I4MBRY [Samgr] System service process management I4NY1T [device_profile] Subscription of profile changes. I4NY1W [device_profile] Profile synchronization I4NY1X [device_profile] Remote device profile query I4OGD1 [New feature] [DMS] Cross-device oncall I4OGCK [Enhanced feature] Returning the continuation result after the distributed object synchronization is complete I4OGCL [Enhanced feature] [Framework] Data storage for ability continuation I4OGCN [Enhanced feature] [DMS] Initiating ability continuation by device and receiving the continuation result I4OGCM [New feature] [Task management] APIs for real-time mission retrieval |
I4TS0Z [New feature] Remote service management by mini-system Samgr |
Distributed hardware | - The distributed hardware subsystem is added, which involves three code repositories: distributed hardware management framework, distributed camera, and distributed screen. - The following device management functions are added: peripheral device discovery, device online/offline, and PIN authentication. The following requirements are involved: I4PZE7 [Enhanced feature] Discovery of peripheral untrusted devices I4PZDZ [Enhanced feature] PIN authentication for account-irrelevant devices I4PZDY [Enhanced feature] Query of the trusted device list and device online/offline monitoring I4WVOC [New feature] Distributed hardware enabling/disabling and dynamic loading I4WVMX [New feature] Distributed hardware access management I4WW6U [New feature] Mirroring and extended display of distributed screens |
I4XSUZ [New feature] Basic device management for the mini system |
Power management | Power management, battery management, thermal management, and power consumption statistics are supported. The following requirements are involved: I40IRO [Power management] Hibernation and hybrid sleep modes I412F4 [Power management] Power saving mode I4MBRL [Power management] Display-related power consumption adjustment I4MBRM [Power management] Proximity sensor lock: During a call, the screen can be turned on or off by using the proximity sensor. I4OEOZ [Power management] Monitoring of input screen-on events and turning on or off the screen based on the events I4OEQT [Power management] Screen-off detection I4QGI0 [Power management] Pressing and holding the Power button to display the shutdown screen I410YD [Battery management] Charging while the device is shut down I410Y1 [battery management] Shutdown due to abnormal battery temperature I4GY9U [Thermal management] Kernel temperature control I4GYAF [Thermal management] User layer and service temperature control I4GYBV [Thermal management] Temperature monitoring API I4GYCD [Power consumption statistics] Software power consumption statistics I4GYCN [Power consumption statistics] Hardware power consumption statistics I4GYDQ [Power consumption statistics] Power consumption details |
NA |
Account | - The lifecycle of local accounts (also called system accounts) can be managed, including creating, switching, deleting, subscribing to, querying, and modifying local accounts. - Distributed account ID derivation and status management are supported. When a distributed account logs in, a unique account ID is derived and bound to the local account. When the distributed account logs out or the token expires, the binding between the distributed account and the local account is removed. - The function of binding a domain account to a local account is added. A local account is automatically created based on the passed domain account and bound to the domain account. - The acm command is added for local account management. You can run the acm create/delete/switch/dump command to add, delete, modify, or query local accounts, and the acm --help command to view the command description. I4JBFB Account status management in a distributed network I4JBEK Account ID derivation in a distributed network I4IU6N Local multi-user basic information management I4IU5W Local multi-user lifecycle management of the os_account_standard component I4IU5G Local multi-user auxiliary management tool I4IU3V Mappings between domain accounts and local accounts I4IU3B Local multi-user start, stop, and switching I4IU33 Local multi-user function setting and content modification |
NA |
Kernel | - Memory management enhancement features, including Continuous Memory Allocator (CMA), shared memory, and enhanced memory swapping, are added to improve memory usage efficiency. - Process scheduling enhancement features, including CPU hotplug, lightweight isolation, and preferential supply for frame drawing threads, are added to improve CPU usage and enhance resource supply in sliding scenarios. - The latest kernel security vulnerability patch and other security hardening mechanisms, such as token ID configuration and query, are supported. The following requirements are involved: I4MBTN [New feature] CMA I4MBTO [New feature] Memory usage query by category I4LKQ0 [New feature] Decoupling between cpuset and CPU hotplug I4QE9K [New feature] Kernel sharing between the kernel-mode driver and the user-mode driver, and between a pair of user-mode drivers I4LRGQ [New feature] OpenHarmony kernel baseline enablement I4RXQ3 [New feature] Basic memory management features I4TEGS [New feature] Performance optimization for F2FS when there is little storage space available I4SRVK [New feature] Lightweight CPU isolation I4SE2N [New feature] User-specific memory resource management I4VMGZ [New feature] Basic Frame Per Second (FPS) awareness scheduling I4U089 [New feature] Preferential supply for frame drawing threads I4OWTZ [External dependency] Token ID setting for processes |
NA |
Bundle management framework | - Multi-HAP installation, implicit query, multi-user management, and authority management are supported. - Distributed capabilities such as Database Management System (DBMS) and cross-device synchronization are added. - The zlib native SDK is supported. The following requirements are involved: I4MBSD [New feature] Multi-HAP installation I4MBSG [Enhanced feature] Installation package information query I4PKY7 [New feature] Cross-device information synchronization I4PKY8 [New feature] Cross-device information query I4PKYK [Enhanced feature] Scanning I4PKYI [New feature] Data clearing I4PKYM [New feature] Multi-user creation I4QA3D [Enhanced feature] Native APIs (NAPIs) for zlib compression and decompression I4SIH9 [New feature] Application permission management (Canary) I4PKYH [New feature] Extension query (Canary) I4PKYD [New feature] Adjustment of the installation capability for adaption to the config.json file (Canary) I4PKYB [Enhanced feature] Schema construction for adaptation to the config.json file |
NA |
Location | - The location subsystem is added to provide the location service framework capability. - The location subsystem provides services such as Global Navigation Satellite System (GNSS) based positioning, GNSS geofencing, GNSS Batching, network positioning, and geocoding. The following requirements are involved: I4XXIH [location_gnss] Auxiliary information request and injection related to GNSS performance improvement I4XXIG [location_gnss] GNSS hardware power consumption statistics and power consumption optimization I4XXIF [location_gnss] GNSS based positioning I4XXIC [location_gnss] GNSS Batching I4XXIB [location_gnss] GNSS parameter setting and information reporting I4XXI8 [location_locator] Security management of the location service I4XXI7 [location_locator] Security assurance for location privacy I4XXI5 [location_locator] Management of multiple location requests I4XXI4 [location_locator] Location management I4XXI3 [location_geofence] GNSS geofencing I4XXI0 [location_geocode] Conversion between geographic coordinates (like longitudes and latitudes) and addresses I4XXHZ [location_network] Network positioning I4XXHW [location_gnss] GNSS auxiliary information protocol support |
NA |
Communication | - The Wi-Fi STA, AP, and P2P basic capabilities and related JS APIs are added. Experience for STA, AP, and P2P connections is enhanced. - The Bluetooth BR, SPP, and BLE capabilities and related JS APIs are added. The following requirements are involved: Wi-Fi I4XXFG [New feature] Wi-Fi power consumption statistics and power consumption optimization I4XXFF [New feature] Basic Wi-Fi P2P capabilities I4XXFB [New feature] P2P magic link I4XXF7 [New feature] SoftAP 5G and automatic channel selection I4MBRI [New feature] Basic SoftAP features I4MBRH [New feature] Basic STA features Bluetooth I4XXGC [bluetooth_standard] Bluetooth BR/Enhanced Data Rate (EDR) I4XXFT [bluetooth_standard] Advanced Audio Distribution Profile (A2DP) capabilities and related JS APIs I4XXFP [bluetooth_standard] Basic BLE capabilities I4XXFL [bluetooth_standard] Bluetooth SPP and BR data transmission |
NA |
Ability management framework | - The widget capability is added. The zidl tool supports automatic generation of C++ server/client code. The ability test framework is provided, and the command line tool capabilities are enhanced. - The following capabilities are added: multi-user, mission stack reconstruction, ability-based decoupling, application resident process, application exception detection enhancement, and environment change notifications. The following requirements are involved: I4PCM4 [New feature] Application/HAP/Ability information query in the context module I4PCPP [New feature] Multi-user in the context module I4PCPV [New feature] System interface for user-specific ability start I4PCQP [New feature] Single-user running mode I4PCQU [New feature] Default user initialization I4PCGY [Enhanced feature] Widget development base class I4PCH9 [Enhanced feature] Widget configuration through configuration files I4PCLL [New feature] Application-level JS context I4PCLN [New feature] Ability status recovery I4PCP1 [New feature] Application running information query I4PCPG [Enhanced feature] System environment change notifications I4PCR8 [Enhanced feature] Resident process upon system boot I4PCV4 [New feature] Mission switching I4PCVZ [New feature] Ability startup by display ID I4PCW3 [Enhanced feature] Pending want for cross-device ability startup I4PCH4 [New feature] Multi-user widget I4PCM1 [New feature] CE/DE-level context I4PCVN [New feature] Obtaining and updating mission snapshots I4PPW6 [Enhanced feature] Ability startup in specified window mode I4PC3R [New feature] Basic widget development capabilities I4PQ0M [Enhanced feature] Message sending and monitoring provided by the context module II4PQ13 [Enhanced feature] Permission verification and application APIs provided by the context module I4PQ1E [Enhanced feature] Resident process recovery from exceptions I4PQ1O [New Feature] New want I4PCPI [Enhanced feature] System environment information query I4PCRL [New feature] Ability test framework I4PCVU [New feature] Ability call (Canary) I4QU0P [New feature] Work Scheduler (Canary) I4PCRL [New feature] Ability test framework (Canary) I4PCLL [New feature] Application-level JS context (Canary) I4PC3R [New feature] Basic widget development capabilities (Canary) I4PCS0 [New feature] APIs for starting and stopping abilities (Canary) I4PCRQ [New feature] APIs for Scheduler component lifecycle management (Canary) I4WVBL [Enhanced feature] [AMS] Cross-device mission continuation (Canary) I4PCP1 [New feature] Application running information query (Canary) I4PCPI [Enhanced feature] System environment information query (Canary) I4PCPG [Enhanced feature] System environment change notifications (Canary) I4PQ0K [Enhanced feature] Indepent running of the Extension process (Canary) I4PPW6 [Enhanced feature] Ability startup in specified window mode (Canary) I4PCVZ [New feature] Ability startup by display ID (Canary) I4U457 [Enhanced feature] URI permission verification API (Canary) I4S8X4 [Enhanced feature] Dynamic URI permission authorization (Canary) I4VUXP WantAgent obtaining the operation type |
NA |
Accessibility | - The internal implementation of UI information exchange is added. - The function of reading accessibility configuration is added. The following requirements are involved: I4X2EM [New feature & information exchange mechanism] Key interception I4X2EN [New feature & information exchange mechanism] Reporting of window node information I4X2ET [New feature & information exchange mechanism] Reporting of control node information I4X2EV [New feature & information exchange mechanism] Focus query I4X2EY [New feature & information exchange mechanism] Accessibility event list I4X2EZ [New feature & information exchange mechanism] Accessibility event information I4X2F0 [New feature & information exchange mechanism] Accessibility action initiation I4X2F1 [New feature & information exchange mechanism] Auxiliary application list query I4X2F2 [New feature & information exchange mechanism] Auxiliary application status query and monitoring I4X2F3 [New feature & information exchange mechanism] Gesture simulation I4X2F4 [New feature & information exchange mechanism] Touchpad interception I4X2EO [New feature & accessibility service management] Target application connection I4X2EP [New feature & accessibility service management] Assistance application connection I4X2ER [New feature & accessibility service management] Assistance application update I4X2ES [New feature & accessibility service management] Accessibility caption configuration |
NA |
Multimedia | - The local basic audio/video playback capabilities, video hardware codecs, and mainstream audio/video codecs and encapsulation formats are supported. - The basic camera preview, photographing, and distributed camera functions are provided. The following requirements are involved: I4WYPP [audio_standard] Bluetooth audio playback I4WYK8 [audio_standard] OpenSL ES basic playback interfaces I4WYW4 [Enhanced feature] Camera session management I4WYVE [Enhanced feature] Basic photographing functions I4WZ8G [New feature] Basic image decoding framework I4X5E1 [New feature] Video software decoding I4X552 [New feature] Local audio/video playback I4X5Q9 [New feature] Distributed media library - thumbnail synchronization I4X5L5 [New feature] Basic media database (Canary) I4WYOP [audio_standard component] Enhanced audio focus management (Canary) I4WZBF [New feature] Image receiver (Canary) I4WYW4 [Enhanced feature] Camera session management (Canary) I4WYVE [Enhanced feature] Basic photographing functions (Canary) I4WYSW [Enhanced Feature] Preview function in basic photographing mode (Canary) I4X59J [New feature] Video recording |
NA |
Graphics | - A new graphics rendering framework RenderService is provided. - 2D/3D drawing is supported. - A new animation framework is provided. The following requirements are involved: I4MBTY [render_service] [New feature] Background rendering feature for the UI framework I4RKT3 [composer] Combination and display I4ZCGG [drawing] Graphics native SDK I4RKSW [drawing] 3D and graphics capabilities, and native SDK capabilities I4MBTW [animation] Basic animation framework |
NA |
Window Manager | - A new window management framework is provided, which offers more flexible window framework capabilities and supports full-screen, split-screen, window modes, and cross-window content dragging. - The display management capability is provided, which supports split-screen display and enhanced screen-on/off management. The following requirements are involved: I4R308 [Enhanced feature] Application window creation and management: Multiple primary windows can be created for multiple ability instances of a single application. I4R309 [Enhanced feature] Application window creation and management: The window display policy can be set when a window is started. The window display policy status (split screen, full screen, or free window) is provided for applications. I4R30D [New feature] Free window display, tile layout, and cascade layout of the application's primary window. I4R9P0 [New specification] Enhanced features: 1. Display management 2. Creating and destroying a display by inserting or removing a physical screen 3. Multi-display mapping management I4ZEKH [New feature] Screen on/off process 1. Sleep, wake-up, screen-on, and screen-off requests initiated from the power management module 2. Calling of the RenderServer interface to turn the screen on/off or adjust the screen brightness as requested (Canary) I4R30B [New specifications] [Enhanced feature]: Creation and management of the application window |
NA |
Network management | I4XXHU [Enhanced feature] TCP/UDP socket I4XXHT [Enhanced feature] Support for HTTP 1.1/HTTPS/HTTP 2 I4XXHS [Enhanced feature] Wi-Fi/Cellular network connection management and handover I4XXHP [Enhanced feature] Domain Name System (DNS) resolution and configuration I4XXHN [Enhanced feature] Network connection status query and status change notification I4XXHH [WPA_supplicant] Wi-Fi Protected Access (WPA) and P2P capabilities based on nl80211 I4XXHG [WPA_supplicant] Magic link |
NA |
MSDP | I4WWRO [MSDP] device_status component standardization | NA |
Globalization | - Locale selection is added. - The following internationalization features are supported: single and plural rules, string sorting, phone number processing, calendar and local calendar, measurement units and formatting, time segment formatting, alphabet retrieval, Unicode character attributes, wrapping and line feed. - System resources are supported. - rawfile resources are supported. The following requirements are involved: I4MBR0 [Enhanced feature] Locale representation and attributes I4MBR1 [Enhanced feature] Singular and plural rules I4MBR2 [Enhanced feature] String sorting I4MBR3 [Enhanced feature] Phone number processing I4MBR7 [New feature] Calendar and local calendar I4MBR5 [New feature] Measurement units and formatting I4MBQZ [Enhanced feature] Time segment formatting I4MBR4 [New feature] Alphabet retrieval I4MBR8 [Enhanced feature] Unicode character attribute I4MBR9 [Enhanced feature] Wrapping and line feed I4MBRA [New feature] System resource management I4MBRB [New feature] rawfile resource management I4R2YA [New feature] Native SDK for resource management |
NA |
DSoftBus | - Network switching is supported. - Bluetooth is supported. - Bluetooth file transfer is supported. - Streaming is supported. - P2P connection is supported. - P2P-based file transfer and streaming are supported. The following requirements are involved: I4MBS0 [New feature] [Networking] Network switching I4XXEL [Enhanced feature] Bluetooth I4XXEX [Transmission] File transfer over Bluetooth I4XXEO [Enhanced feature] [Transmission] Enhanced file transfer (NSTACK component capability) I4XXEV [New feature] [Transmission] Enhanced streaming (NSTACK component capability enhancement) I4XXEN [New feature] [Networking] P2P connection I4XXEP [New feature] [Connection] P2P connection I4XXES [New feature] [Transmission] P2P file transfer I4XXET [New feature] [Transmission] P2P streaming |
NA |
ArkUI | - Keyboard and mouse interaction is supported. - The declarative <Web> component is added. - The declarative XComponent is added. - The declarative Canvas2D and OffscreenCanvas capabilities are added. - Rich text display is supported. - Multiple functional components are added. - The customization capabilities of multiple components are enhanced. - Debugging is enhanced. The following requirements are involved: I4MBV7 [New specification] Scroll bar style customization I4MBVO [New feature] Content customization specifications for the <Popup> component. I4MBVP [New feature] Canvas drawing I4MBVR [New feature] Touch hot zone setting I4MBVS [New feature] Lottie animations I4MBVU [New feature] Content customization specifications for the <Menu> component. I4MBVV [New feature] Swipe gesture I4MBV9 [New specification] <TabBar> content customization specifications for the <Tabs> component I4MBVA [New specification] Title bar setting specification for the <Navigation> component I4MBVC [New specification] Content customization specification for the <TabBar> component I4WTQY [New feature] Linear proportion display component I4MBV3 [New specification] Component polymorphic style specifications I4MBV5 [New specification] Prompt menu content specifications for the <AlphabetIndexer> component I4WTQ2 [New specification] Content dragging specification for the <List> component I4WTQ4 [New specification] Content dragging specification for the <Grid> component I4WYNA [New specification] Enhanced <Dialog> component: dialog box displayed at the user-specified location I4WTQX [New feature] <PatternLock> component I4QC4N [New specification] <Select> component I4QC4O [New specification] Enhanced <TextInput> component I4WTPY [New specification] Mouse dragging for text selection for the <Text> component I4WTRS [New feature] Declarative paradigm specifications for the XComponent I4WTR9 [New feature] Mouse button and scroll wheel events I4WTQI [New specification] Mouse dragging specification I4RCRC [New feature] Style status compilation and conversion I4WTPS [New specification] Touch event that supports multi-touch information I4RCRF [New feature] Access to child component data by custom components I4X27K [New feature] <Sidebar> component I4RA0G [New specification] Mouse pointer hover events on widgets I4WTQV [New feature] Scenario-specific data storage I4RCRK [DFX] Timeout detection I4RCJ8 [IDE support] Print of time consumed by the rendering pipeline I4RCRM [IDE Tool Support] Print of time required for interaction event callbacks I4WTR7 [New feature] <Web> component I4WTRA [New feature] Routing information continuation in the distributed network I4X29K [New feature] <ContextMenu> component I4WTQJ [New specification] Keyboard shortcuts of the <Input> component I4WTQK [New feature] Double-click for word selection I4WTPG [New specification] Enhanced parameter configuration of the basic animations I4X26M [New specification] <List> component that supports selection by the mouse operation alone and the combination of keyboard and mouse operations I4X26Y [New specification] <GridItem> component that supports selection by the mouse operation alone and the combination of keyboard and mouse operations I4WTR8 [New feature] Focus setting I4U5XM [New specification] Conditional compilation of JS files by ArkUI Loader I4WTQN [New feature] RichText label (Canary) I4WTQV [New feature] Scenario-specific data storage |
NA |
Program access control | - The functions of defining, managing, authorizing, querying, and authenticating local application permissions are added. - The functions of managing, querying, authenticating, and synchronizing distributed permissions are added. The following requirements are involved: I4WVMH [New specification] Predefined system application permission initialization I4WVO9 [New specification] Application permission request query I4WVPH [New specification] Basic framework of the AT synchronization service I4WVPV [New specification] Local permission verification interface and mechanism I4WVQT [New specification] Native token creation and update mechanism I4WVR3 [New specification] Application permission setting interface and mechanism I4WVRG [New specification] Basic framework of the AT management service I4WVRR [New specification] Token query interface for HAP applications I4WVS6 [New specification] Token deletion for HAP applications I4WVSI [New specification] Token creation and update for HAP applications I4TYDA [New specification] Cross-device token information synchronization I4TYCV [New specification] Token information synchronization for the native process upon device online I4V02K [New specification] Application authorization status update and synchronization I4V02Y [New specification] Application uninstall synchronization I4V032 [New specification] Implementation of the application permission management page I4V038 [New specification] Application permission setting on the application permission management page I4TYCK [New specification] Distributed permission verification interface and mechanism I4TYDO [New specification] Token deletion upon device offline I4SEZD [New specification] Dynamic permission request I4SEZ7 [Dynamic permission setting] Dynamic permission authorization |
NA |
Multi-language runtime | - Language compilation and runtime: A multi-device basic JS toolchain and runtime are provided, and the JS engine on the device side is provided to support application running. - TS/JS Utils: The TS/JS Utils provides basic functions and supports TS/JS multi-thread. - TS/JS/C/C++ toolchain: The basic requirements for development, debugging, and optimization are met. - Lite Actor: This model shares bytecode and Virtual Machine (VM) internal infrastructure, optimizes the implementation of the JS engine and the memory usage, and improves the startup performance. - High Perf Partial GC: ArkUI Garbage Collector (GC) supports concurrent mark, parallel mark, and lazy free, reducing the GC pause time by 50% and improving user experience. The following requirements are involved: I4W7ZR [New specification] Memory management, allocation, and reclamation/HPP GC performance optimization I4P7F7 [language compilation and runtime, graphics, DRF] Native SDK integration I4WWKK [Enhanced feature] Lite Actor 1.0 |
NA |
Update | - The components of the update subsystem are standardized. - The SysCap mechanism is supported. The following requirements are involved: I4WXHW [Component-based] Component standardization I4XXH6 [SysCap] SysCap support |
NA |
Misc services | - Management of time and time zone synchronization is supported. - The capabilities of querying, setting, deleting, and replacing pasteboard data items are added. - Lock screen management is supported. - Static wallpaper management is supported. - Downloading management is supported. The following requirements are involved: I4U2WR [New feature] Time and time zone synchronization management I4ZTTE [New feature] Pasteboard data items - Forcible conversion from pasteboard data items to text I4ZTTO [New feature] Pasteboard data - Obtaining, deleting, and replacing pasteboard data items, and querying and setting pasteboard data attributes I4ZTTZ [New feature] System pasteboard - Obtaining, clearing, and querying pasteboard data, and sending pasteboard content change notifications I4ZTZC [New feature] Lock screen management - Multi-user scenario I4ZTZT [New feature] Lock screen management - System startup and screen on/off scenarios I4ZU1S [New feature] Static wallpaper I4ZTXT [request] Downloading management, including creating, deleting, modifying, querying, pausing, and resuming download tasks, monitoring download task progress, and sending download status change notifications. The downloading management service provides Data abilities for system download management, persists download task data, checks the application interface permission, performs HTTP download, and handles download exceptions. (Canary) I4ZTZC [New feature] Lock screen management - Multi-user scenario (Canary) I4ZTZT [New feature] Lock screen management - System startup and screen on/off scenarios |
NA |
Light kernel | NA | For the mini system: I4RD3H POSIX interfaces such as signal, pipe, poll, and select for the LiteOS-M kernel I4Q9OQ Cortex-M55 architecture I4Q9F2 Dynamic loading I4RD2M Kernel componentization |
File management | - The basic file system Ext4 and F2FS capabilities and related tools are supported. Cross-device file access of the distributed file system is provided. - Device storage management functions are provided, including file encryption, space management and statistics, multi-user space management, and external card mount management. - Application data protection is enhanced by supporting application sandbox isolation. User data management is optimized, including security hardening for user data sandbox isolation as well as user file access framework and interfaces. - Basic file operation APIs are provided, including statfs usage statistics and asynchronous file access APIs. The following requirements are involved: I4RDNG [New feature] [local_file_system] User-mode tools such as Ext4 and F2FS I4RFBD [New feature] [local_file_system] Pluggable file systems such as File Allocation Table (FAT), Extensible FAT (exFAT), and New Technology File System (NTFS) I4TTN8 [New feature] Basic functions of the distributed file system I4TTNG [New feature] Data classification, device grade, and data hopping specification control I4TTGR [New feature] [storage_manager] File encryption I4TTHQ [New feature] External storage access I4TTJN [New feature] Event distribution of external cards I4TTJV [New feature] Volume information query and management I4XXIR [New feature] Creation and deletion of user directories by responding to multi-user requests I4XXIY [New feature] Application space statistics I4SNSU [New feature] Application sandbox isolation I4XXIX [New feature] JS APIs for file picker I4MBS2 [New feature] statfs APIs (Canary) I4XXIY Application space statistics (Canary) I4TTJV Volume information query and management (Canary) I4TTJN Event distribution of external cards |
NA |
Common event and notification | - Multi-user is supported. - Distributed notifications are supported. - Notification templates are provided. The following requirements are involved: I4PBOK [New feature] Multi-user notification I4PBP7 [New feature] Sending of template notifications (debugging capability) I4PBPE [New feature] Progress bar notification I4PBPM [Enhanced feature] Traffic control for distributed notifications I4PBRM [New feature] Clicking notifications on another device and redirection on the local device I4PBRW [New feature] Device-level distributed notification enabling control I4PBSE [New feature] Notification management application setting and query of the application-level distributed notification enabling status I4PBSP [New feature] Enabling/Disabling distributed notifications for applications I4PBT7 [New feature] Distributed notification synchronization I4PBU3 [New feature] Distributed notification linkage cancellation I4PBUU [New specification] Static configuration of common events in config.json, and static start of subscribers using Wok Scheduler I4PBV9 [New specification] Static subscriber management I4WTGK [New feature] Template notification registration, query, and sending I4PBSZ [New feature] Notification sending based on the device status I4PBBV [New feature] EventRunner timeout detection I4PD0O [Enhanced feature] Enhanced notification sending enabling I4PBQ1 [Enhanced feature] dump command for distributed notifications I4PBR0 [New feature] Clicking a notification on one device and redirection on another device I4PC2S [New feature] Multi-user for common events |
NA |
Pan-sensor | - Data reporting by common sensors, such as acceleration, gyroscope, and Hall effect sensors, is supported. - The basic functions of vibrators are supported. - The general algorithms and geomagnetic field algorithms are supported. The following requirements are involved: I4WWTG [miscdevice] Peripheral dependency support by miscdevice I4WWTF [Sensor] Peripheral dependency support by sensor I4WWTD [Sensor] Common algorithm interfaces I4MBRQ [sensor] Horizontal intensity and total intensity of the magnetic field I4MBRP (sensor component) Magnetic declination and dip |
NA |
Distributed data management | - Memory JS objects can now be treated as distributed data objects; Distributed relational data management is provided to support data synchronization based on relational tables. - Condition-based data synchronization and subscription capabilities are supported, making data synchronization more accurate. - File upload is supported. - Data encryption and security tiering are supported, and security control is optimized for data transfer. Multi-user synchronization and isolation are supported. The following requirements are involved: I4IBPH [distributed_kv_store] Supplemented the functions of the distributed data service I4MBRS [distributed_kv_store] Cross-device synchronization and subscription of database records based on predicates I4MBRU [RDB] Database encryption I4NZVP [distributed_kv_store] Distributed database JS APIs I4HAMI [data_share_ability] Subscription of cross-application database changes I4NZP6 [RDB] Multi-table query I4FZ6B [RDB] Transaction I4HAMI [data_share_ability] Subscription of cross-application database changes I4PNX7 [Distributed RDB] Data storage I4HAMD [data_share_ability] Data access modes I4H4FH [distributed_kv_store] Data classification and tiering for the distributed database I4H3M8 [New feature] Complex type of distributed data objects I4HAMD [data_share_ability] Data access modes I4PO00 [Distributed RDB] Data synchronization I4OTW6 [distributed_kv_store] InKeys predicate for the distributed database I4RGFY [DataShare] Reconstruction based on the Extension ability and cross-application data sharing on a single device I4H4FR [distributed_kv_store] Multi-user data isolation and sharing I4RGFY [DataShare] Reconstruction based on the Extension ability and cross-application data sharing on a single device I4XXGF [request] File upload |
For the mini and small systems: Distributed data objects are now available to small-system devices. The following requirements are involved: I4H3JJ: Distributed objects for small-system devices |
DFX | Watchdog detection for the system and application is provided. Log collection for native crashes and JS crashes is supported. Abnormal behavior detection is provided for JS applications. System and process status information can be exported. JS applications can obtain the bottom-layer memory, CPU, and VM information. Distributed tracing and debugging are supported. Log, system event, and application event capabilities are enhanced. The following requirements are involved: I4PJE3 [New feature] Hidumper framework and tool for the standard system I4MBRE [hiperf] Performance statistics I4U0KP [profiler] CPU profiler I4PJE5 [New feature] JS application debugging and optimization based on native memory information I4Q6AQ [New feature] Watchdog I4U0JZ [New feature] hisysevent management I4Q6B6 [Enhanced feature] HiTrace JS APIs I4Q6AY [New feature] Detection mode framework and basic detection basic functions |
NA |
Driver | -& Enhanced Hardware Driver Foundation (HDF) capabilities are provided, including HDF Configuration Source (HCS) configuration parsing and power management. - The shared memory queue and on-demand hardware device interface (HDI) service startup are added to the HDI management framework. - The user-mode platform interfaces are provided for user-mode driver development. - More than 200 HDI interfaces are defined for peripheral modules such as display, audio, camera, sensor, power supply, and USB. The number of device interfaces exceeds 600, providing more hardware access capabilities. The following requirements are involved: I4HPR7 [Enhanced feature] HCS macro parsing interface I4LZZF [Enhanced feature] Synchronous/Asynchronous power management invocation I4QEKH [New feature] Shared memory HDIs I4QEKI [New feature] Driver development tool for standard-system driver development I4QEKZ [New feature] User-mode platform driver interfaces I4QEKL [New feature] Unified platform driver object model built on the HDF I4QELC [New feature] On-demand UHDF process startup I4QEKJ [New feature] HDI adaptation for the Linux-input driver I4QEKM [New feature] Power HDIs I4QEKK [New feature] HDF-based hardware timer driver I4QEKP [New feature] HDF-based light driver I4MBTP [Enhanced feature] Enhanced sensor driver model I4MBTQ [Enhanced feature] Enhanced sensor driver I4MBTR [Enhanced feature] Display HDI reference implementation for the standard system I4MBTS [New feature] More HDF input device capabilities I4QEKP [New feature] HDF based light driver I4QEKQ [New feature] Service-oriented display HDI implementation I4QEL2 [Enhanced feature] Enhanced vibrator driver model I4XXGZ [New feature] HDF based pedometer sensor driver |
For the mini and small systems: HCS macro parsing interfaces are provided to reduce the memory usage during compilation. The following requirements are involved: I4TFTB [New feature] HCS macro parsing interfaces for the mini system |
USB | - A complete USB service management framework is built, including the host and device modules. - Port switching is supported for switching between different function modes. - USB JS APIs are provided for application development. - USB HDIs are defined and implemented, and standard interfaces for USB driver access are provided. The following requirements are involved: I4MBRK [New feature] JS API implementation for the USB service I4QEKV [New feature] HDI implementation for the USB service I4QEKN [New feature] USB device implementation I4QEKO [New feature] USB host implementation I4QEL6 [New feature] USB port implementation |
NA |
Compilation and building | - Normalized component definition and compilation are added. - A unified compilation framework is provided, including the unified gn template, component configuration, product configuration, build commands, and build process. - Native SDK compilation and release are supported. - The Kconfig framework is supported. - The hb capabilities are enhanced, including using the hb compilation entry in a unified manner, displaying build logs by level, and supporting hb command installation, integration, and extension. - gn coding specifications and best practice are provided. |
The feature changes for the mini and small systems are the same as those for the standard system. |
Test | - The automated test framework is added to support the compilation and running of basic unit/UI test scripts. - The wukong tool is provided to support pressure testing of random event injection at the level of the entire system or a single application. -& The SmartPerf tool is added to collect and display basic performance data such as FPS, CPU, and memory data. - The test scheduling framework is enhanced to support automatic case execution configuration and execution configuration management. - The DCTS compatibility test suite is provided to support the DSoftBus and distributed data compatibility test. -& The ACTS and HATS compatibility test suites are enhanced, covering external public JS APIs and HDF APIs in OpenHarmony 3.1 Release. The following requirements are involved: I4XXCR [Test framework] UI automation test I4XXCV [Test framework] TS developer test framework I4XXCW [Test framework] JS application developer test framework I4XXD0 [Test framework] Executor device management I4XXCX [Test framework] Test pipeline test suite execution report I4XXCZ [Test framework] Test case configuration management I4XXD0 [Test framework] Executor device management I4XGLQ [New feature] UI random pressure test tool I4XXD7 [Compatibility test] DCTS 3.1 distributed compatibility test suite |
NA |
Startup | - Process grouping and concurrent startup are supported. - The SA and UHDF services can be started as required or based on hotplug events. - The functions of creating a socket for a service and holding a file descriptor (FD) for a process that exits are added. - begetctl is used as the unified init maintenance command. - The recycling policy after process exit is optimized to support core process restart after exit. Non-core processes can be isolated when they are frequently suspended. The following requirements are involved: I4UTCF [New feature] Process grouping and parallel startup basic framework I4UGE9 Bootchart function I4UP28 SELinux label adaptation for dynamic files I4UTCO [Enhanced feature] Enhanced application process incubation I4UTCY [Enhanced feature] Recycling of incubated application processes by appspawn I4RXJ2 [New specification] Unified init maintenance command I4RXJ9 [New feature] On-demand service process startup I4TNBV [New specification] Enhanced process startup configuration I4PD3K Enhanced recycling policy configuration after process exit |
NA |
User IAM | - The multi-user identity management and user identity authentication functions are added. - A unified user identity authentication framework is added to manage various authentication modes. - Password authentication is added. - Facial authentication is added. The following requirements are involved: I4RG55 [New specification] [user_idm] Query of local authentication credential information of users I4RG5R [New specification] [user_idm] Deletion of the identity authentication credential when a user is deleted I4RG8W [New specification] [pin_auth] Input of local passwords I4RG91 [New specification] [pin_auth] Local password authentication I4RGWU [New specification] [pin_auth] Local password deletion I4TSK7 [New specification] [face_auth] Local facial information deletion I4TSJE [New specification] [face_auth] Local face recording I4TSJY [New specification] [face_auth] Local facial authentication |
NA |
Security | - The device security level management framework is added to support security level query for a specified device. - Management policies for cross-device data migration are added to provide a basis for data security management during internal data processing and service hopping. - A unified key management service is added to manage the full lifecycle of local keys for system applications and upper-layer services. - The device mutual trust authentication capability is added to secure device connections. The following requirements are involved: I4RTYU [New feature] [Service] Devices on the network can query their own security levels. I4RTYW [New feature] [Service] Devices can query the security level of their own or others. I4TJFZ [Enhanced feature] DeviceAuth supports multi-user isolation for trust relationship authentication between devices. The trust relationship managed by a specified system user is used for authentication. I4TJG1 [Enhanced feature] DeviceAuth implements multiple instances of trusted group data and supports data query of a specified user. I4TJG3 [Enhanced feature] DeviceAuth supports the establishment and cancellation of account-irrelevant P2P trust relationships between multiple users. I4TT8L [New specification] HUKS provides a three-segment key management interface. I4TYEM [New specification] HUKS supports import, issuing, and verification of security level credentials. I4TYFI [New specification] When a subuser is deleted from HUKS, the related key data must be deleted. I4TYFR [New specification] When an application is deleted from HUKS, the related key data must be deleted. I4TYFA [New specification] HUKS supports application UID-based access isolation for key applications. I4TYF1 [New specification] HUKS supports key attestation and ID attestation. I4SAI0 [New feature] DataTransitMgrLib is provided to support management policies for cross-device data migration. |
NA |
Application | Some system applications that are applicable to the standard system are provided, such as Home Screen, System UI, and Settings. Specific examples are provided for developers to build applications that can be run on all standard-system devices. - Home Screen: acts as a main entry for all applications and provides UIs for display and human-machine interactions of installed applications. - System UI: consists of the navigation bar and system status bar. The navigation bar provides page navigation, and the status bar displays the system status, such as the time and charging status. - Settings: provides functions such as device management, application management, and brightness setting. - Contacts: provides functions such as the dialer, call log viewing/deletion, contact list, contact details viewing, and contact creation. - Messaging: provides functions such as viewing, sending, receiving, and deleting SMS messages, and sending SMS delivery reports. - Call: provides functions such as answering and ending voice calls and enabling/disabling mobile data. - Camera: provides functions such as preview, photographing, thumbnail display, and original image browsing. - Gallery: provides functions such as managing, browsing, displaying, and editing photos, videos, and albums. - Input Method: provides functions such as hard keyboard input, text change in the edit box, and cursor position change feedback. Note: In OpenHarmony 3.1 Release, only the Gallery system application code can be compiled in the released IDE and SDK. |
NA |
For details, see the following:
Chip and Development Board Adaptation
For details about the adaptation status, see SIG_DevBoard.
Samples & Codelabs
New Samples
Table 4 New samples
Subsystem name | Sample Name | Introduction | Programming Language |
---|---|---|---|
Telephony | SMS | This sample shows how to send SMS messages. | ArkTS |
Telephony | Radio | This sample shows how to use the radio function of the telephony service in ArkTS to obtain information, including the radio access technology, network status, network selection mode, ISO country code, signal strength list, and whether the radio function is enabled. | ArkTS |
Device management | Power Management | This sample shows how to power off a device, restart the system, and check the screen status. | ArkTS |
Device management | Sensor | This sample uses the orientation sensor APIs to implement the compass effect. | ArkTS |
Device management | Device Management | This sample shows the use of the DeviceManager API in ArkTS, including obtaining the trusted device list, scanning for devices, authenticating devices, and subscribing to device status changes. | ArkTS |
Account management | Application Account Management | This sample shows how to register/log in to an application and set the account information to demonstrate application account management. | ArkTS |
ArkUI | web | This sample shows the function pages of the <Web> component. | ArkTS |
ArkUI | Drag | This sample shows the drag operation function. | ArkTS |
ArkUI | Animation | This sample demonstrates the effect of the AnimatorProperty and Explicit Animation. | ArkTS |
Data management | Querying the DDM Result Set | This sample shows how to create a query object to query data in a key-value (KV) store and obtain the result set in distributed data management (DDM). | ArkTS |
Data management | ArkTS RDB | This sample shows how to use a relational database (RDB) in ArkTS, including adding, deleting, modifying, and querying data. | ArkTS |
Common event and notification | Reminder Agent | This sample shows how to use the reminder agent by simulating an alarm clock. | ArkTS |
Common event and notification | Event notification | This sample shows the in-process event notification. After a user selects an offering and submits an order, the selected offering is displayed in the order list. | ArkTS |
Connectivity | RPC | This sample shows the data exchange between the frontend and backend of a device. After the offering and quantity are selected at the frontend, the backend calculates the result and displays it at the frontend. | ArkTS |
Connectivity | WLAN | This sample shows how to use WLAN with ArkTS, including disabling and enabling the WLAN, scanning the WLAN and obtaining the scanning result, listening for WLAN status and Wi-Fi connection status, obtaining the IP address, country code, and checking whether the device supports WLAN features. | ArkTS |
Multimedia | Recorder | This sample shows how to use audio recording and playback of the media service. | ArkTS |
Multimedia | Multimedia | This demo shows how to invoke the camera to take photos in ArkTS and how to use the MediaLibrary APIs to add, delete, modify, and query media files. | ArkTS |
For more information, visit Samples.
New Codelabs
Table 5 New codelabs
Codelab Name | Introduction | Programming Language |
---|---|---|
Distributed Authentication | This codelab shows how to develop a distributed game authentication application in JS and how to use the distributed startup, DeviceManager objects, and device attribute display interfaces. | JS |
Distributed Game Controller | This codelab shows how to develop a game controller in ArkTS. By leveraging the distributed capabilities, one development board is used as the game controller, and another development board is used as the game server. | ArkTS |
Distributed Jigsaw Puzzle | This codelab shows how to develop a jigsaw puzzle. In this development, the RPC is used for cross-device communication, and CommonEvent is used to implement communication between the Service ability and FA. | ArkTS |
Distributed Control | This codelab shows how to develop a distributed control in ArkTS. By leveraging the distributed capabilities, one development board is used as the TV, and another development board is used as the remote control. | ArkTS |
Audio Recording | This codelab shows how to use AudioRecorder to record an audio file and use AudioPlayer to play the recorded audio. | ArkTS |
Notepad | This codelab shows how to develop a notepad in ArkTS. You can create, delete, and favorite notes, and use the lightweight database to store data persistently. | ArkTS |
Distributed Mail Editing | This codelab shows how to develop the distributed email editing function. By leveraging the distributed capabilities, a remote device in the same LAN and with the same login account can be started, and email editing can be continued on the remote device. | ArkTS |
Third-party Library | This codelab shows how to use vcard, a third-party library used in OpenHarmony to write and read contact data in a specified format (file with the extension name vcard). | ArkTS |
Resolved Issues
Table 6 Resolved issues
Issue No. | Description |
---|---|
I4MGJM | [HDF/Camera] The case fails when the RK3568 board runs the camera HDI tests. |
I4OECR | An Ark stack exception occurs during XTS running (low probability). |
I4OBTW | After all XTS cases are executed and the application is installed, aa start failures occur, affecting the pipeline stability test. |
I4OLHF | [ArkUI subsystem] The test process is abnormal due to the com.amsst.amsMissionSnapshotTest process. |
I4OLUK | [ArkUI subsystem] The process stack is abnormal due to the com.ohos.systemui process. |
Known Issues
Table 7 Known issues
Issue No. | Description | Impact | To Be Resolved On |
---|---|---|---|
I4NRS5 | [Kernel subsystem] A CVE vulnerability exists. | No patch has been released for the Linux kernel. The kernel will be updated after the patch is released in the community. | Depending on the patch release in the community |
I4UUFR | Local image compilation and build may fail for the Hi3516 development board. | Compilation occasionally fails on the Hi3516 development board. This issue can be resolved by downloading the code. | 2022-04-30 |
I4RJU8 | A black screen occurs during camera preview on the Hi3516 development board of a standard-system device. | The preview function is affected. | 2022-05-30 |
I4Z3G9 | [Graphics subsystem] [RK3568] Screen flickering occurs when the secondary window is opened in the immersive primary window. | User experience is adversely affected. | 2022-04-15 |
I50EBB | [Hi3516 burning] Images of the Hi3516 development board on a standard-system device cannot be burnt by using the IDE. | The burning fails only in the Ubuntu environment of the IDE. Workaround: Use the remote mode to burn the image on Windows. Solution: The Windows + Ubuntu hybrid mode will be used. Remote Ubuntu development, compilation, and debugging are performed on Windows, and burning is automatically performed on Windows. |
2022-04-30 |