最近買了小米手環5,下載了小米穿戴app,發現自帶商城的錶盤都不太喜歡,就想換第三方的錶盤,去網上搜索更換的辦法。搜到一個辦法以下:
下載兩個app,一個是 Mi Band 5 – WatchFace for Xiaomi Mi Band 5, 另外一個就是小米運動。而後就能夠直接在 Mi Band 5 app 裏選擇喜歡的錶盤,再利用小米運動app更新到錶盤了。但我我的不喜歡這種方法,雖然簡單,但小米運動app相對於小米穿戴app來講太冗餘了,因此就去網上查找如何利用小米穿戴更換錶盤的辦法。結果很幸運,在CSDN找到一篇文章,已經有其餘網友經過小米穿戴app更換錶盤成功了,原帖地址以下:
https://blog.csdn.net/chenzhuyu/article/details/107656003
做者id是:ChenZhuYu
裏面介紹了原理,我在此複述一下。apache
使用電腦進行網頁代理劫持,將
http://cdn.cnbj1.fds.api.mi-i..._XXXX.bin
劫持到本地計算機環境,並將對應bin替換爲錶盤文件windows
智能穿戴自身更換錶盤邏輯:api
1. 檢測自身data文件夾是否存在
2. 檢測/Android/data/com.xiaomi.wearable/files/WatchFace是否存在
3. 從新從網絡下載瀏覽器
其中,第二步會對文件進行檢測,若是文件MD5不正確會斷定爲不存在,從新進行下載,所以只能在第三步進行操做網絡
原做者的環境是MacOS,Charles,MAMP;用MAMP創建本地服務,用Charles抓包,我是windows環境,因此選取的工具爲:Wampserver創建服務,Fiddler 用來抓包。app
Wampserver下載地址:https://www.wampserver.com/en/
版本:WAMPSERVER 64 BITS (X64) 3.2.0工具
Fiddler下載地址:https://www.telerik.com/fiddler
版本:Fiddler Everywhere 1.0.1ui
1.安裝WAMPSERVER
安裝完成並啓動服務以後,在瀏覽器輸入 localhost 查看是否可以進入home頁面,以下圖:
而後確保手機和電腦處於同一局域網內,使用手機瀏覽器訪問電腦ip,查看可否進入home頁,若是不能,通常是兩個操做:
(1).左鍵點擊右下角服務欄的WAMP,依次選擇Apache,將http.conf和httpd-vhosts.conf 中的 Require all denied和Require local改成Require all granted
(2).依次打開:控制面板--Windows Defender防火牆--高級設置--入站規則--右側的新建規則,在新建入站規則中依次選擇:端口--TCP 特定本地端口80(或apache中設置的開放端口),下一步後添加個規則名稱便可。url
2.安裝Fiddler
安裝好 Fiddler 以後,配置對手機進行抓包,依次點擊 Setting, connections,配置端口,勾選兩個選項,點擊save 保存。
spa
3.手機配置代理
選擇跟電腦處於同一局域網的wifi,配置代理,ip爲電腦的ip,端口是在fiddler配置的端口。
4.下載錶盤文件並部署到WAMP
(1).從 https://amazfitwatchfaces.com 下載喜歡的mi5手環的錶盤;
(2).在手機刪除/Android/data/com.xiaomi.wearable/files/WatchFace 下面的全部文件,並在APP刪除所有錶盤;
(3).在小米穿戴中下載一個錶盤並記住,去 /Android/data/com.xiaomi.wearable/files/WatchFace 下查看新增的文件名並複製下來,假設名字叫 A;
(4).打開WAMP的安裝目錄www文件夾,建立新的文件夾plato-article,例如我安裝在D盤,最終的路徑就是D:/wamp64/wwAw/plato-article,將下載的第三方錶盤重命名爲 developer_A.bin,複製到 D:/wamp64/wwAw/plato-article下面, A 就是步驟三中記錄的錶盤名稱,
(5).在C:/Windows/System32/drivers/etc/hosts中增長記錄,綁定 127.0.0.1 cdn.cnbj1.fds.api.mi-img.com
說明:cdn.cnbj1.fds.api.mi-img.com 是小米手環錶盤的同步地址,是http請求,因此不用在手機安裝fiddler證書
(6).而後使用電腦或手機瀏覽器訪問 http://cdn.cnbj1.fds.api.mi-i... ,查看是否可以彈出下載提示,若是能則說明部署成功。
5.使用小米穿戴app同步第三方錶盤
(1).手機清除後臺重啓小米穿戴,保證MAMP的host指向生效;
(2).刪除/Android/data/com.xiaomi.wearable/files/WatchFace 下面的全部文件;
(3).在小米穿戴中從新下載以前記住的錶盤,手機顯示下載時,若是能夠在 fiddler 中過濾 url cdn.cnbj1.fds.api.mi-img.com 看到手機發送的請求,說明小米穿戴會把第三方的錶盤同步下來。
(4).當手環提示錶盤同步成功時就能在小米穿戴和手環上看到,記錄名爲A的錶盤已經被替換成了第三方錶盤。