侧边栏壁纸
博主头像
Z同学博主等级

工作磨平激情前,坚持技术的热忱。 欢迎光临Z同学的技术小站。 分享最新的互联网知识。

  • 累计撰写 274 篇文章
  • 累计创建 55 个标签
  • 累计收到 74 条评论

海思V811主板,没有遥控器的情况下,进入工厂模式

Z同学
2020-09-01 / 0 评论 / 1 点赞 / 1,111 阅读 / 1,612 字
温馨提示:
本文最后更新于 2021-12-08,若内容或图片失效,请留言反馈。部分素材来自网络,若不小心影响到您的利益,请联系我们删除。

前言

主要介绍如何采用华为系统原生的工厂模式app 替换掉当前主板的开机logo 和开机动画。

开机logo是一个静态图片文件-指向开机启动时的Android 绿色机器人图标。

开机动画-是一组图片文件-指向开机时亮度闪烁的Android文字。

方法

首先,需要进入“工厂模式”。而其实工厂模式就是个app。在系统之中的路径地址为system/app/HiFactoryMenu

你可先查询下,你的主板当前是否有该app。 如果有下面的方法才有意义。
没有的话,你可以联系你的主板厂商了。很有可能主板厂商进行了定制化修改

下面是HiFactoryMenu的包名,和关键Service对象

com.hisilicon.tv.menu
com.hisilicon.tv.menu.app.TvMenuWindowManagerService

通过查询源码。得知TvmenuWindowManagerService接收Intent 传入String 字符串,就会创建Windowm出来,进行配置了。

所以我们可以通过命令的形式启动service并给它传值

am startservice --es com.hisilicon.tv.menu.commmand "com.hisilicon.tv.menu.commmand.factory_menu" com.hisilicon.tv.menu/com.hisilicon.tv.menu.app.TvMenuWindowManagerService

其中--es 指传的String 类型,int为 --ei 然后后面跟着的为 key 和values值,参考

intent.getIntExtra("pid",11);
intent.getStringExtra("modul","com.xxx.demo");

//而该如何传值,让上面的itent可以获取呢?
//例子
am startservice --es modul "com.xxx.demo" --ei pid 11 XXX(包名)/xxxxxServices

通过上面的命令就可以启动了
image.png

一般来说,海思的通用工厂配置模式就是这样了。

进入工厂模式后,我们就可以改很多的系统方面的配置了

下面介绍修改屏参 和开机logo和开机动画的选项。

修改屏参和开机logo

“General Options” ->"PanelDivision"  //可以选择ONE_OE ,ONE,TWO,FOUR  主要解决屏幕栅格化的问题,或者屏幕双显问题

还用一种情况为 屏幕倒显

“General Options” ->"Mirror"  //可以选择的参数有:NORMAL,MIRROR,FLIP,MAF。 

修改开机logo

“General Options” ->"UpgradeLogo"  //传一个命名为boot0.jpg的图片就可以了。 注意图片的像素信息。

参考:
image.png

修改开机动画

“General Options” ->"UpgradeBootAnimation"  //传一个命令为bootanimation 的压缩文件就可以了。

关于bootanimation的压缩文件:
1.压缩文件格式为zip。
2.压缩方式为:存储模式

里面由part0文件夹(存放一组的图片,命名按照顺序)+desc.txt 文件组成

desc.txt 文件格式为Unix(LF)格式。
参照
image.png

另外一种修改屏参的情况

通过adb 远程连接设备之后

分别输入的指令

811:/# hidebug
TV $ factory
factory@TV $ gpi 可以看到当前屏参数据值了 gpi是54,spi后面的XX就填55;如果gpi是55,XX就填54
factory@TV $ spi xx  //输入你要修改后的值

然后reboot 重启设备即可。

1

评论区