2018-10-04 12:11:47 +08:00
|
|
|
|
# AWTK内存需求评估指南
|
|
|
|
|
|
|
|
|
|
假设:
|
|
|
|
|
|
|
|
|
|
* LCD的宽度为:LCD\_W
|
|
|
|
|
* LCD的高度为:LCD\_H
|
|
|
|
|
* LCD的每像素占用的字节数为:BPP
|
|
|
|
|
|
|
|
|
|
## 一、Framebuffer
|
|
|
|
|
|
|
|
|
|
* 单framebuffer需要:LCD\_W * LCD\_H * BPP
|
|
|
|
|
|
|
|
|
|
* 双framebuffer需要:2 * LCD\_W * LCD\_H * BPP
|
|
|
|
|
|
|
|
|
|
* 三framebuffer需要:3 * LCD\_W * LCD\_H * BPP
|
|
|
|
|
|
|
|
|
|
> STM32F103等低端平台,无需Framebuffer,故无此内存开销。
|
|
|
|
|
>
|
|
|
|
|
## 二、窗口动画
|
|
|
|
|
|
|
|
|
|
如果启用窗口动画,需要两个framebuffer大小的内存,即:LCD\_W * LCD\_H * BPP
|
|
|
|
|
|
|
|
|
|
> STM32F103等低端平台,禁用窗口动画,故无此内存开销。
|
|
|
|
|
|
|
|
|
|
## 三、图片解码
|
|
|
|
|
|
|
|
|
|
* 一般带alpha通道的图片解码后,每像素占用4字节。
|
2018-10-11 14:19:13 +08:00
|
|
|
|
* 不带alpha通道的图片解码后,如果定义WITH\_BITMAP\_BGR565,每像素占用2字节,否则占用4字节。
|
2018-10-04 12:11:47 +08:00
|
|
|
|
|
|
|
|
|
> STM32F103等低端平台,直接使用位图,编译到常量中,故无此内存开销。
|
|
|
|
|
|
|
|
|
|
## 四、输入法
|
|
|
|
|
|
|
|
|
|
Google拼音输入大概700K。
|
|
|
|
|
|
|
|
|
|
> STM32F103等低端平台,不启用输入法,故无此内存开销。
|
|
|
|
|
|
|
|
|
|
## 五、字体
|
|
|
|
|
|
|
|
|
|
* 字体文件本身大小。
|
|
|
|
|
* 字体图片缓存大小。
|
|
|
|
|
|
|
|
|
|
> STM32F103等低端平台,直接使用位图字体,编译到常量中,故无此内存开销。
|
|
|
|
|
|
|
|
|
|
## 六、控件
|
|
|
|
|
|
|
|
|
|
一般控件占用100B左右(64位系统会多一些),一般复杂度的应用程序,控件占用内存的峰值小余100K。
|
|
|
|
|
|
|
|
|
|
对于低端平台,可以简化界面,关闭后台窗口,以减少内存的需求。
|