1# OpenHarmony 5.0.0 Release 2 3 4## Version Description 5 6OpenHarmony 5.0.0 Release continuously improves its standard system capabilities. It provides the following enhancements over OpenHarmony 4.1 Release: 7 8The application framework has introduced more lifecycle management capabilities and child process related capabilities. It can now conduct more refined scheduling and management of tasks at application runtime. The lifecycle management capabilities have been refined, and the application launching and redirection capabilities have been improved. ArkUI has further opened up the rendering capabilities of custom nodes and improved the components' capability to call through C APIs. Bundle management has improved the efficiency of application packaging and enriched the operational scenarios for end users when using applications (such as creating application clones and home screen shortcuts). The connection capabilities and specifications of DSoftBus have been further enhanced. The distributed data management capabilities have been further strengthened. While ensuring the rational sharing of data, security has been enhanced. The Sendable mechanism adaptation capabilities of other modules have also been improved. File management has further improved the Picker's capabilities, achieving rational control and use of file resources. Media capabilities in audio and video playback and recording have been further enhanced. Support has been added for multiple audio, video, and image encoding formats. More detailed playback control operations are now supported. The camera provides more powerful capabilities, enriching the scenarios for end users to take photos. The framework capabilities, video encoding and decoding capabilities, and audio and video application capabilities have been improved. The media library has enriched the usage scenarios and provides a better user experience. 9 10Multiple subsystems have further aligned with ArkTS to enhance NDK C API capabilities, such as ArkUI's adaptability to third-party frameworks, Unified Data Management Framework (UDMF), graphics rendering, playback framework, camera, graphics codec, network management, internationalization, time and time zone, input method framework, and pasteboard. 11 12OpenHarmony 5.0.0 Release is the official release version for API level 12. 13 14A more detailed description of the enhancements is as follows: 15 16 17### Application Framework 18 19- You can create JS or native child processes for time-consuming operations. 20 21- A wider range of lifecycle events, such as **onNewWant**, are provided for abilities. 22 23- An ability can return the AbilityResult to the caller without proactively destroying itself. 24 25- Context supports the conversion of sendable objects for passing the context in multithreading environments. 26 27- Application-level font settings are supported. 28 29- The AppStartUp framework is introduced to provide a simple and efficient method for initializing components during application startup, improving startup performance. 30 31- APIs for starting atomic services are added, and two startup modes are provided: pop-up and embedded. 32 33- Enhanced auto-fill capabilities: The **TextInput** component supports auto-save and auto-fill for more data types. 34 35- Enhanced widget capabilities: The monochrome mode, inverse color, gradient color collision, exquisite visual display (such as blur, shadow, and rounded corners), and natural background integration. 36 37- The Ability Assistant (AA) tool supports implicit application startup. 38 39- Deep Link and App Linking are provided to reduce usage costs for developers and improve navigation security. 40 41- Secure application restart capabilities are provided. 42 43- The system environment now includes notifications for changes in font size and weight. 44 45- The UIAbilityContext capabilities are enhanced as follows: 46 - Obtaining the WindowStage 47 - Enabling an application to proactively switch its UIAbility to the background 48 49- The following application lifecycles are added: 50 - **OnDestroy** lifecycle for the AbilityStage 51 - **onWindowStageWillDestroy** lifecycle for the UIAbility 52 53- The wait-for-debugging mode is added for applications. 54 55- During cross-device migration, an application can migrate from one ability to another ability. 56 57- During cross-device migration, an application can use asynchronous APIs to save data. 58 59- During cross-device migration, an application can be started in advance in pull scenarios by configuring the immediate startup field. 60 61 62### ArkUI 63 64- Component customization is further enhanced with the introduction of **Modifier**, **ContentModifier**, and **DrawModifier**. Attributes can be added to existing components, component content can be customized, and fully custom rendering is supported. 65 66- Custom nodes and native rendering nodes are opened up. [Custom nodes](https://gitee.com/OpenHarmony/docs/blob/master/en/application-dev/ui/arkts-user-defined.md) are node objects with some basic capabilities of underlying entity nodes. They can be mixed and displayed with built-in components through custom placeholder nodes. They have customization capabilities for individual nodes, such as measurement and layout, setting basic attributes, setting event listeners, and custom drawing and rendering content. There are three types of custom objects: FrameNode, RenderNode, and BuilderNode. 67 - **BuilderNode**: provides APIs for a BuilderNode – a custom node that can be used to mount native components. 68 - **FrameNode**: provides APIs for a FrameNode, which represents an entity node in the component tree. It can be used by a NodeController to mount a BuilderNode (that holds the FrameNode) to a NodeContainer or mount a RenderNode to another FrameNode. 69 - **RenderNode**: provides APIs for creating a RenderNode in custom drawing settings at the native side. 70 - **NodeController**: provides APIs for managing custom nodes, such as creating, showing, and updating custom nodes, and APIs for mounting custom nodes to a NodeContainer component. 71 72- The NDK capabilities of components suitable for third-party frameworks are enhanced, covering component creation, attribute setting, event registration, customization, and component tree building. 73 74- The capabilities of the **Navigation** component are enhanced, including the single- and dual-column switching animation, interruption and resumption of transition animations, and listening capabilities for the page lifecycle. 75 76- The visual effect, animation, and interaction refresh of components are supported. Aging, mirror language, and screen reading are supported. 77 78- You can define the color, shape, rounded corner, size, position, and shadow for menu and dialog box components. 79 80- The node customization capability is enhanced to provide FrameNode customization and node agents. 81 - Nodes can be dynamically added or deleted. 82 - Universal attributes and events can be set for nodes. 83 - The capability of traversing the node tree is supported. 84 - Component information can be accessed through nodes, and additional event callbacks can be registered. 85 - Custom node measurement, layout, and rendering are supported. 86 87- The custom extension capability is enhanced to provide a variety of modifiers. 88 - Modifiers of basic components are provided to support chain calls and parameter passing, and can inherit to implement custom modifiers. 89 - **AttributeUpdater** is introduced to support direct attribute updates. 90 - **GestureModifier** is introduced to support dynamic gesture settings. 91 - **DrawModifier** is introduced to extend the drawing content of native components. 92 - **ContentModifier** is introduced for certain components, supporting customization of component content styles with custom Builder methods. 93 94- The capabilities of the **Navigation** component are enhanced as follows: 95 - The **onWillShow** and **onWillHide** lifecycles are supported. 96 - Transition animations support interruption and resumption. 97 - The page content is extended to the status bar. 98 - Singleton redirection is supported. 99 - The custom animation capability is enhanced. 100 101- The advanced text capabilities are enhanced as follows: 102 - **Text** components support attribute strings. 103 - Images and texts can be dragged between WebView and ArkUI applications. 104 - RichEditor supports hint settings. 105 106 107### Bundle Manager 108 109- Application clone access and management are supported. Applications can access application clones through simple configuration. 110 111- Home screen shortcuts are supported. Users can dynamically add shortcuts to the home screen. 112 113- The system-level HSP and ArkWeb can be upgraded independently, and preset applications can be updated independently. 114 115- A recovery mechanism is provided upon OTA update interruption. If a power outage or service crash occurs during an OTA update, the OTA process is restored upon restart, continuing to install or update the applications. 116 117- The **cache** directory can be automatically cleared when device space is insufficient. 118 119- Native software packages can be packed, installed, and uninstalled. 120 121- The packaging tool compresses an application package to reduce its size for distribution. 122 123- The service module (HSP/HAR) supports the **router_map.json** configuration, implementing dynamic route decoupling between modules. 124 125- The integrated HSP is supported. Multiple applications in a group can use the integrated HSP to share code and resources. 126 127- Uninstalling updates is supported. Preinstalled applications that have been updated from AppGallery can be restored to the preinstalled version by uninstalling the updates. 128 129- APIs are provided to install and query in-house applications, allowing for in-house application management. 130 131- Unified resource cache is provided, covering overlay and theme switching scenarios. 132 133- Decompression of GZIP files is supported. 134 135- The **resfile** directory is introduced, which stores various resource files. During application installation, these resources are decompressed to the application sandbox path. 136 137 138### DSoftBus 139 140- IPC provides basic C APIs, including serialization, deserialization, and message sending and receiving. 141 142- Transmission priority control is added for BR/BLE connections to improve the success rate of BLE discovery and broadcasting. 143 144- BR/BLE link multiplexing is supported. The multiplexing process is not interrupted by services, improving the success rate of multiplexing. 145 146- Multi-medium networking is supported to avoid repeated authentication and improve authentication efficiency. 147 148- Logical channels can be decoupled from physical links to increase the connection success rate. 149 150- The transmission module provides encryption and decryption APIs, and supports the capabilities of canceling the binding process and configuring the timeout interval. 151 152- IPC supports asynchronous message sending and provides high-performance JS interfaces for reading and writing the shared memory. 153 154- The common parts of IPC_Core and IPC_Single are decoupled, continuously optimizing the memory usage. 155 156 157### Distributed Data Management 158 159- RelationalStore and Preferences support access to shared sandbox data. 160 161- The RDB supports opening in read-only mode. 162 163- UDMF supports compatibility queries for UTD and MIME types. 164 165- Data asset synchronization is optimized in the migration scenario. 166 167- Distributed data management with E-class encryption is supported. 168 169- In the inverted index construction scenario, an external tokenizer can be specified for an application. 170 171- NDK C APIs support UDMF data drag and drop across devices. 172 173- Preferences support serializable JSON objects and key-based precise subscription. 174 175- relational_store supports TS synchronous APIs. 176 177- UDMF supports batch transactions, and introduces 4 common data struct definitions and 40 UTD data types. 178 179- data_share is optimized in terms of resource usage, access control, and access precision. 180 181 182### Distributed Hardware 183 184- Refined ACL management is provided. ACLs can be added, deleted, modified, and queried based on devices, users, accounts, and bundle names. 185 186- The quality is hardened to improve the stability and reliability of functions. 187 188- Applications are able to manage trusted and untrusted device resources, and query, filter, sort, and listen for device information. 189 190- A device authentication framework is provided to support PIN code, tapping, scanning, and getting-close, supporting various authentication interaction entries. 191 192- Device networking, online/offline, and peripheral device scanning capabilities are introduced for device resource management. 193 194 195### Distributed DeviceProfile 196 197- Device data is restructured at multiple levels to improve the execution efficiency of data addition, deletion, modification, and query. 198 199- The quality is hardened, and background link establishment is optimized to improve stability and reliability. 200 201- System services can add, delete, modify, and query cross-device trust relationships, trusted device information, device system information, service information, and service feature information, and subscribe to data change notifications. 202 203- On-demand data synchronization and Bluetooth heartbeat broadcast synchronization across devices are supported. Data can be categorized into toggle data, static data, and dynamic data for service parties to define and operate different types of data based on their own data characteristics. 204 205 206### File Management 207 208- Incremental backup is provided for files and cloud space. 209 210- APIs are provided for an application to obtain the backup data volume details, allowing an application to report the number of data records to be backed up (for example, the number of short messages) and exception events during backup and restore. 211 212- The SA is allowed to access the backup and restore framework. 213 214- The picker capabilities are enhanced. Audio Picker allows users to select multiple items at a time. Download Picker is added, allowing applications to directly save files to the **Download/*bundleName*** directory. In addition, subsequent access to this directory does not require permission authorization, complementing the download experience of browser applications. 215 216- Applications can obtain the access permission of public directories (**Download**, **Desktop**, and **Document**) by applying for permissions (supported on some devices, subject to **syscap** judgment). Direct access is not allowed without permissions requested. 217 218- Applications can select files or directories through File Picker and obtain temporary access permissions to the files or directories. Persistent access is also supported. Files or directories that are not persisted cannot be accessed after the applications exit. 219 220- Stream file access APIs, such as **CreateStream** and **fdopenStream**, are added. 221 222- The APIs for setting and obtaining extended attributes are added. 223 224 225### Graphics and Window Manager 226 227**Graphics** 228 229- The native image module supports NativeWindowBuffer. 230 231- The native vsync is supported, supporting multiple callbacks per frame. 232 233- NDK C APIs related to variable frame rates are provided. 234 235- ColorSpaceManager supports the sendable capability. 236 237- The font engine supports the text shadow capability and underline alignment. 238 239- The graphics drawing interface improves drawing capabilities. 240 241- The drawing capability is enhanced to support vector primitive drawing, bitmap drawing, style visual effect, and shadow effect for text. 242 243- The bitmap ArkTS and C APIs are enhanced to support format conversion, premultiplication of transparency, and effect processing. 244 245- The NDK capability of the text engine is enhanced to support line spacing and various wrapping policies. 246 247- The NDK capability of the surface is enhanced to provide C APIs for obtaining the YUV data location, surface ID, and buffer queue size, as well as attaching and detaching. 248 249- LTPO frame control is introduced. 250 251- The 3D component capability is enhanced to support loading and editing of 3D scenes. 252 253- OpenGL ES extensions are provided. 254 255- The performance and energy efficiency are further optimized. 256 257**Window Manager** 258 259- The **display.getDisplayByIdSync** API is provided to work with the multi-screen feature, allowing applications to synchronously obtain information about the screen where the ability is located through the ID. 260 261- Information about the available area on the screen can be obtained. 262 263- The text color of the status bar can be set based on the page color in ArkUI. 264 265- Applications can obtain the color attribute of the status bar. 266 267- The cross-platform capability is enhanced. APIs such as **loadContentByName** and **windowSizeChange** adapt to the cross-platform capability. 268 269 270### Media 271 272**Audio** 273 274- Audio focus enhancement: Audio focus sessions are supported, allowing an application to set concurrent playback policies and to play silently without interrupting background audio playback. 275 276- More audio output devices, such as DP and USB headsets, are supported. Switching of the default output device (earpiece and speaker) is also supported. 277 278- The audio stream type for video calls is added, optimizing the audio stream playback experience in this scenario. 279 280- A unified volume component is added for easy of use, reducing development complexity. 281 282- The style of the in-app casting component can be customized. 283 284- The ringtone list query and custom ringtone settings are supported. 285 286- Internal audio recording allows filtering by stream type and application. 287 288- Low-power audio playback supports speed adjustment and sound effect processing. 289 290- HD audio playback is supported for both wired and Bluetooth headsets. 291 292- Spatial audio rendering is supported for external playback. 293 294- VoIP voice calls support low-latency channels. 295 296- System sound management allows applications to obtain the system tone list and customize system tones. 297 298**Playback** 299 300- The playback start and seek performance of the player is optimized to reduce the latency. 301 302- Multiple playback protocols or formats are added: DASH protocol, and AMR, APE, and WAV PCM-MULAW audio formats. 303 304- Multiple playback control capabilities are added: video playback with multiple audio tracks, changing the output surface during video playback, silent playback, precise seek, playback range setting, and subtitle setting. 305 306- The streaming media buffer size can be configured. The audio offload mode is supported. 307 308- Enhanced streaming media playback capability: The streaming media cache policy is optimized, reducing frame freezing. 309 310- More playback speed options (0.5x and 1.5x) are introduced. 311 312- More playback formats (such as AMR) are supported. 313 314- More audio encoding parameters (such as the bit depth) are introduced. 315 316- Low-power audio playback (offload) is supported. 317 318- Precise seeking is supported. 319 320- Users can switch the video to another window during video playback. 321 322- Header customization is introduced, allowing users to add custom information during streaming media playback. 323 324- FLV live streaming is supported. 325 326- Applications can automatically switch to a proper bit rate based on the network quality during online playback. 327 328**Recording** 329 330- Enhanced audio recording capability: Audio can be recorded in MP3, WAV, and PCM (µ-law) formats. 331 332- Image rotation parameters can be dynamically configured. 333 334- Layered encoding is introduced for video recording. 335 336**Media metadata** 337 338Identification of HDR Vivid videos is supported. 339 340**Screen Capture** 341 342- Screen capture protection can be exempted for the application's own privacy windows, providing a privacy confirmation window and screen capture status prompt. 343 344- Images in a specified window can be excluded during screen capture. 345 346- Screen rotation can be configured and rotation parameters can be dynamically adjusted. 347 348- The microphone and system sound can be captured simultaneously. 349 350- C APIs are provided to record the system screen and sound. 351 352- Applications can obtain screen capture data in surface mode. 353 354- Applications can configure screen capture content to follow screen rotation. 355 356- Screen capture cannot be performed concurrently with cellular calls. 357 358- The microphone and system sound can be captured simultaneously. 359 360- A privacy dialog box is provided for screen capture. Screen capture can be started only after being authorized by the user. 361 362- Screen capture supports excluding the window with the specified window ID. 363 364- Screen capture supports excluding the audio of the application itself. 365 366DRM 367 368- DRM plug-in management and DRM scheme integration are supported. 369 370- DRM certificate downloads are supported. 371 372- Online and offline authorization of DRM programs is supported. 373 374- Decryption of DRM programs in secure or non-secure mode is supported. 375 376- Secure video channels are supported. 377 378- Authorization, decryption, and playback of HLS+TS/DASH+fMP4 DRM programs are supported. 379 380- The integration of the AVPlayer and AVCodec playback framework is supported. 381 382**Audio/Video Codecs** 383 384- AVTranscoder APIs are added to reduce the bit rate and output video files in AVC, AAC, and MP4 formats, reducing the amount of data to be transmitted or stored. 385 386- APE decoding and demuxing are supported. 387 388- MP3 encoding and muxing are supported. 389 390- Parsing of SRT subtitles is supported. 391 392- H.264/H.265 hardware encoders support the setting of long-term reference frames and reference frame encoding on a per-frame basis, depending on hardware chip capabilities. 393 394- H.264/H.265 hardware encoders support the setting of encoding QP on a per-frame basis, depending on hardware chip capabilities. 395 396- H.264/H.265 hardware codec supports low-latency frame output (one-in-one-out), depending on hardware chip capabilities. 397 398- H.264/H.265 hardware encoders support the resetting of the bit rate and frame rate, depending on hardware chip capabilities. 399 400- H.264/H.265 hardware encoders support hierarchical-P temporal scalability, depending on hardware chip capabilities. 401 402- Parsing of FMP4 files is supported. 403 404- In surface mode, surface switching is supported during hardware decoding. 405 406**DRM** 407 408- The AVPlayer and AVCodec can parse DRM information for DASH programs, decrypt H.265 videos encapsulated in TS, and decrypt audio clips. 409 410- AVCodec DRM adaptation now includes settings for decryption parameters. 411 412**Camera** 413 414- The following modes are added: time-lapse, panorama, light painting, wide aperture video, and fluorescence. 415 416- A one-touch PerConfig mechanism is added for cameras to ensure consistent effects and simplifies development. 417 418- The deferred photo delivery process is optimized to improve the performance and quality of photos and videos. 419 420- New C APIs are added to match the capabilities of ArkTS APIs. 421 422- The camera experience is enhanced with features like mirroring, zoom, image stabilization, burst shooting, and camera status notification. 423 424- Camera modes are enhanced, including Pro, Super macro, Super slow motion, and Safe. 425 426- The camera is enhanced to support moving photos, HDR Vivid capture, and deferred photo delivery. 427 428- The camera effect is enhanced to support black and white colors and portrait blurring. 429 430- Camera control is enhanced. The frame rate can be dynamically configured, and information such as the focal length and ambient brightness can be returned. 431 432**Image** 433 434- The EXIF read and write capabilities are enhanced, supporting batch read and write operations on EXIF data. The number of playback times can be obtained for GIF files. 435 436- HDR dual-layer codec and conversion between HDR and SDR are supported. 437 438- HEIF encoding and decoding and DNG decoding are supported. 439 440- The compilation framework is supplemented based on NDK C APIs, including base classes for effects and filters, and custom algorithms. 441 442- HEIF decoding is supported. 443 444- DNG decoding is supported. 445 446- C APIs are provided for image encoding and decoding. 447 448- Image codec supports HDR effects (depending on platform capabilities). 449 450- The EXIF coverage and batch EXIF read/write capabilities are supported. 451 452- Images in HEIF and JPEG formats can be decoded into the YUV format. 453 454- GIF decoding is enhanced, allowing applications to obtain the number of playback times and frame transition mode. 455 456- The WebP format supports retrieval of the frame delay time. 457 458- JPEG codec hardware acceleration is enhanced (depending on platform capabilities). 459 460- The image editing NDK interface is open, supporting pipeline orchestration, effectors, and filter chains. 461 462**Media Library** 463 464- A new deferred photo delivery process is introduced, including consumption-only, direct saving, and editing and saving after photographing. 465 466- The hdc command in developer mode can be used to read images and videos in the public storage area of the media library. 467 468- The hdc command in developer mode can be used to parse the names of images and video files encrypted by the media library. 469 470- The mediatool in root mode can be used to preset image and video resources. 471 472- Applications can identify HDR images and videos and provide HDR LCD thumbnails. 473 474- The media library is enhanced to refresh search indexes in a timely manner when images and videos are deleted. 475 476- Video tagging, natural semantics, and detection of human and pet heads are supported. 477 478- Applications can now generate OCR information for images in a timely manner. 479 480- Applications can locate images and videos in the smart album. 481 482- Applications can parse the longitude and latitude of videos. 483 484- Permission optimizations allow applications to maintain long-term read/write permissions for their own saved images and videos. 485 486- Applications are allowed to export videos to the application sandbox. 487 488- The flow control mechanism for malicious applications accessing cloud images is enhanced. 489 490- The media library now publishes change notifications when cloud images change. 491 492- Watermarks and filters for deferred photo delivery now support editing and reversibility. The mechanism for accurately identifying and reporting application access to original images and videos is optimized. 493 494- The storage space occupied by images and videos, including thumbnail space, is now accurately calculated. 495 496- Applications can use C APIs to read images and videos. 497 498- Applications can query named portrait information. 499 500- The media library allows users to take, save, and read moving photos, set the frame information of the moving photo cover, and set the moving photo effect mode. 501 502- A new ringtone library is added to support preset ringtones and custom ringtones. 503 504- Shooting mode information can now be uploaded to the cloud. 505 506- DFX capabilities are enhanced to include static user data, time-consuming behavior, deletion behavior, and application behavior statistics. 507 508 509### Common Event and Notification 510 511- The CEM tool supports the release of custom common events. 512 513- A generic interface is added to Emitter to directly transfer sendable objects. 514 515- Synchronous query of the enabled status of notifications is supported. 516 517- Authorized application can customize notification ringtones. 518 519- Applications can create live notifications of the progress bar type in system proxy mode. 520 521- Different application clones can publish notifications. 522 523- A synchronous interface is provided to query the notification authorization status. 524 525- System applications can batch query authorized notifications and live window application lists and statuses. 526 527- System applications can publish emergency event notifications. 528 529- System applications can subscribe to notifications by device type for reminder coordination between mobile phones and other devices. 530 531- System applications can set badges for other applications. 532 533- In Do Not Disturb mode, an application trustlist can be configured, and applications within the trustlist are not affected by Do Not Disturb mode. 534 535- System applications can delete and re-add statically subscribed-to common events while running. 536 537 538### Communications 539 540- Third-party applications can connect to hotspots through network management. 541 542- The DHCP service is optimized to support retrieval of information such as the peer name and IP address. 543 544- Security for saved hotspot password information is enhanced. 545 546- The number of threads and architecture of the WLAN service are optimized. 547 548 549### Location 550 551- During continuous locating, error code information that affects locating can be listened for. 552 553- APIs related to GNSS satellite status information and continuous locating are optimized. 554 555- The security compilation options of the location service are enhanced. 556 557- The location permission policy for service widgets is optimized. 558 559 560### Telephony Service 561 562- Applications can obtain the IMEISV and the PLMN code of the resident base station. 563 564- The telephony service process load and DFX are optimized, including independent build and deployment, improved traceability, and stability. 565 566 567### Network Management 568 569**Network Management Capabilities** 570 571- You can create a NetConnection object to connect to a specified Wi-Fi hotspot. 572 573- NDK C APIs are provided for network management status listening and application-level proxy listening. 574 575- The network management process load and DFX are optimized, including independent build and deployment, enabling FFRT to reduce the number of threads, reducing the memory overhead, improving traceability, and improving the automatic recovery capability after a crash. 576 577**Network Protocol Stack Capabilities** 578 579- A TCP socket can be upgraded to a TLS socket to improve communication security. 580 581- A TLS socket supports skipping certificate verification to avoid scenarios where certificates cannot be verified. 582 583- All sockets can obtain the local IP address and port number. 584 585- HTTP supports the configuration of certificate pinning information. 586 587- HTTP supports the Brotli compression algorithm. 588 589- The HTTP protocol stack can automatically read certificates installed by the system and users. 590 591- The HTTP proxy supports secure storage of usernames and passwords, automatic update of proxy authentication credentials, and automatic reading of proxy configurations when the previewer is used. 592 593- WebSocket supports capabilities such as obtaining header information and setting proxies, with reduced power consumption. 594 595- TLSSocket supports sending of ArrayBuffer data and use of the system default certificates. 596 597 598### Power 599 600- The charging current can be obtained, allowing third-party applications to obtain the current of the device through **nowCurrent**. 601 602- Temperature control actions in airplane mode are supported. You can customize temperature control policies to control devices to enter airplane mode. 603 604- The WorkSource proxy running lock can assist the resource scheduler in power consumption control. 605 606- In low power situations, devices can automatically enter the S4 sleep mode after waking up from the S3 sleep mode, implementing ultra-long standby. 607 608- After system startup, it is now possible to read and broadcast the presence information of device shells or covers, and to configure kernel nodes of battery information and whether to broadcast. 609 610- The DIM display status is supported. The screen is turned off after the system enters the DIM state, improving user experience. 611 612- The screen pre-display capability is supported. The screen is powered on but does not display any information. 613 614- A timeout for screen off can be set. 615 616- Temperature simulation debugging is supported. 617 618- ArkTS and C APIs related to hibernation are provided. 619 620- The power service operates independently as the powermgr process. 621 622 623### USB 624 625- Access control is enhanced for USB device configuration management. 626 627- The USB standard data transfer mode (interrupt transfer and bulk transfer) is enhanced. 628 629- Security management of standard USB peripherals is supported. 630 631- Applications can obtain the transmission rate of USB devices and activation status of USB interfaces. 632 633- A verification system for establishing wired USB peripheral connections is introduced. 634 635- Presetting default USB ports is supported. 636 637- Multi-user concurrency scenarios are supported. 638 639- The DFX capability is enhanced to streamline the USB service restart process upon an exception. 640 641- The application's defenses against unauthorized access are fortified. 642 643 644### Startup 645 646- Native software packages can be packed, installed, run, and uninstalled. A native software package development and release system is now available, facilitating the rapid construction of productivity software ecosystem capabilities and improving development efficiency for system developers. 647 648- A resettable Open Anonymous Device Identifier (ODID) is provided to replace real-world UDIDs and other hardware identifiers. 649 650- The bftpd command can be executed to debug sandbox data access in user mode. 651 652- Applications can query and obtain the real ODID information. 653 654- Maintenance commands are extended to include viewing the running status of each service process, FD status in the looper, and timer information. 655 656- The appspawn module supports the **bftpd** command and provides the access, read, and write capabilities for directories in the specified application sandbox. 657 658- A restriction is placed on the number of processes that can be forked during application incubation. 659 660- During application incubation, environment information can be set for application processes. 661 662- During application incubation, sandbox data can be isolated per account for atomic services. 663 664- After the foundation process is restarted due to an exception, the init process can vote again to ensure that the BOOTCOMPLETE event can be initiated again. 665 666 667### Globalization 668 669- C APIs are provided to support internationalization capabilities in line with the ICU4C standard. 670 671- The internationalization formatting capability supports screen size adaptation. 672 673- Pseudo-localization testing is fully supported. 674 675- C APIs are provided for resource file management. 676 677- String resources support tags for translatability. 678 679- Support for less common language character sets is now provided. 680 681 682### Security 683 684**Crypto Framework** 685 686- C APIs are provided for some typical encryption and decryption algorithms to match ArkTS APIs. 687 688- The SM4-GCM algorithm interface is supported. 689 690- The crypto framework supports the HKDF key derivation algorithm, provides RSA encryption and decryption capabilities, and provides JS synchronous APIs for the library. 691 692**Certificate Management** 693 694- APIs are provided to invoke the certificate management page. 695 696- APIs are provided to obtain the private certificate list of an application. 697 698- The certificate framework provides UIs and APIs for managing system service certificate credentials. 699 700**Access Control** 701 702- Access control 703 - The geographical location permission supports one-time authorization options. 704 - The permission management application page of the Settings page can be displayed. 705 706- DLP: 707 - Applications can check whether the current system provides the DLP feature. 708 - DLP file control for printing is supported. 709 - Copy and paste authorization for users in batches is supported. 710 711- SELinux: 712 - The capability of ignoring specified directories during recursive tagging is supported. 713 - SELinux policy control rules are added, requiring fine-grained management of ioctl permissions using allowxperm. 714 715- Code signature 716 - The signing tool supports the signing of HQF packages in developer mode. 717 - The signing tool supports the signing of ELF files that are not suffixed with .so in the **libs** directory of the application package. 718 - The signing tool supports the signing of native package (.hnp) code in the application package. 719 720**User IAM** 721 722- Password validity period check is supported. 723 724- Key recovery is supported. 725 726- Cross-device password authentication is supported for user identity authentication. 727 728- Embedded identity authentication components are provided for facial recognition and fingerprint recognition. 729 730- The complexity of registered passwords can be checked. 731 732- Cross-user credential information recording, query, and authentication are supported. 733 734- Applications can set the password validity period. 735 736- The DFX capability is enhanced to support automatic authentication cancellation when the caller (application) switches to the background or ends its lifecycle. 737 738**Account** 739 740- Local accounts can be deregistered. 741 742- When creating a local account, you can specify a short account name (used as the personal folder name). 743 744- Querying local account names is now supported. 745 746- A new privacy account type is introduced. 747 748- A new unlock authentication intent is introduced. 749 750- New graphical and four-digit PIN credential types are introduced. 751 752- Multiple accounts can run concurrently (one account running in the foreground and the others running in the background). 753 754- The number of system accounts that can be logged in to at the same time can be configured. 755 756- Privacy accounts can be created. 757 758- APIs are provided for adding and authenticating credentials across accounts. 759 760- APIs are provided for cross-device credential authentication. 761 762- Southbound extended domain account authentication protocols are supported. 763 764- Configuration of domain server information is supported. 765 766 767### ArkCompiler 768 769**ArkTS Front-end Compiler** 770 771- The syntax is enhanced. The compilation target is switched from es2017 to es2021, and source code files with es2018 to es2021 syntax features can be compiled. 772 773- The code obfuscation capabilities are enhanced: stack restoration, file-level non-obfuscation, obfuscation of HAP and HSP module file names, and trustlist wildcard. 774 775**ArkTS Runtime** 776 777- Module lazy loading is supported. Execution files are loaded synchronously when variables are actually used, improving application startup performance. 778 779- The concurrency capabilities are enhanced. The sendable object sharing mechanism is provided to optimize object communication across threads. TaskPool provides features such as task queues, continuous tasks, and periodic tasks. 780 781- Debugging is enhanced to support reverse debugging and Smart Stepinto. 782 783- Tunning is enhanced to support hiperf/profiler hybrid stack and multi-instance heap dump. 784 785**ArkTS Utility** 786 787- High-precision floating-point operations, StringDecoder (string decoding), stream data processing, and bit vectors are supported. 788 789**JSVM** 790 791- A system JS engine is provided to support high-performance running of JavaScript and WASM. 792 793**Frontend Compilation Toolchain** 794 795- The frontend compiler provides the Ark bytecode file format and instruction set specifications. 796 797- The frontend compiler supports the loading of compiler plug-ins configured within DevEco Studio. 798 799- The frontend compiler is enhanced to eliminate unnecessary branches for constants/variables within functions and across files. 800 801- The frontend compiler is optimized to reduce compilation time. 802 803- The frontend compiler supports exception stackback and debugging of closed-source HAR packages. 804 805- The **target** option of the TypeScript compiler is changed from ES2017 to ES2021. 806 807**Code Obfuscation** 808 809- The time performance and memory usage are optimized. 810 811- HAP file names can be obfuscated. 812 813- Some files can be configured for not being obfuscated. 814 815- Wildcard characters can be used in the trustlist. 816 817- The row and column numbers can be reserved in the **nameCache** file to support DevEco Studio stack parsing. 818 819**Concurrency** 820 821- Sendable memory data types are supported, including the Sendable class, Sendable container (Array, Map, Set, Int8Array, Int16Array, Int32Array, Uint8Array, Uint16Array and Uint32Array), JSON parsing into Sendable objects, and asynchronous locking. 822 823- The maximum number of Worker threads is increased to 64, and a total JS memory limit for the process is 1.5 GB. 824 825- TaskPool supports task monitoring. It can listen for task distribution, execution start, successful execution, and failed execution events. 826 827- TaskPool provides APIs to determine whether a function is a concurrent function. 828 829- TaskPool supports continuous tasks. 830 831- TaskPool supports serial queues to ensure the task execution sequence. 832 833- TaskPool supports deferred task execution. 834 835- TaskPool can collect statistics on the execution duration, including the CPU duration and I/O duration. 836 837**Modularization** 838 839The HAR files of the same version are treated as a singleton. That is, when an HAP and HSP depend on the same instance, only one instance is loaded during running. 840 841**Debugging** 842 843- Time Travel Debugging (TTD) is supported. 844 845- Hybrid stackback of HiPerf and Profiler is supported. 846 847- **callFunctionOn** is supported. 848 849- Multi-instance heap dumps are supported. 850 851- Fast cold start of ApplyChange is supported. 852 853- Smart step into is supported. 854 855**LLVM/Rust Compiler** 856 857- Applications support TSan options. 858 859- The Rust community can now compile targets for OpenHarmony. 860 861**LLDB** 862 863MiniDebug is supported. 864 865**Linter** 866 867Automatic fixes for 14 ArkTS rules are added in DevEco Studio. 868 869**Musl C Library** 870 871- The C library supports the locales zh_CN or zh_CN.UTF-8. 872 873- The fdsan capability is supported, and fdsan-related APIs are opened up. 874 875- The C library interface **fopencookie** is now accessible within the NDK. 876 877**Standard JS Engine** 878 879- The sourcemap file address information can be passed during JS script compilation. If an exception occurs, the source information converted by sourcemap is provided. 880 881- Applications can check whether JS objects belong to the basic JS types. 882 883- JS loose equality (== operation) is supported. 884 885- String references can be created and persistent strings can be used. 886 887 888### MSDP 889 890**Drag Framework** 891 892- You can rotate and drag and drop a window as it rotates. 893 894- Applications can configure whether to hide the badge during the drag process. 895 896- The data receiver can customize the cut and copy behavior. 897 898- A more exquisite drag-and-drop visual experience is provided, including effects like transparency, shadows, and rounded corners. 899 900- Multiple objects can be dragged and selected, enriching the drag-and-drop experience. 901 902- The drag-and-drop behavior can be customized, enabling actions like cut/copy based on shortcut keys. 903 904- Lightweight logging is supported to enhance the DFX capability. 905 906**Screen Hopping** 907 908- Control for both ends to initiate **activate** interface calls simultaneously is provided. 909 910- Timing issues of screen hopping are optimized to reduce system dependencies and eliminate timing issues between multiple processes. 911 912- Screen hopping management performance is improved, with a higher success rate and lower latency. 913 914- The service architecture is optimized to improve stability, reliability, and performance. 915 916- The performance benchmarking tool is provided to improve the DFX capability. 917 918 919### Multimodal Input 920 921- C APIs are provided to support device information query. 922 923- Screen unlock events triggered by swiping up from the bottom can be reported. 924 925- Events from irregularly shaped windows can be reported. Mouse events in the transparent area of an irregularly shaped window are transparently transmitted, but those in the non-transparent area are blocked. 926 927- The following knuckle-based interaction events are supported: rendering paths traced by knuckle movements, animating these knuckle paths, capturing screenshots by making circular gestures with a knuckle, performing extended screen captures with an 'S' gesture, and starting screen recording through a double-tap gesture using two knuckles. 928 929- The Smart Button is provided, enhancing the existing fingerprint button capability. 930 931- Infrared capabilities are supported, providing external frequency data to the caller device. 932 933- The mouse and touchpad can adapt to window rotation. In the event distribution module, the mouse coordinates are rotated and distributed to the correct window based on the window rotation information synchronized by the window. 934 935- The capability to launch system applications by pressing combination keys is supported. When the screen is off, pressing the combination keys does not launch the screenshot application. When the screen is locked, you must long press the combination keys to launch the screenshot application. Different applications are launched when you press or long press the same key. The capability of shielding combination keys through interfaces is also supported. 936 937- The stylus can be double-tapped to start the shorthand. When the screen is off, double-tapping of the stylus can be correctly identified. 938 939- The touchpad display-control ratio curve model is adapted. Based on this model, the multimodal input data preprocessing module processes the received touchpad single-point touch data. 940 941- The stylus can be used to continuously take snippets. Users can use the stylus for input and use the touchscreen for touch interaction. The annotation window responds to the stylus input, and the application window at the bottom responds to the touchscreen operations. 942 943- The pointer position information can be displayed and dynamically enabled or disabled. The number of touch pointers, touch position, and moving speed can be displayed. 944 945- Applications can listen for events from the power button and volume button. When the call application receives an event from the volume button or power button, it mutes the ringtone of incoming calls. 946 947- The performance benchmarking tool is provided to record key service logs. The demonID is used to distinguish service logs. Fault benchmarking is supplemented or added to ensure that all faults in the domain have corresponding event benchmarks, improving the DFX capability. 948 949- KeyCode is added to support custom common events for screen reading. 950 951 952### Pan-Sensor 953 954**Vibrator** 955 956- Some asynchronous query APIs offer their synchronous counterparts. 957 958- The system can better use the vibrator component to trigger vibrations based on different component capability levels. 959 960- A set of simple and common haptic feedback effects is introduced, with adjustable intensity levels. 961 962- Query APIs and synchronous APIs used to stop vibration are introduced. 963 964**Sensor** 965 966- Some asynchronous query APIs offer their synchronous counterparts. 967 968- C APIs are provided to support linear acceleration and game rotation vector sensors. 969 970- Synchronous sensor query APIs are introduced. 971 972- Error code 14500102 is added for the sensor module, indicating that the queried sensor type is not supported by the device. 973 974- Infrared and color temperature parameters are introduced into the reported ambient light data. 975 976 977### Accessibility Service 978 979- Zoom-in gestures are supported. 980 981- Proactive broadcast capabilities are provided, allowing for proactive announcements of changing information in some dynamically changing scenarios for applications adapted for screen reading. 982 983- Active focus capabilities are provided, enabling requests for proactive focusing on components in certain scenarios for applications adapted for screen reading. 984 985- Color inversion is supported, which reverses the display color to meet the needs of some visually impaired users. 986 987- High-contrast text is supported. 988 989- Audio in mono mode consolidates the audio signal from both left and right channels into a single track, meeting the needs of some hearing-impaired users. 990 991- The adjustable volume balance feature enables users to equalize the volume output between left and right ears, meeting the needs of some hearing-impaired users. 992 993- Screen touch control is enhanced to support touch duration and ignoring of repeated touches. 994 995- Touch browsing mode is supported, allowing visually impaired users to control the screen of smart devices in an interactive manner through touch browsing interactions. 996 997- The capability of recognizing multi-finger interaction gestures is added for screen reading, enhancing the interaction experience of visually impaired users in screen reading mode. 998 999 1000### Resource Scheduler 1001 1002**Background Task** 1003 1004- Applications can request different types of continuous tasks at the same time. 1005 1006- When an application requests a continuous task of the DATA_TRANSFER type, a download notification can be returned to the application for progress updates. 1007 1008**Performance, Power, and Thermal Control** 1009 1010- The system load level is determined based on the current temperature, load, and whether the system is in a high-load scenario. After an application registers the system load callback, the application can adaptively reduce its service load based on the system load level, thereby reducing the overall machine load. 1011 1012**Agent-powered Reminder** 1013 1014- When an application requests a duplicate calendar reminder, it is now possible to specify exclusion days when reminders are not made. 1015 1016- When an application requests a reminder, it can use **wantAgent** to pass **parameters**. When the user touches the reminder, **parameters** is carried to display the target UIAbility. 1017 1018- When an application queries released reminders, the corresponding reminder ID is returned in the query result. 1019 1020**Agent-powered Reminder** 1021 1022- A query interface is added to obtain the reminder ID. 1023 1024- **WantAgent** can carry **parameters**. 1025 1026- **ExcludeDate** is added to specify the date when the reminder is not triggered. 1027 1028- The end time of a reminder can be set in **ReminderRequestCalendar**. 1029 1030 1031### Test Framework 1032 1033- Compatibility testing is provided for cross-platform interfaces. 1034 1035- The DFX capability of the UiTest framework is enhanced and the efficiency is improved. 1036 1037- SmartPerf-Host supports micro indicator analysis. 1038 1039- SmartPEF devices can capture frame freezing traces, process-level memory, CPU usage, and network information. 1040 1041- Wukong supports pressure test settings and memory information collection. 1042 1043 1044### DFX 1045 1046- An API is provided to check whether the HDC debugger is connected. 1047 1048- The trace function can be enabled in developer mode. 1049 1050- Awareness of the main thread timeout event is now open. 1051 1052- The errorManager allows TaskPool and Worker to listen for unhandled Reject events. 1053 1054- The FFRT coroutine and HiTrace tuning capabilities in distributed scenarios are introduced. 1055 1056- HiProfiler memory analysis supports the JS-native hybrid stack. 1057 1058- The quality data, performance data, and power consumption data of Performance Analysis Kit are open. 1059 1060- C++ crash supports asynchronous tracing. 1061 1062- File access in the application sandbox is introduced for hdc debugging. 1063 1064- Applications support TSan detection. 1065 1066 1067### Kernel 1068 1069- Thread QoS level marking and scheduling are provided based on user interaction relationships. 1070- C APIs are provided for QoS scheduling based on user interaction. 1071 1072 1073### Upload and Download 1074 1075- **request.agent.Fault** has refined error types to assist you in quickly locating issues with API usage. 1076 1077- **request.agent.Config** has added a proxy member, supporting the setting of the network proxy address for tasks. 1078 1079- **request.agent.Task.start** supports restarting of a failed or stopped task. 1080 1081- **request.agent.Task** supports the setting of the TLS certificate pinning using the **network.json** file. 1082 1083- **request.agent.FileSpec** allows you to specify all file paths in the **base** directory of the application sandbox, facilitating sandbox file management. It also allows you to upload public files, such as Gallery files and Album files, in the foreground to reduce the overhead caused by extra copy. 1084 1085- The notification bar for background tasks is optimized. 1086 1087- The directory of an upload or download task can be any location within the **base** directory. 1088 1089- If a download task fails, users can choose to restart the download task from the point of failure. 1090 1091- Applications can listen for responses to upload and download tasks. 1092 1093- Certificate pinning is supported during upload and download. 1094 1095- User files can be specified for upload and download tasks in frontend mode (the read and write permissions must be obtained in advance). 1096 1097- The number of tasks is optimized, so that more unfinished tasks can exist at the same time. 1098 1099 1100### Input Method Framework 1101 1102- NDK C APIs are provided to support the use of the input method by self-drawn UI components, including starting and exiting the input method and processing text display requests. 1103 1104- The callback timing when invoking the keyboard is optimized, allowing input method applications to adjust the keyboard display content in a timely manner based on the input box attributes. 1105 1106- The basic mode and full experience mode of the input method are supported. 1107 1108- The automatic capitalization mode is supported. 1109 1110- The pre-display feature is supported. 1111 1112- The rotation experience of the input method panel when the screen rotates is optimized. 1113 1114- A new unified input method panel is introduced. 1115 1116 1117### Time and Time Zone 1118 1119- System APIs are provided for forcibly refreshing the NTP time and obtaining the current NTP time. 1120 1121- NDK C APIs are provided for obtaining the time zone. 1122 1123- The APIs for asynchronously obtaining the system time are deprecated. Synchronous APIs (**getTime** and **getUptime**) are introduced. 1124 1125 1126### Pasteboard 1127 1128- NDK C APIs are provided to offer the pasteboard capability. 1129 1130- A cross-device pasteboard switch is provided. 1131 1132- For applications upgraded to API 12 or later, the read permission verification is added to the pasteboard read interface. 1133 1134- Permission control is added to the pasteboard read interface. When using the pasteboard security components, you can directly read pasteboard data without applying for permissions. When using a custom component, you must obtain user authorization before reading the pasteboard data. 1135 1136- The pasteboard supports UMDF standard data types. 1137 1138 1139### Web 1140 1141- The network takeover feature is enhanced to obtain the frame URL of a request and the resource type of an intercepted request. 1142 1143- The pre-display capability of the input method in the web scenario is supported. 1144 1145- Keyboard hosting of **Web** components is supported. 1146 1147- Synchronous drawing of **Web** components and native ArkUI components is supported. 1148 1149- Directories that can be accessed across domains using the File protocol can be set. 1150 1151- Applications can now specify rendering child processes. 1152 1153- **Web** components support the acceleration gyroscope. 1154 1155- **Web** components support intelligent filling of HTML5 pages. 1156 1157- **Web** component support backward and forward cache. 1158 1159- The soft keyboard avoidance mechanism of **Web** component has been optimized to support the Resize and Offset modes. 1160 1161- W3C allows you to customize the cursor style. 1162 1163- W3C supports the **\<datalist>** element. 1164 1165- The web kernel can identify HEIF images. 1166 1167- Interception-free injection of offline resources is supported. 1168 1169- Applications can define their own DNS. 1170 1171- Universal links are supported. 1172 1173- Asynchronous JSBridge is supported. 1174 1175- **expandSafeArea** is introduced. 1176 1177- Applications can query the avoid area. 1178 1179- The ANR awareness capability of JS threads is supported. 1180 1181- Uploading of the **\<input>** element with the file type is supported. 1182 1183- Applications can customize menu options. 1184 1185- The network takeover feature can obtain the resource type and frame URL of an intercepted request. 1186 1187 1188### Theme Framework 1189 1190- The theme can be enabled through the folder directory. Compared with the compressed package, the theme enabling performance is improved. 1191 1192- Widget resources can be managed, including the operations to add, delete, modify, and query theme widgets. 1193 1194- Themes can be enabled for external screen devices. 1195 1196- The theme enabled feature does not support the switchover of the current **active** directory. 1197 1198 1199### Build 1200 1201The version of CMake version used for building is upgraded from 3.16.5 to 3.28.2. 1202 1203 1204## Mapping relationship 1205 1206**Table 1** Version mapping of software and tools 1207 1208| Software/Tool| Version| Remarks| 1209| -------- | -------- | -------- | 1210| OpenHarmony | 5.0.0 Release | NA | 1211| Public SDK | Ohos_sdk_public 5.0.0.71 (API Version 12 Release) | This toolkit is intended for application developers and does not contain system APIs that require system permissions.| 1212| (Optional) HUAWEI DevEco Studio| 5.0.0 Release | Recommended for developing OpenHarmony applications<br>[Click here](https://developer.huawei.com/consumer/cn/download/).| 1213| (Optional) HUAWEI DevEco Device Tool| 4.0 Release | Recommended for developing OpenHarmony smart devices<br>[Click here](https://device.harmonyos.com/cn/develop/ide#download). | 1214 1215 1216## Source Code Acquisition 1217 1218 1219### Prerequisites 1220 12211. Register your account with Gitee. 1222 12232. Register an SSH public key for access to Gitee. 1224 12253. Install the [git client](https://git-scm.com/book/en/v2/Getting-Started-Installing-Git) and [git-lfs](https://gitee.com/vcs-all-in-one/git-lfs?_from=gitee_search#downloading), and configure user information. 1226 ``` 1227 git config --global user.name "yourname" 1228 git config --global user.email "your-email-address" 1229 git config --global credential.helper store 1230 ``` 1231 12324. Run the following commands to install the **repo** tool: 1233 ``` 1234 curl -s https://gitee.com/oschina/repo/raw/fork_flow/repo-py3 > /usr/local/bin/repo # If you do not have the permission, download the tool to another directory and configure it as an environment variable by running the chmod a+x /usr/local/bin/repo command. 1235 pip3 install -i https://repo.huaweicloud.com/repository/pypi/simple requests 1236 ``` 1237 1238 1239### Acquiring Source Code Using the repo Tool 1240 1241**Method 1 (recommended)** 1242 1243Use the **repo** tool to download the source code over SSH. (You must have an SSH public key for access to Gitee.) 1244 1245- Obtain the source code from the version branch. You can obtain the latest source code of the version branch, which includes the code that has been incorporated into the branch up until the time you run the following commands: 1246 ``` 1247 repo init -u git@gitee.com:openharmony/manifest.git -b OpenHarmony-5.0.0-Release --no-repo-verify 1248 repo sync -c 1249 repo forall -c 'git lfs pull' 1250 ``` 1251 1252- Obtain the source code from the version tag, which is the same as that released with the version. 1253 ``` 1254 repo init -u git@gitee.com:openharmony/manifest.git -b refs/tags/OpenHarmony-v5.0.0-Release --no-repo-verify 1255 repo sync -c 1256 repo forall -c 'git lfs pull' 1257 ``` 1258 1259**Method 2** 1260 1261Use the **repo** tool to download the source code over HTTPS. 1262 1263- Obtain the source code from the version branch. You can obtain the latest source code of the version branch, which includes the code that has been incorporated into the branch up until the time you run the following commands: 1264 ``` 1265 repo init -u https://gitee.com/openharmony/manifest -b OpenHarmony-5.0.0-Release --no-repo-verify 1266 repo sync -c 1267 repo forall -c 'git lfs pull' 1268 ``` 1269 1270- Obtain the source code from the version tag, which is the same as that released with the version. 1271 ``` 1272 repo init -u https://gitee.com/openharmony/manifest -b refs/tags/OpenHarmony-v5.0.0-Release --no-repo-verify 1273 repo sync -c 1274 repo forall -c 'git lfs pull' 1275 ``` 1276 1277 1278### Acquiring Source Code from Mirrors 1279 1280 1281**Table 2** Mirrors for acquiring source code 1282 1283| Source Code | Version| Mirror | SHA-256 Checksum | Software Package Size| 1284| --------------------------------------- | ------------ | ------------------------------------------------------------ | ------------------------------------------------------------ | -------- | 1285| Full code base (for mini, small, and standard systems) | 5.0.0 Release | [Download](https://repo.huaweicloud.com/openharmony/os/5.0.0-Release/code-v5.0.0-Release.tar.gz)| [Download](https://repo.huaweicloud.com/openharmony/os/5.0.0-Release/code-v5.0.0-Release.tar.gz.sha256)| 41.8 GB | 1286| Hi3861 solution (binary) | 5.0.0 Release | [Download](https://repo.huaweicloud.com/openharmony/os/5.0.0-Release/hispark_pegasus.tar.gz) | [Download](https://repo.huaweicloud.com/openharmony/os/5.0.0-Release/hispark_pegasus.tar.gz.sha256) | 27.1 MB | 1287| Hi3516 solution-LiteOS (binary)| 5.0.0 Release | [Download](https://repo.huaweicloud.com/openharmony/os/5.0.0-Release/hispark_taurus_LiteOS.tar.gz) | [Download](https://repo.huaweicloud.com/openharmony/os/5.0.0-Release/hispark_taurus_LiteOS.tar.gz.sha256) | 328.3 MB | 1288| Hi3516 solution-Linux (binary) | 5.0.0 Release | [Download](https://repo.huaweicloud.com/openharmony/os/5.0.0-Release/hispark_taurus_Linux.tar.gz) | [Download](https://repo.huaweicloud.com/openharmony/os/5.0.0-Release/hispark_taurus_Linux.tar.gz.sha256) | 220.4 MB | 1289| RK3568 standard system solution (binary) | 5.0.0 Release | [Download](https://repo.huaweicloud.com/openharmony/os/5.0.0-Release/dayu200_standard_arm32_20240929.tar.gz)| [Download](https://repo.huaweicloud.com/openharmony/os/5.0.0-Release/dayu200_standard_arm32_20240929.tar.gz.sha256)| 11.7 GB | 1290| Public SDK package for the standard system (macOS) | 5.0.0.71 | [Download](https://repo.huaweicloud.com/openharmony/os/5.0.0-Release/ohos-sdk-mac-public.tar.gz) | [Download](https://repo.huaweicloud.com/openharmony/os/5.0.0-Release/ohos-sdk-mac-public.tar.gz.sha256) | 1.3 GB | 1291| Public SDK package for the standard system (macOS-M1) | 5.0.0.71 | [Download](https://repo.huaweicloud.com/openharmony/os/5.0.0-Release/L2-SDK-MAC-M1-PUBLIC.tar.gz) | [Download](https://repo.huaweicloud.com/openharmony/os/5.0.0-Release/L2-SDK-MAC-M1-PUBLIC.tar.gz.sha256) | 1.2 GB | 1292| Public SDK package for the standard system (Windows/Linux) | 5.0.0.71 | [Download](https://repo.huaweicloud.com/openharmony/os/5.0.0-Release/ohos-sdk-windows_linux-public.tar.gz) | [Download](https://repo.huaweicloud.com/openharmony/os/5.0.0-Release/ohos-sdk-windows_linux-public.tar.gz.sha256) | 2.5 GB | 1293 1294 1295## Resolved Issues 1296 1297**Table 3** Resolved issues 1298 1299| Issue No.| Description| 1300| -------- | -------- | 1301| IA686U | There is a high probability that a C++ crash occurs in libace_napi.z.so of the OS_FFRT_2_0 thread in the com.ohos.photos process.| 1302| I9YC9X | There is a high probability that system freezing occurs in libark_jsruntime.so due to LIFECYCLE_TIMEOUT in the com.ohos.camera process.| 1303| I9TE52 | There is a possibility that app freezing occurs in libark_jsruntime.so due to THREAD_BLOCK_6S in the com.ohos.photos process.| 1304| I9TDUU | Key application: There is a low probability that app freezing occurs in libace_compatible.z.so due to THREAD_BLOCK_6S in the ohos.samples.distributedcalc process.| 1305| I9TE5K | There is a low probability that app freezing occurs in libunwind.z.so due to THREAD_BLOCK_6S in the com.ohos.photos process.| 1306| I9TJGB | There is a low probability that a C++ crash occurs in libmali-bifrost-g52-g7p0-ohos.so of the RSRenderThread thread in the com.ohos.camera process.| 1307| IA5EC3 | There is a low probability that app freezing occurs in libskia_canvaskit.z.so due to THREAD_BLOCK_6S in the com.ohos.updateapp process.| 1308| IA5I3D | There is a low probability that app freezing occurs in librender_service_base.z.so due to THREAD_BLOCK_6S in the com.ohos.smartperf process.| 1309| IA4G47 | There is an extremely low probability that a C++ crash occurs in libhcodec.z.so of the av_codec_service thread of the av_codec_service process.| 1310| I9TDMQ | Key application: There is an extremely low probability that app freezing occurs in libskia_canvaskit.z.so due to THREAD_BLOCK_6S in the com.ohos.settings process.| 1311 1312 1313## Unfixed Vulnerabilities 1314 1315**Table 4** Known issues 1316 1317| Issue No.| Description| Impact| To Be Resolved By| 1318| -------- | -------- | -------- | -------- | 1319| I9S5ZN | There is a low probability that app freezing occurs in libunwind.z.so due to THREAD_BLOCK_6S in the com.ohos.settings process.| The Settings page freezes.<br>Workaround: Restart the Settings application.| 2024-10-15| 1320| I9S600 | There is a low probability that app freezing occurs in libark_jsruntime.so due to THREAD_BLOCK_6S in the com.ohos.settings process.| The Settings page freezes.<br>Workaround: Restart the Settings application.| 2024-10-15| 1321| IAB2U3<br>IAK2J2 | There is a low probability that a C++ crash occurs in libaudio_client.z.so of the OS_APAsyncRunne thread of the audio_server process.| This issue does not affect user services. No workaround is required.| 2024-10-15| 1322| IAIRFB | There is a low probability that a C++ crash occurs in libweb_engine.so of the com.ohos.note thread of the com.ohos.note process.| The application will exit unexpectedly. This issue can be resolved by restarting the application.| 2024-10-15| 1323| I9SXZ8 | There is a low probability that app freezing occurs in libark_jsruntime.so due to THREAD_BLOCK_6S in the com.ohos.contacts process.| The application freezes when you open the Contacts application to query call records. This issue can be resolved by restarting the Contacts application.| 2024-10-15| 1324| IAKLLD | There is a low probability that a C++ crash occurs in libaudio_policy_service.z.so of the SaInit2 thread of the audio_server process.| The process restarts. This issue does not affect user services. No workaround is required.| 2024-10-15| 1325| IA56CU | There is a low probability that a C++ crash occurs in libweb_engine.so of the com.ohos.note thread of the com.ohos.note process.| The application will exit unexpectedly. This issue can be resolved by restarting the application.| 2024-09-30| 1326| IA5AMJ | There is a low probability that app freezing occurs in libark_jsruntime.so due to THREAD_BLOCK_6S in the com.ohos.launcher process.| The screen freezes for about 3 seconds when you access the multi-task screen. After the loading is complete, the screen recovers.| 2024-09-30| 1327| IA5AIT | There is a low probability that system freezing occurs in render_service due to SERVICE_BLOCK.| The application screen freezes and does not respond. This issue can be resolved by restarting the device.| 2024-10-15| 1328| IA6RH6 | There is a high probability that app freezing occurs in libbtframework.z.so due to THREAD_BLOCK_6S in the com.ohos.settings process.| The Settings application might not respond. This issue can be resolved by restarting the Settings application.| 2024-10-15| 1329| IA6RFX | There is a high probability that a C++ crash occurs in libbtservice.z.so of the OSaInit0 thread in the bluetooth_service process.| Bluetooth-related application might crash. This issue can be resolved by restarting the application.| 2024-10-15| 1330| IA8KGR | There is a low probability that a C++ crash occurs in libbluetooth_server.z.so of the OS_IPC_12_22172 thread of the bluetooth_service process.| Bluetooth-related application might crash. This issue can be resolved by restarting the application.| 2024-10-15| 1331| IAQC64 | Randomly open several applications and then open the Settings application. When you return to the home screen and repeatedly access the background interface, the Settings application may encounter a memory leakage of 32 KB for each operation.| The Settings application may exit unexpectedly. This issue can be resolved by restarting the application.| 2024-10-15| 1332| IASE04 | In the memory test of OpenHarmony on the RK3568 development board, the resident memory of the render_service process exceeds the baseline (31 MB).| The memory usage of the entire system is higher than expected.| 2024-10-15| 1333| IASDWO | The sliding frame rate for accessing the Weibo home page through a browser is lower than the specification baseline.| Browsing experience is affected.| 2024-10-15| 1334