![課件-btc android01第3章項目打包及調(diào)試監(jiān)控_第1頁](http://file4.renrendoc.com/view/69aa0bf2858a48c912ba03f63115a1da/69aa0bf2858a48c912ba03f63115a1da1.gif)
![課件-btc android01第3章項目打包及調(diào)試監(jiān)控_第2頁](http://file4.renrendoc.com/view/69aa0bf2858a48c912ba03f63115a1da/69aa0bf2858a48c912ba03f63115a1da2.gif)
![課件-btc android01第3章項目打包及調(diào)試監(jiān)控_第3頁](http://file4.renrendoc.com/view/69aa0bf2858a48c912ba03f63115a1da/69aa0bf2858a48c912ba03f63115a1da3.gif)
![課件-btc android01第3章項目打包及調(diào)試監(jiān)控_第4頁](http://file4.renrendoc.com/view/69aa0bf2858a48c912ba03f63115a1da/69aa0bf2858a48c912ba03f63115a1da4.gif)
![課件-btc android01第3章項目打包及調(diào)試監(jiān)控_第5頁](http://file4.renrendoc.com/view/69aa0bf2858a48c912ba03f63115a1da/69aa0bf2858a48c912ba03f63115a1da5.gif)
版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
第三章Android項目打包及調(diào)試監(jiān)控1知識點回顧Android的開發(fā)環(huán)境搭建Android模擬器簡介第一個HelloWorld程序Android目錄結構分析2本章目標了解Android的項目打包的過程了解Android的項目反編譯的實現(xiàn)方式掌握Android的調(diào)試監(jiān)控方式3本章教學內(nèi)容Android的項目打包Android的項目反編譯Android的調(diào)試監(jiān)控4項目打包簡介應用安裝是智能機的主要特點,即用戶可以把各種應用(如游戲等)安裝到手機上,并可以對其進行卸載等管理操作。apk是AndroidPackage的縮寫,即Android安裝包。通過將apk文件直接傳到Android模擬器或Android手機中執(zhí)行及安裝。5打包流程6AIDL-AndroidInterfaceDefinitionLanguage,AAR-AndroidArchive
Androidlibrary可以編譯為一個AndroidArchive(AAR)文件,它可以作為其他模塊的依賴。不像jar,AAR文件可以包含resources和一個manifest文件,例如布局和圖像文件,
將它們與java代碼一同被分享。打包流程編譯器將您的源代碼轉(zhuǎn)換成DEX(DalvikExecutable)文件(其中包括運行在Android設備上的字節(jié)碼),將所有其他內(nèi)容轉(zhuǎn)換成已編譯資源。APK打包器將DEX文件和已編譯資源合并成單個APK。不過,必須先簽署APK,才能將應用安裝并部署到Android設備上。APK打包器使用調(diào)試debug或發(fā)布release密鑰庫簽署您的APK:如果您構建的是調(diào)試版本的應用(即專用于測試和分析的應用),打包器會使用調(diào)試密鑰庫簽署您的應用。AndroidStudio自動使用調(diào)試密鑰庫配置新項目。如果您構建的是打算向外發(fā)布的發(fā)布版本應用,打包器會使用發(fā)布密鑰庫簽署您的應用。在生成最終APK之前,打包器會使用zipalign工具對應用進行優(yōu)化,減少其在設備上運行時的內(nèi)存占用。7簽名的意義為了保證每個應用程序開發(fā)商合法ID,防止部分開發(fā)商可能通過使用相同的PackageName來混淆替換已經(jīng)安裝的程序,我們需要對我們發(fā)布的apk文件進行唯一簽名,保證我們每次發(fā)布版本的一致性(如自動更新不會因為版本不一致而無法安裝)。8項目打包9在菜單欄中,點擊Build>GenerateSignedAPK。從下拉菜單中選擇您想要發(fā)布的模塊,然后點擊Next在NewKeyStore窗口上,為您的密鑰庫和密鑰提供以下信息項目打包10項目打包4在GenerateSignedAPKWizard窗口上,選擇一個密鑰庫和一個私鑰,并為它們輸入密碼。然后,點擊Next11項目打包5在下一個窗口上,為簽署的APK選擇一個目的地、選擇構建類型、選擇產(chǎn)品風味(如果適用),然后點擊Finish。12本章教學內(nèi)容Android的項目打包Android的項目反編譯Android的調(diào)試監(jiān)控13apk文件的內(nèi)部結構apk文件其實是一個壓縮文件,我們可以解壓縮看看其內(nèi)部的文件結構14解壓之后的文件結構中,資源文件和配置文件都可以查看到,只有java源文件無法看到。其實Java源文件都被集中到classes.dex文件中了從classes.dex轉(zhuǎn)制成jar文件首先下載工具dex2jar下載地址為這個工具可以將classes.dex文件轉(zhuǎn)換成jar文件。接壓縮之后在命令行里,指定到解壓縮的目錄,運行如下腳本15就會在目錄下生成jar文件使用jd-gui獲取java代碼jd-gui是一個java反編譯軟件可以從下載打開jd-gui讀取剛剛生成的classes-dex2jar.jar,點擊SaveAllSources生成源代碼的zip包。16這種方式反編譯安卓代碼,有這么幾個問題大部分代碼都會經(jīng)過混淆處理,代碼閱讀性差jd-gui在解釋switchcase時候會出現(xiàn)邏輯錯誤文件本章教學內(nèi)容Android的項目打包Android的項目反編譯Android的調(diào)試監(jiān)控17程序調(diào)試
Android系統(tǒng)提供了調(diào)試工具LogCat用于定位、分析及修復程序中出現(xiàn)的錯誤LogCatLogCat是用來獲取系統(tǒng)日志信息的工具,并可以顯示在集成開發(fā)環(huán)境中功能:能夠捕獲的信息包括Dalvik虛擬機產(chǎn)生的信息、進程信息、ActivityManager信息、PackagerManager信息、Homeloader信息、WindowsManager信息、Android運行時信息和應用程序信息等18程序調(diào)試打開AndroidMonitor19程序調(diào)試LogCat20程序調(diào)試LogCatLogCat的右上方的五個字母表示五種不同類型的日志信息
,他們的級別依次增高
[V]:詳細(Verbose)信息[D]:調(diào)試(Debug)信息[I]:通告(Info)信息[W]:警告(Warn)信息[E]
:錯誤(Error)信息21程序調(diào)試LogCat在LogCat中,用戶可以通過五個字母圖標選擇顯示的信息類型,級別高于所選類型的信息也會在LogCat中顯示,但級別低于所選類型的信息則不會被顯示22程序調(diào)試LogCat過濾LogCat提供了“過濾”功能,分別是添加和刪除過濾器。用戶可以根據(jù)日志信息的標簽(Tag)、產(chǎn)生日志的進程編號(Pid)或信息等級(Level),對顯示的日志內(nèi)容進行過濾23程序調(diào)試LogCat程序調(diào)試原理引入android.util.Log包使用Log.v()、
Log.d()、
Log.i()、Log.w()和
Log.e()五個函數(shù)在程序中設置“日志點”當程序運行到“日志點”時,應用程序的日志信息便被發(fā)送到LogCat中判斷“日志點”信息與預期的內(nèi)容是否一致進而判斷程序是否存在錯誤
Log.v()用來記錄詳細信息,Log.d()用來記錄調(diào)試信息,Log.i()用來記錄通告信息,Log.w()用來記錄警告信息,Log.e()用來記錄通錯誤信息24程序調(diào)試LogCat演示了Log類的具體使用方法packageedu.hrbeu.LogCat;
importandroid.app.Activity;importandroid.os.Bundle;importandroid.util.Log;
publicclassLogCatextendsActivity{finalstaticStringTAG="LOGCAT";@OverridepublicvoidonCreate(BundlesavedInstanceState){super.onCreate(savedInstanceState);setContentView(R.layout.main);
25程序調(diào)試LogCat程序第5行引入android.util.Log包第8行定義標簽。標簽幫助用戶在LogCat中找到目標程序生成的日志信息,同時也能夠利用標簽對日志進行過濾第14行記錄一個詳細信息,Log.v()函數(shù)的第一個參數(shù)是日志的標簽,第二個參數(shù)是實際的信息內(nèi)容第15行到第18行分別產(chǎn)生了調(diào)試信息、通告信息、警告信息和錯誤信息Log.v(TAG,"Verbose");Log.d(TAG,"Debug");Log.i(TAG,"Info");Log.w(TAG,"Warn");Log.e(TAG,"Error");}}26程序調(diào)試LogCatLogCat工程的運行結
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年中國六位機械計數(shù)器市場調(diào)查研究報告
- 2025年轉(zhuǎn)向中間臂支架項目可行性研究報告
- 常州2025年江蘇常州市衛(wèi)生健康委員會直屬事業(yè)單位招聘高層次緊缺專業(yè)人才269人(定期)筆試歷年參考題庫附帶答案詳解
- 2025年生化儀器項目可行性研究報告
- 成都2024年四川成都經(jīng)開區(qū)(龍泉驛區(qū))招聘教育人才11人筆試歷年參考題庫附帶答案詳解
- 2025年智能程序溫控箱項目可行性研究報告
- 2025至2031年中國噴灌機管道行業(yè)投資前景及策略咨詢研究報告
- 2025年雙色底項目可行性研究報告
- 2025至2030年中國袋裝水簡易連接器數(shù)據(jù)監(jiān)測研究報告
- 2025年X射線探測器項目可行性研究報告
- 2024-2030年中國免疫細胞存儲行業(yè)發(fā)展模式及投資戰(zhàn)略分析報告
- 家庭清潔課件教學課件
- 湖南財政經(jīng)濟學院《常微分方程》2023-2024學年第一學期期末試卷
- 2011年公務員國考《申論》真題卷及答案(地市級)
- 《籃球體前變向運球技術》教案(共三篇)
- 多元化評價體系構建
- 部編版六年級下冊道德與法治全冊教案教學設計
- DBJ04∕T 290-2012 袖閥管注漿加固地基技術規(guī)程
- GB/T 17775-2024旅游景區(qū)質(zhì)量等級劃分
- 燈籠彩燈安裝合同范本
- 物流無人機垂直起降場選址與建設規(guī)范
評論
0/150
提交評論