Нужен ли менеджеру по работе Интернет, чтобы запустить запланированное задание?Android

Форум для тех, кто программирует под Android
Ответить Пред. темаСлед. тема
Anonymous
 Нужен ли менеджеру по работе Интернет, чтобы запустить запланированное задание?

Сообщение Anonymous »


Я разработал приложение для сигнализации, в котором использовал диспетчер работ, чтобы запланировать сигнал тревоги и создать уведомление, когда диспетчер работ выполняет работу. Проблема, с которой я столкнулся, заключается в том, что уведомление не генерируется при отключении Интернета. при подключении к Интернету генерируется предыдущее запланированное уведомление. Мой вопрос: необходим ли Интернет для запуска работы менеджера по работе. Ниже моего кода...

Вот код для планирования будильника

val задержкиInSeconds =(alarmCal.timeInMillis / 1000L) - (todayDateTime.timeInMillis / 1000L) createWorkRequest (заголовок, сообщение, reqCode, задержкаInSeconds) личное развлечение createWorkRequest(title: String,message: String,code: Int,timeDelayInSeconds: Long) { val myWorkRequest = OneTimeWorkRequestBuilder() .setInitialDelay(timeDelayInSeconds, TimeUnit.SECONDS) .setInputData( работаДанныеOf( «титул» к титулу, «сообщение» к сообщению, «код» в код ) ) .addTag("Prayer_Alarm_$code") .строить() WorkManager.getInstance(requireContext()).enqueue(myWorkRequest) } Вот рабочий код...
class ReminderWorker(val context: Context, val params: WorkerParameters) : Worker(context, params) { частный var title = "" личное сообщение var = "" частный вар requestCode = 0 переопределить fun doWork(): Result { Log.d("myWorker", "Работник запущен") title = inputData.getString("title").toString() сообщение = inputData.getString("сообщение").toString() requestCode = inputData.getInt("код", 0) NotificationHelper(контекст).createNotification( заголовок, сообщение, запрашиваемый код ) setNextDateAlarm (код запроса, заголовок, сообщение) вернуть Результат.успех() } частное развлечение setNextDateAlarm (requestCode: Int, title: String, message: String) { вал кал = Calendar.getInstance() Cal.add(Календарь.МИНУТА, 1) Cal.time = SimpleDateFormat("гггг-ММ-дд чч:мм а", Locale.ENGLISH).parse(pTime) Log.d("NotificationTime", "Время уведомления: заголовок $title, код запроса: $requestCode ") val сегодняDateTime = Calendar.getInstance() vallayInSeconds = (cal.timeInMillis/1000L) - (todayDateTime.timeInMillis/1000L) createWorkRequest (заголовок, сообщение, код запроса, задержкаInSeconds) } личное развлечение createWorkRequest (заголовок: String, сообщение: String, код: Int, timeDelayInSeconds: Long) { val myWorkRequest = OneTimeWorkRequestBuilder() .setInitialDelay(timeDelayInSeconds, TimeUnit.SECONDS) .setInputData( работаДанныеOf( «титул» к титулу, «сообщение» к сообщению, «код» в код ) ) .addTag("Код_сигнализации_$") .строить() WorkManager.getInstance(context).enqueue(myWorkRequest) }
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Android»