React Native Push Notifications 未出现在设置中

Posted

技术标签:

【中文标题】React Native Push Notifications 未出现在设置中【英文标题】:React Native Push Notifications not appearing in settings 【发布时间】:2020-05-22 15:55:05 【问题描述】:

我是原生反应新手,我正在尝试通过 ios 设置推送通知。

我已安装 pushNotificationios 并按照给出的说明进行操作。我还注册了 Apple Developer。

当我运行我的应用程序时,推送通知似乎不起作用。当我进入我的 iPhone 设置并点击应用时,它不会显示通知。

这是我的代码

import PushNotificationIOS from '@react-native-community/push-notification-ios';
import PushNotification from "react-native-push-notification";

const configure = () => 
 PushNotification.configure(

   onRegister: (token) => 
    console.log('TOKEN:', token);
     //process token
   ,

   onNotification: (notification) => 
     // process the notification
     console.log("NOTIFICATION:", notification);
     // required on iOS only
     notification.finish(PushNotificationIOS.FetchResult.NoData);
   ,

   permissions: 
     alert: true,
     badge: true,
     sound: true
   ,
  
   popInitialNotification: true,
   requestPermissions: true,

 );
;


 export 
    configure,
   ;

【问题讨论】:

这是在模拟器上还是在实际设备上 我都试过了 您是否添加了“推送通知”功能(xcode->target->签名和功能)? 您在 iphone 上收到任何权限框了吗? 你在任何文件中调用configure()函数吗? 【参考方案1】:

我的包有权限问题

可以使用react-native-permissions包获取通知权限

import requestNotifications from 'react-native-permissions';

requestNotifications(['alert', 'sound']).then((status, settings) => 
  // …
);

【讨论】:

【参考方案2】:

    检查您的 XCode 通知设置

    尝试在您的 FirstPage 中请求许可,如下所示。不是索引。

const MainPage =  => 
  useEffect(() => 
    PushNotificationIOS.requestPermissions(['alert', 'badge', 'sound']);
  , [])

iOS:如果用户没有看到请求权限弹出窗口,则用户无法在首选项中看到警报选项。

android:不需要请求许可。

【讨论】:

@becky 不用担心。几乎一样。 不变违规:无效的钩子调用。 Hook 只能在函数组件的主体内部调用。 如果你使用类组件,只需使用componentDidMount。重点是打电话给PushNotificationIOS.requestPermissions【参考方案3】:

我不知道你的包名是否有特殊字符,但我和你有同样的问题,为了解决我需要去xCode,构建设置(项目)并更改产品名称,因为我的产品名称有口音(如“ó”),而那不是英文名称。可笑但解决了

【讨论】:

以上是关于React Native Push Notifications 未出现在设置中的主要内容,如果未能解决你的问题,请参考以下文章

React-native:使用 zo0r/react-native-push-notification 显示前台通知,例如后台通知

重复本地通知在 react-native-push-notification 中不起作用

React Native Push Notification - react-native-fcm - ios无法构建

Typescript React Native navigation.push 输入错误

使用 react-native-push-notification,App 在收到新的 FCM 通知时崩溃

React Native Push Notifications 没有收到通知