当前位置: 首页 > news >正文

rk3568 OpenHarmony4.1 Launcher定制开发—桌面壁纸替换

        Launcher 作为系统人机交互的首要入口,提供应用图标的显示、点击启动、卸载应用,并提供桌面布局设置以及最近任务管理等功能。本文将介绍如何使用Deveco Studio进行单独launcher定制开发、然后编译并下载到开发板,以通过Launcher修改桌面背景壁纸为演示案例。

        一、演示环境与设备

        1、开发板:BQ3568HM(厦门贝启rk3568简化版)
        2、Deveco studio 4.0.0.600   API10(FullSDK)
(因为OpenHarmony4.1release的launcher源码仍然使用API10进行编译的)推荐下载Deveco studio 4.0.0.600版作为开发环境。
        FullSDK替换参考文档:OpenHarmony 应用开发FullSDK获取与替换_openharmony full sdk-CSDN博客
        3、演示系统:OpenHarmony4.1release

        二、前提准备(可不进行这一步,文末有Launcher另一种替换)

        Launcher作为预安装的系统软件,不允许直接安装使用Deveco Studio单独编译的Launcher.hap和Launcher_Settings.hap,必须对源码进行如下更改,然后编译一个Launcher可卸载安装的固件。

        1、首先搭建OpenHarmony编译环境(过程略);
        2、从贝启开源社区下载BQ3568HM开发板OpenHarmony4.1release源码
链接:https://www.bearkey.net/thread-112-1-1.html(非厦门贝启rk3568简化版,自行寻找源码)
        3、下载源码后,源码根目录,进入路径vendor/hihope/rk3568/preinstall-config/中,打开编辑install_list.json文件,找到  "app_dir" : "/system/app/com.ohos.launcher"这一项,将"removable"值改为true,使得预安装的com.ohos.launcher文件夹里面的hap文件可以被重新安装,如下图所示。

        4、编译源码,编译所生成的文件都归档在out/rk3568/目录下,固件输出在 out/rk3568/packages/phone/images/ 目录下,将固件烧录到开发板上,桌面如下图所示。 

        三、launcher开发实例——替换桌面背景图片

        本节演示如何进行launcher开发,以替换桌面背景图片为例。

        1、从源码中提取launcher源码:
        源码目录中,路径applications/standard/下有launcher源码,如下图所示,提取到桌面

        2、用Deveco studio打开launcher源码

        3、替换桌面图片。在工程目录:
        launcher/product/phone/src/main/ets/common/pics/下img_wallpaper_default.jpg为默认的桌面背景图片,删除这张图片,重新添加一张同名的其他的jpg文件,如下图所示。

        4、在3步完成对launcher的修改后,我们进行编译。

        (1)首先,打开目录launcher\product\phone\src\main\module.json5文件,如下图注释"deviceTypes"项的"tablet"

        (2)然后,打开目录launcher\product\pad\src\main\module.json5文件,如下图注释"deviceTypes"项的"default",如下图所示。

        (3)最后,选择菜单栏“构建”,点击调出窗口,选择“编译”,选择“编译APP”

        5、在开发板目录/system/app/com.ohos.launcher中对应有Launcher.hap和Launcher_Settings.hap两个hap,如下图所示。因此,下载最新的launcher需要下载这两个hap,这两个hap在第(4)步被编译出来,对应路径是:工程目录launcher\product\phone\build\default\outputs\default\phone_launcher-default-signed.hap和
launcher\feature\settings\build\default\outputs\default\launcher_settings-phone_launcher-default-signed.hap,如下图所示

        6、将步骤5中的两个Launcher相关hap进行安装,如下图所示(如果不是第二节修改源码,编译的固件,会无法安装)

        7、安装完成后,必须重启一下开发板才能生效,reset键重启,效果如下图所示,桌面背景替换成功。

        四、总结

        在Devceo studio对Launcher源码进行定制开发(代码修改),然后进行hap编译,最后安装两个最新编译的Launcher相关hap,并重启开发板查看效果

        五、补充:

        若没有进行第二节,没有编译一个Launcher可卸载安装的固件。那么Launcher作为预安装的系统软件不允许直接安装使用Deveco Studio单独编译的Launcher.hap和Launcher_Settings.hap,如下图所示。

        只能通过文件发送的方法,对开发板的Launcher相关hap文件进行替换。在开发板目录/system/app/com.ohos.launcher中对应有Launcher.hap和Launcher_Settings.hap两个hap,如下图所示。

        (1)首先,将(三、5)中编译的两个hap复制单独提取出来,然后并进行相应的重名,如下图所示

        (2)将两个hap文件发送到对应开发板文件夹,如下图所示,文件发送失败。

        (3)解决方法,文件重新挂在到根目录,进入开发板后台,执行,然后退出开发板后台,重新发送文件替换,如下图所示

        (4)替换完成后,必须重启一下开发板才能生效,reset键重启,查看效果。

        声明:作者原创,非本人允许,严禁转载

        资料:(1)演示开发板为厦门贝启BQ3568HM   首页-贝启科技官方企业店-淘宝网

                   (2)贝启科技开源网站:Bearkey-开源社区

                   (3)欢迎请作者喝杯咖啡,你的鼓励是小编继续的动力

http://www.lryc.cn/news/406348.html

相关文章:

  • MySQL:送分or送命 varchar(30) 与 int(10)
  • 【odoo17】后端py方法触发右上角提示组件
  • 1775D - Friendly Spiders
  • 【python】OpenCV—Point Polygon Test
  • 6 Go语言的常量、枚举、作用域
  • 第十一章 数据结构
  • LeetCode704 二分查找
  • [言简意赅] Matlab生成FPGA端rom初始化文件.coe
  • 【QAC】分布式部署下其他机器如何连接RLM
  • 从等保测评看行业安全趋势:洞察与预测
  • HTTP模块(二)
  • 引入缓存带来的问题以及解决方案
  • 力扣39题:组合总和的 Java 实现
  • 使用el-table实现自动滚动
  • Angular由一个bug说起之八:实践中遇到的一个数据颗粒度的问题
  • day13(DNS域名解析)
  • uboot的mmc partconf命令
  • 数据结构经典测题3
  • tensorboard add_text() 停止自动为尖括号标记添加配对的结束括号</>
  • sql-libs通关详解
  • 【STM32】当按键具有上拉电阻时GPIO应该配置什么模式?怎么用按键去控制LED翻转?
  • EXO-chatgpt_api 解释
  • 新能源汽车的充电网络安全威胁和防护措施
  • Linux中利用消息队列给两个程序切换显示到前台
  • C语言实例-约瑟夫生者死者小游戏
  • 算法类学习笔记 ———— 红绿灯检测
  • git命令使用详细介绍
  • WebStorm中在Terminal终端运行脚本时报错无法加载文件进行数字签名。无法在当前系统上运行该脚本。有关运行脚本和设置执行策略的详细信息,请参阅
  • 【Java题解】以二进制加法的方式来计算两个内容为二进制数字的字符串相加的结果
  • docker -v 到底和那个一样?type=volume还是type=bind的解释