ربما تأخذ Google إشارات من نظام التشغيل iOS عن طريق تحويل قائمة الطاقة في Android 11 إلى مركز تحكم لاختصارات التشغيل الآلي للمنزل المفضلة لديك.
التحديث 2 (20/2/2020 الساعة 7:00 مساءً بتوقيت شرق الولايات المتحدة): أرسل لنا Kieron Quinn لقطة شاشة توضح المزيد من الأدلة القاطعة على أن واجهة برمجة التطبيقات Controls API هذه تهدف إلى إظهار عناصر التحكم في التشغيل الآلي للمنزل في قائمة الطاقة لنظام Android 11.
التحديث 1 (20/02/2020 الساعة 5:30 مساءً بتوقيت شرق الولايات المتحدة): لقد اكتشفنا أدلة قد تفسر سبب عمل Google على هذه الميزة: توفير الوصول السريع إلى عناصر التحكم في التشغيل الآلي للمنزل! مزيد من المعلومات أدناه. يتبع المقال الأصلي.
عندما أصدرت Google أمس Android 11 Developer Preview 1، وجدنا في الغالب تغييرات على مستوى السطح في التدريب العملي الأولي لدينا. يبدو أن Google ستترك مرة أخرى الجزء الأكبر من تغييرات واجهة المستخدم والميزات الجديدة لـ بيتا العامة بعد إعلان في مؤتمر Google I/O 2020. ومع ذلك، اكتشفنا العديد من تعديلات واجهة المستخدم قيد التطوير والتي تشير إلى تغييرات كبيرة قادمة لنظام التشغيل Android في عام 2020. لقد اكتشفنا أن Google قد تضع ملف
مشغل الوسائط في لوحة الإعدادات السريعة, افصل ظل الإشعارات من لوحة الإعدادات السريعة، والآن، وجدنا أن Google ربما تقوم بتعديل قائمة الطاقة لاستيعاب اختصارات التشغيل الآلي للمنزل التي حددها المستخدم.على هاتف Pixel 2 XL الذي يعمل بنظام التشغيل Android 11 DP1، تمكنت من تنشيط واجهة مستخدم جديدة لقائمة الطاقة التي يتم الضغط عليها لفترة طويلة، كما هو موضح أدناه. تنتقل أيقونات قائمة الطاقة الحالية، بما في ذلك الطوارئ ولقطة الشاشة وإعادة التشغيل وإيقاف التشغيل، إلى أعلى الشاشة، مما يترك الكثير من المساحة الفارغة تحتها. بالإضافة إلى ذلك، يظهر نص "الصفحة الرئيسية" الجديد أعلى الأيقونات. تشير الرموز المتغيرة لأعلى إلى أن Google تخطط للإضافة شئ ما لملء المساحة الفارغة، التي افترضنا في البداية أنها كانت تحضيرًا لـ ميزة جديدة لمحفظة الوصول السريع هذا الآن في Android 11. ومع ذلك، فإن وجود نص "الصفحة الرئيسية" يثير التساؤل حول سبب وجوده - هل يمكن أن يكون Google بصدد إنشاء فئات في قائمة الطاقة لأنواع مختلفة من الإجراءات؟
أثناء البحث في الكود، اكتشفنا فئات متعددة في SystemUIGoogle تتعلق بميزة تسمى "عناصر التحكم". يشير الرمز إلى أنه يمكن للمستخدم ذلك قم بتعيين الاختصارات كـ "مفضلة" لتظهر في هذه القائمة، والتي يتم تخزينها بواسطة النظام في ملف XML مع معرفات الاختصارات وعناوينها وأنواعها عناصر. هناك أنشطة جديدة في SystemUIGoogle تتعلق بعناصر التحكم: ControlsFavoritingActivity وControlsProviderSelectorActivity. يؤدي تشغيل الأول إلى رفض الإذن لأنه نشاط غير مُصدَّر وليس لدينا حق الوصول إلى الجذر بينما يؤدي تشغيل الأخير إلى إظهار واجهة المستخدم التالية:
لسوء الحظ، واجهة المستخدم هذه فارغة في الوقت الحالي، لذلك لا يمكننا إضافة الاختصارات المفضلة لدينا إلى قائمة الطاقة. لقد وجدنا إشارات إلى إذن جديد يسمى "android.permission. BIND_CONTROLS" وخدمة جديدة تسمى "android.service.controls. ControlsProviderService" التي تشير إلى أن تطبيقات الطرف الثالث ستكون قادرة على إنشاء ملف خدمة "عناصر التحكم" التي يمكن لنظام Android الارتباط بها وعرضها في هذه القائمة، كما هو الحال مع Quick بلاط الإعدادات. إن عدم وجود تطبيقات تابعة لجهات خارجية تدعم واجهة برمجة التطبيقات "عناصر التحكم" من شأنه أن يفسر سبب كون النشاط الموضح أعلاه فارغًا في الوقت الحالي.
يبدو أن Google تتلقى إشارات من مركز التحكم iOS هنا، على الرغم من أننا لسنا متأكدين تمامًا من سبب عمل Google على ذلك هذه الميزة في المقام الأول نظرًا لأن لوحة الإعدادات السريعة موجودة بالفعل، ويمكن ملؤها بالتخصيص الاختصارات. سنتابع تطور هذه الميزة في حالة حدوث أي تغيير في معاينات مطوري Android 11 المستقبلية.
أخبار Android 11 على XDA
التحديث 1: ربما لعناصر التحكم في أتمتة المنزل
بعد نشر هذه المقالة، تواصل مع مطور XDA المعترف به Quinny899 لإبلاغنا بالنتائج التي توصل إليها. يكشف إطار العمل المحدث في Android 11 عن أنواع الاختصارات التي قد تظهر في قائمة "عناصر التحكم" في قائمة الطاقة. لقد اكتشف قائمة بأنواع الأجهزة المقبولة باعتبارها "أنواع أجهزة صالحة" في خدمة عناصر التحكم. ستجد هنا لائحة كاملة:
أنواع أجهزة أتمتة المنزل المدعومة لنظام Android 11 Controls API
privatestaticfinalint NUM_CONCRETE_TYPES = 51;
privatestaticfinalint NUM_GENERIC_TYPES = 7;
publicstaticfinalint TYPE_AC_HEATER = 1;
publicstaticfinalint TYPE_AC_UNIT = 2;
publicstaticfinalint TYPE_AIR_FRESHENER = 3;
publicstaticfinalint TYPE_AIR_PURIFIER = 4;
publicstaticfinalint TYPE_AWNING = 33;
publicstaticfinalint TYPE_BLINDS = 34;
publicstaticfinalint TYPE_CAMERA = 50;
publicstaticfinalint TYPE_CLOSET = 35;
publicstaticfinalint TYPE_COFFEE_MAKER = 5;
publicstaticfinalint TYPE_CURTAIN = 36;
publicstaticfinalint TYPE_DEHUMIDIFIER = 6;
publicstaticfinalint TYPE_DISHWASHER = 24;
publicstaticfinalint TYPE_DISPLAY = 7;
publicstaticfinalint TYPE_DOOR = 37;
publicstaticfinalint TYPE_DOORBELL = 51;
publicstaticfinalint TYPE_DRAWER = 38;
publicstaticfinalint TYPE_DRYER = 25;
publicstaticfinalint TYPE_FAN = 8;
publicstaticfinalint TYPE_GARAGE = 39;
publicstaticfinalint TYPE_GATE = 40;
publicstaticfinalint TYPE_GENERIC_ARM_DISARM = -5;
publicstaticfinalint TYPE_GENERIC_LOCK_UNLOCK = -4;
publicstaticfinalint TYPE_GENERIC_ON_OFF = -1;
publicstaticfinalint TYPE_GENERIC_OPEN_CLOSE = -3;
publicstaticfinalint TYPE_GENERIC_START_STOP = -2;
publicstaticfinalint TYPE_GENERIC_TEMP_SETTING = -6;
publicstaticfinalint TYPE_GENERIC_VIEWSTREAM = -7;
publicstaticfinalint TYPE_HEATER = 0x2F;
publicstaticfinalint TYPE_HOOD = 10;
publicstaticfinalint TYPE_HUMIDIFIER = 11;
publicstaticfinalint TYPE_KETTLE = 12;
publicstaticfinalint TYPE_LIGHT = 13;
publicstaticfinalint TYPE_LOCK = 45;
publicstaticfinalint TYPE_MICROWAVE = 14;
publicstaticfinalint TYPE_MOP = 26;
publicstaticfinalint TYPE_MOWER = 27;
publicstaticfinalint TYPE_MULTICOOKER = 28;
publicstaticfinalint TYPE_OUTLET = 15;
publicstaticfinalint TYPE_PERGOLA = 41;
publicstaticfinalint TYPE_RADIATOR = 16;
publicstaticfinalint TYPE_REFRIGERATOR = 0x30;
publicstaticfinalint TYPE_REMOTE_CONTROL = 17;
publicstaticfinalint TYPE_SECURITY_SYSTEM = 46;
publicstaticfinalint TYPE_SET_TOP = 18;
publicstaticfinalint TYPE_SHOWER = 29;
publicstaticfinalint TYPE_SHUTTER = 42;
publicstaticfinalint TYPE_SPRINKLER = 30;
publicstaticfinalint TYPE_STANDMIXER = 19;
publicstaticfinalint TYPE_STYLER = 20;
publicstaticfinalint TYPE_SWITCH = 21;
publicstaticfinalint TYPE_THERMOSTAT = 49;
publicstaticfinalint TYPE_TV = 22;
publicstaticfinalint TYPE_UNKNOWN = 0;
publicstaticfinalint TYPE_VACUUM = 0x20;
publicstaticfinalint TYPE_VALVE = 44;
publicstaticfinalint TYPE_WASHER = 0x1F;
publicstaticfinalint TYPE_WATER_HEATER = 23;
publicstaticfinalint TYPE_WINDOW = 43;
اقرأ أكثر
من المحتمل أن تسمح لك Google بالتحكم في أجهزتك المنزلية الذكية من خلال قائمة الطاقة في Android 11. يكون هذا التفسير منطقيًا في سياق ظهور نص "الصفحة الرئيسية" في الأعلى. سنقوم بتحديثك إذا عرفنا المزيد حول هذه الميزة أو إذا تمكنا من ظهور الاختصار الخاص بنا في القائمة.
التحديث 2: تم اختراق موفر عناصر التحكم لإظهار تطبيق "Lightbulb" مخصص
إليك لقطة شاشة قدمها المطور Kieron Quinn تعرض تطبيق "Lightbulb" السريع الذي قام بتجميعه وتمكن من الظهور في نشاط "Controls Providers" في Android 11. يؤدي النقر على الأيقونة حاليًا إلى تعطل النظام. سنقوم بتحديث هذا المنشور إذا تمكنا من تشغيله بعد ذلك.