android studio 使用adb命令傳遞文件到android設備

来源:http://www.cnblogs.com/cq-jiang/archive/2017/10/13/7661302.html
-Advertisement-
Play Games

一:文件傳輸 在android開發中,有時候需要將文件從pc端傳遞至android,或者將軟體運行的日誌,從android設備傳遞到pc進行分析,我們可以使用windows的cmd視窗,或者android studio的terminal視窗來傳遞文件。 1:連接android設備 此處預設是andr ...


一:文件傳輸

在android開發中,有時候需要將文件從pc端傳遞至android,或者將軟體運行的日誌,從android設備傳遞到pc進行分析,我們可以使用windows的cmd視窗,或者android studio的terminal視窗來傳遞文件。

1:連接android設備

   此處預設是android設備,已打開usb調試模式,並且數據線已經和電腦連接。我們先使用adb devices指令,查詢一下設備是否正常連接.

2:設備連接後,將pc文件傳輸至android設備

adb -s xxxx push C:/advert /sdcard/

3:將android設備文件傳遞至pc電腦

adb -s xxxx pull /sdcard/ad_file_log/ D:/2014work/  此處用的cmd命令下載的

4:在設備和pc上查詢收到的文件

二:使用adb命令,遇到的問題

1:由於目標電腦積極拒絕,無法連接。(10061)

需要執行adb tcpip 5555指令,然後重新連接

執行adb shell指令時,需要把數據線撥拉,建議使用 adb -s xxxx shell指令.

2:執行adb push ,adb pull指令時,一定要退出shell指令環境,使用adb -s xxxx -push(或者pull),不然會出現,找不到設備等錯誤(如:error: device not found )。如果出現adb device offline錯誤,請檢查數據線連接是否正常.

 

三:adb常用指令

1. 顯示系統中全部Android平臺:

    android list targets

2. 顯示系統中全部AVD(模擬器):

    android list avd

3. 創建AVD(模擬器):

    android create avd --name 名稱 --target 平臺編號

4. 啟動模擬器:

    emulator -avd 名稱 -sdcard ~/名稱.img (-skin 1280x800)

5. 刪除AVD(模擬器):

    android delete avd --name 名稱

6. 創建SDCard:

    mksdcard 1024M ~/名稱.img

7. AVD(模擬器)所在位置:

    Linux(~/.android/avd)      Windows(C:\Documents and Settings\Administrator\.android\avd)

8. 啟動DDMS:

    ddms

9. 顯示當前運行的全部模擬器:

    adb devices

10. 對某一模擬器執行命令:

      abd -s 模擬器編號 命令

11. 安裝應用程式:

      adb install -r 應用程式.apk

12. 獲取模擬器中的文件:

      adb pull <remote> <local>

13. 向模擬器中寫文件:

      adb push <local> <remote>

14. 進入模擬器的shell模式:

      adb shell

15. 啟動SDK,文檔,實例下載管理器:

      android

16. 缷載apk包:

      adb shell

      cd data/app

      rm apk包

      exit

      adb uninstall apk包的主包名

      adb install -r apk包

17. 查看adb命令幫助信息:

      adb help

18. 在命令行中查看LOG信息:

      adb logcat -s 標簽名

19. adb shell後面跟的命令主要來自:

      源碼\system\core\toolbox目錄和源碼\frameworks\base\cmds目錄。

20. 刪除系統應用:

      adb remount (重新掛載系統分區,使系統分區重新可寫)。

      adb shell

      cd system/app

      rm *.apk

21. 獲取管理員許可權:

      adb root

22. 啟動Activity:

      adb shell am start -n 包名/包名+類名(-n 類名,-a action,-d date,-m MIME-TYPE,-c category,-e 擴展數據,等)。

23、發佈埠:

    你可以設置任意的埠號,做為主機向模擬器或設備的請求埠。如: 
adb forward tcp:5555 tcp:8000

24、複製文件:

    你可向一個設備或從一個設備中複製文件, 
     複製一個文件或目錄到設備或模擬器上: 
  adb push <source> <destination></destination></source> 
      如:adb push test.txt /tmp/test.txt 
     從設備或模擬器上複製一個文件或目錄: 
     adb pull <source> <destination></destination></source> 
     如:adb pull /addroid/lib/libwebcore.so .

25、搜索模擬器/設備的實例:

     取得當前運行的模擬器/設備的實例的列表及每個實例的狀態: 
    adb devices

26、查看bug報告: 
adb bugreport 
27、記錄無線通訊日誌:

    一般來說,無線通訊的日誌非常多,在運行時沒必要去記錄,但我們還是可以通過命令,設置記錄: 
    adb shell 
    logcat -b radio

28、獲取設備的ID和序列號:

     adb get-product 
     adb get-serialno

29、訪問資料庫SQLite3

     adb shell 
     sqlite3

#cd system/sd/data //進入系統內指定文件夾 
#ls //列表顯示當前文件夾內容 
#rm -r xxx //刪除名字為xxx的文件夾及其裡面的所有文件 
#rm xxx //刪除文件xxx 
#rmdir xxx //刪除xxx的文件夾

【操作命令】

  1. 查看設備

  adb devices

這個命令是查看當前連接的設備, 連接到電腦的android設備或者模擬器將會列出顯示

Android系列教程(六) adb操作命令詳解

  2.安裝軟體

  adb install

adb install <apk文件路徑> :這個命令將指定的apk文件安裝到設備上

Android系列教程(六) adb操作命令詳解

  3. 卸載軟體

  adb uninstall <軟體名>

  adb uninstall -k <軟體名>

如果加 -k 參數,為卸載軟體但是保留配置和緩存文件.

  4. 進入設備或模擬器的shell:

adb shell

通過上面的命令,就可以進入設備或模擬器的shell環境中,在這個Linux Shell中,你可以執行各種Linux的命令,另外如果只想執行一條shell命令,可以採用以下的方式:

adb shell [command]

如:adb shell dmesg會列印出內核的調試信息。

  5. 發佈埠

可以設置任意的埠號,做為主機向模擬器或設備的請求埠。如:

adb forward tcp:5555 tcp:8000

  6. 從電腦上發送文件到設備

  adb push <本地路徑> <遠程路徑>

用push命令可以把本機電腦上的文件或者文件夾複製到設備(手機)

  7. 從設備上下載文件到電腦

  adb pull <遠程路徑> <本地路徑>

用pull命令可以把設備(手機)上的文件或者文件夾複製到本機電腦

  8、查看bug報告

adb bugreport

  9、記錄無線通訊日誌

一般來說,無線通訊的日誌非常多,在運行時沒必要去記錄,但我們還是可以通過命令,設置記錄:

adb shell

logcat -b radio

  10、獲取設備的ID和序列號

adb get-product

adb get-serialno

adb shell

sqlite3

Android系列教程(六) adb操作命令詳解

 


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 前言 頁面載入時,大致可以分為以下幾個步驟: 那麼在這整個過程中觸發了哪些常用的事件呢? document readystatechange事件 readyState 屬性描述了文檔的載入狀態,在整個載入過程中 document.readyState會不斷變化,每次變化都會觸發readystatec ...
  • 最近寫了點小東西一個滑動驗證 ...
  • JS中常用的內置函數如下: 1、eval(str):計算表達式的結果。 2、parseInt(str,n):將符串轉換成整數數字形式(可指定幾進位)。 3、parseFloat(str):將字元串轉換成符點數字形式。 4、isNaN(): 測試是(true)否(false)不是一個數字。 5、isF ...
  • 隔行變色功能,不用js,直接用css偽類就可以做,這個實例可以作為js插件開發很好的入門級實例。本文實現的隔行變色包括以下功能: 1,支持2種常用結構共存( div元素 和 表格類型 ) 2,一個頁面內支持不同模塊隔行變色,分別管理 3,可以定製的配置有: 奇/偶數行的背景顏色 特定的模塊加上隔行變 ...
  • template.js插件在表格渲染方面還是極其出色的,當數據在非同步載入後不用使用傳統的方式,在ajax裡面拼接html語句載入表格,直接用這個插件將ajax傳回來的json數組直接渲染在前端中,省下了不少時間。 我使用template.js主要是滿足項目實現為目的,不是深入探究,總結一下我在項目里 ...
  • ``` <!doctype html vue route demo Hello App! <! 使用 router link 組件來導航. <! 通過傳入 屬性指定鏈接. <! <router link 預設會被渲染成一個 標簽 Go to Foo Go to Bar <! 路由出口 <! 路由匹配 ...
  • //除法函數,用來得到精確的除法結果//說明:javascript的除法結果會有誤差,在兩個浮點數相除的時候會比較明顯。這個函數返回較為精確的除法結果。//調用:accDiv(arg1,arg2)//返回值:arg1除以arg2的精確結果function accDiv(arg1,arg2){ var ...
  • 這是我學習nodejs以來做的第一個小例子,很簡單,就是在第一個頁面里輸入自己的名字,在第二個頁面(有圖片)中顯示。思路和很多地方都參考了http://www.cnblogs.com/giggle/p/6287931.html 這篇文章,感謝作者。 這篇文章中說得不對的地方希望大家指正。 ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...