پلتفرم اندروید 2.3 بسیاری از ویژگی های جدید و هیجان انگیز را برای کاربران و توسعه دهندگان معرفی می کند. این سند نگاهی اجمالی به برخی از ویژگیها و فناوریهای جدید اندروید 2.3 ارائه میکند. برای اطلاعات دقیق در مورد API های توسعه دهنده جدید، به یادداشت های نسخه Android 2.3 مراجعه کنید.
ویژگی های کاربر جدید
اصلاحات UI برای سادگی و سرعت
رابط کاربری به طرق مختلف در سراسر سیستم اصلاح شده است، و یادگیری آن را آسانتر، استفاده سریعتر و کارآمدتر میکند. یک تم بصری ساده از رنگها در مقابل مشکی، وضوح و کنتراست را به نوار اعلان، منوها و سایر بخشهای رابط کاربری میآورد. تغییرات در منوها و تنظیمات، پیمایش و کنترل ویژگیهای سیستم و دستگاه را برای کاربر آسانتر میکند.
ورودی متن سریعتر و بصری تر
صفحه کلید نرم اندروید برای ورود و ویرایش سریعتر متن بازطراحی و بهینه شده است. خود کلیدها برای هدفگیری بهتر تغییر شکل داده و تغییر مکان داده میشوند و دیدن و فشار دادن دقیق آنها را حتی در سرعتهای بالا آسانتر میکنند. صفحهکلید همچنین نویسههای فعلی و پیشنهادهای فرهنگ لغت را به سبکی بزرگتر و واضحتر نشان میدهد که خواندن آسانتر است.
صفحه کلید قابلیت تصحیح کلمات وارد شده از پیشنهادات در فرهنگ لغت را اضافه می کند. همانطور که کاربر کلمه ای را که قبلا وارد کرده است انتخاب می کند، صفحه کلید پیشنهاداتی را نشان می دهد که کاربر می تواند از بین آنها انتخاب کند تا جایگزین انتخاب شود. کاربر همچنین میتواند برای جایگزینی انتخاب به حالت ورودی صوتی تغییر وضعیت دهد. پیشنهادات هوشمند به کاربر اجازه میدهد یک پیشنهاد را بپذیرد و سپس در صورت نیاز، از مجموعه پیشنهادات اولیه، دوباره آن را اصلاح کند.
آکورد کلید چند لمسی جدید به کاربر اجازه می دهد تا بدون نیاز به تغییر دستی حالت های ورودی، اعداد و نمادها را با فشار دادن Shift+< حرف > و ?123+< نماد > وارد کند. از کلیدهای خاص، کاربران همچنین می توانند با نگه داشتن کلید و لغزش برای انتخاب یک کاراکتر، به منوی بازشو از کاراکترها، اعداد و نمادهای برجسته دسترسی پیدا کنند.
انتخاب کلمه با یک لمس و کپی/پیست
هنگام وارد کردن متن یا مشاهده یک صفحه وب، کاربر می تواند به سرعت یک کلمه را با نگه داشتن فشار انتخاب کند، سپس در کلیپ بورد کپی کرده و جایگذاری کند. با فشار دادن یک کلمه وارد حالت انتخاب آزاد میشود - کاربر میتواند با کشیدن مجموعهای از فلشهای محدودکننده به موقعیتهای جدید، ناحیه انتخاب را در صورت نیاز تنظیم کند، سپس با فشار دادن هر نقطه از ناحیه انتخاب، ناحیه محدود شده را کپی کند. برای وارد کردن متن، کاربر می تواند با فشار دادن اسلاید وارد حالت مکان نما شود، سپس مکان نما را به راحتی و با دقت با کشیدن فلش نشانگر تغییر مکان دهد. با هر دو حالت انتخاب و مکان نما، نیازی به استفاده از گوی نیست.
بهبود مدیریت انرژی
سیستم اندروید نقش فعال تری در مدیریت برنامه هایی دارد که دستگاه را برای مدت طولانی بیدار نگه می دارند یا در حال اجرا در پس زمینه CPU را مصرف می کنند. با مدیریت چنین برنامه هایی - بستن آنها در صورت لزوم - سیستم به اطمینان از بهترین عملکرد ممکن و حداکثر عمر باتری کمک می کند.
این سیستم همچنین به کاربر دید بیشتری نسبت به انرژی مصرف شده توسط اجزای سیستم و برنامه های در حال اجرا می دهد. تنظیمات برنامه یک نمای کلی دقیق از نحوه استفاده از باتری با جزئیات استفاده و توان نسبی مصرف شده توسط هر جزء یا برنامه ارائه می دهد.
کنترل روی برنامه ها
اکنون یک میانبر برای کنترل مدیریت برنامهها در منوی گزینهها در صفحه اصلی و راهانداز ظاهر میشود که بررسی و مدیریت فعالیت برنامه را بسیار آسانتر میکند. هنگامی که کاربر وارد Manage Applications می شود، یک تب Running جدید لیستی از برنامه های فعال و حافظه و حافظه مورد استفاده هر کدام را نشان می دهد. کاربر می تواند جزئیات بیشتر در مورد هر برنامه را بخواند و در صورت لزوم یک برنامه را متوقف کند یا بازخورد خود را به توسعه دهنده آن گزارش دهد.
راه های جدید برقراری ارتباط، سازماندهی
مجموعه ای به روز شده از برنامه های کاربردی استاندارد به کاربر این امکان را می دهد که رویکردهای جدیدی برای مدیریت اطلاعات و روابط اتخاذ کند.
تماس اینترنتی
کاربر می تواند از طریق اینترنت با سایر کاربرانی که حساب SIP دارند تماس صوتی برقرار کند. کاربر می تواند یک شماره تماس اینترنتی (یک آدرس SIP) به هر مخاطبی اضافه کند و می تواند تماسی را از Quick Contact یا Dialer آغاز کند. برای استفاده از تماس اینترنتی، کاربر باید یک حساب کاربری در ارائهدهنده SIP انتخابی خود ایجاد کند - حسابهای SIP به عنوان بخشی از ویژگی تماس اینترنتی ارائه نمیشوند. علاوه بر این، پشتیبانی از ویژگیهای SIP و تماس اینترنتی پلتفرم در دستگاههای خاص توسط تولیدکنندگان و اپراتورهای مرتبط تعیین میشود.
ارتباطات میدان نزدیک
یک برنامه NFC Reader به کاربر امکان میدهد تگهای ارتباط میدان نزدیک (NFC) را بخواند و با آن تعامل داشته باشد. به عنوان مثال، کاربر می تواند یک برچسب NFC را که ممکن است در یک پوستر، برچسب یا تبلیغات جاسازی شده باشد، "لمس" یا "کشیدن" کند، سپس بر روی داده های خوانده شده از برچسب عمل کند. یک استفاده معمولی می تواند خواندن یک برچسب در یک رستوران، فروشگاه یا رویداد و سپس رتبه بندی یا ثبت نام با پرش به وب سایتی باشد که URL آن در داده های برچسب گنجانده شده است. ارتباطات NFC به فناوری بی سیم در سخت افزار دستگاه متکی است، بنابراین پشتیبانی از ویژگی های NFC پلت فرم در دستگاه های خاص توسط سازنده آنها تعیین می شود.
مدیریت دانلودها
برنامه Downloads به کاربر امکان دسترسی آسان به هر فایلی که از مرورگر، ایمیل یا برنامه دیگری دانلود شده است را می دهد. دانلودها بر روی یک سیستم مدیریت دانلود کاملاً جدید در سیستم ساخته شده است که هر برنامه دیگری می تواند از آن استفاده کند تا دانلودهای خود را مدیریت و ذخیره کند.
دوربین
این برنامه اکنون به کاربر اجازه می دهد تا در صورت موجود بودن به چندین دوربین روی دستگاه از جمله دوربین جلو دسترسی داشته باشد.
ویژگی های جدید توسعه دهنده
Android 2.3 ویژگیها و APIهای مختلفی را ارائه میکند که به توسعهدهندگان اجازه میدهد انواع جدیدی از برنامهها را به پلتفرم اندروید بیاورند.
پیشرفت هایی برای بازی
عملکرد
Android 2.3 شامل پیشرفتهای مختلفی در سراسر سیستم است که عملیات مشترک را برای همه برنامهها سریعتر و کارآمدتر میکند. مورد توجه خاص توسعه دهندگان بازی عبارتند از:
- جمعآوری زباله همزمان – Dalvik VM یک جمعکننده زباله جدید و همزمان را معرفی میکند که مکث برنامهها را به حداقل میرساند و به اطمینان از نرمافزار انیمیشن و افزایش پاسخدهی در بازیها و برنامههای مشابه کمک میکند.
- توزیع سریعتر رویداد - پلافورم اکنون رویدادهای لمسی و صفحه کلید را سریعتر و کارآمدتر مدیریت می کند و استفاده از CPU را در طول توزیع رویداد به حداقل می رساند. این تغییرات پاسخگویی را برای همه برنامهها بهبود میبخشد، اما بهویژه برای بازیهایی که از رویدادهای لمسی در ترکیب با گرافیکهای سه بعدی یا سایر عملیاتهای فشرده CPU استفاده میکنند، سودمند است.
- درایورهای ویدئویی به روز شده - این پلتفرم از درایورهای ویدئویی شخص ثالث به روز شده استفاده می کند که کارایی عملیات OpenGL ES را برای عملکرد کلی گرافیک سه بعدی سریعتر بهبود می بخشد.
رویدادهای ورودی و حسگر بومی
برنامههایی که از کد بومی استفاده میکنند اکنون میتوانند رویدادهای ورودی و حسگر را مستقیماً در کد اصلی خود دریافت و پردازش کنند، که کارایی و پاسخدهی را بهطور چشمگیری بهبود میبخشد.
کتابخانههای بومی که توسط پلتفرم در معرض دید قرار میگیرند به برنامهها اجازه میدهند همان نوع رویدادهای ورودی را که از طریق چارچوب موجود است، مدیریت کنند. برنامه ها می توانند رویدادها را از انواع حسگرهای پشتیبانی شده دریافت کنند و می توانند حسگرهای خاص را فعال/غیرفعال کنند و نرخ تحویل رویداد و صف بندی را مدیریت کنند.
ژیروسکوپ و سایر حسگرهای جدید، برای بهبود پردازش حرکت سه بعدی
Android 2.3 پشتیبانی API را برای چندین نوع حسگر جدید، از جمله سنسورهای ژیروسکوپ، بردار چرخش، شتاب خطی، گرانش و فشارسنج اضافه می کند. اپلیکیشنها میتوانند از سنسورهای جدید در ترکیب با هر سنسور دیگر موجود در دستگاه استفاده کنند تا حرکت سهبعدی دستگاه و تغییر جهت را با دقت و دقت بالا ردیابی کنند. به عنوان مثال، یک برنامه بازی میتواند از خوانشهای ژیروسکوپ و شتابسنج روی دستگاه برای تشخیص ژستها و حرکات پیچیده کاربر، مانند شیب، چرخش، رانش و برش استفاده کند.
API را برای صدای بومی باز کنید
این پلتفرم پیادهسازی نرمافزاری از Khronos OpenSL ES را ارائه میکند، یک API استاندارد که به برنامهها امکان دسترسی به کنترلهای صوتی قدرتمند و جلوههای کد بومی را میدهد. برنامهها میتوانند از API برای مدیریت دستگاههای صوتی و کنترل ورودی، خروجی و پردازش صدا به طور مستقیم از کد اصلی استفاده کنند.
مدیریت گرافیک بومی
این پلتفرم رابطی را برای کتابخانه Khronos EGL خود ارائه میکند که به برنامهها اجازه میدهد تا زمینههای گرافیکی را مدیریت کرده و بافتها و سطوح OpenGL ES را از کدهای اصلی ایجاد و مدیریت کنند.
دسترسی بومی به چرخه حیات فعالیت، مدیریت پنجره
برنامههای Native میتوانند نوع جدیدی از کلاس Activity، NativeActivity
را اعلام کنند که تماسهای چرخه حیات آن مستقیماً در کد بومی پیادهسازی میشوند. NativeActivity
و کد اصلی زیرین آن در سیستم اجرا میشوند، درست مانند سایر فعالیتها - آنها در فرآیند سیستم برنامه اجرا میشوند و بر روی رشته اصلی UI برنامه اجرا میشوند، و همان بازگشتهای چرخه حیات را مانند سایر فعالیتها دریافت میکنند.
این پلتفرم همچنین APIهای بومی را برای مدیریت ویندوز، از جمله توانایی قفل کردن/باز کردن قفل بافر پیکسل برای کشیدن مستقیم به آن، در معرض دید قرار می دهد. از طریق API، برنامهها میتوانند یک شیء پنجره بومی مرتبط با یک شیء فریمورک Surface را بدست آورند و مستقیماً در کدهای اصلی با آن تعامل داشته باشند.
دسترسی بومی به دارایی ها، ذخیره سازی
برنامهها اکنون میتوانند به یک API بومی Asset Manager دسترسی داشته باشند تا داراییهای برنامه را مستقیماً از کد اصلی بدون نیاز به مرور JNI بازیابی کنند. اگر دارایی ها فشرده شوند، پلتفرم فشرده سازی جریان را انجام می دهد زیرا برنامه داده های دارایی را می خواند. دیگر محدودیتی در اندازه دارایی های فشرده .apk
قابل خواندن وجود ندارد.
علاوه بر این، برنامهها میتوانند به یک API بومی Storage Manager دسترسی داشته باشند تا مستقیماً با فایلهای OBB دانلود شده و مدیریت شده توسط سیستم کار کنند. توجه داشته باشید که اگرچه پشتیبانی از پلتفرم OBB در اندروید 2.3 موجود است، ابزارهای توسعه برای ایجاد و مدیریت فایل های OBB تا اوایل سال 2011 در دسترس نخواهد بود.
محیط توسعه بومی قوی
Android NDK (r5 یا بالاتر) مجموعه کاملی از ابزارها، زنجیرههای ابزار و کتابخانهها را برای توسعه برنامههایی که از محیط غنی بومی ارائه شده توسط پلتفرم Android 2.3 استفاده میکنند، ارائه میکند. برای اطلاعات بیشتر یا دانلود NDK، لطفا به صفحه Android NDK مراجعه کنید.
اشکال جدید ارتباط
تلفن اینترنتی
توسعه دهندگان اکنون می توانند ویژگی های تلفن اینترنتی مبتنی بر SIP را به برنامه های خود اضافه کنند. Android 2.3 شامل یک پشته کامل پروتکل SIP و خدمات مدیریت تماس یکپارچه است که به برنامهها اجازه میدهد به راحتی تماسهای صوتی خروجی و ورودی را تنظیم کنند، بدون اینکه نیازی به مدیریت جلسات، ارتباطات سطح انتقال، یا ضبط یا پخش صدا به طور مستقیم داشته باشند.
پشتیبانی از ویژگیهای SIP و تماس اینترنتی پلتفرم در دستگاههای خاص توسط تولیدکنندگان و اپراتورهای مرتبط تعیین میشود.
ارتباطات میدان نزدیک (NFC)
پشتیبانی این پلتفرم از Near Field Communications (NFC) به توسعه دهندگان این امکان را می دهد که شروع به ایجاد کلاس جدیدی از برنامه های کاربردی برای اندروید کنند. توسعهدهندگان میتوانند برنامههای کاربردی جدیدی ایجاد کنند که اطلاعات و خدمات مبتنی بر مجاورت را به کاربران، سازمانها، بازرگانان و تبلیغکنندگان ارائه میدهند.
با استفاده از NFC API، برنامهها میتوانند برچسبهای NFC «کشف» را بخوانند و به آنها پاسخ دهند، زیرا کاربر دستگاه دارای NFC را به عناصر تعبیهشده در برچسبها، پوسترهای هوشمند و حتی دستگاههای دیگر «لمس» میکند. هنگامی که یک برچسب مورد علاقه جمع آوری می شود، برنامه ها می توانند به برچسب پاسخ دهند، پیام ها را از آن بخوانند و سپس پیام ها را ذخیره کنند و در صورت نیاز از کاربر درخواست کنند.
از Android 2.3.3، برنامهها همچنین میتوانند روی برچسبها بنویسند و اتصالات همتا به همتا را با سایر دستگاههای NFC تنظیم کنند.
ارتباطات NFC به فناوری بی سیم در سخت افزار دستگاه متکی است، بنابراین پشتیبانی از ویژگی های NFC پلت فرم در دستگاه های خاص توسط سازنده آنها تعیین می شود.
چند رسانه ای غنی
جلوه های صوتی قابل ترکیب
API جلوههای صوتی جدید به توسعهدهندگان این امکان را میدهد تا با افزودن تساوی، تقویت باس، مجازیسازی هدفون (صوتی گسترده) و ریورب به آهنگها و صداها، به راحتی محیطهای صوتی غنی ایجاد کنند. توسعهدهندگان میتوانند جلوههای صوتی متعددی را در یک آهنگ محلی ترکیب کنند یا جلوههای سراسری را در چندین آهنگ اعمال کنند.
پشتیبانی از فرمت های رسانه ای جدید
این پلتفرم اکنون پشتیبانی داخلی از فرمت فشرده سازی ویدیوی باز VP8 و فرمت کانتینر باز WebM ارائه می دهد. این پلتفرم همچنین از رمزگذاری AAC و رمزگذاری پهنای باند AMR (در نرم افزار) پشتیبانی می کند، به طوری که برنامه ها می توانند صدای با کیفیت بالاتری نسبت به باند باریک ضبط کنند.
دسترسی به چندین دوربین
Camera API اکنون به توسعه دهندگان این امکان را می دهد که به دوربین های موجود در دستگاه، از جمله دوربین جلو، دسترسی داشته باشند. برنامهها میتوانند تعداد دوربینهای روی دستگاه و انواع و ویژگیهای آنها را از پلتفرم پرس و جو کنند، سپس دوربین مورد نیاز را باز کنند. به عنوان مثال، یک برنامه چت ویدیویی ممکن است بخواهد به دوربین جلویی دسترسی داشته باشد که وضوح کمتری ارائه می دهد، در حالی که یک برنامه عکس ممکن است دوربین پشتی را ترجیح دهد که وضوح بالاتری ارائه می دهد.
فناوری های پلت فرم جدید
چارچوب رسانه ای
- چارچوب رسانه ای جدید به طور کامل جایگزین OpenCore می شود و تمام پشتیبانی کدک/کانتینر قبلی برای رمزگذاری و رمزگشایی را حفظ می کند.
- پشتیبانی یکپارچه از فرمت فشرده سازی ویدیوی باز VP8 و فرمت کانتینر باز WebM
- کدگذاری AAC و رمزگذاری پهنای باند AMR را اضافه می کند
هسته لینوکس
- به 2.6.35 ارتقا یافت
شبکه سازی
- پشته SIP، قابل تنظیم توسط سازنده دستگاه
- پشتیبانی از ارتباطات میدان نزدیک (NFC)، قابل تنظیم توسط سازنده دستگاه
- پشته BlueZ به روز شد
زمان اجرا دالویک
- دالویک وی ام:
- جمعآوری زباله همزمان (مکث زیر ۳ میلیثانیه هدف)
- بهینه سازی های بیشتر JIT (تولید کد) را اضافه می کند
- تأیید کد بهبود یافته
- اشکال زدایی StrictMode، برای شناسایی مشکلات عملکرد و حافظه
- کتابخانه های اصلی:
- پشتیبانی گسترده از I18N (کدگذاری کامل در سراسر جهان، مناطق بیشتر)
- قالببندی سریعتر و قالببندی اعداد. به عنوان مثال، قالب بندی شناور 2.5 برابر سریعتر است.
- پاسخ های HTTP به طور پیش فرض gzip می شوند. اندازه پاسخ XML و JSON API ممکن است تا 60٪ یا بیشتر کاهش یابد.
- مجموعههای جدید و برنامههای کاربردی API
- API های شبکه بهبود یافته
- کنترل های خواندن و نوشتن فایل بهبود یافته است
- JDBC به روز شد
- به روز رسانی پروژه های بالادستی:
- OpenSSL 1.0.0a
- BouncyCastle 1.45
- ICU 4.4
- zlib 1.2.5
برای اطلاعات بیشتر در مورد API های توسعه دهنده جدید، به یادداشت های نسخه Android 2.3 و گزارش تفاوت های API مراجعه کنید.