در این آموزش قصد داریم تا بخش های باقی مانده از Application Framework را معرفی کرده و شناخت خود را نسبت به این لایه از پشته نرم افزاری اندروید(Android Software Stack) کامل کنیم.
[divider]
Implements Content Providers
قسمت بعدی از اجزاء Application Framework بخشی به نام Implements Content Provider است. Content Provider ها اساساً پایگاه های داده ای هستند که به برنامه ها این اجازه را می دهند که اطلاعات قالب بندی شده را ذخیره و اشتراک گذاری کنند. برای مثال، ما می بینیم که برنامه “phone” می تواند به اطلاعات مخاطبان ذخیره شده دسترسی داشته باشد و برای برقراری تماس از شماره تماس آنها استفاده کند. علت این کار این است که اطلاعات مخاطبان در یک Content Provider ذخیره شده است. و حتی بهتر، Content Provider ها طراحی شده اند تا میان برنامه ها کار کنند. در نتیجه نه تنها “شماره گیر” می تواند از اطلاعات “مخاطبان” استفاده کند، بلکه برنامه های دیگر مانند “پیام رسان ها” و دیگر برنامه های رسانه ای جمعی(Social Media Applications) می توانند از این اطلاعات بهره مند شوند. برای درک بهتر، دوباره به سراغ برنامه “شماره گیر” می رویم:
[divider]
Location Manager
بخش بعدی از اجزاء Application Framework بخشی به نام Location Manager است. این بخش به برنامه ها اجازه می دهد که اطلاعات موقعیت مکانی و جا به جایی مکانی، مانند اطلاعاتی که توسط سیستم GPS تولید می شوند را در اختیار داشته باشند. این قابلیت به برنامه ها این امکان را می دهد که وظایف Context-Specific را انجام دهند. وظایفی مثل پیداکردن جهت های جغرافیایی به کمک موقعیت مکانی کنونی وسیله و… برای درک بهتر موضوع به سراغ برنامه “Google Maps” می رویم. این نرم افزار از طریق پرس و جو از Location Manager موقعیت کنونی وسیله را پیدا کرده و سپس نقشه را از محلی که در آن قرار داریم به نمایش می گذارد.
Notification Manager
آخرین بخش از اجزای Application Framework که درباره آن بحث خواهیم کرد، Notification Manager نام دارد. این بخش به برنامه ها این امکان را می دهد که اطلاعات خود را در Notification Bar گوشی قرار دهند. با اینکار برنامه ها می توانند به کاربران خود وقوع رخدادهای خاص در برنامه را اطلاع دهند. به عنوان مثال زمانی که گوشی همراه پیامک جدید دریافت می کند، نرم افزار مربوطه به کمک Notification Manager دریافت پیام جدید را به کاربر اطلاع می دهد. مثال دیگر برای درک کاربرد Notification Manager زمانی است که برنامه ای را به تازگی بر روی تلفن همراه نصب میکنیم. پس از اتمام نصب، در قسمت Notification Bar پیغامی برای آگاه ساختن کاربر نمایش داده می شود. با کشیدن Notification Bar به سمت پایین، جزئیات بیستر درباره پیغام بوجود آمده نمایش داده خواهد شد.
[divider]
خوشبختانه تا به اینجای کار توانستیم با ۳ لایه مهم از پشته ی نرم افزاری اندروید آشنا شویم. این لایه ها از پایین ترین سطح با “Linux Kernel” شروع شد و پس از آن “Libraries” و در بالای آن “Application Framework” قرار داشت. حال می خواهیم به سراغ بالاترین لایه برویم. این لایه “Applications” نام دارد و مربوط به برنامه های نصب شده بر روی وسیله ی اندرویدی می شود. برنامه هایی که ما خواهیم ساخت در این لایه قرار می گیرند و به کمک اجزائی که در لایه های پایین تر قرار دارند، قابلیت های گوناگون وسیله را در اختیار ما قرار می دهند. همانطور که قبلا هم اشاره شد، همراه با سیستم عامل اندروید، مجموعه ای از نرم افزارهای داخلی ارائه شده اند. این مجموعه شامل برنامه هایی مانند “Home” که برای نمایش منوی گوشی استفاده می شود، “Contacts” که برای ذخیره سازی اطلاعات مخاطبان است، “Phone” که همان شماره گیر گوشی است و برای برقراری تماس کاربرد دارد، “Browser” که برای وبگردی استفاده می شود، “Email Reader” که برای خواندن و ارسال ایمیل ساخته شده و بسیاری برنامه های دیگر. یکی از چیزهای خیلی خوب در مورد اندروید این است که برای ساخت هیچکدام از این برنامه ها کدنویسی پیچیده و سختی انجام نشده است! اگر شما نرم افزارهای بهتری برای گوشی خود سراغ دارید که امکانات همین برنامه های پیشفرض را دارد، می توانید برنامه های خود را جانشین این برنامه ها کنید.
خب، اکنون هر آن چیزی که برای آشنایی با پلتفرم اندروید نیاز داشتیم را در اختیار داریم. در آموزش بعدی به سراغ محیط توسعه نرم افزار اندروید خواهیم رفت و با بخش های مختلف و قابلیت های آن آشنا خواهیم شد.