Создаем портфолио за 1 месяц
К концу месяца: 4 классных проекта в вашем портфолио! Стоимость: 100$. Подробности...
314 of 502 menu
◀ ▶

Класс PendingIntent

Класс PendingIntent нужен уведомлениям, виджетам и alarm, когда код должен запуститься без открытого процесса. Объект создают статическими методами getActivity, getBroadcast и getService из обычного Intent. На новых API указывают флаг mutability вместе с PendingIntent.

Синтаксис

val pending = PendingIntent.getActivity(context, 0, intent, flags)

Методы

Метод Описание
getActivity PendingIntent для запуска activity.
getBroadcast PendingIntent для BroadcastReceiver.
getService PendingIntent для запуска service.

Пример

Давайте подготовим PendingIntent для открытия SecondActivity:

import android.app.PendingIntent import android.content.Intent import android.os.Bundle import androidx.activity.ComponentActivity import androidx.activity.compose.setContent import androidx.compose.material3.Text class MainActivity : ComponentActivity() { override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) val intent = Intent(this, SecondActivity::class.java) val flags = PendingIntent.FLAG_UPDATE_CURRENT or PendingIntent.FLAG_IMMUTABLE val pending = PendingIntent.getActivity(this, 0, intent, flags) setContent { Text(text = "abcde") } } }

На экране будет текст "abcde", если PendingIntent успешно создан.

Смотрите также

  • метод getActivity,
    запуск экрана из уведомления
  • класс Intent,
    основа для PendingIntent
  • метод startActivity,
    немедленный запуск activity
  • класс Context,
    первый аргумент фабрик PendingIntent
← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить