Меню живлення Android 11 може перетворитися на центр управління домашньою автоматизацією

Можливо, Google бере приклад з iOS, перетворюючи меню живлення в Android 11 на центр керування вашими улюбленими ярликами домашньої автоматизації.

Оновлення 2 (20.02.2020 о 19:00 EST): Кірон Куїнн надіслав нам знімок екрана, який демонструє більш чіткі докази того, що цей Controls API призначений для відображення елементів керування домашньою автоматизацією в меню живлення Android 11.

Оновлення 1 (20.02.2020 о 17:30 EST): Ми знайшли докази, які можуть пояснити, чому Google працює над цією функцією: надання швидкого доступу до елементів керування домашньою автоматизацією! Більше інформації нижче. Оригінальна стаття подана нижче.

Коли вчора Google випустив Android 11 Developer Preview 1, ми знайшли в основному зміни рівня поверхні у наших початкових практичних заняттях. Здається, Google знову залишить основну частину змін інтерфейсу користувача та нових функцій для a публічна бета-версія після оголошення на Google I/O 2020. Однак ми виявили кілька налаштувань користувальницького інтерфейсу в процесі розробки, які свідчать про великі зміни для ОС Android у 2020 році. Ми виявили, що Google може розмістити a

медіаплеєр на панелі швидких налаштувань, відокремте панель сповіщень на панелі швидких налаштувань, і тепер ми виявили, що Google, можливо, налаштовує меню живлення, щоб відповідати вибраним користувачем ярликам домашньої автоматизації.

На моєму Pixel 2 XL під керуванням Android 11 DP1 мені вдалося активувати новий інтерфейс користувача для меню живлення при тривалому натисканні, як показано нижче. Існуючі піктограми меню живлення, включно з надзвичайним випадком, знімком екрана, перезапуском і вимкненням живлення, перемістяться у верхню частину екрана, залишаючи багато вільного місця під ним. Крім того, над значками з’являється новий текст «Додому». Піктограми, що зміщуються вгору, вказують на те, що Google планує додати щось щоб заповнити порожній простір, який ми спочатку вважали підготовкою до нова функція гаманця швидкого доступу це тепер в Android 11. Однак наявність тексту «Домашня сторінка» викликає запитання, чому він там — чи може Google створювати категорії в меню живлення для різних дій?

Досліджуючи код, ми виявили в SystemUIGoogle кілька класів, пов’язаних із функцією під назвою «Керування». Код передбачає, що користувач може встановіть ярлики як «вибрані», щоб вони відображалися в цьому меню, які зберігаються системою в XML-файлі з ідентифікаторами ярликів, назвами, типами та компоненти. У SystemUIGoogle з’явилися нові дії, пов’язані з елементами керування: ControlsFavoritingActivity і ControlsProviderSelectorActivity. Запуск першого викликає відмову в дозволі, оскільки це неекспортована діяльність, і ми не маємо кореневого доступу, а запуск останнього відкриває такий інтерфейс:

На жаль, наразі цей інтерфейс користувача порожній, тому ми не можемо додати власні улюблені ярлики до меню живлення. Ми знайшли посилання на новий дозвіл під назвою «android.permission. BIND_CONTROLS" і нову службу під назвою "android.service.controls. ControlsProviderService», які передбачають, що програми сторонніх розробників зможуть створювати a Сервіс «Керування», до якого система Android може прив’язуватися та показувати його в цьому списку, подібно до Quick Плитки налаштувань. Відсутність програм сторонніх розробників, які підтримують API «Керування», пояснює, чому активність, показана вище, наразі порожня.

Схоже, Google бере приклади з Центру керування iOS, хоча ми не зовсім впевнені, чому Google працює над ця функція в першу чергу з огляду на те, що панель швидких налаштувань уже існує, і її можна заповнити власними ярлики. Ми будемо стежити за розробкою цієї функції, якщо щось зміниться в майбутніх попередніх версіях для розробників Android 11.

Новини Android 11 на XDA

Оновлення 1: можливо, для засобів керування домашньою автоматизацією

Після публікації цієї статті визнаний XDA розробник Quinny899 зв’язався з нами, щоб повідомити нам про свій власний висновок. Оновлений framework.jar в 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».

Ось скріншот, наданий розробником Кіроном Куїном, на якому показано швидку програму «Lightbulb», яку він зібрав і зміг відкрити в активності «Постачальники елементів керування» в Android 11. Натискання піктограми зараз призводить до збою системи. Ми оновимо цю публікацію, якщо нам вдасться змусити її працювати далі.