آموزش اندروید-پشتیبانی پلتفرم ها
آن چه در این آموزش فرا می گیرید:
مواردی که باید مطالعه کرده باشید:
- سطوح API اندروید
- کتابخانه ی پشتیبان اندروید
آموزش اندروید - پشتیبانی از نسخه های پلتفرم مختلف
در حالی که بهترین نسخه ی اندروید (android) آخرین نسخه ی آن است و اغلب آخرین نسخه یک API عالی برای برنامه ی شما محسوب می شود، اما کماکان برنامه اندروید شما می بایست نسخه های قبلی اندروید را پشتیبانی کند. در این آموزش قصد داریم به شما نشان دهیم که چگونه از مزایای آخرین سطح API بهره ببرید، درحالی که نسخه های قدیمی را نیز پشتیبانی کنید.
داشبورد نسخه های پلتفرم به طور منظم هر چند وقت یکبار بر اساس دستگاه هایی که به فروشگاه گوگل سر می زنند، به روز می شود. در این داشبورد توزیع نسخه های مختلف و تعداد آن ها نمایش داده می شود. بنابراین یک تمرین خوب برای برنامه نویس های اندروید پشتیبانی حدود 90 درصد دستگاه های فعال است، در حالی که هدف اصلی شما آخرین نسخه ی اندروید است.
نکته: اگر می خواهید بهترین خصوصیت ها، ویژگی ها و قابلیت ها را برای برنامه خود فراهم کنید جوری که این خصوصیات در نسخه های اندروید متفاوت استفاده شود می بایستاز کتابخانه ی پشتیبان اندروید برای برنامه ی خود استفاده کنید. این کتابخانه به شما اجازه می دهد تا از پلتفرم های جدید روی نسخه های قدیمی تر API استفاده کنید |
مشخص کردن پایین ترین سطح API و API هدف
فایل AndroidManifest.xml توضیحاتی را در رابطه با برنامه ی شما ارائه می دهد و مشخص می کند برنامه ی شما کدام یک از نسخه های اندروید را پشتیبانی می کند. به ویژه، خصوصیت های minSdkVersion و targetSdkVersion واقع در عنصر <uses-sdk> برای مشخص کردن پایین ترین سطح API که برنامه ی شما با آن سازگار است و بالاترین سطح API که برنامه ی شما در آن طراحی و تست شده است را به ترتیب مشخص می کنند.
برای مثال:
مثال تعیین سطح API
<manifestxmlns:android="http://schemas.android.com/apk/res/android"...>
<uses-sdkandroid:minSdkVersion=android:targetSdkVersion="15"/>
...
</manifest>
هنگامی که نسخه های جدید اندروید ارائه می شوند، برخی از استایل ها و رفتارها ممکن است تغییر کند. اگر می خواهیم از مزایای آخرین تغییرات اندروید بهره ببریم و تضمین کنیم که برنامه اندروید ما با استایل های هر دستگاهی سازگاری و انطباق دارد، می بایست مقدار targetSdkVersion را با آخرین نسخه ی موجود تنظیم کنیم.
بررسی نسخه ی اندروید در زمان اجرا
اندروید به ازای هر پلتفرم یک کد منحصر به فرد در کلاس Build فراهم می کند. در برنامه ی خود از این کد استفاده کنید و شروطی را در برنامه بگذارید که اگر برنامه ی شما به آخرین سطح API نیاز داشت، برنامه تنها هنگامی اجرا شود که آن سطح روی دستگاه مورد نظر موجود باشد:
Title
privatevoid setUpActionBar(){
// تضمین اینکه کد روی نسخه ی هانیکام یا بالاتر اجرا می شود
if(Build.VERSION.SDK_INT >=Build.VERSION_CODES.HONEYCOMB){
ActionBar actionBar = getActionBar();
actionBar.setDisplayHomeAsUpEnabled(true);
}
}
نکته: هنگامی که منابع XML تفسیر (parse) می شوند، اندروید خصوصیات XML ی که توسط این دستگاه پشتیبانی نمی شود را نادیده می گیرد. بنابراین می توانید با خاطری آسوده از خصوصیات XML ی استفاده کنید که جدید ترین نسخه آن را پشتیبانی می کند و نگران این نباشید که نسخه های قدیمی هنگام مواجهه با شکست برنامه روبه رو می شوند. برای مثال، اگر شما تنظیم کنید که "targetSdkVersion="11، برنامه ی شما برای اندروید های 3.0 و بالاتر حاوی action bar می باشد. برای افزودن منو به action bar کافی است تا خصوصیت "andoid:showAxtion="ifRoom را در xml منو تنظیم کنید. |
استفاده از استایل ها و تم های پلتفرم
اندروید تم هایی را فراهم کرده است که ظاهر و شکل سیستم عاملی که در آن اجرا می شوند را به برنامه می دهد. این تم ها می توانند در فایل manifest به برنامه ی شما اعمال شوند. با استفاده از این تم ها استایل های پیش ساخته، برنامه ی شما به طور طبیعی از آخرین شکل و ظاهر اندروید در هر release پیروی می کند.
برای اینکه Activity شما شبیه به یک پنجره شود می بایست کد زیر را بنویسید:
نمایش activity به صورت پنجره
<activityandroid:theme="@android:style/Theme.Dialog">
برای اینکه Activity شما دارای پس زمینه ی شفاف شود می بایست کد زیر را بنویسید:
نمایش activity به صورت شفاف
<activityandroid:theme="@android:style/Theme.Translucent">
برای اینکه تم سفارشی خود را که در res/values/styles.xml تعریف شده است را اعمال کنید می بایست کد زیر را بنویسید:
نمایش activity به صورت تم سفارشی
<activityandroid:theme="@style/CustomTheme">
برای اینکه تمی را به به کل برنامه (همه ی Activityها) اعمال کنید، خصوصیت android:theme را به عنصر <application> اضافه کنید:
نمایش activity به صورت تم سفارشی
<application android:theme="@style/CustomTheme">
- نوشته شده توسط مظاهر نصوحی
- بازدید: 7979