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

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

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

fireflyAIO-3399C主板ADB簡(jiǎn)介

firefly ? 來(lái)源:firefly ? 作者:firefly ? 2019-12-13 10:24 ? 次閱讀
ADB 使用
前言

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

準(zhǔn)備連接
USB數(shù)據(jù)線(xiàn)ADB
  • AIO-3399C用Type-C數(shù)據(jù)線(xiàn)連接設(shè)備Type-C口和主機(jī)。

  • AIO-3399C(AI)用雙端公頭USB數(shù)據(jù)線(xiàn)連接設(shè)備藍(lán)色USB 3.0口和主機(jī),還需要在AI0-3399C(AI)勾上 設(shè)置->USB->Connect to PC 。

當(dāng)設(shè)備端狀態(tài)欄提示 USB debugging connected 時(shí),便可進(jìn)行調(diào)試:

adb devices adb shell
網(wǎng)絡(luò)ADB
  • 設(shè)備端接入局域網(wǎng)后,還需要打開(kāi)網(wǎng)絡(luò)ADB調(diào)試開(kāi)關(guān) 設(shè)置->開(kāi)發(fā)者選項(xiàng)->網(wǎng)絡(luò)ADB調(diào)試

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

例:

adb connect + IP adb shell
Windows下的 ADB 安裝

首先參照安裝 RK USB 驅(qū)動(dòng)一節(jié)安裝好驅(qū)動(dòng)。 打開(kāi)命令行窗口,輸入:

cd C:\adb adb shell

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

Ubuntu 下的 ADB 安裝
  • 安裝 adb 工具:

sudo apt-get install android-tools-adb
  • 加入設(shè)備標(biāo)識(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 線(xiàn),或運(yùn)行以下命令,讓 udev 規(guī)則生效:

sudo udevadm control --reload-rules sudo udevadm trigger
  • 重新啟動(dòng) adb 服務(wù)器

sudo adb kill-server adb start-server
常用 ADB 命令
連接管理

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

adb devices

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

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

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

adb -s 序列號(hào) shell

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

# 讓設(shè)備端的 adbd 重啟,并在 TCP 端口 5555 處監(jiān)聽(tīng) adb tcpip 5555 # 此時(shí)可以斷開(kāi) USB 連接 # 遠(yuǎn)程連接設(shè)備,設(shè)備的 IP 地址是 192.168.1.100 adb connect 192.168.1.100:5555 # 斷開(kāi)連接 adb disconnect 192.168.1.100:5555
調(diào)試
獲取系統(tǒng)日志 adb logcat
  • 用法

adb logcat [選項(xiàng)] [應(yīng)用標(biāo)簽]
  • 示例

# 查看全部日志 adb logcat # 僅查看部分日志 adb logcat -s WifiStateMachine StateMachine
運(yùn)行命令 adb shell

獲取詳細(xì)運(yùn)行信息 adb bugreport

adb bugreport用于錯(cuò)誤報(bào)告,里面包含大量有用的信息。

  • 示例

adb bugreport # 保存到本地,方便用編輯器查看 adb bugreport >bugreport.txt
root 權(quán)限

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

adb root

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

應(yīng)用管理
安裝應(yīng)用 adb install
  • 用法:

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

選項(xiàng)包括:

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

# 安裝 facebook.apk adb install facebook.apk # 升級(jí) twitter.apk adb install -r twitter.apk

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

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

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

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

卸載應(yīng)用 adb uninstall
  • 用法:

adb uninstall 應(yīng)用包名稱(chēng)
  • 示例:

adb uninstall com.android.chrome

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

adb shell pm list packages -f

運(yùn)行結(jié)果是:

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

前面是 apk 文件,后面則是對(duì)應(yīng)的包名稱(chē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 <specific device> - directs command to the device or emulator with the given serial number or qualifier. Overrides ANDROID_SERIAL environment variable. -p <product name or path> - 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 <host>[:<port>] - connect to a device via TCP/IP Port 5555 is used by default if no port number is specified. disconnect [<host>[:<port>]] - 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] <local> <remote> - copy file/dir to device ('-p' to display the transfer progress) adb pull [-p] [-a] <remote> [<local>] - copy file/dir from device ('-p' to display the transfer progress) ('-a' means copy timestamp and mode) adb sync [ <directory> ] - 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 <command> - run remote shell command adb emu <command> - run emulator console command adb logcat [ <filter-spec> ] - View device log adb forward --list - list all forward socket connections. the format is a list of lines with the following format: <serial> " " <local> " " <remote> "\n" adb forward <local> <remote> - forward socket connections forward specs are one of: tcp:<port> localabstract:<unix domain socket name> localreserved:<unix domain socket name> localfilesystem:<unix domain socket name> dev:<character device name> jdwp:<process pid> (remote only) adb forward --no-rebind <local> <remote> - same as 'adb forward ' but fails if <local> is already forwarded adb forward --remove <local> - 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 <algorithm name> --key <hex-encoded key> --iv <hex-encoded iv>] <file> - 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] <package> - 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 <file>] [-apk|-noapk] [-obb|-noobb] [-shared|-noshared] [-all] [-system|-nosystem] [<packages...>] - 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) (<packages...> 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 <file> - restore device contents from the <file> 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: <serial-number> adb get-devpath - prints: <device-path> 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 <port> - restarts the adbd daemon listening on TCP on the specified port networking: adb ppp <tty> [parameters] - Run PPP over USB. Note: you should not automatically start a PPP connection. <tty> 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 [ <directory> ] <localdir> can be interpreted in several ways: - If <directory> 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)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 嵌入式主板
    +關(guān)注

    關(guān)注

    7

    文章

    6083

    瀏覽量

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

    關(guān)注

    5

    文章

    2113

    瀏覽量

    56899
  • Firefly
    +關(guān)注

    關(guān)注

    2

    文章

    538

    瀏覽量

    6950
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    fireflyAIO-3399C主板接口介紹

     AIO-3399C 提供了豐富的接口,主要包括:電源接口, Type-C(OTG),1 x USB3.0,4 x USB2.0(接口×2,座子×2),HDMI,以太網(wǎng),雙LVDS屏幕接口,eDP屏
    的頭像 發(fā)表于 12-04 10:26 ?2661次閱讀
    <b class='flag-5'>fireflyAIO-3399C</b><b class='flag-5'>主板</b>接口介紹

    fireflyAIO-3399C主板FAQs方案

    AIO-3399C默認(rèn)出廠固件是支持LVDS+HDMI 1080P的雙屏顯示,HDMI分辨率最高只能到1080P。
    的頭像 發(fā)表于 12-04 10:23 ?1079次閱讀
    <b class='flag-5'>fireflyAIO-3399C</b><b class='flag-5'>主板</b>FAQs方案

    fireflyAIO-3399C主板散熱介紹

    散熱套件 鋁制散熱片 產(chǎn)品參數(shù) 適配:AIO-3399C 尺寸:43mm (L)* 39.5mm(W)*11mm(H)
    的頭像 發(fā)表于 12-09 15:56 ?1121次閱讀

    fireflyAIO-3399C主板紅外遙控器簡(jiǎn)介

    紅外遙控器 產(chǎn)品參數(shù) 產(chǎn)品:12鍵紅外遙控器 版本:Firefly定制版 電源:兩節(jié)7號(hào)電池 適配:AIO-3399C 描述:支持AIO-3399C開(kāi)發(fā)板的遙控開(kāi)機(jī)功能
    的頭像 發(fā)表于 12-09 15:59 ?1555次閱讀

    fireflyAIO-3399C主板電源適配器簡(jiǎn)介

      注意:AIO-3399C一體機(jī)正常工作需要電源12V/2A,電流低于2A可能會(huì)因電流過(guò)小而異常重啟,為了保證開(kāi)發(fā)板的正常工作,請(qǐng)使用電壓為12V,電流為2A~3A的電源,推薦使用Firefly官網(wǎng)電源配件。
    的頭像 發(fā)表于 12-09 16:11 ?1343次閱讀

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

    屏幕模組 7.85寸MIPI液晶屏模組 注意:默認(rèn)的AIO-3399C主板不帶mipi_dsi接口,如需要此功能需修改硬件。 詳細(xì)請(qǐng)參考LCD驅(qū)動(dòng)章節(jié)
    的頭像 發(fā)表于 12-09 16:08 ?1797次閱讀
    <b class='flag-5'>fireflyAIO-3399C</b><b class='flag-5'>主板</b>屏幕模組介紹

    fireflyAIO-3399C主板UART介紹

    AIO-3399C 支持SPI橋接/擴(kuò)展4個(gè)增強(qiáng)功能串口(UART)的功能,分別為UART1,UART2,RS232,RS485。每個(gè)UART都擁有256字節(jié)的FIFO緩沖區(qū),用于數(shù)據(jù)接收和發(fā)送。
    的頭像 發(fā)表于 12-09 16:12 ?1735次閱讀
    <b class='flag-5'>fireflyAIO-3399C</b><b class='flag-5'>主板</b>UART介紹

    fireflyAIO-3399C主板RTC介紹

    AIO-3399C開(kāi)發(fā)板上有 一個(gè)集成于RK808上的RTC(Real Time Clock),主要功能有時(shí)鐘,日歷,鬧鐘,周期性中斷,雙通道32KHz時(shí)鐘輸出。
    的頭像 發(fā)表于 12-09 16:19 ?1442次閱讀
    <b class='flag-5'>fireflyAIO-3399C</b><b class='flag-5'>主板</b>RTC介紹

    fireflyAIO-3399C主板PWM介紹

    AIO-3399C開(kāi)發(fā)板上引出有 3 路 PWM 輸出,
    的頭像 發(fā)表于 12-09 16:20 ?1434次閱讀

    fireflyAIO-3399C主板LED介紹

    LED 使用 AIO-3399C 開(kāi)發(fā)板上有 2 個(gè) LED 燈
    的頭像 發(fā)表于 12-09 16:25 ?1794次閱讀
    <b class='flag-5'>fireflyAIO-3399C</b><b class='flag-5'>主板</b>LED介紹

    fireflyAIO-3399C主板LCD簡(jiǎn)介

    AIO-3399C開(kāi)發(fā)板默認(rèn)外置支持了兩個(gè)LCD屏接口,一個(gè)是LVDS,一個(gè)是EDP,接口對(duì)應(yīng)板子上的位置
    的頭像 發(fā)表于 12-13 10:09 ?3147次閱讀
    <b class='flag-5'>fireflyAIO-3399C</b><b class='flag-5'>主板</b>LCD<b class='flag-5'>簡(jiǎn)介</b>

    fireflyAIO-3399C主板IR簡(jiǎn)介

    AIO-3399C 開(kāi)發(fā)板上使用紅外收發(fā)傳感器 IR (耳機(jī)接口和recovery之間)實(shí)現(xiàn)遙控功能,在IR接口處接上紅外接收器。本文主要描述在開(kāi)發(fā)板上如何配置紅外遙控器。
    的頭像 發(fā)表于 12-13 10:12 ?1451次閱讀
    <b class='flag-5'>fireflyAIO-3399C</b><b class='flag-5'>主板</b>IR<b class='flag-5'>簡(jiǎn)介</b>

    fireflyAIO-3399C主板ADC介紹

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

    fireflyAIO-3399C編譯Industry固件簡(jiǎn)介

    Android7.1 的SDK分為 tvbox版本以及industry版本(主要維護(hù)),用戶(hù)可根據(jù)需求,自行下載所需的SDK來(lái)進(jìn)行編譯和開(kāi)發(fā),兩版SDK均兼容AIO-3399C與AIO-3399C(AI)板型。
    的頭像 發(fā)表于 12-13 10:36 ?1517次閱讀

    fireflyAIO-3128C主板ADB使用簡(jiǎn)介

    adb,全稱(chēng) Android Debug Bridge,是 Android 的命令行調(diào)試工具,可以完成多種功能,如跟蹤系統(tǒng)日志,上傳下載文件,安裝應(yīng)用等。
    的頭像 發(fā)表于 12-24 09:41 ?1052次閱讀