За да дадем възможност на програмистите да създават приложения, които осигуряват последователна практическа работа на потребителите, въвеждаме допълнителни типове услуги на преден план наред с нов набор от ограничения в съответните правила. В тази статия се разясняват предстоящите изисквания за услугите на преден план и как да декларирате информацията за такива услуги в Play Console. В нея ще намерите и подробности за изискванията относно използването на известията от намерение за цял екран.
Изисквания за услугите на преден план за Android 14
За да ви помогнем да разберете кои случаи на употреба са подходящи за услуги на преден план и да определите ясно целта на работата на заден план в приложението ви, за Android 14 и по-нови версии трябва да направите следното, преди да използвате услуга на преден план:
- Декларирайте типовете услуги на преден план в манифеста си. Трябва да направите това за всяка услуга на преден план, която възнамерявате да използвате.
- Декларирайте и заявете разрешението за услуга на преден план, подходящо за отделните избрани типове, за които е приложимо.
В секцията за разрешенията за услуги на преден план в правилата ни относно злоупотребата с устройства и мрежи са описани подробно критериите за използване на такива услуги. Когато актуализирате до Android 14, трябва да декларирате типовете услуги на преден план.
Деклариране на информацията за услугите на преден план в Play Console
Ако приложенията ви са насочени към Android 14 и по-нови версии, ще трябва да посочите всички използвани от вас типове услуги на преден план на страницата Съдържание на приложението (Наблюдение и подобряване > Съдържание на приложението) в Play Console.
За всеки деклариран от вас тип услуга ще трябва:
- да предоставите описание на функцията на приложението, за която се използва съответният тип услуга.
- да опишете ефекта върху потребителите, ако:
- изпълнението на задачата се отлага от системата (не започва незабавно); и/или
- задачата се прекъсва от системата (поставяне на пауза и/или рестартиране).
- Включете връзка към видеоклип, показващ всяка функция, за която се използва услугата на преден план. Видеоклипът трябва да демонстрира стъпките, които потребителят е необходимо да изпълни в приложението, за да задейства функцията.
- Изберете конкретния случай на употреба за всеки тип услуга на преден план. Ще ви бъде предоставен предварително изготвен списък със случаите на употреба, от които да избирате. В диаграмата по-долу са посочени определени случаи на употреба, които съответстват на типове услуги на преден план. Списъкът не е изчерпателен. Ако вашият случай на употреба не е посочен, можете да го въведете ръчно.
За някои случаи на употреба препоръчваме да използвате алтернативни API. За списък с тези случаи на употреба и препоръчаните вместо тях алтернативни API посетете сайта за програмисти за Android.
Забележка: Списъкът по-долу не е изчерпателен. За да определите дали даден достъп е подходящ за услуги на преден план, вижте правилата относно разрешенията за услуги на преден план за случаите на употреба, които не са споменати по-долу.
Тип услуга на преден план | Случаи на употреба | Описания и примери |
---|---|---|
TYPE_CAMERA |
Поточно предаване от камерата на заден план | Продължава осъществяването на достъп до камерата на заден план. Например приложения за видеочат, които дават възможност за изпълняване на няколко задачи едновременно. |
TYPE_CONNECTED_DEVICE |
Непрекъснато предаване на данни към външно устройство | Взаимодействия с външни устройства, включително предаване на данни, за които се изисква Bluetooth, NFC, IR, USB или връзка с мрежата. Например носим аксесоар, бебефон, слушалки или автомобил. |
TYPE_DATA_SYNC |
Прехвърляне в мрежата: резервни копия и възстановяване | Използване за функции, стартирани конкретно от потребителя. Например избиране на конкретна снимка, за която да се създаде резервно копие в облака, в сравнение с автоматичното ежедневно създаване на резервни копия на всички нови снимки. |
Прехвърляне в мрежата: качване или изтегляне | Например извличане на данни или обработка от страна на сървъра. | |
Локално обработване: импортиране или експортиране | Включва мигриране на файлове от SD карта. | |
Локално обработване: друго | Използване за задача, стартирана конкретно от потребителя, а не за обикновени задачи, стартирани от системата или от сървъра. Например шифроване или преоразмеряване. | |
TYPE_HEALTH |
Синхронизиране на данни за здравословното състояние | Синхронизиране на данни за здравословното състояние за приложенията в категорията „Физическа активност“, които могат да бъдат в различни приложения, или данни, събрани чрез проследяване на устройството. Например крачкомер или инструмент за проследяване на упражненията. |
TYPE_LOCATION |
Актуализации на местоположението на заден план: стартирано от потребителя споделяне на местоположението | Например функция за намиране на приятел или проследяване на активността на превозно средство. |
Актуализации на местоположението на заден план: навигация | Например продължаване на навигацията за шофиране в Карти или проследяване на споделено пътуване. | |
Геозониране | Дефиниране на параметрите, свързани с районите на интерес. | |
TYPE_MEDIA_PLAYBACK |
Възпроизвеждане на мултимедия | Продължаване на възпроизвеждането на аудио- или видеосъдържание от заден план, включително поточно предаване. |
Показване в режим „картина в картината“ | Когато форматът на мултимедията е намален при възпроизвеждане на заден план. | |
TYPE_MEDIA_PROJECTION |
Прожектиране, поточно предаване или запис на мултимедия и съдържание чрез MediaProjection API | Прожектиране на мултимедия към външни устройства или такива, които не са основни, чрез MediaProjection API, включително поточно предаване. |
FOREGROUND_SERVICE_MEDIA_PROCESSING |
Прекодиране на мултимедия | Извършване на отнемащи време операции с мултимедийни активи, като например конвертиране на мултимедия в различни формати. |
TYPE_MICROPHONE |
Достъп до звук на заден план | Записване на въвежданото чрез звук, например гласови команди за виртуален асистент, без да се запазва гласов запис. |
TYPE_PHONE_CALL |
Обаждания: API за мобилни услуги/VoiP/телекомуникационни услуги | Поддържат се различни функции за набиране при обаждания. |
TYPE_REMOTE_MESSAGING |
Предаване на текстови съобщения към друго устройство | Помага задачите на потребителя за съобщения да не се прекъсват при превключване между различни устройства. Например дава възможност на потребителите да изпращат текстови съобщения чрез клиентска уеб програма, като сканират QR код и установят връзка между нея и телефона. Не е ограничено само до SMS съобщения. |
Декларацията ще бъде налице преди ноември 2023 г. Ще ви дадем време да я попълните, да получите отзиви и да направите корекции, ако е необходимо.
Изисквания за намеренията за цял екран за Android 14
Може да използвате известията от намерение за цял екран, за да споделяте съобщения с висок приоритет, които изискват незабавно внимание от потребителя. За да гарантираме, че това разрешение е ограничено до подходящите случаи на употреба с висок приоритет, в Android 14 въвеждаме ограничения за използването на разрешението USE_FULL_SCREEN_INTENT
. Ограничаването на известията по този начин помага за осигуряването на по-добра практическа работа за потребителите.
Ако използвате разрешението USE_FULL_SCREEN_INTENT
, от 31 май 2024 г. сте задължени да попълните декларацията в Play Console, за да посочите дали за приложението ви има разрешена основна функционалност и дали отговаря на условията за автоматично предоставяне. От 22 януари 2025 г. за приложенията, които са насочени към Android 14 или по-нови версии, това разрешение ще бъде активирано по подразбиране само за тези, които имат функции, свързани с обаждания и будилници. В противен случай трябва да получите потребителско разрешение за използване на USE_FULL_SCREEN_INTENT
. За приложенията, при които декларацията не е попълнена или които не са одобрени за активиране по подразбиране, програмистите ще трябва да подканват потребителите да предоставят разрешение за новите инсталирания и елегантно да деградират, ако бъдат отхвърлени.
Често задавани въпроси
Какво се променя за услугите на преден план в Android 14?Въвеждаме няколко нови типа услуги на преден план и ще е задължително да декларирате типа услуга заедно с подходящото за нея разрешение. Ако например декларирате услугата на преден план от типа camera, трябва да декларирате и разрешението FOREGROUND_SERVICE_CAMERA. Използването на преден план трябва да спазва и другите изисквания, посочени в правилата ни относно злоупотребата с устройства и мрежи.
Изберете типа услуга на преден план, който най-добре отговаря на съответния случай на употреба. Например за приложение, което проследява физическите упражнения на потребителя, може да се декларира типът health. Имате възможност също да изберете няколко типа услуги на преден план, ако е необходимо за приложението ви.
Когато приложенията, насочени към Android 14, използват услуга на преден план, програмистите трябва да декларират съответното разрешение за конкретния тип услуга. Ако например приложението ви използва услугата на преден план от типа location, ще трябва да декларирате разрешението FOREGROUND_SERVICE_LOCATION. Разрешенията, които се отнасят за конкретен тип услуга на преден план, се дефинират като нормални и се предоставят по подразбиране по време на инсталирането. Потребителите не могат да ги отменят.
В зависимост от типа услуга на преден план може да има допълнителни системни изисквания. Възможно е някои от тях да са свързани с разрешения по време на изпълнение, които трябва да бъдат предоставени от потребителите, преди услугата да може да се използва. Например за услугата на преден план от типа location потребителят трябва също да предостави разрешението ACCESS_COARSE_LOCATION или ACCESS_FINE_LOCATION. За най-актуална информация вижте документацията.
При ограничени обстоятелства, ако случаят на употреба отговаря на другите изисквания за използване на услуги на преден план (описани в правилата), може да декларирате типа TYPE_SPECIAL_USE
. Всички типове услуги на преден план подлежат на преглед.
Това означава, че потребителят трябва да знае, че на устройството му се изпълнява задача от услуга на преден план. Счита се, че това изискване е спазено, ако потребителите могат да стартират действието собственоръчно, например да пуснат песен или да проследят тренировка по бягане. Приложението ви може също да информира потребителите за текуща услуга на преден план, като представи ясно и точно известие в лентата на задачите на устройството.
Ако насочвате към версия, по-стара от Android 14, продължете да използвате атрибута android:foregroundServiceType
в елемента <service> във файла на манифеста на приложението.
Стартираните от потребителя задания за прехвърляне на данни са предназначени да улеснят предаването на информация през мрежата. За тях се прилага проследяване на ограниченията и автоматично управление на заключванията в активно състояние. Услугата на преден план от типа dataSync може да включва прехвърляне на данни локално или през мрежа, както и обработване на данни на устройството. Ако случаят ви на употреба е свързан с прехвърляне на данни през мрежа (например Wi-Fi, мобилна мрежа или Bluetooth) в отговор на изрична заявка от потребителя, препоръчваме да използвате заданието за прехвърляне на данни, стартирано от потребителя, вместо типа dataSync.
В Android 14 USE_FULL_SCREEN_INTENT
ще се промени от нормално разрешение в разрешение за специален достъп за приложението и само приложенията, чиято основна функционалност представлява случай на употреба с висок приоритет, свързан със задаването на будилник или получаването на телефонни или видеообаждания, автоматично ще получат разрешението USE_FULL_SCREEN_INTENT
. Можете да разглеждате основната функционалност като главното предназначение на приложението си, без която то няма да работи правилно или ще бъде неизползваемо. Други приложения пак може да използват разрешението, но само след като бъде предоставено от потребителя.
Тези промени ще влязат в сила на 31 май 2024 г.
Когато приложението ви е насочено към Android 14 или по-нова версия, ще имате възможност да декларирате, че основната му функционалност е за намерение на цял екран, от страницата Съдържание на приложението (Наблюдение и подобряване > Съдържание на приложението) в Play Console. Декларацията ще бъде налице от април 2024 г. Ще ви дадем време да я попълните.