[觸覺智能RK3568]修改屏幕 DPI(像素密度)
作者:離北況歸
在源碼Foundation/window/window_manager/resources/config/rk3568/display_manager_config.xml中有rk3568的默認配置。
- 觸覺智能RK3568購買鏈接如下:https://item.taobao.com/item.htm?spm=4645b.1.14.1.5c4a4a7dv1soeZ&id=658789039056&ns=1&abbucket=5#detail
一、OpenHarmony源碼中DPI配置
- 在源碼foundation/window/window_manager/resources/config/rk3568/display_manager_config.xml中有rk3568的默認配置
rk3568開發板默認的DPI配置為240,范圍為80-640。
以下為觸覺智能開發板在不同DPI時屏幕的顯示情況。
DPI為240時:
DPI為100時:
DPI為600時:
二、更改開發板的DPI
方法一:更改源碼編譯燒錄固件
- 在源碼foundation/window/window_manager/resources/config/rk3568/display_manager_config.xml文件中修改dpi,編譯后燒錄固件。
方法二:發送display_manager_config.xml文件至設備etc/window/resources
- OpenHarmony固件編譯燒錄進入設備后,display_manager_config.xml文件會被預編譯打包至設備端etc/window/resources目錄下,什么,為什么只有window/resources字段,因為ohos_prebuilt_etc就是把文件放進設備的etc文件夾。
- 步驟如下
知識點附送
為ohos_prebuilt_XXX類目標添加支持指定output屬性的能力
- 以該pr學習 https://gitee.com/openharmony/build/pulls/822/files 為ohos_prebuilt_XXX類目標添加支持指定output屬性的能力。
- ohos_prebuilt_XXX類目標是指ohos_prebuilt_executable、ohos_prebuilt_shared_library、ohos_prebuilt_static_library、ohos_prebuilt_etc。這類目標只支持指定source屬性,拷貝到out目錄時目標文件名與源文件名是一樣的,無法另行指定名字。該pr解決了此限制,添加了output這個可選屬性用于指定目標文件名,不指定的情況下默認與源文件名是一樣的(與原邏輯保持一致)。
- OpenHarmony編譯構建子系統是基于Gn和ninja的,而gn本身是有原生模板(source_set,shared_library, static_library, action, executable,group)。gn也支持用戶自定義編譯模板,OpenHarmony編譯子系統提供了一系列自定義的模板(ohos_shared_library、ohos_prebuilt_executable、ohos_prebuilt_shared_library等)
- 自定義模板的源碼位于 https://gitee.com/openharmony/build/tree/master/templates
- ohos_prebuilt_executable、ohos_prebuilt_shared_library、ohos_prebuilt_static_library、ohos_prebuilt_etc預編譯模板在prebuilt.gni中定義,它們通過調用ohos_copy模板實現。
- ohos_copy模板實現了拷貝文件到設備具體位置的功能,它需要定義invoker.sources和invoker.outputs,即source和output屬性。例如
- ohos_prebuilt_executable、ohos_prebuilt_shared_library、ohos_prebuilt_static_library、ohos_prebuilt_etc(下面用ohos_prebuilt_xxx代指)添加支持指定output屬性的能力的相關代碼如下:
使能/禁用selinux
- 禁用selinux
- 使能selinux
責任編輯:jianghua
來源:
51CTO 開源基礎軟件社區