|
我家電視是小米電視3 我一直想用電腦或其他方式控制電視,但是因為他沒有紅外線可以送 所以很麻煩 - x, J0 b. w( M
後來發現可以透過api的方式來操作小米電視 這太贊了 首先 你要先知道你的電視連的ip是多少 例如192.168.2.55 然後 我不知道需不需要開啟adb(因為我的有開啟 開啟方式就是去你的設定->版本號 連續多點好幾次之後 你就會有開發者模式,之後你在其他的分頁就可以看到adb功能可以讓你開了)
5 [9 n1 H2 r* M: `; p* a好 如果你ping的道你電視 你就先搞定一大部分了 https://github.com/spocky/mireco 不過看了看code 其實他也只是去調用小米自己的api而已,且也不難 乾脆不用她(是可以參考他一下拉)
" C& H: z- @, ^& |5 }4 X. h" _調用方式很簡單 取得電視狀態(這裡ip請記得換成你家電視ip) http://192.168.2.55:6095/request?action=isalive 取得電視音量 http://192.168.2.55:6095/general?action=getVolum
% i' P4 x$ A) W# f按下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應該有不少方法教學可以看
$ G3 A0 E4 l+ _& N3 L6 g切到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
9 M2 M1 V. Q t( N. V& h
1 N; q0 e/ I. Jhttp://%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 comments
I* ~' D+ N+ P* c6 q czde表示:" P/ X& R) n4 {: `, a( {. h5 i; i
2020 年 03 月 04 日10:35:12
$ ?1 F4 k8 |' E1 g' R- T, x感谢老哥的分享,我在这里分享一下音量控制方法。参照了另一位老哥的 音量控制参照[这位老哥](https://blog.andiedie.cn/posts/cb98/)反编译后的控制参数* d2 i! W2 k& V. m$ Q7 p
具体使用方法:% B7 T! |: Z: h& N i/ E* h7 v! W/ S
http://{{{ip}}}:6095/general?action=setVolum&volum={{{volume}}}&ts={{{time_tag1}}}&sign={{{md5}}} ip:为小米电视或例子的IP地址
7 l- n9 y8 @# b7 ]! ^' \volume:需要设定的音量值8 [ O; D8 P: g) B8 `
time_tag1:时间标签(这个值应该是可以随意设,最少5位?)
& j) I* B, A- [" e. e5 smd5:这个最重要,是验证码,下面为该值的计算方法。 md5=md5(mitvsignsalt&volume&mac&time_tag)
! {) u- u/ J; z0 umitvsignsalt:固定值9 o0 [8 X4 |' B, b. A
volume:设定的音量
, O$ e' N9 I1 O; j7 umac:以太网口mac地址(不是wifi)
/ s, z/ c8 E" ?0 G" fhttp://ip:6095/controller?action=getsysteminfo
7 \7 @7 z6 h Y& b可通过上面方法获取or什么其它方法1 r; t7 V$ x" F7 `" k/ x7 e
time_tag2:取time_tag1的后5位数(我试过随便编5位数就可以)
% v6 y- ]) H+ m6 J3 f然后计算他们的MD5值:
( G. | |6 w1 T: X8 I% b* v$ ^2 _: ^9 w
! L& S0 u& r( n
# l L6 G" R6 d2 s! g |