首頁 收藏 QQ群
 網(wǎng)站導航

ZNDS智能電視網(wǎng) 推薦當貝市場

TV應用下載 / 資源分享區(qū)

軟件下載 | 游戲 | 討論 | 電視計算器

綜合交流 / 評測 / 活動區(qū)

交流區(qū) | 測硬件 | 網(wǎng)站活動 | Z幣中心

新手入門 / 進階 / 社區(qū)互助

新手 | 你問我答 | 免費刷機救磚 | ROM固件

查看: 93340|回復: 55
上一主題 下一主題
[經(jīng)驗&教程]

一種老舊安卓電視通用Root與優(yōu)化方案-以創(chuàng)維G7200_8H87為例

  [復制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
發(fā)表于 2023-9-20 18:09 | 只看該作者 |只看大圖 回帖獎勵 |倒序瀏覽 |閱讀模式 | 來自上海
本帖最后由 XFY9326 于 2023-9-21 00:00 編輯

  • 前言

眾所周知,國內(nèi)智能電視的各種廣告和安裝限制一直是令人頭疼的問題。  
或許對于新出的智能電視還可以接受,但是在一些老舊的智能電視上已經(jīng)會導致嚴重的卡頓問題。

家里有一臺2015年的創(chuàng)維G7200的電視,機芯為8H87。
這臺機器的配置在如今2023年已經(jīng)顯得有些捉襟見肘,但是不斷彈出的各類廣告和開機啟動的系統(tǒng)應用都進一步拖慢了電視的運行速度。  
G7200 8H87系列在2018年6月更新了最后一個酷開6.0版本的系統(tǒng)后就再也沒有提供過系統(tǒng)更新。

由于系統(tǒng)安裝包瞎改容易變磚,所以最好的解決方案就是直接對當前的電視系統(tǒng)Root后再進行優(yōu)化。
縱觀常見的Root方案,電視上直接運行Root軟件已經(jīng)被證實操作失敗,而電視也沒有方便的辦法刷boot.img。
于是,能否有方法直接獲取電視的Root權(quán)限?

  • 觀前提示

本人只在創(chuàng)維G7200_8H87上操作成功,但是這個方案理論上可以推廣到更多舊的電視上。  
這里會詳細介紹解決問題的思路,給出需要的工具,但是依然會涉及到很多Android系統(tǒng)的知識。  

所有使用的工具都是開源的,但是并不是一鍵解決的方案,需要使用命令行進行操作。  
不建議什么都不懂的人直接在本文的給出的操作提示下直接操作電視。  
如果沒有辦法使用ADB或者命令窗口,抱歉到這里就可以結(jié)束了。  

本文主要目的是知識分享,請尊重知識版權(quán)謝謝。
對于任何基于本文嘗試修改電視導致出現(xiàn)任何問題的情況,本人概不負責。

由于部分描述容易招致問題并且無法通過,所以換了一種描述方式請諒解。  
如果想直接看未修改的文章可以看底部的原文鏈接。  

  • Root智能電視

尋找方案


對于智能電視,不想要拆機的人顯然沒法直接刷寫指定的固件。  
在部分智能電視上,例如“King Root”或“360 Root”都不起效果,因為系統(tǒng)被修改的很徹底。  
所以想要Root就只能另辟蹊徑利用一些公開的系統(tǒng)方案。      
對于智能電視特別是老舊的智能電視,這就是一個可以利用的方案。  

以創(chuàng)維G7200_8H87為例,最新的版本是2018年6月發(fā)布的酷開6.0,Android 5.0 (21),arm64-v8a架構(gòu)(64位),Linux內(nèi)核3.10.61。  
這個系統(tǒng)下的SELinux是關(guān)閉狀態(tài)。

通過搜索和結(jié)合官網(wǎng)安全公告進行篩選,最終確定了可用范圍從Linux 2.x到4.8.3的 CVE-2016-5195 方案。  
從描述來看確實“3.10.61”符合條件,但是實際使用需要經(jīng)過測試。  
選擇它的另一個原因是XDA有人提供了預編譯的文件可以直接使用,這比起自己去研究怎么利用要便捷的多。

某Ghub開源平臺項目名稱為hyln9/VIKIROOT。
下載`VIKIROOT-v0.1.1.zip`即可(只有64位的版本,文末有網(wǎng)盤下載地址)。  
使用這個工具有個好處,就是就算操作失敗,重啟設(shè)備后就會恢復原樣(但是不重啟再次執(zhí)行也無法繼續(xù)再次運行)。

開啟ADB

這里以使用ADB為例講解如何操作,如果有毅力在電視上運行終端APP執(zhí)行命令當然也是可以的。  

創(chuàng)維G7200_8H87,保持連接家庭局域網(wǎng)的聯(lián)網(wǎng)狀態(tài)(就是連接到家里WIFI)。
打開設(shè)置,本機信息,用遙控器按“上上下下,左右左右”,即可進入工廠菜單。
工廠菜單中,通用設(shè)置,ADB開關(guān),然后啟用即可。
在設(shè)置,本機信息中,可以看到電視的IP地址(如果有其他方法找到電視的IP地址也行)。

在電腦上運行ADB客戶端需要下載工具(自行下載)。
開啟任意一個命令窗口,在含有adb.exe的目錄下使用adb命令連接到電視。  

  1. # adb connect "電視IP"
  2. # 部分電視需要指定端口號,默認端口5555
  3. # 例如:
  4. adb connect 192.168.1.100
  5. # 出現(xiàn) connected to 192.168.1.100:5555 即連接成功
  6. # 進入電視的命令行界面 (這是電視系統(tǒng)的命令行了別搞錯)
  7. adb shell
復制代碼

另外附加一些電視系統(tǒng)的命令行下的常用命令:  
(所有命令前使用`adb shell`開頭都可以在自己電腦的命令行環(huán)境下使用)  

  1. # 查看Linux內(nèi)核版本
  2. cat /proc/version
  3. # 查看所有系統(tǒng)信息
  4. getprop
  5. # 查看系統(tǒng)版本名稱
  6. getprop ro.build.version.release
  7. # 查看系統(tǒng)SDK版本
  8. getprop ro.build.version.sdk
  9. # 查看CPU支持的架構(gòu)
  10. getprop ro.product.cpu.abilist
復制代碼

獲取臨時Root權(quán)限

確認好電視的版本是支持的,就可以進一步操作了。  
提前解壓`VIKIROOT-v0.1.1.zip`得到`exploit`文件。  

  1. # 再開一個自己電腦的命令行窗口用于發(fā)送文件
  2. # 請注意替換exploit文件位自己電腦上它的位置
  3. # 命令含義:將exploit文件推送到/data/local/tmp目錄下
  4. adb push exploit /data/local/tmp
復制代碼

回到剛才打開的電視系統(tǒng)的命令行窗口:  

  1. # 電視的命令行界面
  2. # 打開/data/local/tmp目錄
  3. cd /data/local/tmp
  4. # 為exploit文件賦予執(zhí)行權(quán)限(否則不能運行)
  5. chmod +x exploit

  6. # 執(zhí)行當前目錄下的exploit
  7. ./exploit
  8. # 如果一切順利,就可以看到如下提示:
  9. # CVE-2016-5195 POC FOR ANDROID 6.0.1 MARSHMALLOW
  10. # Usage:
  11. # exploit port: use local terminal.
  12. # exploit ip port: use remote terminal.
  13. # 如果執(zhí)行失敗,說明你的電視不是ARM架構(gòu)的64位系統(tǒng),請自行編譯或者尋找其它方案
復制代碼

這個幫助命令告訴我們有兩種方式啟動,一種是本地命令窗口,另一種是遠程命令窗口。  
遠程命令窗口需要使用`nc`命令在自己電腦上連接,我嘗試了但是沒成功過。  
所以,不如使用本地命令窗口模式方便。  
但是,由于未知原因,直接使用本地命令窗口模式可能會出現(xiàn)一直卡等待的情況,所以如果出現(xiàn)這個情況可以先啟動遠程命令窗口等待自動30秒關(guān)閉后,再啟動本地命令窗口。  

如果想要試試能不能本地命令窗口直接使用:

  1. # 電視的命令行界面
  2. # 在10800端口開啟本地命令窗口
  3. ./exploit 10800
  4. # 如果出現(xiàn):
  5. # >>> Reverse shell target: 127.0.0.1:10800
  6. # >>> Exploit process starts.
  7. # >>> Inject: patch 1/2
  8. # >>> Inject: patch 2/2
  9. # >>> Please wake up you phone now.
  10. # 的輸出提示后不動了,可以嘗試打開或者關(guān)閉藍牙/打開或者關(guān)閉鬧鐘(時鐘)應用
  11. # 如果依然卡在這里,那就只能重啟電視重新?lián)Q下面的方法繼續(xù)了
  12. # 如果成功繼續(xù)執(zhí)行,詳見后面的教程
復制代碼

先啟動遠程命令窗口等待自動30秒關(guān)閉后,再啟動本地命令窗口的方法:

  1. # 電視的命令行界面
  2. # 在IP0.0.0.0與10800端口開啟本地命令窗口
  3. ./exploit 0.0.0.0 10800
  4. # >>> Reverse shell target: 0.0.0.0:10800
  5. # >>> Exploit process starts.
  6. # >>> Inject: patch 1/2
  7. # >>> Inject: patch 2/2
  8. # >>> Please wake up you phone now.
  9. # >>> Restore process will start in 30s.
  10. # >>> Restore process starts.
  11. # >>> Remove: patch 2/2
  12. # >>> Remove: patch 1/2
  13. # >>> Removing .x file.
  14. # 等待一次打補丁與反打補丁執(zhí)行完成

  15. # 在10800端口開啟本地命令窗口
  16. ./exploit 10800
  17. # 如果出現(xiàn):
  18. # >>> Reverse shell target: 127.0.0.1:10800
  19. # >>> Exploit process starts.
  20. # >>> Inject: patch 1/2
  21. # >>> Inject: patch 2/2
  22. # >>> Please wake up you phone now.
  23. # >>> Waiting for reverse connect shell.
  24. # >>> Enjoy!
  25. # ====================TERMINAL====================
  26. # 就說明一切順利,完成了打補丁
  27. # 此時不要退出這個窗口或者程序,因為打補丁得到的權(quán)限只在目前本次啟動的命令下時有用

  28. # 在這里輸入的任何命令都是作為臨時的Root權(quán)限執(zhí)行的
  29. # 需要注意的是,這個窗口無法使用左右上下的按鍵,也無法粘貼文本,只能輸入,刪除和回車。

  30. # 查看可用的命令所在位置 $PATH
  31. echo $PATH
  32. # 本人的機器返回的結(jié)果為 /usr/bin:/bin 意思就是/system/bin與/system/xbin的命令必須指定路徑才能執(zhí)行

  33. # 查看當前用戶ID
  34. /system/bin/id
  35. # 如果返回 uid=0(root) gid=0(root) 說明當前為root賬戶
復制代碼

如果想要修改系統(tǒng)文件,則需要掛載分區(qū)為可讀寫,以下命令按需求使用:  

  1. # 掛載根目錄為可讀寫
  2. /system/bin/mount -o remount /

  3. # 掛載/system分區(qū)為可讀寫
  4. /system/bin/mount -o remount /system
復制代碼

在這個情況下可以執(zhí)行任何想要的操作了,但是這是一個臨時的Root權(quán)限并且啟動的操作很復雜。  
另外,每次執(zhí)行命令無法粘貼,修改,必須指定路徑都非常繁瑣。
因此,我們需要將其變?yōu)橛谰玫腞oot權(quán)限,即加入`su`命令。

獲取永久Root權(quán)限

就本人而言,并沒有在電視上使用Root管理軟件的需求。  
因為舊的智能電視本來空間就小,卸載不用的系統(tǒng)軟件后也禁不起折騰了。  
本人希望把電視清理干凈后就基本用不到Root權(quán)限了,知識作為一種應急需求。  
所以,本人使用了一種不使用Root管理軟件,直接使用`su`命令的方案。  

首先,我們需要從下載預編譯的`su`命令(如果你的電視系統(tǒng)不支持運行這個`su`命令,就需要去尋找其他可用的了)。  
選擇下載SupSU的Flashable文件(文末網(wǎng)盤提供)。  
解壓到本地,根據(jù)CPU架構(gòu)選擇合適的`su`文件(G7200_8H87是arm64架構(gòu))。  

  1. # 在自己電腦的命令行窗口發(fā)送文件
  2. # 請注意替換su文件位自己電腦上它的位置
  3. # 命令含義:將su文件推送到/data/local/tmp目錄下
  4. # 注意,adb依然沒有也不會有root權(quán)限(后面會說明),所以只能把文件發(fā)送到這個臨時目錄中
  5. adb push su /data/local/tmp
復制代碼
  1. # 打開剛才的電視的命令行界面(獲得臨時Root權(quán)限的窗口)
  2. # 掛載/system分區(qū)為可讀寫
  3. /system/bin/mount -o remount /system

  4. # 先把exploit文件自己復制到系統(tǒng)文件夾,方便以后使用
  5. /system/bin/cp /data/local/tmp/exploit /system/xbin/exploit

  6. # 然后把su文件復制到系統(tǒng)文件夾
  7. /system/bin/cp /data/local/tmp/su /system/xbin/su

  8. # 使用命令查看其他文件的權(quán)限和擁有者信息
  9. /system/bin/ls -l /system/bin

  10. # 給兩個文件設(shè)置合適的權(quán)限
  11. /system/bin/chmod 755 /system/xbin/exploit
  12. /system/bin/chmod 755 /system/xbin/su

  13. # 給兩個文件設(shè)置合適的擁有者
  14. /system/bin/chown root:shell /system/xbin/exploit
  15. /system/bin/chown root:shell /system/xbin/su

  16. # 此時,su命令就可以嘗試使用了,如果輸出一些幫助信息就是執(zhí)行成功
  17. /system/xbin/su
復制代碼

以下所有的sX都需要替換為shell的前兩個字母

  1. # 如果想要永久保留效果,就需要修改設(shè)備打開初始化時的文件
  2. # /system/bin/ 或者 /system/etc/ 的install-recovery.sX文件是普遍可以的
  3. # 如果你的電視不是G7200_8H87并且想要確認一下,可以使用如下命令查看
  4. /system/bin/cat /init.rc
  5. # 如果發(fā)現(xiàn)存在這兩個文件的句子就說明符合需求
  6. # 如果不存在則可以尋找其他的方案,或者先試一試這兩個文件

  7. # 此處以/system/bin/install-recovery.sX文件為例
  8. # 查看是否存在/system/bin/install-recovery.sX文件
  9. /system/bin/cat /system/bin/install-recovery.sX
  10. # 如果返回No such file or directory則不存在

  11. # 如果/system/bin/install-recovery.sX文件不存在,則執(zhí)行
  12. # 若存在,則忽略這句命令
  13. echo "#!/system/bin/sX" >> /system/bin/install-recovery.sX

  14. # 寫入一個換行,避免出現(xiàn)問題
  15. echo "" >> /system/bin/install-recovery.sX

  16. # 寫入要執(zhí)行的命令
  17. echo "/system/xbin/su -ad &" >> /system/bin/install-recovery.sX

  18. # 再次查看/system/bin/install-recovery.sX文件中的內(nèi)容
  19. # 此時文件末尾應該就是剛才寫入的內(nèi)容了
  20. /system/bin/cat /system/bin/install-recovery.sX

  21. # 如果/system/bin/install-recovery.sX文件不存在,則需要手動設(shè)定權(quán)限和擁有者
  22. /system/bin/chmod 755 /system/bin/install-recovery.sX
  23. /system/bin/chown root:shell /system/bin/install-recovery.sX
復制代碼

以下所有的sX都需要替換為shell的前兩個字母

至此,你的電視就已經(jīng)完美的獲得了永久的Root權(quán)限,可以重啟嘗試一下了。  
為了避免其它應用直接使用這個su命令,我們還可以將`/system/bin/install-recovery.sX`文件改名字避免開機執(zhí)行。
只在需要的使用通過`exploit`將文件名改回來,然后重啟后正常使用`su`命令。

注意:改名字僅限`/system/bin/install-recovery.sX`文件一開始不存在的情況,若是存在就最好只是把開機執(zhí)行的命令注解了。  
雖然老舊的系統(tǒng)存在如此多的問題,但是能避免直接利用最高權(quán)限的應用也是好的。  

使用Root權(quán)限

完成以上的步驟,重啟電視,然后在本機的命令行窗口像之前一樣連接電視:  

  1. # 連接電視IP的ADB
  2. adb connect 192.168.1.100

  3. # 打開電視的命令行界面
  4. adb shell

  5. # 執(zhí)行root用戶切換
  6. su
  7. # 默認用戶前綴一般是 shell@XXXXXX:/ $
  8. # root用戶前綴一般是 root@XXXXXX:/ #
  9. # 如果看到切換為root用戶,并且前綴中以#結(jié)尾,那就要恭喜你成功獲取root權(quán)限了

  10. # 掛載/system分區(qū)為可讀寫
  11. # 然后愉快的精簡系統(tǒng)吧
  12. mount -o remount /system
復制代碼

關(guān)于ADB Root權(quán)限

有一些人會奇怪,為什么有Root權(quán)限了,adb依然無法直接寫入系統(tǒng)文件。  
這是因為adb默認使用的就是最普通的用戶權(quán)限而不是root用戶,沒有寫入系統(tǒng)文件的權(quán)限。  
雖然有adb root命令可以設(shè)置為使用root用戶,但這個僅在debug的開發(fā)版本的系統(tǒng)中有效。  
就算手動在build.prop添加配置,也是無法生效的,因為這個是寫死在boot分區(qū)中的。  
所以獲得Root權(quán)限后,還是需要在電視的命令行界面使用su命令才能切換root用戶,進行高權(quán)限的操作。  

  • 創(chuàng)維G7200_8H87系統(tǒng)精簡優(yōu)化方案

看到這里,如果你成功獲取了Root權(quán)限但是不是創(chuàng)維電視系統(tǒng),就可以退出了。  
如果你是創(chuàng)維G7200_8H87機芯,那么繼續(xù)跟著操作就好。  
如果你是創(chuàng)維其它型號或者版本的電視系統(tǒng),那么請務必**有選擇**地**參考**以下操作。  

以下給出了部分可用的精簡方案,你可以在有Root權(quán)限的基礎(chǔ)上做到更多。

刪除開機廣告以及卸載無用的系統(tǒng)應用

  1. # 在電視命令行窗口,獲取su Root權(quán)限,并掛載/system分區(qū)為可讀寫后執(zhí)行以下命令
  2. # 查看全部安裝的應用
  3. pm list packages

  4. # 以下使用的卸載方法是保留原始文件在系統(tǒng)中,但是不讓其繼續(xù)運行
  5. # 你也可以使用disable-user的方法禁用這些應用
  6. # 但是卸載后應用不會出現(xiàn)在第三方桌面,只是禁用還是可能會出現(xiàn)的
  7. # 只卸載不刪除的目的是為了萬一出問題還能恢復
  8. # 當然你也可以卸載后再去刪除/system/app或者/system/vendor或者/data/app下的文件

  9. # 卸載廣告服務
  10. # 只要卸載了就不會有開機廣告了
  11. # 有可能導致開機啟動的加載頁面會黑屏閃1s
  12. pm uninstall -k --user 0 com.tianci.ad

  13. # 以下應用按需卸載,或者你可以卸載其它不想要的
  14. # 經(jīng)過測試卸載以下應用不會出現(xiàn)嚴重系統(tǒng)問題

  15. # 卸載天氣
  16. pm uninstall -k --user 0 com.icoolme.tv.weather

  17. # 卸載小維智聯(lián)
  18. pm uninstall -k --user 0 com.skyworth.smarthome_tv

  19. # 卸載商城
  20. pm uninstall -k --user 0 com.coocaa.mall

  21. # 卸載卡拉OK
  22. pm uninstall -k --user 0 com.bajintech.karaok

  23. # 卸載語音助手
  24. pm uninstall -k --user 0 com.skyworth.lafite.srtnj.speechserver

  25. # 卸載親朋圈
  26. pm uninstall -k --user 0 com.skyworth.voip
復制代碼

還原卸載的系統(tǒng)應用

如果誤操作卸載了某個應用,可以通過這個方法還原:

  1. # 列出所有已卸載的應用所在的位置,例如com.icoolme.tv.weather
  2. pm list packages -u -f | grep com.icoolme.tv.weather

  3. # 返回的結(jié)果為:package:/system/app/ZuiMeiWeather/ZuiMeiWeather.apk=com.icoolme.tv.weather
  4. # 所以我們可以使用以下命令還原
  5. pm install -r --user 0 /system/app/ZuiMeiWeather/ZuiMeiWeather.apk
復制代碼

替換應用市場

如果你提前通過各種方式安裝了其它的應用市場,則可以直接卸載自帶的應用圈

在電腦本機的命令窗口執(zhí)行以下命令安裝XXX.apk:

  1. adb shell install -r XXX.apk
復制代碼

如果你希望安裝其為一個系統(tǒng)應用可以看后面的教程。

在電視命令窗口執(zhí)行以下命令卸載應用圈:

  1. pm uninstall -k --user 0 com.tianci.appstore
復制代碼

注意:如果卸載了“應用圈”,信號源中的“我的應用”會處于點擊無反應的情況

修改系統(tǒng)文件

假設(shè)你想修改/system/build.prop文件,則可以執(zhí)行以下命令:  

  1. # 在電視命令行窗口操作

  2. # 命令行中查看文件內(nèi)容(可選)
  3. cat /system/build.prop
  4. # 命令行中查看文件權(quán)限和擁有者
  5. ls -l /system | grep build.prop
  6. # 備份文件
  7. cp -a /system/build.prop /system/build.prop.bak

  8. # 在電腦命令行窗口操作

  9. # 將/system/build.prop文件拉取到當前目錄
  10. adb pull /system/build.prop .

  11. # 你可以修改拉取的build.prop文件

  12. # 將build.prop文件推送到/data/local/tmp
  13. adb push build.prop /data/local/tmp/

  14. # 在電視命令行窗口操作
  15. mv /data/local/tmp/build.prop /system/build.prop

  16. # 設(shè)置正確的權(quán)限和擁有者
  17. # 這一步因不同的文件而異,請先確認自己修改的文件需要哪些權(quán)限
  18. chmod 644 /system/build.prop
  19. chown root:root /system/build.prop
復制代碼

安裝一個應用為系統(tǒng)應用

假設(shè)你有一個Launcher.apk想安裝為系統(tǒng)應用,則可以執(zhí)行以下命令:

  1. # 在電腦命令行窗口推送APK
  2. adb push Launcher.apk /data/local/tmp

  3. # 接下來在電視命令行窗口操作

  4. # 打開/system/priv-app文件夾
  5. # 雖然放在/system/app也可以,但是/system/priv-app文件夾下的APP權(quán)限更大
  6. cd /system/priv-app

  7. # 新建一個文件夾Launcher
  8. # 取名隨意,必須英文無空格,不要和其他的文件重復
  9. mkdir Launcher

  10. # 設(shè)置文件夾權(quán)限
  11. chmod 755 Launcher
  12. chown root:root Launcher

  13. # 將APK移動到Launcher/下
  14. mv /data/local/tmp/Launcher.apk Launcher/

  15. # 打開Launcher文件夾
  16. cd Launcher

  17. # 設(shè)置Launcher.apk權(quán)限
  18. chmod 644 Launcher.apk
  19. chown root:root Launcher.apk
復制代碼

重啟電視,就可以發(fā)現(xiàn)這個應用被安裝為系統(tǒng)應用了。

替換默認主頁

替換默認的主頁,首先需要將一個主頁APK安裝為系統(tǒng)應用。  

但是,在創(chuàng)維G7200_8H87上,就算安裝為系統(tǒng)應用也無法通過按主頁鍵回到指定的主頁APP。  
也不會彈出任何要求選定默認主頁APP的選項。  
在此情況下,若是直接禁用或者卸載默認的主頁APP則會導致主頁完全無法打開的問題。  

本人在查看了許多系統(tǒng)文件后,在`/data/data/com.tianci.setting/shared_prefs/tcsetting.xml`文件中找到了解決方案。  
這個文件定義了系統(tǒng)的配置文件所在的位置,即`<string name="preSavedPcfgPath">/system/pcfg/8H87_G7200/config</string>`。

打開這個`config`文件夾,就可以發(fā)現(xiàn)許多配置文件了。  
找到`general_config.xml`文件,拉取到本地進行修改。  

  1. # 在電腦命令行窗口
  2. # 拉取配置文件到本地的當前文件夾
  3. adb pull /system/pcfg/8H87_G7200/config/general_config.xml .
復制代碼

將其中的:  
  1. <config name="DEFAULT_HOMEPAGE" value="com.tianci.movieplatform/com.coocaa.homepage.vast.HomePageActivity" />
復制代碼

修改為你想要的主頁的啟動包名和Activity名稱。  

本人使用了Emotn UI,所以修改為:  
  1. <config name="DEFAULT_HOMEPAGE" value="com.oversea.aslauncher/com.oversea.aslauncher.ui.main.MainActivity" />
復制代碼

最后保證有原始文件備份,將這個文件替換過去,保證權(quán)限和擁有人正確,重啟電視即可生效。

  1. # 在電腦命令行窗口
  2. # 推送本地文件到緩存目錄
  3. adb push general_config.xml /data/local/tmp

  4. # 在電視命令行窗口操作
  5. # 備份并設(shè)置新的配置文件
  6. mv /system/pcfg/8H87_G7200/config/general_config.xml /system/pcfg/8H87_G7200/config/general_config.xml.bak
  7. mv /data/local/tmp/general_config.xml /system/pcfg/8H87_G7200/config/general_config.xml

  8. # 最后設(shè)置權(quán)限和擁有人
  9. chmod 644 general_config.xml
  10. chown root:root general_config.xml

  11. # 重啟電視
  12. reboot
復制代碼

重啟電視后可以打開任意APP,點擊主頁按鈕,就能返回到自定義的主頁APP了。  
確保生效后就可以卸載原來默認的主頁APP了。  

  1. # 在電視命令行窗口操作
  2. # 卸載默認主頁
  3. pm uninstall -k --user 0 com.tianci.movieplatform
復制代碼

目前已知存在的問題:由于第三方主頁沒有緩沖加載界面,開機后首次打開可能會黑屏1~2s。

其他創(chuàng)維系統(tǒng)配置

創(chuàng)維電視系統(tǒng)在`/system/pcfg`中存放了許多有用的配置文件。  
這些都可以進行修改,并通過重啟測試其是否有效。  

例如,`general_config.xml`文件中還可以直接通過配置關(guān)閉開機廣告。  
例如,`bootQueue.xml`文件中定義了開機啟動的應用隊列。  

在保證有原始文件備份,權(quán)限和擁有人正確的情況下都可以嘗試修改。

禁用開機Root權(quán)限

如果電視上所有的操作都完成了,想要關(guān)閉Root權(quán)限也很簡單:

以下所有的sX都需要替換為shell的前兩個字母
  1. # 在電視命令行窗口操作
  2. # 此處以之前不存在/system/bin/install-recovery.sX為例
  3. # 更改開機啟動的腳本文件名稱,重啟后就沒有Root權(quán)限了
  4. mv /system/bin/install-recovery.sX /system/bin/install-recovery.sX.bak

  5. # 如果想再次開啟su命令,由于我們已經(jīng)保存了一份/system/xbin/exploit
  6. # 再次執(zhí)行教程步驟,然后將文件名改回來或者直接執(zhí)行以下命令就可以使su命令可用
  7. /system/xbin/su -ad &
復制代碼

  • Extra

如果由于網(wǎng)絡問題無法下載到部分資源,可以查看:

鏈接:https://pan.baidu.com/s/1uuyeM-UD2nS16kILrYZ7Ig
提取碼:njgk




本文原文發(fā)表于個人博客: 一種老舊安卓電視通用Root與優(yōu)化方案-以創(chuàng)維G7200_8H87為例

上一篇:天地玄黃,余音繞梁,NANK-OE cc是怎么做到魚與熊掌兼得的?
下一篇:海信海信85e7g在系統(tǒng)界面卡頓其他界面不卡
推薦
發(fā)表于 2023-12-19 16:20 | 只看該作者 | 來自陜西
感謝XFY9326,感謝XDA,愿正義長存。褲=開40K5C,5s58機芯,希望能成功~~~
回復 支持 0 反對 1

使用道具 舉報

沙發(fā)
發(fā)表于 2023-9-20 22:09 | 只看該作者 | 來自浙江
厲害啊
回復 支持 反對

使用道具 舉報

板凳
發(fā)表于 2023-9-20 22:09 | 只看該作者 | 來自江西
很需要這個內(nèi)容
回復 支持 反對

使用道具 舉報

地板
發(fā)表于 2023-9-28 07:54 | 只看該作者 | 來自重慶
歷害,但我還沒有試
回復 支持 反對

使用道具 舉報

5#
發(fā)表于 2023-11-4 17:56 | 只看該作者 | 來自湖北
先試試看
回復 支持 反對

使用道具 舉報

6#
發(fā)表于 2023-11-18 18:48 | 只看該作者 | 來自新疆
gxfx
回復 支持 反對

使用道具 舉報

7#
發(fā)表于 2023-12-3 17:07 | 只看該作者 | 來自河北
試試看
回復 支持 反對

使用道具 舉報

8#
發(fā)表于 2023-12-11 23:16 | 只看該作者 | 來自江蘇
感謝分享啊,大佬,學習一下了,我家也是創(chuàng)維電視啊
回復 支持 反對

使用道具 舉報

9#
發(fā)表于 2023-12-12 09:38 | 只看該作者 | 來自四川
gs
回復 支持 反對

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

Archiver|新帖|標簽|軟件|Sitemap|ZNDS智能電視網(wǎng) ( 蘇ICP備2023012627號 )

網(wǎng)絡信息服務信用承諾書 | 增值電信業(yè)務經(jīng)營許可證:蘇B2-20221768 丨 蘇公網(wǎng)安備 32011402011373號

GMT+8, 2024-12-22 16:54 , Processed in 0.088310 second(s), 15 queries , Redis On.

Powered by Discuz!

監(jiān)督舉報:report#znds.com (請將#替換為@)

© 2007-2024 ZNDS.Com

快速回復 返回頂部 返回列表