Объявить службы переднего плана и запросить разрешения,Объявить службы переднего плана и запросить разрешения,Объявить службы переднего плана и запросить разрешения

В манифесте вашего приложения объявите каждую из служб переднего плана вашего приложения с помощью элемента <service> . Для каждой службы используйте атрибут android:foregroundServiceType , чтобы объявить, какую работу выполняет служба.

Кроме того, запросите любые разрешения, необходимые вашим службам переднего плана.

Совместимость версий

Требования к объявлению служб переднего плана и запросу разрешений различаются в зависимости от того, на какой уровень API нацелено ваше приложение. На этой странице описаны требования к приложениям, ориентированным на уровень API 34 или выше. Сведения об изменениях в службах переднего плана в более ранних версиях платформы см. в разделе Изменения в службах переднего плана .

Объявите службы переднего плана в манифесте приложения.

Следующий код показывает, как объявить службу приоритетного плана воспроизведения мультимедиа. Вы можете использовать подобный сервис для воспроизведения музыки.

<manifest xmlns:android="http://schemas.android.com/apk/res/android" ...>
  <application ...>

    <service
        android:name=".MyMediaPlaybackService"
        android:foregroundServiceType="mediaPlayback"
        android:exported="false">
    </service>
  </application>
</manifest>

Ключевые моменты о коде

  • В этом примере служба имеет только один тип — media . Если к вашему сервису применимо несколько типов, разделите их | оператор. Например, если ваш сервис использует камеру и микрофон, объявите это так:

    android:foregroundServiceType="camera|microphone"
    
  • В зависимости от уровня API, на который нацелено ваше приложение, вам может потребоваться объявить службы переднего плана в манифесте приложения. Требования к конкретным уровням API описаны в разделе «Изменения в службах переднего плана» .

    Если вы попытаетесь создать службу переднего плана, а ее тип не объявлен в манифесте, система выдаст MissingForegroundServiceTypeException при вызове startForeground() .

    Даже если это не требуется, рекомендуется объявить все службы переднего плана и указать их типы служб.

Запросить разрешения службы переднего плана

Следующий код показывает, как запросить разрешения для службы переднего плана, использующей камеру.

<manifest xmlns:android="http://schemas.android.com/apk/res/android" ...>

    <uses-permission android:name="android.permission.FOREGROUND_SERVICE"/>
    <uses-permission android:name="android.permission.FOREGROUND_SERVICE_CAMERA"/>

    <application ...>
        ...
    </application>
</manifest>

Ключевые моменты о коде

  • В этом коде используются рекомендации для приложения, ориентированного на уровень API 34 или выше.
,

В манифесте вашего приложения объявите каждую из служб переднего плана вашего приложения с помощью элемента <service> . Для каждой службы используйте атрибут android:foregroundServiceType , чтобы указать, какую работу выполняет служба.

Кроме того, запросите любые разрешения, необходимые вашим службам переднего плана.

Совместимость версий

Требования к объявлению служб переднего плана и запросу разрешений различаются в зависимости от того, на какой уровень API нацелено ваше приложение. На этой странице описаны требования к приложениям, ориентированным на уровень API 34 или выше. Сведения об изменениях в службах переднего плана в более ранних версиях платформы см. в разделе Изменения в службах переднего плана .

Объявите службы переднего плана в манифесте приложения.

Следующий код показывает, как объявить службу приоритетного плана воспроизведения мультимедиа. Вы можете использовать подобный сервис для воспроизведения музыки.

<manifest xmlns:android="http://schemas.android.com/apk/res/android" ...>
  <application ...>

    <service
        android:name=".MyMediaPlaybackService"
        android:foregroundServiceType="mediaPlayback"
        android:exported="false">
    </service>
  </application>
</manifest>

Ключевые моменты о коде

  • В этом примере служба имеет только один тип — media . Если к вашей службе применимо несколько типов, разделите их | оператор. Например, если ваш сервис использует камеру и микрофон, объявите это так:

    android:foregroundServiceType="camera|microphone"
    
  • В зависимости от уровня API, на который нацелено ваше приложение, вам может потребоваться объявить службы переднего плана в манифесте приложения. Требования к конкретным уровням API описаны в разделе «Изменения в службах переднего плана» .

    Если вы попытаетесь создать службу переднего плана, а ее тип не объявлен в манифесте, система выдаст MissingForegroundServiceTypeException при вызове startForeground() .

    Даже если это не требуется, рекомендуется объявить все службы переднего плана и указать их типы служб.

Запросить разрешения службы переднего плана

Следующий код показывает, как запросить разрешения для службы переднего плана, использующей камеру.

<manifest xmlns:android="http://schemas.android.com/apk/res/android" ...>

    <uses-permission android:name="android.permission.FOREGROUND_SERVICE"/>
    <uses-permission android:name="android.permission.FOREGROUND_SERVICE_CAMERA"/>

    <application ...>
        ...
    </application>
</manifest>

Ключевые моменты о коде

  • В этом коде используются рекомендации для приложения, ориентированного на уровень API 34 или выше.
,

В манифесте вашего приложения объявите каждую из служб переднего плана вашего приложения с помощью элемента <service> . Для каждой службы используйте атрибут android:foregroundServiceType , чтобы объявить, какую работу выполняет служба.

Кроме того, запросите любые разрешения, необходимые вашим службам переднего плана.

Совместимость версий

Требования к объявлению служб переднего плана и запросу разрешений различаются в зависимости от того, на какой уровень API нацелено ваше приложение. На этой странице описаны требования к приложениям, ориентированным на уровень API 34 или выше. Сведения об изменениях в службах переднего плана в более ранних версиях платформы см. в разделе Изменения в службах переднего плана .

Объявите службы переднего плана в манифесте приложения.

Следующий код показывает, как объявить службу приоритетного плана воспроизведения мультимедиа. Вы можете использовать подобный сервис для воспроизведения музыки.

<manifest xmlns:android="http://schemas.android.com/apk/res/android" ...>
  <application ...>

    <service
        android:name=".MyMediaPlaybackService"
        android:foregroundServiceType="mediaPlayback"
        android:exported="false">
    </service>
  </application>
</manifest>

Ключевые моменты о коде

  • В этом примере служба имеет только один тип — media . Если к вашей службе применимо несколько типов, разделите их | оператор. Например, если ваш сервис использует камеру и микрофон, объявите это так:

    android:foregroundServiceType="camera|microphone"
    
  • В зависимости от уровня API, на который нацелено ваше приложение, вам может потребоваться объявить службы переднего плана в манифесте приложения. Требования к конкретным уровням API описаны в разделе «Изменения в службах переднего плана» .

    Если вы попытаетесь создать службу переднего плана, а ее тип не объявлен в манифесте, система выдаст MissingForegroundServiceTypeException при вызове startForeground() .

    Даже если это не требуется, рекомендуется объявить все службы переднего плана и указать их типы служб.

Запросить разрешения службы переднего плана

Следующий код показывает, как запросить разрешения для службы переднего плана, использующей камеру.

<manifest xmlns:android="http://schemas.android.com/apk/res/android" ...>

    <uses-permission android:name="android.permission.FOREGROUND_SERVICE"/>
    <uses-permission android:name="android.permission.FOREGROUND_SERVICE_CAMERA"/>

    <application ...>
        ...
    </application>
</manifest>

Ключевые моменты о коде

  • В этом коде используются рекомендации для приложения, ориентированного на уровень API 34 или выше.