做法一:在支持高端机型上实现,4Kui+4K buffer,在所有的界面下都是4KUI,直接设置分辨率3840*2160即可
做法二:在低端机型上实现,使用白名单机制,动态切换UI和BUFFER.
例如MSD8386是这样的方式,在有限的 2G DDR 内存下,实现了4K ui:
说明:MSD8386通过系统白名单:system/etc/4k2k_app.xml,将app的包名添加至系统白名单中
来动态控制应用是否为4k显示界面或者2k显示界面
在Launcher界面,以及指定的APK,WM SIZE 是3840*2160
在其它没有指定的APK(例如视频会议APK,), WM SIZE 是1920*1080
基本上就是系统会有一个白名单,4K应用跑在4K WM size上;2K的应用跑在2K的WM size上。
Wm size 有1920*1080 和3840*2160 两种,白名单切换。
WM SIZE设置成3840x2160 会占用比较大的DDR内存,再干其它活的时候就不够用了。
通过系统白名单:system/etc/4k2k_app.xml,将app的包名添加至系统白名单中
来动态控制应用是否为4k显示界面和2k显示界面
比如:在Launcher界面,以及指定的APK(例如WhiteBoard),WM SIZE 是3840*2160
在其它没有指定的APK(例如视频会议APK,), WM SIZE 是1920*1080
基本上,8386的系统会有一个白名单,4K应用跑在4K WM size上;2K的应用跑在2K的size上。