apk目錄結構
⑴ APK文件放在手機里的哪個文件夾里
手機上下載 的apk文件一般是在Downloads中,當然,這個下載路徑是可以設定的。
⑵ Android系統文件夾結構詳細解析!
\\system\\app
這個裡面主要存放的是常規下載的應用程序,可以看到都是以APK格式結尾的文件。在這個文件夾下的程序為系統默認的組件,自己安裝的軟體將不會出現在這里,而是\\data\\文件夾中。下面是詳細的介紹:
\\system\\app\\AlarmClock.apk 鬧鍾
\\system\\app\\AlarmClock.odex
\\system\\app\\Browser.apk 瀏覽器
\\system\\app\\Browser.odex
\\system\\app\\Bugreport.apk Bug報告
\\system\\app\\Bugreport.odex
\\system\\app\\Calculator.apk 計算器
\\system\\app\\Calculator.odex
\\system\\app\\Calendar.apk 日歷
\\system\\app\\Calendar.odex
\\system\\app\\CalendarProvider.apk 日歷提供
\\system\\app\\CalendarProvider.odex
\\system\\app\\Camera.apk 照相機
\\system\\app\\Camera.odex
\\system\\app\\com.amazon.mp3.apk 亞馬遜音樂
\\system\\app\\Contacts.apk 聯系人
\\system\\app\\Contacts.odex
\\system\\app\\DownloadProvider.apk 下載提供
\\system\\app\\DownloadProvider.odex
\\system\\app\\DrmProvider.apk DRM數字版權提供
\\system\\app\\DrmProvider.odex
\\system\\app\\Email.apk 電子郵件客戶端
\\system\\app\\Email.odex
\\system\\app\\FieldTest.apk 測試程序
\\system\\app\\FieldTest.odex
\\system\\app\\GDataFeedsProvider.apk GoogleData提供
\\system\\app\\GDataFeedsProvider.odex
\\system\\app\\Gmail.apk Gmail電子郵件
\\system\\app\\Gmail.odex
\\system\\app\\GmailProvider.apk Gmail提供
\\system\\app\\GmailProvider.odex
\\system\\app\\GoogleApps.apk 谷歌程序包
\\system\\app\\GoogleApps.odex
\\system\\app\\GoogleSearch.apk 搜索工具
\\system\\app\\GoogleSearch.odex
\\system\\app\\gtalkservice.apk GTalk服務
\\system\\app\\gtalkservice.odex
\\system\\app\\HTMLViewer.apk HTML查看器
\\system\\app\\HTMLViewer.odex
\\system\\app\\IM.apk 即使通訊組件包含MSN、yahoo通
\\system\\app\\ImCredentialProvider.apk
\\system\\app\\ImProvider.apk
\\system\\app\\ImProvider.odex
\\system\\app\\Launcher.apk 啟動載入器
\\system\\app\\Launcher.odex
\\system\\app\\Maps.apk 電子地圖
\\system\\app\\Maps.odex
\\system\\app\\MediaProvider.apk 多媒體播放提供
\\system\\app\\MediaProvider.odex
\\system\\app\\Mms.apk 簡訊、彩信
\\system\\app\\Mms.odex
\\system\\app\\Music.apk 音樂播放器
\\system\\app\\Music.odex
\\system\\app\\MyFaves.apk T-Mobile MyFaves程序
\\system\\app\\MyFaves.odex
\\system\\app\\PackageInstaller.apk apk安裝程序
\\system\\app\\PackageInstaller.odex
\\system\\app\\Phone.apk 電話撥號器
\\system\\app\\Phone.odex
\\system\\app\\Settings.apk 系統設置
\\system\\app\\Settings.odex
\\system\\app\\SettingsProvider.apk 設置提供
\\system\\app\\SettingsProvider.odex
\\system\\app\\SetupWizard.apk 設置向導
\\system\\app\\SetupWizard.odex
\\system\\app\\SoundRecorder.apk 錄音工具
\\system\\app\\SoundRecorder.odex
\\system\\app\\Street.apk 街景地圖
\\system\\app\\Street.odex
\\system\\app\\Sync.apk 同步程序
\\system\\app\\Sync.odex
\\system\\app\\Talk.apk 語音程序
\\system\\app\\Talk.odex
\\system\\app\\TelephonyProvider.apk 電話提供
\\system\\app\\TelephonyProvider.odex
\\system\\app\\Updater.apk 更新程序
\\system\\app\\Updater.odex
\\system\\app\\Vending.apk 製造商信息
\\system\\app\\Vending.odex
\\system\\app\\VoiceDialer.apk 語音撥號器
\\system\\app\\VoiceDialer.odex
\\system\\app\\YouTube.apk Youtube視頻
\\system\\app\\YouTube.odex
\\system\\bin
這個目錄下的文件都是系統的本地程序,從bin文件夾名稱可以看出是binary二進制的程序,裡面主要是Linux系統自帶的組件,Android手機網就主要文件做下簡單的分析介紹:
\\system\\bin\\akmd
\\system\\bin\\am
\\system\\bin\\app_process 系統進程
\\system\\bin\\dalvikvm Dalvik虛擬機宿主
\\system\\bin\\dbus-daemon 系統BUS匯流排監控
\\system\\bin\\debuggerd 調試器
\\system\\bin\\debug_tool 調試工具
\\system\\bin\\dexopt DEX選項
\\system\\bin\\dhcpcd DHCP伺服器
\\system\\bin\\mpstate 狀態抓取器
\\system\\bin\\mpsys 系統抓取器
\\system\\bin\\dvz
\\system\\bin\\fillup
\\system\\bin\\flash_image 快閃記憶體映像
\\system\\bin\\hciattach
\\system\\bin\\hcid HCID內核
\\system\\bin\\hostapd
\\system\\bin\\hostapd_cli
\\system\\bin\\htclogkernel
\\system\\bin\\input
\\system\\bin\\installd
\\system\\bin\\itr
\\system\\bin\\linker
\\system\\bin\\logcat Logcat日誌列印
\\system\\bin\\logwrapper
\\system\\bin\\mediaserver
\\system\\bin\\monkey
\\system\\bin\\mountd 存儲掛載器
\\system\\bin\\netcfg 網路設置
\\system\\bin\\ping Ping程序
\\system\\bin\\playmp3 MP3播放器
\\system\\bin\\pm 包管理器
\\system\\bin\\qemud QEMU虛擬機
\\system\\bin\\radiooptions 無線選項
\\system\\bin\\rild RIL組件
\\system\\bin\\sdptool
\\system\\bin\\stil
\\system\\bin\\service
\\system\\bin\\servicemanager 服務管理器
\\system\\bin\\sh
\\system\\bin\\ssltest SSL測試
\\system\\bin\\surfaceflinger 觸摸感應驅動
\\system\\bin\\svc 服務
\\system\\bin\\system_server
\\system\\bin\\telnetd Telnet組件
\\system\\bin\\toolbox
\\system\\bin\\wlan_loader
\\system\\bin\\wpa_cli
\\system\\bin\\wpa_supplicant
\\system\\etc
從文件夾名稱來看保存的都是系統的配置文件,比如APN接入點設置等核心配置。
\\system\\etc\\apns-conf.xml APN接入點配置文件
\\system\\etc\\AudioFilter.csv 音頻過濾器配置文件
\\system\\etc\\AudioPara4.csv
\\system\\etc\\bookmarks.xml 書簽資料庫
\\system\\etc\\dbus.conf 匯流排監視配置文件
\\system\\etc\\dhcpcd
\\system\\etc\\event-log-tags
\\system\\etc\\favorites.xml 收藏夾
\\system\\etc\\firmware 固件信息
\\system\\etc\\gps.conf GPS設置文件
\\system\\etc\\hcid.conf內核HCID配置文件
\\system\\etc\\hosts 網路DNS緩存
\\system\\etc\\init.goldfish.sh
\\system\\etc\\location 定位相關
\\system\\etc\\mountd.conf 存儲掛載配置文件
\\system\\etc\\NOTICE.html 提示網頁
\\system\\etc\\permissions.xml 許可權許可
\\system\\etc\\pvplayer.conf
\\system\\etc\\security
\\system\\etc\\wifi WLAN相關組件
\\system\\etc\\dhcpcd\\dhcpcd-hooks
\\system\\etc\\dhcpcd\\dhcpcd-run-hooks
\\system\\etc\\dhcpcd\\dhcpcd.conf
\\system\\etc\\dhcpcd\\dhcpcd-hooks\\01-test
\\system\\etc\\dhcpcd\\dhcpcd-hooks\\20-dns.conf
\\system\\etc\\dhcpcd\\dhcpcd-hooks\\95-configured
\\system\\etc\\firmware\\brf6300.bin
\\system\\etc\\location\\gps
\\system\\etc\\location\\gps\\location 定位相關
\\system\\etc\\location\\gps\\nmea GPS數據解析
\\system\\etc\\location\\gps\\properties
\\system\\etc\\security\\cacerts.bks
\\system\\etc\\security\\otacerts.zip OTA下載驗證
\\system\\etc\\wifi\\Fw1251r1c.bin
\\system\\etc\\wifi\\tiwlan.ini
\\system\\etc\\wifi\\wpa_supplicant.conf WPA驗證組件
\\system\\fonts
字體文件夾,除了標准字體和粗體、斜體外可以看到文件體積最大的可能是中文字型檔,或一些unicode字型檔,從T-Mobile G1上可以清楚的看到顯示簡體中文正常,其中DroidSansFallback.ttf文件大小
\\system\\fonts\\DroidSans-Bold.ttf
\\system\\fonts\\DroidSans.ttf
\\system\\fonts\\DroidSansFallback.ttf
\\system\\fonts\\DroidSansMono.ttf
\\system\\fonts\\DroidSerif-Bold.ttf
\\system\\fonts\\DroidSerif-BoldItalic.ttf
\\system\\fonts\\DroidSerif-Italic.ttf
\\system\\fonts\\DroidSerif-Regular.ttf
\\system\\framework
framework主要是一些核心的文件,從後綴名為jar可以看出是是系統平台框架。
\\system\\framework\\am.jar
\\system\\framework\\am.odex
\\system\\framework\\android.awt.jar AWT庫
\\system\\framework\\android.awt.odex
\\system\\framework\\android.policy.jar
\\system\\framework\\android.policy.odex
\\system\\framework\\android.test.runner.jar
\\system\\framework\\android.test.runner.odex
\\system\\framework\\com.google.android.gtalkservice.jar GTalk服務
\\system\\framework\\com.google.android.gtalkservice.odex
\\system\\framework\\com.google.android.maps.jar 電子地圖庫
\\system\\framework\\com.google.android.maps.odex
\\system\\framework\\core.jar 核心庫,啟動桌面時首先載入這個
\\system\\framework\\core.odex
\\system\\framework\\ext.jar
\\system\\framework\\ext.odex
\\system\\framework\\framework-res.apk
\\system\\framework\\framework-tests.jar
\\system\\framework\\framework-tests.odex
\\system\\framework\\framework.jar
\\system\\framework\\framework.odex
\\system\\framework\\input.jar 輸入庫
\\system\\framework\\input.odex
\\system\\framework\\itr.jar
\\system\\framework\\itr.odex
\\system\\framework\\monkey.jar
\\system\\framework\\monkey.odex
\\system\\framework\\pm.jar 包管理庫
\\system\\framework\\pm.odex
\\system\\framework\\services.jar
\\system\\framework\\services.odex
\\system\\framework\\ssltest.jar
\\system\\framework\\ssltest.odex
\\system\\framework\\svc.jar 系統服務
\\system\\framework\\svc.odex
\\system\\lib
lib目錄中存放的主要是系統底層庫,如平台運行時庫。
\\system\\lib\\libaes.so
\\system\\lib\\libagl.so
\\system\\lib\\libandroid_runtime.so Android運行時庫
\\system\\lib\\libandroid_servers.so 系統服務組件
\\system\\lib\\libaudio.so 音頻處理
\\system\\lib\\libaudioeq.so EQ均衡器
\\system\\lib\\libaudioflinger.so 音頻過濾器
\\system\\lib\\libbluetooth.so 藍牙組件
\\system\\lib\\libc.so
\\system\\lib\\libcamera.so 超相機組件
\\system\\lib\\libcameraservice.so
\\system\\lib\\libcorecg.so
\\system\\lib\\libcrypto.so 加密組件
\\system\\lib\\libctest.so
\\system\\lib\\libcutils.so
\\system\\lib\\libdbus.so
\\system\\lib\\libdl.so
\\system\\lib\\libdrm1.so DRM解析庫
\\system\\lib\\libdrm1_jni.so
\\system\\lib\\libdvm.so
\\system\\lib\\libexif.so
\\system\\lib\\libexpat.so
\\system\\lib\\libFFTEm.so
\\system\\lib\\libGLES_CM.so
\\system\\lib\\libgps.so
\\system\\lib\\libhardware.so
\\system\\lib\\libhgl.so
\\system\\lib\\libhtc_ril.so
\\system\\lib\\libicudata.so
\\system\\lib\\libicui18n.so
\\system\\lib\\libicuuc.so
\\system\\lib\\liblog.so
\\system\\lib\\libm.so
\\system\\lib\\libmedia.so
\\system\\lib\\libmediaplayerservice.so
\\system\\lib\\libmedia_jni.so
\\system\\lib\\libnativehelper.so
\\system\\lib\\libnetutils.so
\\system\\lib\\libOmxCore.so
\\system\\lib\\libOmxH264Dec.so
\\system\\lib\\libpixelflinger.so
\\system\\lib\\libpvasf.so
\\system\\lib\\libpvasfreg.so
\\system\\lib\\libpvauthor.so
\\system\\lib\\libpvcommon.so
\\system\\lib\\libpvdownload.so
\\system\\lib\\libpvdownloadreg.so
\\system\\lib\\libpvmp4.so
\\system\\lib\\libpvmp4reg.so
\\system\\lib\\libpvnet_support.so
\\system\\lib\\libpvplayer.so
\\system\\lib\\libpvrtsp.so
\\system\\lib\\libpvrtspreg.so
\\system\\lib\\libqcamera.so
\\system\\lib\\libreference-ril.so
\\system\\lib\\libril.so
\\system\\lib\\librpc.so
\\system\\lib\\libsgl.so
\\system\\lib\\libsonivox.so
\\system\\lib\\libsoundpool.so
\\system\\lib\\libsqlite.so
\\system\\lib\\libssl.so
\\system\\lib\\libstdc++.so
\\system\\lib\\libsurfaceflinger.so
\\system\\lib\\libsystem_server.so
\\system\\lib\\libthread_db.so
\\system\\lib\\libUAPI_jni.so
\\system\\lib\\libui.so
\\system\\lib\\libutils.so
\\system\\lib\\libvorbisidec.so
\\system\\lib\\libwbxml.so
\\system\\lib\\libwbxml_jni.so
\\system\\lib\\libwebcore.so
\\system\\lib\\libwpa_client.so
\\system\\lib\\libxml2wbxml.so
\\system\\lib\\libz.so
\\system\\lib\\moles
\\system\\lib\\moles\\wlan.ko
⑶ 安卓應用的程序部分僅僅包含在APK根目錄的classes.dex文件裡面嗎
1).AndroidManifest.xml
該文件是每個應用都必須定義和包含的,它描述了應用的名字、版本、許可權、引用的庫文件等等信息,如要把apk上傳到Google
Market上,也要對這個xml做一些配置。在apk中的AndroidManifest.xml是經過壓縮的,可以通過AXMLPrinter2工具解開,具體命令為:java
-jar AXMLPrinter2.jar AndroidManifest.xml
目錄
assets目錄可以存放一些配置文件,這些文件的內容在程序運行過程中可以通過相關的API獲得。具體的方法可以參考SDK中的例子:在sdk的
\SDK\1.6\android-sdk-windows-1.6_r1\platforms\android-1.6\samples\ApiDemos
例子中,有個com.example..android.apis.content
的例子,在這個例子中他把一個text文件放到工程的asset目錄下,然後把這個txt當作普通文件處理。處理的過程在ReadAsset.java
中。同理,asset也可以放置其他文件。
(6).classes.dex文件
classes.dex是java源碼編譯後生成的java位元組碼文件。但由於Android使用的dalvik虛擬機與標準的java虛擬機是不兼容的,dex文件與class文件相比,不論是文件結構還是opcode都不一樣。目前常見的java反編譯工具都不能處理dex文件。Android模擬器中提供了一個dex文件的反編譯工具,dexmp。用法為首先啟動Android模擬器,把要查看的dex文件用adb
push上傳的模擬器中,然後通過adb shell登錄,找到要查看的dex文件,執行dexmp
xxx.dex。另,有人介紹到Dedexer是目前在網上能找到的唯一一個反編譯dex文件的開源工具,需要自己編譯源代碼。classes.dex文件是Java源碼編譯後的代碼文件。通常該文件里都有單詞、語句需要漢化。
⑷ APK文件放在手機里的哪個文件夾里
手機上下載 的apk文件一般是在Downloads中,當然,這個下載路徑是可以設定的。
⑸ android apk包使用apktool解包 怎麼樣才能還原包的目錄結構,不需要將源碼反編譯回來。
直接修改APK後綴為來rar,然後自解壓可以得到里邊的一些資源,用apktool的話 給你一個帖子,你看看,http://www.cnblogs.com/playing/archive/2010/08/11/1797696.html
⑹ apk游戲的APK文件結構
1. META-INF (註:Jar文件中常可以看到);
2. res (註:存放資源文件的目錄) ;
3. AndroidManifest.xml (註:程序全局配置文件) ;
4. classes.dex (註:Dalvik位元組碼);
5. resources.arsc (註:編譯後的二進制資源文件)。
⑺ 關於游戲和安裝包文件結構
APK安裝包全名稱是Android application package,它包含了應用的二進制代碼、資源、配置文件等。
每一個安裝到Android系統上的應用程序都會被編譯打包為一個單獨的文件,後綴名為.apk。但APK文件其實就是Zip格式,因此我們可以用WinRAR或WinZip之類的壓縮軟體來打開。
對於漢化來說建議將apk這個擴展名關聯到壓縮軟體,那雙擊APK文件時可以直接打開。方法如下:先打開WinRAR -> 選項 -> 設置,再切換到「綜合」標簽頁,在「用戶自定義壓縮文件擴展名」下面輸入apk,按確定即可,如下圖:
當我們關聯後就可以直接打開APK文件了,但關聯後如何安裝APK文件呢,其實您可以使用"右擊 -> 打開方式"來進行安裝。如果打開方式處未出現安裝器的選項,您可以手動關聯一次就會長期顯示了。
二、APK文件的結構是如何呢?
打開APK文件後可看到它裡面是樹狀的目錄結構,而它每一個目錄都是組成該APK文件的必要組件,但assets目錄就並非每個APK文件都有的,具體要根據該APK文件要實現的功能而定。下面以BBE SonicMax Pro為例來講解
⑻ android系統中的app安裝後的各個文件路徑在哪裡
在系統中system/app文件夾中。
在android系統中安裝軟體時,系統會將其安裝在設定好內的路徑當中,即容system/app路徑。後來下載的APP可以卸載,但系統自帶的APP不能卸載,否則會引發系統的崩潰。
在安裝APP時,也可以直接將文件復制到手機里(手機內存、Storage Card都可以),在手機上執行該CAB文件即可安裝。
(8)apk目錄結構擴展閱讀
android系統中的app不同格式安裝:
1、CAB格式,直接將文件到手機里,都可以在手機上執行該CAB文件即可安裝。
2、EXE格式,EXE格式的程序可分為手機上直接運行(即綠色軟體的形式)和連接電腦同步安裝2種形式。
3、免安裝軟體(綠色軟體),將文件直接拷貝到手機里(手機內存、Storage Card都可以)即可運行。這種軟體在網上下載時一般是RAR或ZIP格式壓縮包,只需先在電腦上解壓,將解壓出來的文件夾拷貝到手機里即可運行。
4、Cpl文件,將文件直接拷貝到手機windows目錄下,即可在設置中出現相應的選項。如SoftKeyAppleEx.cpl對應會出現軟體設置選項。