小米手機Root的過程及解決Unable to get view server version from device問題


注:解決Unable to get view server version from device,也要先進行Root,以下先介紹root過程

一、小米手機Root過程

1.首先要在手機上設置小米賬號,位於設置--小米賬號

2.登錄http://www.miui.com/,在網頁的右上角有一個“解鎖”菜單,如下圖紅色方框

                                                            圖1

3.用在手機上設置的賬號或者生成的用戶ID及密碼登錄,申請小米賬號解鎖權限,3天左右可以收到短信

4.收到短信后,登錄短信中提示網址http://www.miui.com/unlock/,下載解決工具,如下圖

                      圖2

5.解壓現在下來的解鎖包,文件目錄如下

                      圖3

 

6.運行MiFlashUnlock.exe,登錄賬號,如下圖

                      圖4

7.登錄成功后,該工具會先驗證賬戶是否已經授權解鎖,驗證成功后,進入以下界面

                      圖5

 

8.按照圖2中下方的紅色方框標記的步驟進行操作,然后等待解鎖

9.解鎖成功后,重啟手機,在MiFlashUnlock.exe界面會有reboot命令,可以直接點擊,也可以長按開機鍵

10.進入手機到安全中心--授權管理界面,點擊Root權限管理,然后系統自動進行Root

           

                  圖6

 

這樣小米手機的Root過程就完成了

二、下面再說一下解決Unable to get view server version from device的問題

  實際上,一旦小米手機Root成功,Unable to get view server version from device的問題也就意味着已經解決了。

  在Dos窗口輸入命令 adb shell service call window 3

  返回結果:Result: Parcel(00000000 00000000 '........'), 意味着View Server沒有啟動

  執行以下命令綁定端口並啟動View Server adb shell service call window 1 i32 4939

  返回值:Result: Parcel(00000000 00000001 '........') 意味着View Server啟動,這時自動化測試工具,MonkeyRunner等就可以訪問小米手機的UI控件了。

三、adb shell service命令說明

  adb shell service可給Android 服務傳消息,

  具體用法如下: Usage: service [-h|-?]       

  service list        

  service check SERVICE        

  service call SERVICE CODE [i32 INT | s16 STR] ... 

  Options:   

     i32: Write the integer INT into the send parcel.    

    s16: Write the UTF-16 string STR into the send parcel.

  adb shell service list列出Andorid系統提供所有service 例如:

    1.綁定port啟動ViewServer adb shell service call window 1 i32 $port

    2.停止ViewServer adb shell service call window 2

    3.檢查ViewServer是否正在運行 adb shell service call window 3


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM