0

آموزش برنامه نویسی اندروید

 
hosseinb68
hosseinb68
کاربر طلایی1
تاریخ عضویت : بهمن 1389 
تعداد پست ها : 1269
محل سکونت : بوشهر

آموزش برنامه نویسی اندروید - قسمت ۳: آشنایی با API های اندروید
دوشنبه 23 دی 1392  2:36 PM

آشنایی با Platform Level و API Level

به طور کلی Platform level شماره ای است که در کنار هر یک از نام دسرها در نسخه های مختلف اندروید مورد استفاده قرار می گیرد و API level عددی است مربوط به API مورد استفاده قرار گرفته در هر یک از نسخه های اندروید به طوریکه شماره API level هر چه بالاتر رود این بدان معنا است که ما به قابلیت های بیشتری در توسعه اندروید دسترسی خواهیم داشت چرا که تیم برنامه نویسان گوگل بیشتر روی توسعه SDK کار کرده و ویژگی های بیشتری را از آن طریق در اختیار توسعه دهندگان قرار داده اند.

به طول مثال نحوه به کار گیری بلوتوث، شتاب سنج و غیره برخی از قابلیت هایی هستند که در API های موجود در SDK اندروید ذخیره شده اند که برخی از این قابلیت ها در نسخه های اولیه اندروید یا وجود نداشته اند و اگر هم وجود داشته اند به صورت ابتدایی بوده اند اما این قابلیت ها در نسخه های بعدی ارتقاء پیدا کرده و بسیاری ویژگی دیگر نیز به این لیست افزوده شده است.

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


جدول تطبیقی Platform Level و API Level

در جدول زیر کلیه اطلاعات مرتبط با نام نسخه و شماره های مرتبط با Platform level و API level آمده است:


920311-IMAGE 1.jpg

اصطلاحی در توسعه اپلیکیشن های اندروید وجود دارد تحت عنوان Backward Compatibility به معنی سازگاری رو به عقب. به عبارت دیگر یک دستگاه تلفن همراه که دارای مثلاً سیستم عامل اندروید نسخه 2.0 یا Éclair باشد، اپلیکیشن های با نسخه اندروید 2.0 و یا پایین تر از آن را اجرا خواهد کرد. به نظر می رسد در حین توسعه اندروید انتخاب نسخه 2.0 یا 2.1 تحت عنوان Éclair به معنی نان خامه ای بخش عمده از کاربرانی که از تلفن های همراه را در بر خواهد گرفت.


دیگر API های به کار گرفته شده تلفن های اندرویدی

علاوه بر API هایی که گوگل برای هر نسخه از سیستم عامل اندروید در نظر می گیرد، گروهی دیگر از API ها هستند که در خود تلفن همراه یا تبلت گنجانده شده و جدای از API های معرفی شده در هر نسخه از اندروید می باشند.

یکی از این API هایی گنجانده شده در خود تلفن همراه یا تبلت اندرویدی Location Services است:


920311-IMAGE 2.jpg

همانطور که در تصویر فوق ملاحظه می شود منظور از Location Services قابلیت هایی همچون GPS و یا دیگر عملکرد های Wireless است. از دیگر API های گنجانده شده در تلفن همراه و یا تبلت می توان به Telephony Services اشاره کرد:


920311-IMAGE 3.jpg

در حقیقت Telephony Services در برگیرنده قابلیت هایی است که این امکان را به ما می دهند تا بتوانیم با استفاده از تلفن همراه اندرویدی خود شماره گرفته، تماس برقرار سازیم، به تماسی پاسخ دهیم و ...

از دیگر API هایی که در این دسته قرار می گیرند می توان به Audio and Video اشاره کرد:


920311-IMAGE 4.jpg

در حقیقت API های مرتبط با Audio and Video این امکان را به کاربران اندروید می دهند تا فایل های صوتی و تصویری را با فرمتهای بسیار متنوعی من جمله MP3 را پخش نمایند.

API ی دیگری که نیاز به معرفی دارد API ی مرتبط به Web Browser است:


920311-IMAGE 5.jpg

شاید بتوان گفت که یکی از جذابیت های اندروید برخورداری از قابلیت سرچ در اینترنت است که این کار با استفاده از API مرتبط با Web Browser در اختیار کاربران قرار داده شده است.

به عنوان آخرین API از نمونه API های گنجانده شده در دستگاه های اندرویدی می توان به API ی مرتبط با Google Maps اشاره کرد:


920311-IMAGE 6.jpg

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


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

یکی از برگ های برندۀ سیستم عامل اندروید میزان امنیت بالا در این سیستم عامل است(البته به این موضوع خیلی هم نمی توان افتخار کرد چرا که آمار و ارقام حاکی از آنند که این سیستم عامل محبوب هدف اول هکرها است). در واقع از آنجا که اپلیکیشن های اندروید بدون اجازه کاربر و یا توسعه دهندۀ اپلیکیشن نمی توانند به دیگر اپلیکیشن ها دسترسی پیدا کنند، این مسئله موجب گردیده تا امنیت این سیستم عامل به مراتب ارتقاء یابد. برای درک بهتر این مسئله نیاز است تا با Sandbox آشنا شویم. معنی لغوی این واژه "گودال ماسه بازی" است. در حقیقت طراحان اندروید از این مفهوم استفاده کرده تا بتوانند هر اپلیکیشن اندروید را از دیگر اپلیکیشن ها مجزا سازند. به عبارت دیگر به طور پیش فرض هر اپلیکیشن اندروید در یک Sandbox جدای از دیگر Sandbox ها قرار دارد. حال اگر اپلیکیشن ما بخواهد به چیزهای خارج از Sandbox خود دسترسی پیدا کند، می بایست از کاربر Permission یا اجازه بگیرد.

کسب اجازه توسط یک اپلیکیشن برای دسترسی به چیزهای خاصی که خارج از دسترس آن اپلیکیشن می باشند داخل فایل Manifest صورت می گیرد(برای آشنایی بیشتر با این فایل به آموزش قسمت دوم مراجعه نمایید و برای کسب اطلاعات تکمیلی منتظر آموزش سیزدهم بمانید). در واقع زمانیکه کاربر قصد دارد تا یک اپلیکیشن جدید را روی تلفن یا تبلت خود نصب کند، پیش از نصب کلیه این Permission ها از کاربر گرفته خواهد شد. حال اگر کاربر چنین اجازه ای را صادر نکند، اپلیکیشن از نصب شدن روی دستگاه وی سر باز خواهد زد. به طول مثال چنانچه اپلیکیشن خاصی نیاز به دسترسی به اینترنت و یا استفاده از دوربین داشته باشد، اجازه اتصال به اینترنت و به کارگیری دوربین تلفن همراه حتماً می بایست در فایل Manifest صادر شود.

 

تشکرات از این پست
AliFanoodi siryahya amin_j nikonazar
دسترسی سریع به انجمن ها