ملاحظات عن إصدار Android 1.1

التاريخ: شباط (فبراير) 2009
مستوى واجهة برمجة التطبيقات: 2

يوفّر هذا المستند ملاحظات الإصدار الخاصة بصورة نظام Android 1.1 المضمّنة في حزمة تطوير البرامج (SDK).

نظرة عامة

صورة نظام Android 1.1 التي يتم تقديمها في حزمة SDK هي تطوير نسخة نظام الإنتاج Android 1.1، القابلة للنشر الهواتف التي تعمل بنظام التشغيل Android اعتبارًا من شباط (فبراير) 2009.

توفّر صورة نظام Android 1.1 إصدارًا محدّثًا من إطار العمل واجهة برمجة التطبيقات. كما هو الحال مع واجهة برمجة التطبيقات Android 1.0، فإن واجهة برمجة تطبيقات Android 1.1 يتم تخصيص معرّف عدد صحيح — 2 — أي في النظام نفسه. ويتيح هذا المعرّف، يُسمى "مستوى واجهة برمجة التطبيقات"، لتحديد ما إذا كان التطبيق متوافقًا مع النظام، قبل تثبيت التطبيق.

تشير التطبيقات إلى أدنى مستوى لواجهة برمجة تطبيقات النظام المتوافقة معه من خلال إضافة قيمة لسمة android:minSdkVersion. قيمة السمة هي عدد صحيح يقابل مستوى واجهة برمجة التطبيقات. المُعرف. قبل تثبيت أي تطبيق، يتحقق النظام من قيمة android:minSdkVersion والسماح بالتثبيت فقط إذا كان العدد الصحيح المُشار إليه أقل من أو يساوي العدد الصحيح على مستوى واجهة برمجة التطبيقات المخزّن في النظام نفسه.

في حال استخدام نسخة نظام Android 1.1 لإنشاء تطبيق متوافق مع الأجهزة التي تعمل بنظام التشغيل Android والتي تعمل بإصدار Android 1.1 منصة، يجب ضبط قيمة السمة android:minSdkVersion هي "2" لتحديد أن تطبيقك متوافق فقط مع الأجهزة التي تستخدم نسخة نظام التشغيل Android 1.1 (أو الإصدارات الأحدث).

على وجه التحديد، يمكنك تحديد سمة android:minSdkVersion في عنصر <uses-sdk> كعنصر فرعي ل<manifest> في ملف البيان. عند تعيينها، تبدو كالتالي:

<manifest>
  ...
  <uses-sdk android:minSdkVersion="2" />
  ...
</manifest>

من خلال ضبط android:minSdkVersion بهذه الطريقة، يمكنك التأكّد من أنّ المستخدمين لن يتمكّنوا من تثبيت تطبيقك إلا إذا كانت أجهزتهم تعمل بنظام التشغيل Android 1.1. ويضمن ذلك بدوره أن يعمل تطبيقك بشكل صحيح على أجهزتهم، خاصةً إذا كان يستخدم واجهات برمجة التطبيقات التي تم طرحها في الإصدار 1.1 من Android.

إذا كان تطبيقك يستخدم واجهات برمجة تطبيقات تم توفيرها في الإصدار 1.1 من Android ولكنّه لا يستخدمها تعريف <uses-sdk android:minSdkVersion="2" />، فسيتم تعمل بشكل صحيح على أجهزة Android 1.1 وليس Android 1.0 الأجهزة. وفي الحالة الثانية، سيتعطّل التطبيق في وقت التشغيل عندما يحاول استخدام واجهات برمجة تطبيقات Android 1.1.

إذا كان تطبيقك لا يستخدم أي واجهات برمجة تطبيقات جديدة تم تقديمها في Android 1.1، يمكنك الإشارة إلى توافقه مع Android 1.0 عن طريق إزالة android:minSdkVersion أو ضبط السمة على "1". ومع ذلك، قبل نشر تطبيقك، يجب أن تتأكد من تجميع التطبيق مع نسخة نظام التشغيل Android 1.0 (المتوفرة في Android 1.0 SDK) للتأكد من أنها تنشئ وتعمل بشكل صحيح الأجهزة التي تعمل بنظام التشغيل Android 1.0 يجب اختبار التطبيق على تصاميم النظام المتوافقة مع مستويات واجهة برمجة التطبيقات التي تم تصميم التطبيق ليكون متوافقًا معها.

إذا كنت متأكدًا من أنّ تطبيقك لا يستخدم واجهات برمجة تطبيقات Android 1.1 ولا يحتاج إلى استخدامها، قد يكون من الأسهل مواصلة العمل باستخدام حزمة تطوير البرامج (SDK) لنظام التشغيل Android 1.0 بدلاً من نقل البيانات إلى حزمة تطوير البرامج (SDK) لنظام التشغيل Android 1.1 و إجراء اختبارات إضافية.

المكتبات الخارجية

تتضمّن صورة النظام هذه المكتبات الخارجية التي يمكنك الوصول إليها من تطبيقك عن طريق إضافة <uses-library>.

  • ‫com.google.android.maps: يمنح تطبيقك إذن الوصول إلى بيانات "خرائط Google". يُرجى العلم أنّه لاستخدام بيانات "خرائط Google"، يجب توفُّر مفتاح Maps API.

توافُق الجهاز

تم اختبار صورة نظام Android 1.1 للتأكّد من توافقها مع في ما يلي الأجهزة التي تعمل بنظام التشغيل Android:

  • T-Mobile G1

التطبيقات المضمنة

تتضمن صورة النظام هذه التطبيقات المضمنة:

  • ساعة المنبّه
  • العروض التوضيحية لواجهة برمجة التطبيقات
  • المتصفح
  • الآلة الحاسبة
  • الكاميرا
  • جهات الاتصال
  • أدوات مطوري البرامج
  • Dialer
  • عنوان البريد الإلكتروني
  • "خرائط Google" (و"التجوّل الافتراضي")
  • المراسلة
  • الموسيقى
  • الصور
  • الإعدادات

ترجمات واجهة المستخدم

توفّر صورة النظام سلاسل واجهة مستخدم مترجَمة للغات الواردة أدناه.

  • الإنجليزية، الولايات المتحدة (en_US)
  • الألمانية (de)

تطابق سلاسل واجهة المستخدم المترجمة اللغات التي يمكن عرضها في المحاكي، ويمكن الوصول إليه من خلال تطبيق إعدادات الجهاز.

المشاكل التي تم حلّها

  • يشغِّل تنبيه AlarmClock الآن الصوت أو الاهتزاز مباشرةً، بدلاً من استخدام AlarmManager. يبدأ تنبيه AlarmClock في تشغيل الصوت أو المؤثرات الصوتية في IntentRECEIVEr، بدلاً من بدء النشاط. من المفترض أن تؤدي هذه التغييرات إلى منع حظر التنبيهات من خلال مربّعات الحوار المشروطة.
  • إصلاحات في وضع السكون للجهاز.
  • النقر مرة واحدة لم تعد تفتح لوحة الاتصال أثناء المكالمة يحتاج المستخدمون الآن إلى لمسه وسحبه.
  • إصلاح خطأ يتسبب في إرسال رسالة صادرة واحدة من كل 25 رسالة إلى تجميد اتصال IMAP (إلى خادم مستند إلى Gmail) عند النقل إلى مجلد العناصر المرسلة.
  • إزالة إدخالات إعداد الحساب التلقائية التي كانت معطّلة أو غير صالحة للاختبار. يضيف إصلاحات بسيطة إلى عدد قليل من الإدخالات المتبقية. إجراء تحسينات على مربّعات الحوار التحذيرية المستخدَمة في بعض الحالات الخاصة
  • تغيير الفاصل الزمني التلقائي لفحص البريد إلى كل 15 دقيقة (بدلاً من ذلك التخلف عن القيمة "أبدًا").
  • إصلاح أخطاء الاقتباس من كلمات المرور في بروتوكول IMAP، حتى يتمكن المستخدمون من تضمين رموز خاصة في كلمات المرور (مثل المسافات).
  • إصلاح أخطاء مختلفة في إعداد الحساب التلقائي واليدوي
  • تحسين إعداد التقارير عن أخطاء الاتصال المختلفة، ما يسهّل على المستخدم تشخيص عمليات إعداد الحسابات غير الناجحة
  • إصلاح إشعارات البريد الجديد لحسابات POP3.
  • ضمان التحقّق التلقائي المناسب للحسابات التي تم وضع علامة "عدم التحقّق أبدًا " عليها
  • يعرض الآن التاريخ والوقت باستخدام الإعدادات المفضّلة للمستخدم (مثل 24 ساعة مقابل AM/PM).
  • يتم الآن عرض cc: في عرض الرسالة.
  • تحسين عملية الاسترداد من حالات تعذُّر الاتصال بـ POP3
  • تم تخفيف قواعد مفسِّر POP3، حتى يتمكّن التطبيق من العمل مع خوادم البريد الإلكتروني غير المتوافقة.

الميزات الجديدة

  • "خرائط Google": تضيف تفاصيل ومراجعات عندما يُجري مستخدم عملية بحث على "خرائط Google" ينقر على نشاط تجاري لعرض تفاصيله.
  • Dialer: المهلة التلقائية للشاشة أثناء المكالمة أطول الآن عند استخدام مكبّر الصوت.
  • Dialer: إضافة "عرض لوحة الاتصال" / "إخفاء لوحة الاتصال" العنصر خلال المكالمة لتسهيل اكتشاف لوحة الاتصال DTMF.
  • يضيف دعمًا لحفظ المرفقات من رسائل الوسائط المتعددة
  • يضيف دعمًا للتظليل في التخطيطات.

التغييرات في واجهة برمجة التطبيقات

نظرة عامة

  • إضافة تعليقات توضيحية لأنظمة الاختبار، بدون واجهة برمجة تطبيقات فعلية (غير اختبارية) التغييرات.
  • تضيف طريقة للسماح لعملية تحديد المعرّف الفريد الخاص بها بسهولة.
  • يضيف دعمًا للتظليل في التخطيطات.
  • إضافة طرق جديدة لتحديد المساحة المتروكة في المشاهدات. تكون مفيدة إذا كنت تكتب فئات فرعية خاصة بك من View.
  • تضيف أذونات جديدة تسمح للتطبيق ببث رسالة قصيرة SMS أو رسالة فورية عبر WAP.
  • تنظيف واجهة برمجة التطبيقات: لإزالة دالة إنشاء محمية من صور النظام المرتبطة بحزمة SDK

تفاصيل تغيير واجهة برمجة التطبيقات

الوحدة أو الميزةوصف التغيير
التعليقات التوضيحية للأنظمة الاختبارية
تمت إضافة التعليق التوضيحي LargeTest.
تمت إضافة التعليق التوضيحي MediumTest.
تمت إضافة التعليق التوضيحي SmallTest.
السماح لعملية بمعرفة رقم تعريفها الفريد بسهولة
تمت إضافة الطريقة العامة myUid() إلى الفئة android.os.Process
المساحة المتروكة في عدد المشاهدات
تمت إضافة الطريقة العلنية getBottomPaddingOffset() إلى الصف android.view.View.
تمت إضافة الطريقة العلنية getLeftPaddingOffset() إلى الصف android.view.View.
تمت إضافة الطريقة العامة getRightPaddingOffset() إلى الفئة android.view.View.
تمت إضافة الطريقة العلنية getTopPaddingOffset() إلى الصف android.view.View.
تمت إضافة الطريقة العامة isPaddingOffsetRequired() إلى الفئة android.view.View.
إتاحة التظليل
تمت إضافة الطريقة العلنية setMarqueeRepeatLimit(int) إلى الصف TextView.
تمت إضافة الحقل العلني android.R.attr.marqueeRepeatLimit
الأذونات الجديدة
تمت إضافة الحقل العام android.Manifest.permission.BROADCAST_SMS.
تمت إضافة الحقل العام android.Manifest.permission.BROADCAST_WAP_PUSH.
إزالة البرامج من واجهة برمجة التطبيقات
تمت إزالة المنشئ المحمي java.net.ServerSocket.ServerSocket(java.net.SocketImpl).