[英]Request permission flutter IOS
我正在开发一个从 firebase 云消息接收通知的应用程序。
从我读到的文档中,对于 IOS,您需要向用户请求权限,问题是您无法在请求中显示横幅。
这是我的代码:
void main() {
WidgetsFlutterBinding.ensureInitialized();
if (Platform.isIOS) {
//IOS check permission
permission();
}
runApp(MyApp());
}
void permission() async {
NotificationSettings settings = await messaging.requestPermission(
alert: true,
announcement: false,
badge: true,
carPlay: false,
criticalAlert: false,
provisional: false,
sound: true,
);
if (settings.authorizationStatus == AuthorizationStatus.authorized ||
settings.authorizationStatus == AuthorizationStatus.provisional) {
FirebaseMessaging.onBackgroundMessage(_firebaseMessagingBackgroundHandler);
await FirebaseMessaging.instance
.setForegroundNotificationPresentationOptions(
alert: true, // headsup notification in IOS
badge: true,
sound: true,
);
} else {
//close the app
SystemChannels.platform.invokeMethod('SystemNavigator.pop');
}
}
从 developer.apple.com 创建一个 apn 密钥 在 firebase 控制台的云消息部分下添加此密钥和 apn id。 在 xcode 中添加 URL 参数 在 xcode 中添加后台模式功能并启用后台、获取和处理 在 xcode 中添加推送通知功能 在您项目的 iOS/runner 内的 info.plist 中添加所需的权限。 不要忘记在您的跑步者中也包含 googleServicesinfo.plist
https://firebase.flutter.dev/docs/messaging/apple-integration检查此链接以了解详细的分步过程。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.