Я предполагаю, что вы используете пакет fcm_push
. Вам необходимо добавить дополнительный тег в ваше сообщение. Попробуйте:
firebaseMessage.data = [Tuple2('sound', 'default')];
Это работает для Android. Возможно, вам придется выяснить, как получить fcm_push
для отправки правильной полезной нагрузки для сообщения APNS. См. документацию API и справочную информацию APNS .
(я сам не пользуюсь fcm_push
- мне так же легко писать напрямую в API FCM с использованием HTTP. Например ...)
final String url = 'https://fcm.googleapis.com/fcm/send';
Map<String, dynamic> notification = {
'body': 'some body',
'title': 'some title',
};
Map<String, dynamic> data = {
//'click_action': 'FLUTTER_NOTIFICATION_CLICK',
'someKey': 'someValue',
'sound': 'default',
};
Map<String, dynamic> message = {
'notification': notification,
'priority': 'high',
'data': data,
'to': '', // this is optional - used to send to one device
};
Map<String, String> headers = {
'authorization': auth,
'content-type': 'application/json',
};
void sendNotification() async {
message['to'] = testToken; // todo - set the relevant values
http.Response r =
await http.post(url, headers: headers, body: json.encode(message));
print(r.statusCode);
print(r.body);
}