Brand-new GUI system design

The wide variety of screens used by iot devices in different shapes is one of the problems that has plagued device developers and contributed to the fragmentation of iot devices. Although there are many graphics engines on the market, they are all limited by the limited resources and variety of Internet of Things devices. Therefore, Huawei specially developed a lightweight GUI system for Hongmeng, which only takes up less than 100K of ROM and 30K of RAM to run at a frame rate of 30FPS or more to improve the fluency of the legendary game.

Lightweight graphics open framework ACE

In contrast to other graphics engines, ACE did not use a virtual machine solution, but a high-performance rendering engine written in C++. ACE also allows developers to be flexible. It allows developers to use OpenCV or OpenGL on a particular device and replace the high performance engine as long as it meets the software interface.

The ACE framework’s support for irregular screens has been proven in smartwatches with round screens. The ACE framework supports JS/ Java as a front-end development tool and supports common image formats. The freeType font engine generates “bin” binaries for fonts, and HarBuzz and ICU tools enable the display and switching of 72 common languages on a device with only 640K RAM.

Hongmeng graphics system overall framework

Hongmeng graphics system framework is divided into UIKit (UI programming layer), Engine (Engine layer), Server (service layer), HDI (hardware interface layer), HW (hardware layer).

The Hongmeng image subsystem

There are rich controls in UIKit, which are mainly divided into ordinary controls and container controls. The development approach is consistent with GUI development.