اندروید از یک ماشین مجازی تحت جاوا برای اجرای نرم افزارها استفاده میکنه، که Dalvik Virtual Machine نامیده میشود.
--------------------------------------------------------------------------------------------------------
برنامه های اندروید، با پسوند apk ساخته میشوند. این برنامه ها برای اجرا، از انجین دلویک (Dalvik) استفاده میکنند. به گونه ای که با اجرای نرم افزار، ابتدا انجین دلویک، برنامه ها را چک کرده و از ساختار آنها مطلع میشود و با توجه به ساختار آنها روند کاری خود را طی میکند.
ساختار برنامه ها در اندروید به 2 گونه هست
ساختار Odex
ساختار Deodex
ماشین مجازی دلویک، ابتدا به دنبال فایل هایی میگردد که برای آن کد نویسی شده اند.
محل قرار گیری این فایل ها، ساختار اُدکس را با دئودکس متمایز میسازد.
در فایل های دئودکس، فایلی به نام Classes.dex وجود دارد که درون نرم افزار فشرده شده است.
این فایل حاوی تمامی کدها و اطلاعات اساسی نرم افزار مربوطه هست که توسط دلویک باید خوانده شود.
برای اجرای نرم افزار، ابتدا باید این فایل در حافظه ی کش دلویک، اکسترکت شده و بعد خوانده شود، این روند برای هر بار اجرا شدن نرم افزار با ساختار دئودکس رخ میدهد. معمولا زمانی برای اکسترکت شدن این فایل صرف خواهد شد.
اما در فایل های odex اتفاق دیگری می افتد، در این ساختار، دیگر خبری از classes.dex نیست، به طوری که اطلاعاتی که برای انجین دلویک طراحی شده اند، در کنار نرم افزار و با نام مشابه نرم افزار با پسوند odex، قرار داده میشوند.
این فایل ها هیچ گونه فشردگی ندارند و انجین دلویک مستقیما آنها را مورد بررسی قرار میدهد.
ماشین مجازی دلویک، در فایل های ادکس، زمانی را برای اکسترکت کردن فایل های مورد نیازش تلف نمیکند، و مستقیما فایل های odex کنار نرم افزار را میخواند.
به همین دلیل هست که در سیستم عامل های با ساختار ادکس، غالبا سرعت کار کردن نیز بالاتر میباشد. ( فقط به دلیل همان زمان تلف شدن برای اکسترکت شدن فایل ها)
--------------------------------------------------------------------------------------------------------------
فایل های سیستمی اندروید.
هسته اندروید درون پوشه فریمورک هست، کنترل کننده ی بیشتر محیط اندروید، فایل framework.jar میباشد.
فایل های jar، که خود پسوندی از فایل های جاوا هستند، نیز با دو ساختار odex و deodex ارائه میشوند.
-----------------------------------------------------------------------------------------------------------
فایل های اجرایی وابسته و مستقل:
مجیط های برنامه های اجرایی در اندروید به دو صورت طراحی میشوند، وابسته و مستقل.
فایل های وابسته ، به نرم افزار دیگری وابسته هستند، که از آن نرم افزار برای تکامل کارایی خود از آن استفاده میکنند.
برنامه ی دیالر تلفن، پیغام رسانی،... برنامه هایی که دارای tab میباشند، اصولا به فایل twframework-res.apk وابسته هستند. در هنگام ویرایش این فایل ها باید این تفاوت، مد نظر قرار بگیرد.
فایل های مستقل هم، همانگونه که از نامشان پیداست، در هنگام عملکرد به نرم افزار دیگری نیاز ندارند.
-----------------------------------------------------------------------------------------------------------
ساختار گرافیک در اندروید:
اندروید از ساختار گرافیکی PNG و ناین PNG
كد:
graphic.png
graphic.9.png