0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

fireflyAIO-3399J主板ADB使用介紹

firefly ? 來源:firefly ? 作者:firefly ? 2019-12-24 10:59 ? 次閱讀

ADB 使用

前言

adb,全稱 Android Debug Bridge,是 Android 的命令行調(diào)試工具,可以完成多種功能,如跟蹤系統(tǒng)日志,上傳下載文件,安裝應(yīng)用等。

準備連接

在開發(fā)板上進入選項->開發(fā)人員選項,勾上 “USB 調(diào)試” 選項。AIO-3399J用雙公頭usb數(shù)據(jù)線連接設(shè)備USB3.0雙層上口(工程樣機接下口)和主機。

host/device模式切換

Android7.1

OTG ADB

設(shè)置->USB->連接到PC

Android8.1

1.設(shè)置->系統(tǒng)->關(guān)于平板->點擊5下版本號->系統(tǒng)->開發(fā)者選項->Root授權(quán)->打開ADB

2.設(shè)置->系統(tǒng)->Connect to PC

連接命令:

1.(首次啟動) --更新SDK到(commit 8034582b4cf130132af20b212af7854af5746bcc)后可以跳過步驟1直接進入步驟2 adb root adb disable-verity adb reboot 2.(重啟后) adb root adb remount

網(wǎng)絡(luò)ADB

設(shè)置->開發(fā)者選項->網(wǎng)絡(luò)ADB調(diào)試

查看3399的IP地址,PC端通過網(wǎng)絡(luò)訪問

例:

adb connect + IP adb shell

Windows下的 ADB 安裝

首先參照安裝 RK USB 驅(qū)動一節(jié)安裝好驅(qū)動。然后下載adb.zip,解壓到C:\adb以方便調(diào)用。 打開命令行窗口,輸入:

cd C:\adb adb shell

如果一切正常,就可以進入adb shell,在設(shè)備上面運行命令。

Ubuntu 下的 ADB 安裝

安裝 adb 工具:

sudo apt-get install android-tools-adb

加入設(shè)備標識:

mkdir -p ~/.android vi ~/.android/adb_usb.ini # 添加以下一行 0x2207

加入 udev 規(guī)則:

sudo vi /etc/udev/rules.d/51-android.rules # 添加以下一行: SUBSYSTEM=="usb", ATTR{idVendor}=="2207", MODE="0666"

重新插拔 USB 線,或運行以下命令,讓 udev 規(guī)則生效:

sudo udevadm control --reload-rules sudo udevadm trigger

重新啟動 adb 服務(wù)器

sudo adb kill-server adb start-server

常用 ADB 命令

連接管理

列出所有連接設(shè)備及其序列號

adb devices

如果有多個連接設(shè)備,則需要使用序列號來區(qū)分:

export ANDROID_SERIAL=<設(shè)備序列號> adb shell ls

多設(shè)備下連接指定設(shè)備

adb -s 序列號 shell

可以通過網(wǎng)絡(luò)來連接 adb:

# 讓設(shè)備端的 adbd 重啟,并在 TCP 端口 5555 處監(jiān)聽 adb tcpip 5555 # 此時可以斷開 USB 連接 # 遠程連接設(shè)備,設(shè)備的 IP 地址是 192.168.1.100 adb connect 192.168.1.100:5555 # 斷開連接 adb disconnect 192.168.1.100:5555

調(diào)試

獲取系統(tǒng)日志 adb logcat

用法

adb logcat [選項] [應(yīng)用標簽]

示例

# 查看全部日志 adb logcat # 僅查看部分日志 adb logcat -s WifiStateMachine StateMachine

運行命令 adb shell

獲取詳細運行信息 adb bugreport

adb bugreport用于錯誤報告,里面包含大量有用的信息。

示例

adb bugreport # 保存到本地,方便用編輯器查看 adb bugreport >bugreport.txt

root 權(quán)限

如果 TARGET_BUILD_VARIANT 使用的是 userdebug 模式,要獲得 root 權(quán)限,需要先運行:

adb root

讓 adb 的設(shè)備端切換到 root 權(quán)限模式,這樣 adb remount 等需要 root 權(quán)限的命令才會成功。

應(yīng)用管理

安裝應(yīng)用 adb install

用法:

adb install [選項] 應(yīng)用包.apk

選項包括:

-l forward-lock -r 重新安裝應(yīng)用,保留原先數(shù)據(jù) -s 安裝到 SD 卡上,而不是內(nèi)部存儲

示例:

# 安裝 facebook.apk adb install facebook.apk # 升級 twitter.apk adb install -r twitter.apk

如果安裝成功,工具會返回成功提示 “Success”;失敗的話,一般是以下幾種情況:

INSTALL_FAILED_ALREADY_EXISTS: 此時需要用 -r 參數(shù)來重新安裝。

INSTALL_FAILED_SIGNATURE_ERROR: 應(yīng)用的簽名不一致,可能是發(fā)布版和調(diào)試版簽名不同所致。如果確認 APK 文件簽名正常,可以用 adb uninstall 命令先卸載舊的應(yīng)用,然后再安裝。

INSTALL_FAILED_INSUFFICIENT_STORAGE: 存儲空間不足,需要檢查設(shè)備存儲情況。

卸載應(yīng)用 adb uninstall

用法:

adb uninstall 應(yīng)用包名稱

示例:

adb uninstall com.android.chrome

應(yīng)用包名稱可以用以下命令列出:

adb shell pm list packages -f

運行結(jié)果是:

package:/system/app/Bluetooth.apk=com.android.bluetooth

前面是 apk 文件,后面則是對應(yīng)的包名稱。

命令行幫助信息 adb help

Android Debug Bridge version 1.0.31 -a - directs adb to listen on all interfaces for a connection -d - directs command to the only connected USB device returns an error if more than one USB device is present. -e - directs command to the only running emulator. returns an error if more than one emulator is running. -s - directs command to the device or emulator with the given serial number or qualifier. Overrides ANDROID_SERIAL environment variable. -p - simple product name like 'sooner', or a relative/absolute path to a product out directory like 'out/target/product/sooner'. If -p is not specified, the ANDROID_PRODUCT_OUT environment variable is used, which must be an absolute path. -H - Name of adb server host (default: localhost) -P - Port of adb server (default: 5037) devices [-l] - list all connected devices ('-l' will also list device qualifiers) connect [:] - connect to a device via TCP/IP Port 5555 is used by default if no port number is specified. disconnect [[:]] - disconnect from a TCP/IP device. Port 5555 is used by default if no port number is specified. Using this command with no additional arguments will disconnect from all connected TCP/IP devices. device commands: adb push [-p] - copy file/dir to device ('-p' to display the transfer progress) adb pull [-p] [-a] [] - copy file/dir from device ('-p' to display the transfer progress) ('-a' means copy timestamp and mode) adb sync [ ] - copy host->device only if changed (-l means list but don't copy) (see 'adb help all') adb shell - run remote shell interactively adb shell - run remote shell command adb emu - run emulator console command adb logcat [ ] - View device log adb forward --list - list all forward socket connections. the format is a list of lines with the following format: " " " " "\n" adb forward - forward socket connections forward specs are one of: tcp: localabstract: localreserved: localfilesystem: dev: jdwp: (remote only) adb forward --no-rebind - same as 'adb forward ' but fails if is already forwarded adb forward --remove - remove a specific forward socket connection adb forward --remove-all - remove all forward socket connections adb jdwp - list PIDs of processes hosting a JDWP transport adb install [-l] [-r] [-d] [-s] [--algo --key --iv ] - push this package file to the device and install it ('-l' means forward-lock the app) ('-r' means reinstall the app, keeping its data) ('-d' means allow version code downgrade) ('-s' means install on SD card instead of internal storage) ('--algo', '--key', and '--iv' mean the file is encrypted already) adb uninstall [-k] - remove this app package from the device ('-k' means keep the data and cache directories) adb bugreport - return all information from the device that should be included in a bug report. adb backup [-f ] [-apk|-noapk] [-obb|-noobb] [-shared|-noshared] [-all] [-system|-nosystem] [] - write an archive of the device's data to . If no -f option is supplied then the data is written to "backup.ab" in the current directory. (-apk|-noapk enable/disable backup of the .apks themselves in the archive; the default is noapk.) (-obb|-noobb enable/disable backup of any installed apk expansion (aka .obb) files associated with each application; the default is noobb.) (-shared|-noshared enable/disable backup of the device's shared storage / SD card contents; the default is noshared.) (-all means to back up all installed applications) (-system|-nosystem toggles whether -all automatically includes system applications; the default is to include system apps) ( is the list of applications to be backed up. If the -all or -shared flags are passed, then the package list is optional. Applications explicitly given on the command line will be included even if -nosystem would ordinarily cause them to be omitted.) adb restore - restore device contents from the backup archive adb help - show this help message adb version - show version num scripting: adb wait-for-device - block until device is online adb start-server - ensure that there is a server running adb kill-server - kill the server if it is running adb get-state - prints: offline | bootloader | device adb get-serialno - prints: adb get-devpath - prints: adb status-window - continuously print device status for a specified device adb remount - remounts the /system partition on the device read-write adb reboot [bootloader|recovery] - reboots the device, optionally into the bootloader or recovery program adb reboot-bootloader - reboots the device into the bootloader adb root - restarts the adbd daemon with root permissions adb usb - restarts the adbd daemon listening on USB adb tcpip - restarts the adbd daemon listening on TCP on the specified port networking: adb ppp [parameters] - Run PPP over USB. Note: you should not automatically start a PPP connection. refers to the tty for PPP stream. Eg. dev:/dev/omap_csmi_tty1 [parameters] - Eg. defaultroute debug dump local notty usepeerdns adb sync notes: adb sync [ ] can be interpreted in several ways: - If is not specified, both /system and /data partitions will be updated. - If it is "system" or "data", only the corresponding partition is updated. environmental variables: ADB_TRACE - Print debug information. A comma separated list of the following values 1 or all, adb, sockets, packets, rwx, usb, sync, sysdeps, transport, jdwp ANDROID_SERIAL - The serial number to connect to. -s takes priority over this if given. ANDROID_LOG_TAGS - When used with the logcat option, only these debug tags are printed.

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 嵌入式主板
    +關(guān)注

    關(guān)注

    7

    文章

    6083

    瀏覽量

    35092
  • 安卓
    +關(guān)注

    關(guān)注

    5

    文章

    2113

    瀏覽量

    56884
  • Firefly
    +關(guān)注

    關(guān)注

    2

    文章

    538

    瀏覽量

    6946
收藏 人收藏

    評論

    相關(guān)推薦

    fireflyAIO-3399J主板簡介

    AIO-3399J 的標準套裝包含以下配件
    的頭像 發(fā)表于 11-05 15:52 ?1481次閱讀
    <b class='flag-5'>fireflyAIO-3399J</b><b class='flag-5'>主板</b>簡介

    fireflyAIO-3399J主板介紹

    AIO-3399J默認出廠固件是支持LVDS+HDMI 1080P的雙屏顯示,HDMI分辨率最高只能到1080P。
    的頭像 發(fā)表于 12-24 10:03 ?1609次閱讀
    <b class='flag-5'>fireflyAIO-3399J</b><b class='flag-5'>主板</b><b class='flag-5'>介紹</b>

    fireflyAIO-3399J主板散熱套件簡介

    散熱套件 鋁制散熱片 產(chǎn)品參數(shù) 適配:AIO-3399J 尺寸:43mm (L)* 39.5mm(W)*11mm(H)
    的頭像 發(fā)表于 12-24 10:01 ?1174次閱讀
    <b class='flag-5'>fireflyAIO-3399J</b><b class='flag-5'>主板</b>散熱套件簡介

    fireflyAIO-3399J主板紅外遙控器簡介

    紅外遙控器 產(chǎn)品參數(shù) 產(chǎn)品:12鍵紅外遙控器 版本:Firefly定制版 電源:兩節(jié)7號電池 適配:AIO-3399J 描述:支持AIO-3399J開發(fā)板的遙控開機功能
    的頭像 發(fā)表于 12-24 10:07 ?1503次閱讀

    fireflyAIO-3399J主板屏幕模組介紹

    屏幕模組 7.85寸MIPI液晶屏模組 注意:默認的AIO-3399J主板不帶mipi_dsi接口,如需要此功能需修改硬件。
    的頭像 發(fā)表于 12-24 10:14 ?1567次閱讀
    <b class='flag-5'>fireflyAIO-3399J</b><b class='flag-5'>主板</b>屏幕模組<b class='flag-5'>介紹</b>

    fireflyAIO-3399J主板UART使用介紹

    AIO-3399J 支持SPI橋接/擴展4個增強功能串口(UART)的功能,分別為UART1,UART2,RS232,RS485。
    的頭像 發(fā)表于 12-24 10:18 ?2045次閱讀
    <b class='flag-5'>fireflyAIO-3399J</b><b class='flag-5'>主板</b>UART使用<b class='flag-5'>介紹</b>

    fireflyAIO-3399J主板TIMER使用簡介

    RK3399有12 個Timers (timer0-timer11),有12 個Secure Timers(stimer0~stimer11) 和 2 個Timers(pmutimer0
    的頭像 發(fā)表于 12-24 10:25 ?1417次閱讀
    <b class='flag-5'>fireflyAIO-3399J</b><b class='flag-5'>主板</b>TIMER使用簡介

    fireflyAIO-3399J主板RTC使用簡介

    AIO-3399J開發(fā)板上有 一個集成于RK808上的RTC(Real Time Clock),主要功能有時鐘,日歷,鬧鐘,周期性中斷,雙通道32KHz時鐘輸出。
    的頭像 發(fā)表于 12-24 10:20 ?1898次閱讀
    <b class='flag-5'>fireflyAIO-3399J</b><b class='flag-5'>主板</b>RTC使用簡介

    fireflyAIO-3399J主板PWM使用介紹

    AIO-3399J開發(fā)板上有 4 路 PWM 輸出,分別為 PWM0 ~ PWM3,4路 PWM 分別使用在eDP背光、MIPI背光、VDDLOG供電、紅外IR。 本章主要描述如何配置 PWM。
    的頭像 發(fā)表于 12-24 10:37 ?2191次閱讀

    fireflyAIO-3399J主板MIPI CSI使用簡介

    AIO-3399J 開發(fā)板分別帶有兩個MIPI,一個DVP攝像頭接口,MIPI最高支持支持4K拍照,并支持1080P 30FPS以上視頻錄制。
    的頭像 發(fā)表于 12-24 10:22 ?5097次閱讀
    <b class='flag-5'>fireflyAIO-3399J</b><b class='flag-5'>主板</b>MIPI CSI使用簡介

    fireflyAIO-3399J主板LED使用介紹

    AIO-3399J 開發(fā)板上有 2 個 LED 燈
    的頭像 發(fā)表于 12-24 10:31 ?2957次閱讀
    <b class='flag-5'>fireflyAIO-3399J</b><b class='flag-5'>主板</b>LED使用<b class='flag-5'>介紹</b>

    fireflyAIO-3399J主板IR使用簡介

    AIO-3399J 開發(fā)板上使用紅外收發(fā)傳感器 IR (在 mic 接口和喇叭接口之間)實現(xiàn)遙控功能,在IR接口處接上紅外接收器。
    的頭像 發(fā)表于 12-24 10:32 ?2098次閱讀
    <b class='flag-5'>fireflyAIO-3399J</b><b class='flag-5'>主板</b>IR使用簡介

    fireflyAIO-3399J主板I2C使用介紹

    AIO-3399J 開發(fā)板上有 9 個片上 I2C 控制器,
    的頭像 發(fā)表于 12-24 10:34 ?1843次閱讀
    <b class='flag-5'>fireflyAIO-3399J</b><b class='flag-5'>主板</b>I2C使用<b class='flag-5'>介紹</b>

    fireflyAIO-3399J主板ADC使用介紹

    AIO-3399J 開發(fā)板上的 AD 接口有兩種,分別為:溫度傳感器 (Temperature Sensor)、逐次逼近ADC (Successive Approximation Register)。
    的頭像 發(fā)表于 12-24 10:47 ?1641次閱讀

    fireflyAIO-3399J啟動模式說明主板

    AIO-3399J 有靈活的啟動方式。一般情況下,除非硬件損壞,AIO-3399J 開發(fā)板是不會變磚的。
    的頭像 發(fā)表于 12-25 16:28 ?1318次閱讀