我家電視是小米電視3 我一直想用電腦或其他方式控制電視,但是因為他沒有紅外線可以送 所以很麻煩
1 `+ Y7 c6 l* A: F8 ]: e1 Z- F後來發現可以透過api的方式來操作小米電視 這太贊了 首先 你要先知道你的電視連的ip是多少 例如192.168.2.55 然後 我不知道需不需要開啟adb(因為我的有開啟 開啟方式就是去你的設定->版本號 連續多點好幾次之後 你就會有開發者模式,之後你在其他的分頁就可以看到adb功能可以讓你開了)
9 W+ f3 R5 W% o/ Z3 a0 s1 X好 如果你ping的道你電視 你就先搞定一大部分了 https://github.com/spocky/mireco 不過看了看code 其實他也只是去調用小米自己的api而已,且也不難 乾脆不用她(是可以參考他一下拉) / k5 q: R" o( I! m
調用方式很簡單 取得電視狀態(這裡ip請記得換成你家電視ip) http://192.168.2.55:6095/request?action=isalive 取得電視音量 http://192.168.2.55:6095/general?action=getVolum
/ \8 z! ]& W; }6 {+ c! M( I按下menu按鈕 http://%s:6095/controller?action=keyevent&keycode=%s 例如 http://192.168.2.55:6095/controller?action=keyevent&keycode=menu 開啟指定的app http://%s:6095/controller?action=startapp&&type=packagename&packagename=%s 例如我要開啟沙發桌面,而沙發桌面的packagename就是com.shafa.launcher http://192.168.2.55:6095/controller?action=startapp&&type=packagename&packagename=com.shafa.launcher packagename要怎知道這就又是另外一回事了,你有apk檔時,去google應該有不少方法教學可以看 3 G' i3 N g* r4 {
切到hdmi頻道 http://DEVICE_IP:6095/controller?action=changesource&source=%s 例如 http://192.168.2.165:6095/controller?action=changesource&source=hdmi1 http://%s:6095/general?action=getVolum http://%s:6095/general?action=setVolum&volum=%d&ts=%s&sign=%s http://%s:6095/general?action=modifyDeviceName&name=%s&ts=%s&sign=%s http://%s:6095/generalA?action=systemCleanInfo : {: K2 a* }. ~3 E
; T* j! c& F% d) f8 Whttp://%s:6095/controller?action=play&type=video&mediaid=%d&cpsrc=%s&cpid=%s&ci=%d&prefersource=%d&clientname=%s&apikey=%s&ts=%s&sign=%s http://%s:6095/controller?action=getinstalledapp&count=999&changeIcon=1 http://%s:6095/controller?action=getsysteminfo http://%s:6095/account?action=getState http://%s:6095/account?action=addNew&data=%s 2 comments0 |' S& t7 h% _: n% a
czde表示:
! L- h0 o/ x$ m7 [2020 年 03 月 04 日10:35:12
' F3 j* x% N, Q4 x感谢老哥的分享,我在这里分享一下音量控制方法。参照了另一位老哥的 音量控制参照[这位老哥](https://blog.andiedie.cn/posts/cb98/)反编译后的控制参数
i3 o4 d8 S, H( |5 W+ g r具体使用方法:
: a3 B: }1 X9 [# r3 B# W4 Mhttp://{{{ip}}}:6095/general?action=setVolum&volum={{{volume}}}&ts={{{time_tag1}}}&sign={{{md5}}} ip:为小米电视或例子的IP地址+ p, X3 O8 w9 Y/ O, @8 B; u6 p5 W
volume:需要设定的音量值3 ~: ]+ U% w' Z$ k, A
time_tag1:时间标签(这个值应该是可以随意设,最少5位?)* L' k( d4 @% }5 g) S$ z
md5:这个最重要,是验证码,下面为该值的计算方法。 md5=md5(mitvsignsalt&volume&mac&time_tag)/ Y- l2 f2 C8 k/ p( I
mitvsignsalt:固定值
1 L3 x1 A' c$ t' _. f: i8 ^volume:设定的音量
1 G: P% J. |& i7 g3 Dmac:以太网口mac地址(不是wifi)
" @5 I7 g# |1 R$ @2 W# W4 _& B( }http://ip:6095/controller?action=getsysteminfo& [4 g- c, Y9 W1 }4 T9 V9 T
可通过上面方法获取or什么其它方法, @3 f5 x: T: x% e$ m
time_tag2:取time_tag1的后5位数(我试过随便编5位数就可以)
1 p# _: @/ i7 B k然后计算他们的MD5值:
& H. {. }4 `; p1 {3 F, Y- h- [/ S8 t5 u5 U
3 A9 D. ?# Y' x. ?# Y6 x6 \. G- r
6 G) e) q% m' z* L9 [0 j3 F |