Кнопка действия локального уведомления FlutterAndroid

Форум для тех, кто программирует под Android
Ответить Пред. темаСлед. тема
Anonymous
 Кнопка действия локального уведомления Flutter

Сообщение Anonymous »

Я пытаюсь добавить кнопку действия к некоторым полученным push-уведомлениям. Я использую локальные уведомления Flutter с FCM для прослушивания входящих данных (с моего сервера) и создания уведомления.
В настоящее время когда я нажимаю на уведомление, оно открывает приложение (что для меня нормально), но я хочу вызвать метод сервера API, когда пользователь нажимает кнопку действия. Я пробовал много методов, но мне так и не удалось заставить их работать. На самом деле, когда я нажимаю на кнопку, ничего не происходит. Может ли кто-нибудь помочь мне активировать событие кнопки действия при нажатии?
Заранее спасибо.

Код: Выделить всё

final FlutterLocalNotificationsPlugin flutterLocalNotificationsPlugin =

FlutterLocalNotificationsPlugin();
var firebaseMessaging = FirebaseMessaging.instance;

// Listening to the background messages
Future _firebaseMessagingBackgroundHandler(RemoteMessage? message) async {
showNotification(message);
}

// Show local notification
Future showNotification(RemoteMessage? message) async {
var androidPlatformChannelSpecifics = const AndroidNotificationDetails(
'channel_id', 'channel_name',
importance: Importance.max,
priority: Priority.high,
icon: "ic_launcher",
actions: [
AndroidNotificationAction('action_1', 'API Call'),
]
);

// var iOSPlatformChannelSpecifics = IOSNotificationDetails();
var platformChannelSpecifics = NotificationDetails(
android: androidPlatformChannelSpecifics);

if(message?.notification == null){
if(message?.data != null){
await flutterLocalNotificationsPlugin.show(
0, message?.data["title"], message?.data["content"], platformChannelSpecifics,
payload: 'item x');
}
}
}

void main() async{
WidgetsFlutterBinding.ensureInitialized();

// Initialize Firebase
await Firebase.initializeApp(options: FirebaseConfig.defaultFirebaseOptions);

await firebaseMessaging.requestPermission(
alert: true,
announcement: false,
badge: true,
carPlay: false,
criticalAlert: false,
provisional: false,
sound: true,
);

// Listening to the background messages
FirebaseMessaging.onBackgroundMessage(_firebaseMessagingBackgroundHandler);

// Listening to the foreground messages
FirebaseMessaging.onMessage.listen((RemoteMessage message) {
showNotification(message);
});

runApp(
MultiProvider(
providers: [
ChangeNotifierProvider(create: (context) => myprovider1()),
ChangeNotifierProvider(create: (context) => myprovider2()),
ChangeNotifierProvider(create: (context) => myprovider3())
],
child: MyApp(),
),
);
}
Изображение


Подробнее здесь: https://stackoverflow.com/questions/779 ... ion-button
Реклама
Ответить Пред. темаСлед. тема

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

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

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

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

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

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