إطلاق منصة أندرويد 12 للجوال

نشرت Google إصدار منصة الهاتف المحمول المفتوحة Android 12. ويتم نشر النصوص المصدر المرتبطة بالإصدار الجديد في مستودع Git الخاص بالمشروع (فرع android-12.0.0_r1). يتم إعداد تحديثات البرامج الثابتة لأجهزة سلسلة Pixel، وكذلك للهواتف الذكية المصنعة بواسطة Samsung Galaxy وOnePlus وOppo وRealme وTecno وVivo وXiaomi. بالإضافة إلى ذلك، تم إنشاء مجموعات GSI (صور النظام العامة)، وهي مناسبة لمختلف الأجهزة المستندة إلى بنيات ARM64 وx86_64.

الابتكارات الرئيسية:

  • تم اقتراح أحد أهم تحديثات تصميم الواجهة في تاريخ المشروع. يطبق التصميم الجديد مفهوم "Material You"، الذي يوصف بأنه الجيل القادم من التصميم متعدد الأبعاد. سيتم تطبيق المفهوم الجديد تلقائيًا على جميع الأنظمة الأساسية وعناصر الواجهة، ولن يتطلب من مطوري التطبيقات إجراء أي تغييرات. في شهر يوليو، من المقرر أن يتم تزويد مطوري التطبيقات بأول إصدار ثابت لمجموعة أدوات جديدة لتطوير الواجهات الرسومية - Jetpack Compose.
    إطلاق منصة أندرويد 12 للجوال

    تتميز المنصة نفسها بتصميم جديد لعناصر واجهة المستخدم. أصبحت الأدوات أكثر وضوحًا، وتم تقريب الزوايا بشكل أفضل، وتم توفير القدرة على استخدام الألوان الديناميكية التي تتوافق مع سمة النظام. تمت إضافة عناصر تحكم تفاعلية مثل مربعات الاختيار والمفاتيح (CheckBox وSwitch وRadioButton)، على سبيل المثال، مما يسمح لك بتحرير قوائم المهام في عنصر واجهة المستخدم TODO دون فتح التطبيق.

    إطلاق منصة أندرويد 12 للجوال

    تم تنفيذ انتقال مرئي أكثر سلاسة إلى التطبيقات التي يتم تشغيلها من الأدوات. تم تبسيط تخصيص الأدوات - تمت إضافة زر (دائرة بقلم رصاص) لإعادة تكوين موضع الأداة على الشاشة بسرعة، والذي يظهر عند لمس الأداة لفترة طويلة.

    إطلاق منصة أندرويد 12 للجوالإطلاق منصة أندرويد 12 للجوال

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

    إطلاق منصة أندرويد 12 للجوال
  • تمت إضافة القدرة على تكييف لوحة النظام تلقائيًا مع لون خلفية الشاشة المحددة - يكتشف النظام تلقائيًا الألوان السائدة، ويضبط اللوحة الحالية ويطبق التغييرات على جميع عناصر الواجهة، بما في ذلك منطقة الإعلام وشاشة القفل والأدوات والتحكم في مستوى الصوت.
  • تم تنفيذ تأثيرات متحركة جديدة، مثل التكبير التدريجي والتحويل السلس للمناطق عند التمرير وظهور العناصر وتحريكها على الشاشة. على سبيل المثال، عند إلغاء إشعار على شاشة القفل، يتوسع مؤشر الوقت تلقائيًا ويشغل المساحة التي كان يشغلها الإشعار سابقًا.
  • تمت إعادة تصميم تصميم المنطقة المنسدلة التي تحتوي على الإشعارات والإعدادات السريعة. تمت إضافة خيارات Google Pay والتحكم في المنزل الذكي إلى الإعدادات السريعة. يؤدي الضغط باستمرار على زر الطاقة إلى ظهور مساعد Google، والذي يمكنك إصدار أمر به لإجراء مكالمة أو فتح تطبيق أو قراءة مقال بصوت عالٍ. يتم تقديم الإخطارات ذات المحتوى المحدد بواسطة التطبيق بشكل عام.
    إطلاق منصة أندرويد 12 للجوال
  • تمت إضافة تأثير التمرير الزائد للإشارة إلى أن المستخدم قد تجاوز منطقة التمرير ووصل إلى نهاية المحتوى. مع التأثير الجديد، تبدو صورة المحتوى ممتدة وتعود للخلف. يتم تمكين سلوك نهاية التمرير الجديد افتراضيًا، ولكن يوجد خيار في الإعدادات للعودة إلى السلوك القديم.
  • تم تحسين الواجهة للأجهزة ذات الشاشات القابلة للطي.
    إطلاق منصة أندرويد 12 للجوال
  • تم تنفيذ انتقالات صوتية أكثر سلاسة - عند التبديل من أحد التطبيقات التي تخرج الصوت إلى آخر، يتم الآن كتم صوت الأول بسلاسة، ويزداد الصوت الثاني بسلاسة، دون تركيب صوت على الآخر.
  • تم تحديث واجهة إدارة اتصالات الشبكة في مجموعة الإعدادات السريعة واللوحة ومكون النظام. تمت إضافة لوحة إنترنت جديدة تتيح لك التبديل بسرعة بين مقدمي الخدمات المختلفين وتشخيص المشكلات.
    إطلاق منصة أندرويد 12 للجوال
  • تمت إضافة القدرة على إنشاء لقطات شاشة لا تغطي المنطقة المرئية فحسب، بل تغطي أيضًا المحتوى الموجود في منطقة التمرير. تعمل القدرة على الاحتفاظ بالمحتوى خارج المنطقة المرئية مع كافة التطبيقات التي تستخدم فئة العرض للإخراج. لتنفيذ الدعم لتمرير لقطات الشاشة في البرامج التي تستخدم واجهات محددة، تم اقتراح ScrollCapture API.
    إطلاق منصة أندرويد 12 للجوال
  • تم تحسين ميزة التدوير التلقائي لمحتوى الشاشة، والتي يمكنها الآن استخدام التعرف على الوجه من الكاميرا الأمامية لتحديد ما إذا كانت الشاشة بحاجة إلى التدوير، على سبيل المثال عندما يستخدم الشخص الهاتف أثناء الاستلقاء. لضمان السرية، تتم معالجة المعلومات بسرعة دون تخزين وسيط للصور. الميزة متاحة حاليًا فقط على هواتف Pixel 4 والهواتف الذكية الأحدث.
  • تحسين وضع الصورة داخل الصورة (PIP، صورة داخل صورة) وزيادة سلاسة تأثيرات الانتقال. إذا قمت بتمكين الانتقال التلقائي إلى PIP باستخدام إيماءة تصل إلى المنزل (تحويل الجزء السفلي من الشاشة لأعلى)، فسيتم الآن تحويل التطبيق على الفور إلى وضع PIP، دون انتظار اكتمال الرسوم المتحركة. تحسين تغيير حجم نوافذ PIP مع محتوى غير الفيديو. تمت إضافة القدرة على إخفاء نافذة PIP عن طريق سحبها إلى الحافة اليسرى أو اليمنى من الشاشة. تم تغيير السلوك عند لمس نافذة PIP - فلمسة واحدة تعرض الآن أزرار التحكم، كما تغير اللمسة المزدوجة حجم النافذة.
  • تحسينات الأداء:
    • تم إجراء تحسين كبير لأداء النظام - انخفض الحمل على وحدة المعالجة المركزية لخدمات النظام الرئيسية بنسبة 22٪، مما أدى بدوره إلى زيادة عمر البطارية بنسبة 15٪. من خلال تقليل تنافس القفل، وتقليل زمن الوصول، وتحسين الإدخال/الإخراج، يتم زيادة أداء الانتقال من تطبيق إلى آخر وتقليل وقت بدء تشغيل التطبيق.

      في PackageManager، عند العمل مع اللقطات في وضع القراءة فقط، يتم تقليل تنافس القفل بنسبة 92%. يستخدم محرك الاتصالات بين العمليات في Binder التخزين المؤقت خفيف الوزن لتقليل زمن الوصول بما يصل إلى 47 مرة لبعض أنواع المكالمات. أداء محسّن لمعالجة ملفات dex وodex وvdex، مما يؤدي إلى أوقات تحميل أسرع للتطبيقات، خاصة على الأجهزة ذات الذاكرة المنخفضة. تم تسريع تشغيل التطبيقات من الإشعارات، على سبيل المثال، أصبح تشغيل صور Google من الإشعارات أسرع بنسبة 34%.

      تم تحسين أداء استعلامات قاعدة البيانات من خلال استخدام التحسينات المضمنة في عملية CursorWindow. بالنسبة لكميات صغيرة من البيانات، أصبح CursorWindow أسرع بنسبة 36%، وبالنسبة للمجموعات التي تزيد عن 1000 صف، يمكن أن يصل التسريع إلى 49 مرة.

      تم اقتراح معايير لتصنيف الأجهزة حسب الأداء. واستنادًا إلى إمكانيات الجهاز، يتم تعيين فئة أداء له، والتي يمكن بعد ذلك استخدامها في التطبيقات للحد من وظائف برامج الترميز على الأجهزة منخفضة الطاقة أو للتعامل مع محتوى الوسائط المتعددة عالي الجودة على أجهزة قوية.

    • تم تنفيذ وضع إسبات التطبيق، والذي يسمح، إذا لم يتفاعل المستخدم بشكل صريح مع البرنامج لفترة طويلة، بإعادة تعيين الأذونات الممنوحة مسبقًا للتطبيق تلقائيًا، وإيقاف التنفيذ، وإرجاع الموارد التي يستخدمها التطبيق، مثل الذاكرة، ومنع إطلاق العمل في الخلفية وإرسال إشعارات الدفع. يمكن استخدام الوضع لمعظم التطبيقات ويسمح لك بحماية بيانات المستخدم التي لا تزال البرامج المنسية منذ فترة طويلة قادرة على الوصول إليها. إذا رغبت في ذلك، يمكن تعطيل وضع السبات بشكل انتقائي في الإعدادات.
    • تم تحسين الرسوم المتحركة عند تدوير الشاشة، مما يقلل التأخير قبل التدوير بنسبة 25% تقريبًا.
    • تشتمل البنية على محرك بحث جديد عالي الأداء AppSearch، والذي يسمح لك بفهرسة المعلومات الموجودة على الجهاز وإجراء عمليات بحث عن النص الكامل مع نتائج التصنيف. يوفر AppSearch نوعين من الفهارس - لتنظيم عمليات البحث في التطبيقات الفردية وللبحث في النظام بأكمله.
    • تمت إضافة Game Mode API والإعدادات المقابلة التي تسمح لك بإدارة ملف تعريف أداء اللعبة - على سبيل المثال، يمكنك التضحية بالأداء لإطالة عمر البطارية أو استخدام جميع الموارد المتاحة لتحقيق الحد الأقصى من الإطارات في الثانية.
    • تمت إضافة وظيفة التشغيل أثناء التنزيل لتنزيل موارد اللعبة في الخلفية أثناء عملية التثبيت، مما يسمح لك ببدء اللعب قبل اكتمال التنزيل. طلب.
    • زيادة الاستجابة وسرعة التفاعل عند العمل مع الإشعارات. على سبيل المثال، عندما ينقر المستخدم على إشعار، فإنه ينقله على الفور إلى التطبيق المرتبط. تطبيقات تحد من استخدام الترامبولين الإخطار.
    • تحسين مكالمات IPC في Binder. وباستخدام إستراتيجية جديدة للتخزين المؤقت وإزالة تنافس القفل، تم تقليل زمن الوصول بشكل ملحوظ. بشكل عام، تضاعف أداء استدعاء Binder تقريبًا، ولكن هناك بعض المناطق التي تم فيها تحقيق عمليات تسريع أكثر أهمية. على سبيل المثال، أصبح استدعاء refContentProvider() أسرع بـ 47 مرة، واستدعاء ReleaseWakeLock() أسرع بـ 15 مرة، واستدعاء JobScheduler.schedule() أسرع بـ 7.9 مرة.
    • لمنع مشكلات الأداء المحتملة، يُحظر على التطبيقات تشغيل الخدمات الأمامية أثناء التشغيل في الخلفية، إلا في حالات خاصة قليلة. لبدء العمل في الخلفية، يوصى باستخدام WorkManager. لتبسيط عملية النقل، تم اقتراح نوع جديد من العمل في JobScheduler، والذي يبدأ على الفور، مع زيادة الأولوية والوصول إلى الشبكة.
  • التغييرات التي تؤثر على الأمن والخصوصية:
    • تم تنفيذ واجهة لوحة معلومات الخصوصية مع نظرة عامة على جميع إعدادات الأذونات، مما يسمح لك بفهم ما يمكن لتطبيقات بيانات المستخدم الوصول إليه. تتضمن الواجهة أيضًا مخططًا زمنيًا يعرض تاريخ وصول التطبيق إلى بيانات الميكروفون والكاميرا والموقع. لكل تطبيق، يمكنك عرض تفاصيل وأسباب الوصول إلى البيانات الحساسة.
      إطلاق منصة أندرويد 12 للجوال
    • تمت إضافة مؤشرات نشاط الميكروفون والكاميرا إلى اللوحة، والتي تظهر عندما يصل أحد التطبيقات إلى الكاميرا أو الميكروفون. عند النقر فوق المؤشرات، يظهر مربع حوار بالإعدادات، مما يسمح لك بتحديد التطبيق الذي يعمل مع الكاميرا أو الميكروفون، وإذا لزم الأمر، إلغاء الأذونات.
    • تمت إضافة مفاتيح التبديل إلى كتلة الإعدادات السريعة المنبثقة، والتي يمكنك من خلالها إيقاف تشغيل الميكروفون والكاميرا بالقوة. بعد إيقاف التشغيل، ستؤدي محاولات الوصول إلى الكاميرا والميكروفون إلى إرسال إشعار وبيانات فارغة إلى التطبيق.
      إطلاق منصة أندرويد 12 للجوال
    • تمت إضافة إشعار جديد يظهر أسفل الشاشة عندما يحاول أحد التطبيقات قراءة محتويات الحافظة عبر استدعاء وظيفة getPrimaryClip(). إذا تم نسخ محتوى من الحافظة في نفس التطبيق الذي تمت إضافته فيه، فلن يظهر الإشعار.
    • تمت إضافة إذن منفصل BLUETOOTH_SCAN لفحص الأجهزة القريبة عبر البلوتوث. في السابق، تم توفير هذه الإمكانية بناءً على الوصول إلى معلومات موقع الجهاز، مما أدى إلى الحاجة إلى منح أذونات إضافية للتطبيقات التي تتطلب الاقتران بجهاز آخر عبر البلوتوث.
    • تم تحديث مربع الحوار لتوفير الوصول إلى المعلومات حول موقع الجهاز. يُمنح المستخدم الآن الفرصة لتزويد التطبيق بمعلومات حول الموقع الدقيق أو تقديم بيانات تقريبية فقط، بالإضافة إلى قصر السلطة على الجلسة النشطة فقط مع البرنامج (رفض الوصول عندما يكون في الخلفية). يمكن تغيير مستوى دقة البيانات التي يتم إرجاعها عند تحديد موقع تقريبي في الإعدادات، بما في ذلك ما يتعلق بالتطبيقات الفردية.
      إطلاق منصة أندرويد 12 للجوال
    • يتم منح مطوري التطبيقات خيار تعطيل التحذيرات المنبثقة التي تتداخل مع المحتوى. في السابق، كان يتم التحكم في القدرة على عرض النوافذ المتداخلة من خلال طلب التحقق من الأذونات أثناء تثبيت التطبيقات التي تعرض النوافذ المتداخلة. لم تكن هناك أدوات متاحة للتأثير على تداخل المحتوى من التطبيقات التي تتداخل نوافذها. عند استخدام استدعاء Window#setHideOverlayWindows()‎، سيتم الآن إخفاء كافة النوافذ المتداخلة تلقائيًا. على سبيل المثال، يمكن تمكين الإخفاء عند عرض معلومات مهمة بشكل خاص، مثل تأكيد المعاملة.
    • يتم منح التطبيقات إعدادات إضافية للحد من عمليات الإشعارات أثناء قفل الشاشة. في السابق، لم يكن لديك سوى القدرة على التحكم في رؤية الإشعارات أثناء قفل الشاشة، ولكن الآن يمكنك تمكين المصادقة الإلزامية لتنفيذ أي إجراءات مع الإشعارات أثناء قفل الشاشة. على سبيل المثال، قد يتطلب تطبيق المراسلة المصادقة قبل حذف الرسالة أو وضع علامة عليها كمقروءة.
    • تمت إضافة واجهة برمجة تطبيقات PackageManager.requestChecksums() لطلب المجموع الاختباري للتطبيق المثبت والتحقق منه. تتضمن الخوارزميات المدعومة SHA256 وSHA512 وMerkle Root.
    • يطبق محرك الويب WebView القدرة على استخدام سمة SameSite للتحكم في معالجة ملفات تعريف الارتباط. تحدد القيمة "SameSite=Lax" ملف تعريف الارتباط الذي يتم إرساله للطلبات الفرعية عبر المواقع، مثل طلب صورة أو تحميل محتوى عبر إطار iframe من موقع آخر. في وضع "SameSite=Strict"، لا يتم إرسال ملفات تعريف الارتباط لأي نوع من الطلبات عبر المواقع، بما في ذلك جميع الروابط الواردة من المواقع الخارجية.
    • نواصل العمل على توزيع عناوين MAC بشكل عشوائي للتخلص من إمكانية تتبع الجهاز عند الاتصال بشبكة لاسلكية. تتمتع التطبيقات غير المميزة بوصول محدود إلى عنوان MAC الخاص بالجهاز ويؤدي استدعاء getHardwareAddress() الآن إلى إرجاع قيمة فارغة.
  • التغييرات والتحسينات ذات المستوى المنخفض لمطوري التطبيقات:
    • تمت إضافة القدرة على تكييف عناصر الواجهة مع الأجهزة ذات الشاشات المستديرة. يمكن للمطورين الآن الحصول على معلومات حول تقريب الشاشة وضبط عناصر الواجهة التي تقع في مناطق الزاوية غير المرئية. من خلال واجهة برمجة تطبيقات RoundedCorner الجديدة، يمكنك معرفة المعلمات مثل نصف القطر ومركز التقريب، ومن خلال Display.getRoundedCorner() وWindowInsets.getRoundedCorner() يمكنك تحديد إحداثيات كل زاوية مستديرة من الشاشة.
      إطلاق منصة أندرويد 12 للجوال
    • تمت إضافة واجهة برمجة تطبيقات CompanionDeviceService جديدة، والتي يمكنك من خلالها تنشيط التطبيقات التي تتحكم في الأجهزة المصاحبة، مثل الساعات الذكية وأجهزة تتبع اللياقة البدنية. تعمل واجهة برمجة التطبيقات (API) على حل مشكلة تشغيل التطبيقات الضرورية وتوصيلها عند ظهور جهاز مصاحب في مكان قريب. يقوم النظام بتنشيط الخدمة عندما يكون الجهاز قريبًا ويرسل إشعارًا عند فصل الجهاز أو عند دخول الجهاز إلى منطقة الرؤية أو خروجها. يمكن للتطبيقات أيضًا استخدام ملف تعريف الجهاز المصاحب الجديد لإعداد الأذونات للانضمام إلى الجهاز بسهولة أكبر.
    • تحسين نظام التنبؤ بالسعة. يمكن للتطبيقات الآن طلب معلومات حول إجمالي الإنتاجية المتوقعة فيما يتعلق بالمشغل والشبكة اللاسلكية المحددة (Wi-Fi SSID) ونوع الشبكة وقوة الإشارة.
    • تم تبسيط تطبيق التأثيرات المرئية الشائعة، مثل التمويه وتشويه الألوان، ويمكن الآن تطبيقها باستخدام RenderEffect API على أي كائن RenderNode أو المنطقة المرئية بأكملها، بما في ذلك سلسلة ذات تأثيرات أخرى. تسمح لك هذه الميزة، على سبيل المثال، بطمس الصورة المعروضة من خلال ImageView دون نسخ الصورة النقطية ومعالجتها واستبدالها بشكل صريح، ونقل هذه الإجراءات إلى جانب النظام الأساسي. بالإضافة إلى ذلك، تم اقتراح واجهة برمجة تطبيقات Window.setBackgroundBlurRadius()، والتي يمكنك من خلالها طمس خلفية النافذة بتأثير زجاج بلوري وإبراز العمق عن طريق طمس المساحة المحيطة بالنافذة.
      إطلاق منصة أندرويد 12 للجوال
    • أدوات متكاملة لتحويل تدفقات الوسائط التي يمكن استخدامها في البيئات التي تحتوي على تطبيق كاميرا يحفظ الفيديو بتنسيق HEVC، لضمان التوافق مع التطبيقات التي لا تدعم هذا التنسيق. بالنسبة لمثل هذه التطبيقات، تمت إضافة وظيفة تحويل الترميز التلقائي إلى تنسيق AVC الأكثر شيوعًا.
    • تمت إضافة دعم لتنسيق الصورة AVIF (تنسيق صورة AV1)، الذي يستخدم تقنيات الضغط داخل الإطار من تنسيق ترميز الفيديو AV1. حاوية توزيع البيانات المضغوطة في AVIF تشبه تمامًا HEIF. يدعم AVIF كلاً من الصور في HDR (النطاق الديناميكي العالي) ومساحة الألوان واسعة النطاق، وكذلك في النطاق الديناميكي القياسي (SDR).
    • تم اقتراح واجهة برمجة تطبيقات OnReceiveContentListener موحدة لإدراج ونقل أنواع موسعة من المحتوى (النص المنسق والصور ومقاطع الفيديو والملفات الصوتية وما إلى ذلك) بين التطبيقات التي تستخدم مصادر بيانات مختلفة، بما في ذلك الحافظة ولوحة المفاتيح وواجهة السحب والإفلات.
    • تمت إضافة تأثير ردود الفعل اللمسية، الذي تم تنفيذه باستخدام محرك الاهتزاز المدمج في الهواتف، حيث يعتمد تردد وشدة الاهتزاز على معلمات الصوت الناتج حاليًا. يتيح لك التأثير الجديد الشعور بالصوت جسديًا ويمكن استخدامه لإضافة واقعية إضافية إلى الألعاب وبرامج الصوت.
    • في الوضع الشامل، الذي يظهر فيه البرنامج بملء الشاشة مع إخفاء لوحات الخدمة، يتم تبسيط التنقل باستخدام إيماءات التحكم. على سبيل المثال، يمكن الآن التنقل في الكتب ومقاطع الفيديو والصور بحركة تمرير واحدة.
    • كجزء من مشروع Mainline، الذي يسمح لك بتحديث مكونات النظام الفردية دون تحديث النظام الأساسي بأكمله، تم إعداد وحدات نظام جديدة قابلة للتحديث بالإضافة إلى 22 وحدة متوفرة في Android 11. وتؤثر التحديثات على المكونات غير الأجهزة التي يتم تنزيلها عبر Google Play بشكل منفصل عن تحديثات البرامج الثابتة عبر الهواء من الشركة المصنعة. من بين الوحدات الجديدة التي يمكن تحديثها عبر Google Play دون تحديث البرامج الثابتة، هناك ART (Android Runtime) ووحدة لتحويل ترميز الفيديو.
    • تمت إضافة واجهة برمجة التطبيقات (API) إلى فئة WindowInsets لتحديد موضع عرض مؤشرات استخدام الكاميرا والميكروفون (يمكن للمؤشرات أن تتداخل مع عناصر التحكم في البرامج المنشورة في وضع ملء الشاشة، ومن خلال واجهة برمجة التطبيقات المحددة، يمكن للتطبيق ضبط واجهته).
    • بالنسبة للأجهزة المُدارة مركزيًا، تمت إضافة خيار لمنع استخدام المفاتيح لكتم صوت الميكروفون والكاميرا.
    • بالنسبة لتطبيقات CDM (Companion Device Manager) التي تعمل في الخلفية، والتي تتحكم في الأجهزة المصاحبة مثل الساعات الذكية وأجهزة تتبع اللياقة البدنية، فمن الممكن إطلاق الخدمات الأمامية.
    • بدلاً من إصدار إصدار للأجهزة القابلة للارتداء، قرر Android Wear بالتعاون مع Samsung تطوير نظام أساسي موحد جديد يجمع بين إمكانيات Android وTizen.
    • تم توسيع إمكانيات إصدارات Android لأنظمة المعلومات والترفيه في السيارات وأجهزة التلفزيون الذكية.

    المصدر: opennet.ru

  • إضافة تعليق