admin管理员组文章数量:1603247
晶晨系列刷机技巧回忆
- 插入晶晨神器,直接插入USB双公头线即可。
- 如果跑到百分之4不动了,然后报错,优先测试插入电源线,可能是供电不足。
- 一般情况下开关机按键是不需要开机的,但是有的机子可能需要打开开关。
- 大部分机子都是插入距离网线口距离近的USB口,但是有的机子是要远离网线口,比如海信IP103H。
遥控代码编辑定制 - 安卓9
- 解压固件,修改固件遥控代码debug为1(\vendor\etc\remote.cfg)
- 打包固件,然后刷入
- adb connect 192.168.xxx.xxx 连接盒子
- adb shell 开启命令
- su 回车 获取root权限
- dmesg -w | grep remote 获取遥控代码
- 用手中得遥控对着机顶盒按,得到代码
- framecode=0xfd02ff00 这里的意思是遥控器代码是ff00
- receive scancode=0x2 比如这里按的左键,代码就是0x2
- 记录上面得遥控代码和按键代码
- 替换到\vendor\etc\remote.tab4或者之类得文件中,遥控代码和按键代码都要修改,然后保存刷入即可!(这里需要注意,如果原本的代码没有按键定义说明,可以到\vendor\usr\keylayout这个目录下查看Vendor_0001_Product_0001.kl这个里面得代码,对照输入)
遥控代码定制 - 低版本
- 和上面得方法大同小异
- system\etc存放代码得目录在这个里面
- 结尾可能是conf,原理是一样得
华为处理器低版本
- 目前我碰到的是402H,442系统
- 遥控代码在system的etc里面,是key.xml文件
- adb连接上以后可以用代码 android_ir_user –D 查看新遥控的代码,然后用开心盒子助手下载修改,然后推送替换。
替换桌面后首页键无法使用
- /system/etc/keyfunction.xml
- 这个文件就是绑定主页按键的位置,修改包名为当贝即可实现主页修复。
修改遥控红蓝灯闪烁
- 同样是在/system/system/etc/combinationKeys.xml文件内修改
<CombinationKey name="umusblog" type="activity"> <KeyCodes desc="9090(red blue red blue)"> <key>16</key> <key>7</key> <key>16</key> <key>7</key> </KeyCodes>
复制
替换系统桌面
- \system\app这个目录下存放得是系统级别得应用,一般桌面就在这个里面
- \system\system\etc安卓9在这个目录下有个绑定桌面的文件叫,combinationKeys.xml,需要修改
- 安卓4也在相同的地方有个类似的xml文件,绑定桌面,有的固件有这个问题。
- 有的是在\system\bulid.prop文件里面绑定了桌面,可以搜索一下包名。
修改机顶盒内部显示型号
- \system\bulid.prop里面的ro.product.model=就是机顶盒型号。
替换系统设置,取消设置密码
- 使用改造的设置apk
- \system\system\etc安卓9在这个目录下有个绑定桌面的文件叫,combinationKeys.xml,需要修改
# 修改前 <PackageName>com.unionman.umusblog</PackageName> <ActivityName>com.unionman.umusblog.UsbLogActivity</ActivityName>
复制
# 修改后 <PackageName>tv.icntv.vendor</PackageName> <ActivityName>tv.icntv.vendor.main</ActivityName>
复制
替换开机动画
- \system\media这个文件夹内是开机动画,要么是多张图片,要么是视频
- 原内容如果是图片就替换图片,一切尽量按照原内容设置,注意图片或者视频的尺寸和格式。
- 如果有logo.img这个也解压出来,里面需要修改。
- \vendor\vendor\logo_files这个文件夹下也有图片需要修改。
- 需要注意的是\system\media这个文件夹下面的bootanimation.zip解压出来,图片替换大小要一致,修改txt的话最后检查有没有回车,打包的时候选择zip格式,压缩模式选存储,注意不要嵌套文件夹。参考文档
替换开机自动安装应用
- \system\preinstall 这个目录下是开机自动安装得应用,一定要全英文,不能有中文
- 如果替换系统应用,需要用7z解开看看有没有lib,如果有要放进system/lib里面。
内置root权限
- 将su文件放到固件路径**/system/bin/su**
- 找到盒子的自启脚本,比如**/system/etc/install-recovery.sh**或者/system/bin/btplay.sh等等.sh结尾得文件,一般是前者
- 给最后回车,添加一行
/system/bin/su --auto-daemon &
加ROOT完成,重签打包刷机
内置root其他复杂方法 - 面具
- 开启ADB,如果不能开启就装【爱玩机工具箱】,在“爱玩机工具箱-导航-系统设置”开启“USB调试”。
- 连接电脑。可以使用USB公对公数据线直接连接。也可以安装“ADB WiFi”后电脑端使用“adb connect 机顶盒IP地址”建立连接。(这里如果是电脑就用开心盒子助手之类软件)
- 提升权限。“adb root”
- 提取boot分区。
“adb shell dd if=/dev/block/boot of=/sdcard/download/boot.img” - 第三步:修补boot镜像。
安装“Magisk”,然后在“Magisk-安装-下一步-选择并修补一个文件”选择你刚才提取的boot.img。如果有遥控器点不到的按钮,连接键盘,多次按下“Tab”键直到选中对应的按钮。修补后在输出窗口查看修补后的文件名(/sdcard/downlad/magisk_patched-xxxxx_xxxxx.img)。 - 第四步:刷入boot镜像。
“adb shell dd if=/sdcard/downlad/magisk_patched-xxxxx_xxxxx.img of=/dev/block/boot”(把magisk_patched-xxxxx_xxxxx.img替换成刚刚生成的文件名) - 第五步:重启。之后你的设备就已经成功Root。
- 面具下载连接点我
- 爱玩机工具箱点我下载
- ADBWiFi点我下载
修改固件默认开启ADB
- 4.4.2包修改方法
- 在system/build.prop里面修改
- ro.adb.secure=0 (原内容1修改为0)
- persist.service.adb.enable=1 (在代码adb5555上面一行新增这个代码)
- 9.0包修改方法
- 在system/etc/prop.default里面加上一句persist.sys.usb.config=adb,即可默认开启ADB
- 检查system/etc/prop.default文件中的ro.secure=1,把数值改为0,还有就是在prop.default里面也可以加上这个。
- 未验证,在system下的bin里面找到instll-recovery.sh文件,给最后添加如下代码
sleep 10 stop adbd setprop service.adb.tcp.port 5555 start adbd adbd &
复制
其他一些目录文件存放位置和意义
- 安卓9WiFi驱动存放在vendor/vendor/lib/modules里面
WiFi驱动添加
- vendor/vendor/lib/modules里面是驱动
- vendor/vendorlib/etc/WiFi
九彩固件解除升级限制
-
状态表现是提示升级固件,是九彩专门恶心用户的
-
代码表现如下,意思是i大于400就会提示,也就是事件发生次数超过400次就提示了
public void onReceive(Context context, Intent intent) { if ("android.intent.action.BOOT_COMPLETED".equals(intent.getAction()) || "android.intent.action.MEDIA_MOUNTED".equals(intent.getAction()) || "android.intent.action.MEDIA_UNMOUNTED".equals(intent.getAction()) || "android.intent.action.MEDIA_EJECT".equals(intent.getAction()) || "android.intent.action.MEDIA_REMOVED".equals(intent.getAction()) || "android.intent.action.LOCKED_BOOT_COMPLETED".equals(intent.getAction()) || "android.intent.action.BOOT_PROGRESS".equals(intent.getAction()) || "android.intent.action.REBOOT".equals(intent.getAction())) { SharedPreferences sharedPreferences = context.getSharedPreferences("boot_count", 0); int i = sharedPreferences.getInt("count", 0) + 1; # 删除这个+1应该就好了 SharedPreferences.Editor edit = sharedPreferences.edit(); edit.putInt("counta", i); edit.apply(); if (i < 400) { return; } Intent intent2 = new Intent(context, MainActivity.class); intent2.addFlags(268435456); context.startActivity(intent2); } }
adb shell进入电视盒子对文件进行操作
-
adb connect 192.168. adb shell exit 退出机顶盒mount -o remount -o rw /system 挂载系统分区 mount -o remount,rw / cd /XXX 进目录 cd .. 退一级目录 rm -rf /XXX/XXX 删除 chmod 0644 /XXX 给文件权限 cp /XXX / XXXX 复制哪里到那里 am start /XXXX 启动包名 echo XXX > /xxx 打印 cat /xxx 查看 mkdir xxxx 新建 am start com.dangbei.tvlauncher 启动当贝桌面 input keyevent 3 主页键 input keyevent keycode 176 模拟遥控值 getevent 遥控值信息 getevent -l dumpsys input reboot update 晶晨进入线刷 reboot recovery 晶晨进re模式 adb push .\build.prop /system/ 到机顶盒 adb pull /system/build.prop .\build.prop 配置文件到电脑 sleep 5 stop adbd setprop service.adb.tcp.port 5555 start adbd adbd & busybox telnetd -l system/bin/sh
版权声明:本文标题:电视盒子固件定制教程 内容由热心网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:https://www.elefans.com/xitong/1728435413a1158062.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论