Kivy - Plyer - Android - отправка уведомлений, когда приложение не запущено

android python notifications kivy

920 просмотра

2 ответа

Я пишу приложение на Python в Kivy.

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

Theres, вероятно, простой способ сделать это, я использую plyer.

from plyer import notification
notification.notify(title="Kivy Notification",message="Plyer Up and Running!",app_name="Waentjies",app_icon="icon.png",timeout=10)

это работает, я получаю уведомление всякий раз, когда я вызываю эту функцию, однако я не могу найти какой-либо способ отправить это уведомление, пока приложение не запущено, я знаю, что есть некоторые другие вопросы, которые, кажется, отвечают на этот вопрос, но они не Их просто запустить приложение в фоновом режиме, что я не хочу делать, все, что я хочу, это что-то вроде уведомления о столкновении кланов, когда ваши войска готовы к бою, или уведомления в Facebook, когда кому-то понравился ваш пост.

Любая помощь оценивается с этим.

Спасибо

Автор: Cid-El Источник Размещён: 08.11.2019 11:03

Ответы (2)


2 плюса

Я думаю, что вы должны взглянуть на Android AlarmManager . Если это то, что вам нужно, вот пример для Kivy.

AlarmManager

Этот класс обеспечивает доступ к системам охранной сигнализации. Это позволяет запланировать запуск приложения в определенный момент в будущем. Когда срабатывает сигнал тревоги, зарегистрированное для него намерение транслируется системой, автоматически запуская целевое приложение, если оно еще не запущено.

Автор: WJVDP Размещён: 29.08.2016 09:15

0 плюса

На Android я не уверен, как бы я реализовал это без фонового сервиса .

Что касается фоновых сервисов, то они также уничтожаются, когда приложение, запускающее процесс, уничтожается. Я знаю 2-3 способа предотвратить это на Android, я считаю это взломом, но, возможно, это особенность.

  1. Одним из них является использование флага START_STICKY . Это реализовано в python-for-android, но кажется мне сломанным .

  2. Еще один способ - использовать недавнюю функцию setAutoRestartService () . Это заставит сервис перезапускать себя изящно / программно при уничтожении.

  3. Бонусный способ использует BroadcastReceiver , но это не реализовано в p4a.

Автор: Andre Miras Размещён: 28.10.2018 12:24
Вопросы из категории :
32x32