APK文件是什么?在android手機(jī)怎么使用?
APK是Android Package的縮寫,即Android安裝包。APK是類似Symbian Sis或Sisx的文件格式。通過將APK文件直接傳到Android模擬器或Android手機(jī)中執(zhí)行即可安裝。
APK文件其實是zip格式,但后綴名被修改為apk,通過UnZip解壓后,可以看到Dex文件,Dex是Dalvik VM executes的全稱,即Android Dalvik執(zhí)行程序,并非Java ME的字節(jié)碼而是Dalvik字節(jié)碼。
一個APK文件結(jié)構(gòu)為:
mete-INF Jar文件中??梢钥吹?br />
res 存放資源文件的目錄
AndroidManifest.xml 程序全局配置文件
classes.dex Dalvik字節(jié)碼
resources.arsc 編譯后的二進(jìn)制資源文件
總結(jié)下我們發(fā)現(xiàn)Android在運(yùn)行一個程序時首先需要UnZip,然后類似Symbian那樣直接,和Windows Mobile中的PE文件有區(qū)別,這樣做對于程序的保密性和可靠性不是很高,通過dexdump命令可以反編譯,但這樣做符合發(fā)展規(guī)律,微軟的 Windows Gadgets或者說WPF也采用了這種構(gòu)架方式。
在Android平臺中dalvik vm的執(zhí)行文件被打包為apk格式,最終運(yùn)行時加載器會解壓然后獲取編譯后的androidmanifest.xml文件中的permission分支相關(guān)的安全訪問,但仍然存在很多安全限制,如果你將apk文件傳到/system/app文件夾下會發(fā)現(xiàn)執(zhí)行是不受限制的。最終我們平時安裝的文件可能不是這個文件夾,而在android rom中系統(tǒng)的apk文件默認(rèn)會放入這個文件夾,它們擁有著root權(quán)限。
當(dāng)前共有
人發(fā)表了評論.