欧美成人精品手机在线观看_69视频国产_动漫精品第一页_日韩中文字幕网 - 日本欧美一区二区

LOGO OA教程 ERP教程 模切知識交流 PMS教程 CRM教程 開發文檔 其他文檔  
 
網站管理員

Android 應用包 apk 的內部結構詳解

admin
2013年2月25日 13:28 本文熱度 4333

Android應用程序會通過一個工具將應用所有的CLASS文件轉換成一個DEX文件,而后Dalvik虛擬機會從其中讀取指令和數據。


Android 是Google開發的基于Linux平臺的開源手機操作系統,每一個Android應用在底層都會對應一個獨立的Dalvik虛擬機實例,其代碼在虛擬機的解釋下得以執行,這個系統發布后大大的方便了用戶的需求。


每一個Android 應用都運行在一個Dalvik虛擬機實例里,而每一個虛擬機實例都是一個獨立的進程空間。虛擬機的線程機制,內存分配和管理。Mutex等等都是依賴底層操作系統而實現的。所有Android應用的線程都對應一個Linux線程,虛擬機因而可以更多的依賴操作系統的線程調度和管理機制。


不同的應用在不同的進程空間里運行,加之對不同來源的應用都使用不同的Linux用戶來運行,可以最大程度的保護應用的安全和獨立運行。Zygote是一個虛擬機進程,同時也是一個虛擬機實例的孵化器,每當系統要求執行一個Android應用程序,Zygote就會FORK出一個子進程來執行該應用程序。


這樣做的好處顯而易見:Zygote進程是在系統啟動時產生的,它會完成虛擬機的初始化,庫的加載,預置類庫的加載和初始化等等操作,而在系統需要一個新的虛擬機實例時。Zygote通過復制自身,最快速的提供個系統。另外,對于一些只讀的系統庫,所有虛擬機實例都和Zygote共享一塊內存區域,大大節省了內存開銷。


應用程序包(APK)被發布到手機上后,運行前會對其中的DEX文件進行優化,優化后的文件被保存到緩存區域(優化后的格式被稱為DEY),虛擬機會直接執行該文件。如果應用包文件不發生變化,DEY文件不會被重新生成。



Android應用程序所使用的編程語言是Java語言,和Java SE一樣,編譯時使用Sun JDK將Java源程序編程成標準的Java字節碼文件(.class文件)。而后通過工具軟件DX把所有的字節碼文件轉成DEX文件(classes.dex)。


該文章在 2013/2/25 13:28:28 編輯過
關鍵字查詢
相關文章
正在查詢...
點晴ERP是一款針對中小制造業的專業生產管理軟件系統,系統成熟度和易用性得到了國內大量中小企業的青睞。
點晴PMS碼頭管理系統主要針對港口碼頭集裝箱與散貨日常運作、調度、堆場、車隊、財務費用、相關報表等業務管理,結合碼頭的業務特點,圍繞調度、堆場作業而開發的。集技術的先進性、管理的有效性于一體,是物流碼頭及其他港口類企業的高效ERP管理信息系統。
點晴WMS倉儲管理系統提供了貨物產品管理,銷售管理,采購管理,倉儲管理,倉庫管理,保質期管理,貨位管理,庫位管理,生產管理,WMS管理系統,標簽打印,條形碼,二維碼管理,批號管理軟件。
點晴免費OA是一款軟件和通用服務都免費,不限功能、不限時間、不限用戶的免費OA協同辦公管理系統。
Copyright 2010-2025 ClickSun All Rights Reserved