اندروید

|

معماری اندروید:

سیستم عامل اندروید از دسته نرم افزار هایی است که تقریبا به 5 بخش تقسیم شده است و 4 لایه اصلی در دیاگرام معماری زیر نمایش داده شده است:

اندروید-2

هسته لینوکس:

در پایین لایه ها لینوکس قرار دارد.لینوکس 3.6 با تقریبا 115 پچ.این سطح از انتزاع بین سخت افزار دستگاه را فراهم میکند و شامل تمام درایورهای ضروری سخت افزاری مانند,دوربین,صفحه کلید,نمایش و غیره.همچنین هسته تمام چیزهایی که لینوکس در آن خوب است مانند شبکه و آرایه وسعی از درایورهای دستگاه ها که رنج ارتباط با سخت افزار محیطی را میگیرد.

کتابخانه ها:

در بالای قسمت هسته لینوکس مجموعه ایی از کتابخانه ها وجود دارد که شامل موتور جست و جوگر اپن سورس webkit , کتابخانه شناخته شده libc ,پایگاه داده SQlite که یک مخزن مفید برای ذخیره و اشتراک داده برنامه می باشد,کتابخانه هایی برای اجرا و رکورد صدا وتصویر,کتابخانه های ssl مسئول امنیت اینترنتی و غیره.

کتابخانه های اندروید:

این گروه شامل کتابخانه هایی بر پایه ی جاوا هستند که به طور خاص برای توسعه اندروید می باشند.نمونه هایی از کتابخانه های این گروه شامل کتابخانه های چهارچوب برنامه به علاوه آن هایی که ساختن رابط کاربری را تسهیل می کنند,طراحی گرافیک و دسترسی به پایگاه داده.یک خلاصه از بعضی کتابخانه های هسته ای کلیدی اندروید در دسترس برای توسعه به شرح زیر است:

  1. app:دسترسی به مدل برنامه را فراهم می کند و اساس تمام برنامه های اندروید است.
  2. content:تسهیل دسترسی به محتوا و نشر و پیام رسانی بین برنامه ها و اجزای برنامه.
  3. database:برای دسترسی به داده منتشر شده به وسیله ارایه دهندگان محتوا استفاده می شود و شامل کلاس های مدیریت پایگاه داده می باشد.
  4. opengl:رابط جاوا برای رندر کردن گرافیکی opengl es3d api
  5. os:برنامه هایی را شامل می شود که دسترسی به خدمات سیستم عامل استاندارد مانند پیام رسانی و سرویس های سیستم و ارتباط بین فرآیند را فراهم می کند.
  6. text:برای رندر و دستکاری متن بر روی صفحه نمایش دستگاه مورد استفاده قرار میگیرد.
  7. view:یک کلکسیون کامل از اجزای رابط کاربریه از پیش ساخته شده مانند دکمه ها و برچسب ها و لیست نمایش ها و مدیران طرح و دکمه های رادیویی و غیره.
  8. webkit:یک دسته از کلاس های در نظر گرفته شده که اجازه می دهند قابلیت های مرورگری-وب در برنامه ها ساخته شود.

پس از تحت پوشش قرار دادن کتابخانه های با هسته بر پایه جاوا در زمان اجرای اندروید اکنون زمان آن است که توجه خود را به کتابخانه هایی بر پایه c و c++ در این دسته از نرم افزار اندرویدی جلب کنیم.

حین اجرای اندروید:

این سومین قسمت از معماری است و قابل دسترسی در دومین لایه از پایین است.این بخش یک جزء کلیدی به نام dalvik virtual machine را فراهم می کند که از نوع ماشین مجازی جاوا است که به صورت مخصوص برای اندروید طراحی شده و بهینه سازی شده است.dalvik vm از ویژگی های اصلی لینوکس مانند میدیریت حافظه hyper-threading استفاده می کند,که در زبان جاوا ذاتی می باشد.dalvik vm هر برنامه ی اندرویدی را قادر به اجرا در پروسه خودش همراه با نمونه خود از ماشین مجازی dalvik می سازد.زمان اجرا اندروید هچنین مجموعه ای از کتابخانه های اصلی را فراهم می کند که توسعه دهندگان برنامه اندرویدی را قادر می سازد تا با استفاده از زبان برنامه نویسی استاندارد جاوا برنامه های اندرویدی را بنویسد.

چهارچوب برنامه:

لایه ی چهارچوب برنامه بسیاری از خدمات سطح بالاتر در شکل کلاس های جاوا را به برنامه ها فراهم می سازد.چهارچوب برنامه شامل خدمات کلیدی زیر است:

  1. Activity manager:تمام جنبه های چرخه حیات برنامه و فعالیت دسته را کنترل میکند.
  2. Content providers:به برنامه اجازه نشر و اشتراک داده با برنامه های دیگر را می دهد.
  3. Notification manager:به برنامه ها اجازه نمایش هشدارها و اطلاعیه ها به کاربر را می دهد.
  4. View system:یک مجموعه توسعه پذیر از دیدگاه مورد استفاده برای خلق رابط کاربری برنامه ها.
  5. Resource manager: دسترسی به منابع جاسازی شده غیرفعال مانند رشته ها تنظیمات رنگ و طرح رابط کاربری را فراهم می کند.

برنامه ها:

شما تمام برنامه های اندرویدی را در بالای دسته پیدا خواهید کرد.شما برنامه خود را برای نصب تنها در این لایه می نویسید.مثال هایی از چنین برنمه هایی مانند کتاب اطلاعات تماس,مرورگرها,بازی ها و غیره هستند.

دریافت آخرین مطالب وبلاگ در کانال داتینه

علی نعیمی

علی نعیمی هستم،دارای لیسانس سخت افزار.
از سال 90 بصورت تخصصی به فراگیری زبان سی شارپ پرداختم. در حال حاضر مسلط به سی شارپ، جاوا، پایگاه داده و زبان های تحت وب هستم.

نظرات
نظر بدهید