واجهات برمجة تطبيقات Android 4.0.3

مستوى واجهة برمجة التطبيقات: 15

Android 4.0.3 (ICE_CREAM_SANDWICH_MR1) هو إصدار تدريجي من مجموعة النظام الأساسي Android 4.0 (ICE_CREAM_SANDWICH). يتضمن هذا الإصدار ميزات جديدة للمستخدمين والمطورين، وتغييرات في واجهة برمجة التطبيقات، وإصلاحات متنوعة للأخطاء.

بالنسبة إلى المطورين، يتوفر نظام Android 4.0.3 الأساسي كمكون قابل للتنزيل لـ Android SDK. وتتضمن المنصة القابلة للتنزيل مكتبة Android وصورة نظام، بالإضافة إلى مجموعة من مظاهر المحاكي والمزيد. لبدء تطوير البرامج أو اختبارها على Android 4.0.3، استخدم "مدير SDK لنظام التشغيل Android" لتنزيل النظام الأساسي إلى حزمة SDK.

نظرة عامة على واجهة برمجة التطبيقات

تقدم الأقسام أدناه نظرة عامة فنية على واجهات برمجة التطبيقات الجديدة في الإصدار Android 4.0.3.

واجهة برمجة تطبيقات البث الاجتماعي في مقدِّم جهات الاتصال

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

يتم تحديد جدول قاعدة البيانات الذي يتضمن ساحة مشاركات اجتماعية لجهة اتصال فردية بواسطة android.provider.ContactsContract.StreamItems، معرف الموارد المنتظم (URI) الذي يتم دمجه في دليل ContactsContract.RawContacts الذي تنتمي إليه عناصر البث. يتضمن كل جدول بث اجتماعي عدة أعمدة للبيانات الوصفية حول كل عنصر في ساحة المشاركات، مثل رمز يمثل المصدر (صورة رمزية)، وتصنيفًا للعنصر، ومحتوى النص الأساسي، وتعليقات حول العنصر (مثل الردود من مستخدمين آخرين)، والمزيد. يتم تخزين الصور المرتبطة بساحة المشاركات في جدول آخر، يحددها android.provider.ContactsContract.StreamItemPhotos، المتاح كدليل فرعي لـ android.provider.ContactsContract.StreamItems Uri.

لمعرفة مزيد من المعلومات، يمكنك الاطّلاع على android.provider.ContactsContract.StreamItems وandroid.provider.ContactsContract.StreamItemPhotos.

لقراءة عناصر ساحة مشاركات الشبكات الاجتماعية أو كتابتها لجهة اتصال، يجب أن يطلب التطبيق إذنًا من المستخدم من خلال الإعلان عن <uses-permission android:name="android.permission.READ_SOCIAL_STREAM"> و/أو <uses-permission android:name="android.permission.WRITE_SOCIAL_STREAM"> في ملفات البيان لديه.

موفِّر التقويم

تطبيقات الشاشة الرئيسية

بدءًا من نظام التشغيل Android 4.0، يجب ألا تتضمن أدوات الشاشة الرئيسية المساحة المتروكة الخاصة بها بعد الآن. بدلاً من ذلك، يضيف النظام الآن مساحة متروكة تلقائيًا لكل أداة، بناءً على خصائص الشاشة الحالية. يؤدي هذا إلى عرض أكثر توحيدًا ومتسقًا للأدوات في شبكة. لمساعدة التطبيقات التي تستضيف تطبيقات مصغّرة على الشاشة الرئيسية، توفّر المنصة طريقة جديدة getDefaultPaddingForWidget(). يمكن للتطبيقات استدعاء هذه الطريقة للحصول على المساحة المتروكة المحددة من خلال النظام وحسابها عند حساب عدد الخلايا لتخصيصها في التطبيق المصغّر.

التدقيق الإملائي

  • بالنسبة إلى التطبيقات التي يمكنها الوصول إلى خدمات المدقق الإملائي، تلغي طريقة cancel() الجديدة أي مهام للمدقق الإملائي قيد التشغيل ومعلقة في الجلسة.
  • بالنسبة إلى خدمات المدقق الإملائي، هناك علامة اقتراحات جديدة وهي RESULT_ATTR_HAS_RECOMMENDED_SUGGESTIONS، تتيح للخدمات التمييز بين الاقتراحات الأكثر ثقةً وتلك الأقل ثقة. على سبيل المثال، يمكن للمدقق الإملائي وضع العلامة إذا كانت إحدى الكلمات التي تم إدخالها ليست في قاموس المستخدم ولكن يُحتمل أن تكون ذات اقتراحات، أو إذا لم تكن الكلمة التي تم إدخالها في القاموس تتضمن اقتراحات من المرجح أن تكون أقل فائدة.

    يمكن للتطبيقات المرتبطة بالمدقق الإملائي استخدام علامة RESULT_ATTR_HAS_RECOMMENDED_SUGGESTIONS مع سمات الاقتراحات الأخرى، بالإضافة إلى طريقتَي getSuggestionsAttributes() وgetSuggestionsCount()، وذلك لتحديد ما إذا كان يجب وضع علامة على كلمات الإدخال باعتبارها أخطاء إملائية وتقديم اقتراحات.

  • يشير نمط FLAG_AUTO_CORRECTION الجديد لامتدادات النص إلى أنّ ميزة "التصحيح التلقائي" على وشك تطبيقها على كلمة أو نص يكتبه المستخدم أو ينشئه. يتم عرض هذا النوع من الاقتراحات بشكل مختلف، للإشارة إلى حدوث التصحيح التلقائي.

البلوتوث

تتيح الطريقتان العامتان الجديدتان fetchUuidsWithSdp() وgetUuids() للتطبيقات تحديد الميزات (المعرّفات الفريدة الفريدة العالمية (UUID)) المتوافقة مع جهاز بعيد. وفي حالة fetchUuidsWithSdp()، ينفِّذ النظام عملية رصد للخدمة على الجهاز البعيد للحصول على معرِّفات UUID متوافقة، ثم يبث النتيجة في هدف ACTION_UUID.

مجموعة أدوات واجهة المستخدم

تتيح الطريقتان الجديدتان setUserVisibleHint() وgetUserVisibleHint() للجزء تحديد ما إذا كان مرئيًا للمستخدم حاليًا أم لا. يؤجل النظام بدء الأجزاء غير المرئية للمستخدم إلى أن يتم تشغيل أدوات تحميل الأجزاء المرئية. يكون تلميح مستوى العرض "صحيحًا" تلقائيًا.

الرسومات

أدوات تسهيل الاستخدام

  • يمكن الآن لعملاء RemoteViews استخدام الطريقة setContentDescription() لضبط وصف محتوى أي ملف شخصي والحصول عليه في التنسيق المضخَّم.
  • تسمح الطرق getMaxScrollX() وgetMaxScrollY() وsetMaxScrollX() وsetMaxScrollY() للتطبيقات بالحصول على أقصى إزاحة التمرير وضبطها لكائن AccessibilityRecord.
  • عند تفعيل وضع "الاستكشاف باللمس"، يُشير إعداد آمن جديد ACCESSIBILITY_SPEAK_PASSWORD إلى ما إذا كان المستخدم يطلب من أداة IME لقول النص الذي تم إدخاله في حقول كلمة المرور، حتى في حال عدم استخدام سماعة الرأس. بشكل افتراضي، لا يتم نطق نص كلمة المرور إلا إذا كانت سماعة الرأس قيد الاستخدام.

تحويل النص إلى كلام

  • تضيف الطريقة الجديدة getFeatures()للاستعلام عن دعم تحويل النص إلى كلام في الشبكة وتفعيله.
  • تتم إضافة فئة مستمع جديد، UtteranceProgressListener، يمكن للمحركات التسجيل فيها لتلقّي إشعار بأخطاء صياغة الكلام.

قاعدة البيانات

  • تتيح الفئة CrossProcessCursorWrapper الجديدة لموفّري المحتوى عرض نتائج لطلب بحث متعدد العمليات بفعالية أكبر. الفئة الجديدة هي لبنة أساسية مفيدة لإحاطة المؤشرات التي سيتم إرسالها إلى العمليات عن بُعد. ويمكنه أيضًا تحويل كائنات Cursor العادية إلى كائنات CrossProcessCursor بشفافية.

    تُصلح الفئة CrossProcessCursorWrapper مشاكل الأداء والأخطاء الشائعة التي واجهتها التطبيقات عند استخدام موفّري المحتوى.

  • تأخذ الدالة الإنشائية CursorWindow(java.lang.String) الآن سلسلة الاسم كإدخال. لم يعُد النظام يفرّق بين نوافذ المؤشر المحلية ونوافذ المؤشر عن بُعد، لذلك تم إيقاف CursorWindow(boolean) نهائيًا.

مكان ووقت الاستماع إلى الموسيقى

إضافة فئات جديدة لاستهداف أنواع التطبيقات الشائعة على الجهاز، مثل CATEGORY_APP_BROWSER وCATEGORY_APP_CALENDAR وCATEGORY_APP_MAPS وغيرها

الكاميرا

الأذونات

إليك الأذونات الجديدة:

  • android.Manifest.permission#READ_SOCIAL_Stream و android.Manifest.permission#WRITE_SOCIAL_Stream: السماح لمعدِّل المزامنة بقراءة بيانات ساحة المشاركات الاجتماعية وكتابتها إلى جهة اتصال في "موفِّر جهات الاتصال" المشترك.

للحصول على عرض تفصيلي لجميع التغييرات في واجهة برمجة التطبيقات في Android 4.0.3 (المستوى 15 من واجهة برمجة التطبيقات)، يمكنك الاطّلاع على تقرير اختلافات واجهة برمجة التطبيقات.

مستوى واجهة برمجة التطبيقات

يتم تخصيص معرّف عدد صحيح 15 لواجهة برمجة التطبيقات في Android 4.0.3 يتم تخزينه في النظام نفسه. يسمح هذا المعرّف، الذي يسمى "مستوى واجهة برمجة التطبيقات"، للنظام بتحديد ما إذا كان التطبيق متوافقًا مع النظام بشكل صحيح قبل تثبيت التطبيق أم لا.

لاستخدام واجهات برمجة التطبيقات المقدمة في Android 4.0.3 في تطبيقك، يجب تجميع التطبيق في ضوء نظام Android الأساسي الذي يتوافق مع المستوى 15 من واجهة برمجة التطبيقات أو المستوى الأعلى. قد تحتاج أيضًا إلى إضافة السمة android:minSdkVersion="15" إلى العنصر <uses-sdk>، وذلك حسب احتياجاتك.

لمزيد من المعلومات، راجع مستند مستويات واجهة برمجة التطبيقات.