本章學習adt安卓打包過程、adb指令學習、並通過adb將打包的APK發給設備 1.打包 在eclipse中已經幫我們實現打包了. 具體打包流程如下: 最終一個APK包含瞭如下: classes.dex文件 (由class編譯過來的) resources.arsc文件 (編譯過的資源文件) Andr ...
本章學習adt安卓打包過程、adb指令學習、並通過adb將打包的APK發給設備
1.打包
在eclipse中已經幫我們實現打包了.
具體打包流程如下:
最終一個APK包含瞭如下:
- classes.dex文件 (由class編譯過來的)
- resources.arsc文件 (編譯過的資源文件)
- AndroidManifest.xml文件 (描述文件版本,應用中的各個組件)
- uncompiled resources文件 (未被編譯的文件,比如視頻等)
- META-INF簽名文件夾
ecilipse打包過程如下:
點擊export signed application package(導出帶簽名的APP包,簽名的作用是避免盜版):
然後選擇要導出的項目,點擊next,如下圖所示:
然後這個界面讓我們填寫證書信息的,我們選擇"Create new keystore"新建一個簽名(keystore:用於對APP簽名的),選好保存位置,寫好密碼,密碼預設123456吧,點擊繼續"next";
然後開始創建簽名,寫完後"next",如下圖所示:
註意:
- validity: key的有效期,如果填的年份短,到時候key過期了,則發佈新版本APP時,只能換個key,從而導致APP無法升級,只能重裝APP才行,
- 因為一個APP唯一性是通過(包名+簽名識別)的.
然後就可以選擇軟體APK的存放地址,點擊"finish",如下圖所示:
然後,就可以看到已經多了一個"helloworld.apk"文件了!
接下來,我們便來學習adb指令,來安裝helloworld
2.adb指令
安裝相關命令
adb kill-server //關閉連接 adb start-server //開啟連接 adb devices //顯示連接的設備,如果要指定向某個設備發送命令,則使用: adb -s <dev number> cmd adb uninstall com.example.helloworld //卸載以前的helloworld,必須寫包名才行 adb install F:\android\apk\helloworld.apk //安裝我們剛剛打包的APK
其它常用命令
adb shell //進入設備shell模式(就可以通過cd、cat等linux命令操作設備) adb shell ls //快捷使用ls命令,當然也可以寫成其它常用命令 /*push:推,將文件拷貝到設備的指定目錄中*/ adb remount //將 '/system' 部分置於可寫入的模式,預設是只讀模式. adb push C:\Users\Administrator\1.xml /system/lib //將1.xml拷貝到設備指定目錄下
/*pull:拉,將設備的文件拉取到PC機上*/ adb pull /data/log d:/log
push時可能遇到問題1:
表示/system/lib下存儲空間不足.
通過adb shell fb查看確實為0:
這是因為模擬器啟動的時候,為了避免記憶體浪費,所以system節省為0.
提示:在ADT界面上也可以使用push/pull.
push如下圖所示:
pull如下圖所示: