1. 程式人生 > >安卓系統和ADB以及AT除錯埠

安卓系統和ADB以及AT除錯埠

Android是谷歌基於Linux核心開發的移動端作業系統,廣泛應用於當前的智慧手機,智慧手機在硬體上實質是嵌入式系統,因為蜂窩通訊涉及比較複雜的基帶處理,所以除了主控晶片之外最為重要的控制核心就是基帶晶片,ADBAndroid Debug Bridge的縮寫,是安卓系統通過USB介面提供的除錯埠,其驅動稱為ADB驅動,安裝ADB驅動後在系統設定中的開發者選項裡勾選USB Debugging,控制本就可以通過驅動模擬出該除錯埠。

這裡寫圖片描述

AT埠則是基帶模組為外部控制命令預留的接收埠,一般還會預留基帶處理log的輸出埠,AT輸入以及log輸出埠既可以由主控晶片即執行其上的系統訪問也可以通過USB

介面模擬進行外部輸入輸出,安裝手機裝置驅動後一般還需要進入工廠模式開啟相應的埠開關,工廠模式進入方法以及埠開關不同廠商均有差異,如Oneplus手機需要在號碼盤鍵入*#801#即可進入工廠模式。

P.S. *#*#4636#*#*用於檢視小區資訊

這裡寫圖片描述

開啟相應的埠開關控制本就可以通過驅動模擬出對應的AT埠和串列埠,配置對應的波特率即可使用串列埠通訊協議進行訊息互動。

這裡寫圖片描述

因為智慧手機的嵌入式系統本質,因此軟體層面上也符合計算機系統的基本原理,上電啟動後會先引導BootLoader,預設BootLoader會直接載入系統分割槽裡的核心,也可以選擇引導recovery映象進入恢復模式,一般各智慧手機廠商會通過電源鍵和上下音量鍵的不同組合來激發手機上電後進入的模式,更一般的可以通過adb

命令進行控制。

ADB Driver Installer + Android SDK Platform Tools

通過USB連線手機和控制本,安裝ADB驅動後開啟USB除錯選項。

這裡寫圖片描述

開啟終端介面進入到SDK平臺工具目錄下,目前常用的就是adbfastboot工具,adb用於systemrecovery級別的除錯,fastboot用於BootLoader級別的除錯。

fastboot devices
fastboot oem unlock 

fastboot flash system system.img
fastboot flash persist persist.img
fastboot flash cache cache.img fastboot flash userdata userdata.img fastboot flash boot boot.img fastboot flash recovery recovery.img fastboot boot twrp-3.2.1-0-enchilada.img fastboot reboot
adb devices
adb -s <device_id> xx
adb reboot 
adb reboot bootloader 
adb reboot recovery
adb install -r apk_dir
adb pull /sdcard/screen.png hello.png
adb push iperf /sdcard/

adb shell settings put global airplane_mode_on 1
adb shell settings put global airplane_mode_on 0
adb shell settings get global airplane_mode_on
adb shell input keyevent 26
adb shell input keyevent 67
adb shell input tap 1000 550
adb shell input swipe 540 1900 540 1000
adb shell am start com.magicandroidapps.iperf/com.magicandroidapps.iperf.iperf
adb shell input text "iperf -u -c 10.163.200.98 -l 1370 -t 4900 -i 1 -p 9001 -b 200M"
adb shell am force-stop com.magicandroidapps.iperf
adb shell screencap -p /sdcard/screen.png
adb shell dumpsys window displays

例項:OnePlus Root + Iperf移植

1. OEM Unlock

進入手機設定介面在開發者選項中勾選OEM Unlocking,注意Oneplus手機的Developer Options需要在About Phone裡連續敲擊Build number才能啟用顯示,然後敲入adb reboot bootloader進入BootLoader模式,在該模式下使用fastboot敲入fastboot oem unlock進行BootLoaderunlock,這樣就才可以進行接下來映象的燒寫操作,Unlock之後系統會重置,因此需要在系統中重新啟用開發者選項以及開啟USB除錯。

2. TWRP Recovery Flash

下載TWRP對應手機型號的映象,然後重新進入BootLoader模式,1+5手機使用命令fastboot flash recovery twrp-3.2.2-0-20180721-codeworkx-cheeseburger直接燒寫Recovery映象,然後在BootLoader介面內選擇進入Recovery mode即可啟動TWRP1+6手機不在使用單獨的Recovery分割槽,因此使用命令fastboot boot twrp-3.2.3-0-enchilada.img直接引導進入TWRP

這裡寫圖片描述

3. Push Magisk & Iperf

Magisk用於Android系統提權root,下載最新版本的zip包於本地,Iperf工具用於網路灌包排查速率問題,目前Android平臺下只有APK沒有命令列版本,因此需要使用原始碼進行平臺移植編譯,具體流程在此不在涉及。在Recovery模式下使用adb命令將MagiskIperf傳送至sdcard內。

adb shell mkdir /sdcard/root
adb push Magisk-v16.7.zip /sdcard/root
adb push iperf /sdcard/root
adb shell ls -al /sdcard/root

4. TWRP Install Magisk

TWRP介面上使用Install安裝Magisk映象,完成後reboot進入系統後可以看到Magisk APP已經安裝,使用adb shell進入命令列,敲擊命令su進行提權在手機介面彈出的Magisk Shell Granted視窗點選Forever即成功,在命令列使用id命令可以看到當前的使用者已經變成了root

這裡寫圖片描述

5. system, root re-mount

因為系統中的分割槽預設都是隻讀掛載因此為了將iperf移植到/system/bin目錄下並賦予可執行許可權就必須進行分割槽的可讀重掛載。

cat /proc/mounts | grep system
cat /proc/mounts | grep root

mount | grep root
mount | grep system

mount -o remount,rw rootfs /
mount -o remount,rw /dev/block/platform/soc/1da4000.ufshc/by-name/system /system
mount -o remount,rw /dev/block/sde21 /system

cp /sdcard/root/iperf /system/bin/
chmod 755 /system/bin/iperf

例項:AT口除錯

安裝有裝置驅動的控制本上會模擬出AT埠,可以看到埠號以及波特率,通過這些資訊就可以通過串列埠工具進行連線。

這裡寫圖片描述

在視窗中敲入AT回車顯示OK即表示互動正常,不同廠商AT命令有差異。

這裡寫圖片描述

相關推薦

系統ADB以及AT除錯

Android是谷歌基於Linux核心開發的移動端作業系統,廣泛應用於當前的智慧手機,智慧手機在硬體上實質是嵌入式系統,因為蜂窩通訊涉及比較複雜的基帶處理,所以除了主控晶片之外最為重要的控制核心就是基帶晶片,ADB是Android Debug Bridge的縮寫

整理系統自帶分享以..方式開啟的程式碼

分享檔案: intent = new Intent(Intent.ACTION_SEND); intent.setType("*/*"); intent.putExtra(Intent.EXTRA_STREAM, Uri.parse(path));

未來系統說再見,華為新手機系統測試、體驗中!

大家都知道,華為已經有自己的海思麒麟晶片了,並且經過這麼多年的研發麒麟的引數已經成為一線處理器。對於華為來說,成為全球智慧手機廠商前三多多少少也有處理器的原因。那麼,大家是否有想過如果華為成為自己研發處理器的公司,自已研發系統的公司,是不是能夠成為硬體軟體一體的生態王者? 好訊息是,華為已經開始測試新的

系統5.1.0系統8.1.0下接收廣播的不同

靜態廣播 。。。。 低版本安卓系統5.1.0廣播方式 Intent mIntent=new Intent("com.activity.MainActivity"); //這裡的intent(action...) 對應的是一個自定義的唯一字串,用來與接收廣播端一一對應。 c

判斷ios系統,pc手機端

判斷ios和安卓系統 var u = navigator.userAgent, app = navigator.appVersion; var isAndroid = u.indexOf(

字型兩端對齊,相容ios系統

這是小編要的效果: 在安卓和ios系統下面都可以實現效果 HTML: <div class="text-align"> <p>姓名</p> <p>

系統新增字型庫修改系統預設的字型

由於專案需要,需要將第三方提供的.ttf字型檔檔案編譯至系統原始碼中,在百度上找了好久,都沒有找到想要的,最後還是Google解決了問題,這裡作下記錄。 (一)首先說怎麼把字型庫新增到裝置 其實Reference 中介紹的方法,已經非常簡單明瞭,無需贅述,但這裡還是

android使用webview上傳檔案(支援相簿拍照),支援最高6.0系統(改進版)

首先學習 http://blog.csdn.net/woshinia/article/details/19030437 對input file的支援1.注意 mUploadMessage.onReceiveValue(Uri.parse("")); 必須得到呼叫,無論使用者是否選了圖,否則會出現再點選不響應

iosangularjs相互調用解決首次調用ios傳遞標題失敗的問題

catch ini angualrjs 全局 index als ole ons 客戶 1.angular 調用客戶端方法放在 try catch中 try { js_invoke.sh

如何將TS源流重新封裝並通過P2P協議傳輸在終端蘋果終端播放

ts p2p 直播 什麽是TS流TS流(TransportStream)即在MPEG-2系統中,由視頻,音頻的ES流和輔助數據復接生成的用於實際傳輸的標準信息流稱為MPEG-2傳送流。根據傳輸媒體的質量不同,MPEG-2中定義了兩種復合信息流:傳送流(TS)和節目流(PS:ProgramStrea

系統下的多線程斷點下載實現

exc 源代碼 app 內存卡 linear 移植 getc exists see 近期研究多線程下載,寫了個demo。整理下來,或許會對別人有幫助。 多線程下載的話一般開啟兩到三個線程吧。假設線程太多的話時間會浪費在線程的切換上,倒是浪費了大把的時間

Android 系統架構介紹

圖片 img 多核心 nco 安全性 .com not 狀態 linux android系統架構 從上圖中可以看出,Android系統架構為四層結構,從上層到下層分別是應用程序層、應用程序框架層、系統運行庫層以及Linux內核層,分別介紹如下:

谷歌CEO發文:系統或許要收費了!

還在 you 應用 視覺 目標 art 去年 tex 相機 因谷歌Android壟斷一案,歐盟委員會今日正式宣布,對谷歌處以43.4億歐元(約合50.4億美元)的罰款。對此,谷歌CEO桑達爾·皮查伊(Sundar Pichai)發表文章,警告稱由於歐盟的決定,Android

系統手機目錄

後綴 theme 中文 lock per 包含 refs -m 應用 一、文件夾 1./acct/ 系統回收站,刪除的系統文件。 2./cache/ 緩存 3./data/ 用戶的所有程序相關數據 app/ 所有用戶安裝的ap

Android 開發:(三)常用控制元件以及仿《微門戶》登入介面實現

一、常用控制元件: 1、文字類控制元件 TextView 負責展示文字,非編輯 EditText 可編輯文字控制元件 2、按鈕類控制元件 Button 按鈕 ImageButton 圖片按鈕 RadioButton與RadioGroup 單

修改系統預設時間顯示格式

RockChip36-6.0SDK中預設的時間顯示格式是12小時制的,如果客制需求預設是24小時制的,那麼按照如下修改即可:1.:在framework/base/packages/SettingsProvider/res/values/defaults.xml新增<string name="t

系統定製常見問題解決

1、launcher的佈局太居中,要想兩邊拉伸 <\packages\apps\Launcher2\res\values\dimens.xml>     <dimen name="  apps_customize_pageLayoutPadding

使用木馬滲透系統

實驗準備: kali 安卓手機一臺 處於同一區域網內 先看看kali的ip地址,這次是192.168.0.110 接著開啟apache服務。到時木馬就靠網頁讓安卓手機下載 然後就用msfvenom這個工具生成木馬。-p選項指定模組進行生成。LHOST是監聽的主機。

系統分割槽介紹boot system recovery data cache misc

分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!http://blog.csdn.net/jiangjunshow 也歡迎大家轉載本篇文章。分享知識,造福人民,實現我們中華民族偉大復興!        

迅為7寸觸控一體機_系統_連線雲端_可定製的觸控一體機

迅為7寸觸控一體機嵌入式顯示屏安卓電容觸控式螢幕高效穩定,流暢執行安卓系統,操作簡單,智慧快捷,可定製方案 一:配置鐵電儲存器(非易失性記憶體掉電後不遺失資料) 二:連結雲端-支援雲服務(資料化綜合管理,效率工作) 三:靜電防護技術(高強度抗干擾,防靜電,放電磁干擾) 行業應用:用於資助售貨機、