no-img
سامنتا

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


سامنتا
دانلودهای ویژه
اطلاعیه های سایت

ادامه مطلب

معماری اندروید
zip
فروردین ۲۱, ۱۳۹۵
دانلود آموزش های فارسی رایگان در کانال سامنتا

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


اندروید دسته ای از کامپوننت های خاص خود را دارد که حدودا" به پنج پخش مختلف و چهار لایه تقسیم شده اند .
در دیاگرام زیر میتوانید این بخش ها را مشاهده کنید که به بررسی هر کدام میپردازیم :

آموزش ویدیویی این قسمت برای راحتی شما عزیزان اضافه شد 

لطفا با خرید خود از ما حمایت کنید 

۲,۵۰۰ تومان – خرید

معماری سیستم اندورید

معماری سیستم اندروید

لایه ی Linux Kernel در معماری اندروید

پایین ترین لایه ی اندروید هسته ی لینوکس آن میباشد . همه میدانیم که هسته ی اصلی اندروید ، لینوکس میباشد . در این لایه Linux 3.6 به همراه  115 افزونه ی آن فعالیت میکند که یک لایه ی انتزاعی میان دستگاه و سخت افزارهای آن مثل دوربین ، کیبورد ، صفحه ی نمایش و … میسازد. همچنین هسته ی لینوکسی در کنترل و شناسایی درایورهای شبکه و همچنین آرایه ی عظیمی از درایورهای سخت افزاری های متنوع ، بسیار خوب عمل میکند . همین هسته ی سبک و قدرتمند ، باعث میشود در نهایت اندروید بعنوان یک سیستم عامل قدرتمند ، وظایف خود را به درستی انجام دهد .

لایه Libraries در معماری اندروید

در لایه بالاتر از linux kernel ، لایه ی دیگری وجود دارد که کتابخانه های مورد نیاز اندروید در آنجا قرار دارد . کتابخانه هایی مانند پایگاه داده SQLite ( برای ذخیره و بازیابی داده ) ، کتابخانه هایی برای ضبط و پخش صدا  ، کتابخانه های مربوط به شبکه و اینترنت و …. کمک اصلی به سیستم عامل اندروید توسط این لایه انجام میگیرد .

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

کتابخانه های زیر که بر مبنای جاوا هستند مخصوص توسعه اندروید هستند :

  • android.app دسترسی به مدل برنامه های اندروید را فراهم میکند و سنگ بنای تمام برنامه های اندرویدی میباشد 
  • android.content برای رد و بدل کردن اطلاعات و محتوای بین برنامه به کار میرود و این کار را آسان تر میکند 
  • android.database دسترسی به محتویات قابل ذخیره و مدیریت پایگاه داده ی SQLite 
  • android.opengl برای تجزیه و تحلیل گرافیک سه بعدی و دو بعدی اندروید 
  • android.os دسترسی به سرویس های اصلی اندروید را برای برنامه ها فراهم میکند سرویس های همچون پیام های سیستمی و سرویس های سیستمی و پیش پردازش ها 
  • android.text برای نمایش و دستکاری متن های نمایشی 
  • android.view قسمت اصلی رابط گرافیکی اندروید 
  • android.widget با استفاده از این کتابخانه قسمت های گرافیکی از پیش ساخته شده ای که شامل دکمه و لایه و دکمه رادیو و پخش و … میباشد که برای راحتی کاربر طراحی و ساخته میشوند
  • android.webkit کتابخانه ی مرورگر اینترنتی اندروید که هسته ی مرورگر اندروید رو تشکیل میدهد.

علاوه بر کتابخانه هایی که معرفی شد کتابخانه های دیگری در Android Runtime هستند که بر اساس c و c++ هستند. توجه کنید : کتابخانه های بالا بر مبنای زبان برنامه نویسی جاوا هستند که در بخش android runtime اندروید قرار دارند
Android Runtime

سومین بخش از قسمت های مختلف هسته ی اندروید که در لایه ی دوم یعنی Libraries قرار میگیرد . (شمارش بخش و لایه ها از پایین به بالا در نظر گرفته شده است) در این بخش یک قسمت کلیدی به نام ماشین دالویک ( Dalvik Virtual Machine ) وجود دارد . ماشین مجازی جاوا که برای هسته ی اندروید طراحی شده است و وظیفه ی پردازش کل اندروید را دارد و مثل مغز انسان برای اندروید میباشد  ماشین مجازی دالویک توسط دان بورنستین نوشته شده است که بخاطیر شغل ماهیگیری او این نام روی ماشین گذاشته شده است و برخلاف اکثر ماشین های جاوا که ماشین پشته ای هستند ماشین دالویک مبتنی بر رجیستری هست . توضیح  تکمیلی : همه میدانیم که برنامه های اندرویدی باید با جاوا نوشته شوند و کدهای جاوا هیچ وابستگی به سیستم ندارند و کدهای نوشته شده باید با ماشین مجازی مخصوص پردازش شوند . یعنی ممکن است کدهایی که برای برنامه ای در اندروید مینویسیم با کدهایی که برای یک برنامه ویندوزی مینویسیم یکسان باشد . ولی کارآیی و استفاده ی آنها تفاوت دارد و مهمترین مورد ماشینی هست که این کدها را میفهمد  در اینجا کدهای نوشته شده ی یا تولید شده ی جاوایی را که فایل dex. هستند ماشین دالویک میفهمد و پردازش میکند  در نهایت برنامه در اندروید نصب و اجرا میشود .  دالویک از هسته ی لینوکسی استفاده هایی نظیر مدیریت حافظه ، مدیریت نخ ها یا چندنخی ( multi-threading ) میکند. دالویک باعث میشود که هر برنامه ی اندرویدی پردازش خاص خودش را اجرا کند .

لایه ی Application Framework  در معماری اندروید

این لایه خدمات سطح بالایی را در قالب کلاس های جاوا فراهم میکند . توسعه دهندگان اندرویدی میتوانند از این سرویس ها در برنامه نویسی اندرویدی کمک بگیرند

لایه ی application framework شامل قسمت های کلیدی زیر میباشد  :

Activity Manager کنترل تمام جنبه های چرخه ی حیات برنامه های اندرویدی و فعالیت های آنها

Content Providers اجازه میدهد که برنامه ها محتوای خود را بین برنامه های دیگر به اشتراک بگذارند

Resource Manager دسترسی و مدیریت منابع همچون لایه ها ، رشته ها ، تنظیمات و رنگ ها و ….

Notifications Manager نمایش و کنترل ناتیفیکشن در اندروید توسط برنامه

View System مجموعه ای قابل توسعه برای تهیه ظاهر برنامه ها ( user interface )

لایه ی Applications در معماری اندروید 

این لایه در بالاترین سطح اندروید قرار دارد و هر چیزی که کاربر نهایی و استفاده کننده ی اندروید مشاهده میکند در این قسمت هست . تمام برنامه هایی که شما مینویسید و کاربر میتواند نصب کند و استفاده کند در این قسمت هستند . مثل برنامه های خود اندروید مثل پیام رسانی و مخاطبین و تماس و …



درباره نویسنده

تیم سامنتا 72 نوشته در سامنتا دارد . مشاهده تمام نوشته های

دیدگاه ها


پاسخ دهید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *