You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

react-native-permissions中requestNotifications()正确用法及报错排查

react-native-permissions中requestNotifications的正确用法

你的调用核心问题是参数类型不匹配:requestNotifications要求传入NotificationOption类型的数组,但你传了一个键值对对象,这导致iOS底层处理时试图把字典(NSMutableDictionary)转换成数组(NSArray),直接触发类型转换错误。

根据函数声明requestNotifications(options: NotificationOption[]): Promise<NotificationsResponse>,正确的调用方式是传入包含权限选项的字符串数组,这些选项是预定义的枚举值,常用可选值包括'alert'、'sound'、'badge'、'vibrate'等。

修正后的代码示例:

await requestNotifications(['alert', 'sound', 'vibrate']);

额外注意:

  • 不同平台对选项的支持有差异,比如vibrate仅针对iOS生效,Android的震动权限需要单独申请
  • 按需传入需要的权限即可,不需要的选项可以省略,比如仅申请弹窗权限:await requestNotifications(['alert'])

内容的提问来源于stack exchange,提问作者iSaBo

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.23 01:49:53