root一個Android 4.4電視盒,安裝自己的媒體App和技術人喜歡的工具
舊的某牌子的電視盒子,設計給僅觀看某些節目用的,Android 4.4,效能就那樣,空間倒是可以裝東西進去。
有網線口和Wifi,兩個USB插口(設計給插U盤放電影,但也可以插滑鼠鍵盤。弄的過程中滑鼠鍵盤還是需要準備的,無線的最好,畢竟在客廳電視前)。一個HDMI輸出,一個普通音訊輸出。
這裡記錄下root後安裝的家庭媒體相關的App,還有一些技術人喜歡用的工具類App(開源為主)。
root過程
root過程因機而異。此處主要為記錄,看客也可以參考。
-
按照網上查的方式開啟網路adb。過程略
-
adb connect <ip>
連上後,直接使用adb root
取得root許可權。看來它的ROM是留了這個後門的。 -
安裝root管理的App,給其他App可申請root許可權
- 準備好
superuser.apk
(我用的是com.koushikdutta.superuser,原始碼) adb shell mount -o rw,remount /system
- 解壓
superuser.apk
,把assets/armeabi/su
放/system/xbin/su
,並chmod 755 /system/xbin/su
- 安裝
superuser.apk
- 複製
/data/app/
下的superuser.apk
到/system/app/
- 使
/system/xbin/su --daemon &
成為開機自動執行的一條命令。我找了一個原廠家的啟動shell指令碼檔案,加在尾部。 - 重啟
- 準備好
root後的基本設定和技術工具
-
安裝一個適合Android TV的桌面Launcher。這裡選當貝桌面(2.1.3.1)
然後裝一個com.twsitedapps.homemanager,用以選擇預設的桌面Launcher。
但是如果將來某處不幸無法回到當貝桌面了,也可以用
adb shell am start -n com.dangbei.tvlauncher/com.dangbei.tvlauncher.IndexActivity
命令運行當貝。 -
使選單鍵可用
原廠設定了選單鍵為開啟它的入口App,因此選單鍵原有的功效都失效。
把我它的預設App直接禁用掉,反正我不用它。查得它原廠預設入口App的包名後
adb shell pm block 包名 adb shell pm disable 包名 adb shell pm disable-user 包名
(這個過程也可以裝com.dkanada.openapk後點滑鼠搞定)
好了,遙控器上的選單鍵成為真正Android的選單鍵了
-
嘗試清除一些廠家的預裝App。崩潰~
發現廠家設定了保護,幹掉一些原廠App後,會自動恢復原廠ROM。所以,只禁用掉一個入口App就好了,其他給它留著吧
-
安裝SSH server。在SSH中開關adb
adb沒有密碼,一直開著不夠安全。裝一個可以設定密碼的SSH server(這裡用了
net.xnano.android.sshserver
)。在SSH登入上去後可以再用命令去開關adb# 關閉adbd setprop service.adb.tcp.port -1 killall adbd # 開啟adbd setprop service.adb.tcp.port 5555 (也可以換個非標準埠,防惡意掃描) killall adbd adbd &
-
終端模擬器
-
F-Droid客戶端
裝個第三方的老介面版本的eu.bubu1.fdroidclassic。官方的對這個舊盒子來說吃不消。
禁用原來的源後新增清華源(目前測試不能用https)
http://mirrors.tuna.tsinghua.edu.cn/fdroid/repo/ http://mirrors.tuna.tsinghua.edu.cn/fdroid/archive
指紋填
43238D512C1E5EB2D6569F4A3AFBF5523418B82E0A3ED1552770ABB9A9C9CCAB
-
開關網路adb的App
com.matoski.adbm(或com.github.sryze.wirebug,或siir.es.adbWireless)。有時可以免去進去設定介面開adb的麻煩
-
分App代理
org.proxydroids
可以做到,如果你想讓一些App走某socks路線上網 -
控制哪個app禁止上網
AFWall+(dev.ukanth.ufirewall)就不錯,得找舊版本2.9.9支援Android 4 的
家庭媒體
-
Kodi這個播放器具足了服務端和客戶端的功能,nfs、smb、ftp、http這些區域網媒體協議都支援。得找舊版本,最後支援Android 4 的是16版本
-
VLC。大家都知道。
-
DLNA(upnp)播放端(接收端)。F-Droid上就有幾個支援這個功能的小App
操作電視的旁門左道
畢竟是TV盒子,不可能一直接著鍵盤滑鼠,遙控器也很費力。並且有些盒子直接砍掉了一些Android介面。(用de.szalkowski.activitylauncher說不定能發現一些隱藏入口)
對Android命令熟悉的可以不看這部分。
-
在電腦上檢視和操作Android 4.4螢幕
著名scrcpy只支援>=Android 5。
這裡可以用這個電腦端的AndroidScreencast(開源, java),都是通過USB除錯介面(也就是adb)通訊,不過這樣很卡。
-
adb啟動App
adb shell am start -n com.helloshan.demo/.MianActivity
你需要知道App的包名和主活動的名稱
-
adb開啟網址
adb shell am start -a android.intent.action.VIEW -d http://xxxxxxx
-
adb輸入文字
adb shell input text hello
-
adb模擬按鍵/輸入
adb shell input keyevent <keycode> 3 HOME 鍵 4 返回鍵 24 增加音量 25 降低音量 26 電源鍵 64 開啟瀏覽器 82 選單鍵 85 播放/暫停 86 停止播放 87 播放下一首 88 播放上一首 126 恢復播放 127 暫停播放 176 開啟系統設定 187 切換應用 223 系統休眠 224 點亮螢幕
-
遠端鍵盤輸入法
-
WiFi鍵盤 com.volosyukivan
-
ADB鍵盤 com.android.adbkeyboard
-
Telnet鍵盤 de.onyxbits.remotekeyboard.
另外,
-
開啟輸入法設定介面
adb shell am start -a android.settings.INPUT_METHOD_SETTINGS
-
列出輸入法
adb shell ime list -a (多) adb shell ime list -s (少)
-
啟用輸入法
adb shell ime enable xxxxx/xxxxx
-
選擇輸入法
adb shell ime set xxxxx/xxxxx
-
或者用Keyboard Switcher com.kunzisoft.keyboard.switcher
-
-
用KDE Connect在另一個Android手機(或電腦)上用鍵盤控制電視
手機(也有電腦版的)和電視上裝上同一個App,配對。
-
在電視盒上選擇KDE Connect輸入法
並在它的鍵盤彈出時,點下面的設定,去掉“只有在輸入時接收遠端按鍵”
-
手機是控制端,不作受控端
在手機配對後,外掛頁面,去掉所有,只留下“電視遙控”和“遠端輸入”兩個
手機上可以安裝 和 ,這兩個鍵盤能提供更多按鍵,如ctrl、tab、alt、方向鍵、更方便的常用符號等等。
-
-
(未成功)用Keyboard/Button Mapper設定快捷鍵,可以用來啟動App或其他動作
在我的盒子上未成功,無法錄製trigger