问题标签 [react-native-notifications]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
android - React Native Android:检测点击通知
我正在尝试检测对通知的点击。
我使用 react-native 0.61 和 : react-native-notifications 3.1.4
(但得到相同的结果react-native-push-notification 3.1.9
)。
一切正常,但有一件事:如果我点击通知,或者如果我从带有 Firebase 管理员通知的通知中打开我的应用程序(或 curl 到 FCM),我不会触发这些事件:
和
但是,如果我使用 发布简单的本地通知Notifications.postLocalNotification
,则一切正常。
这是我的标准 curl 请求:
再次出现通知,但如果我点击它,我不会触发任何事件。但是,如果我使用postLocalNotification
我会得到这些事件。
我已经为此苦苦挣扎了好几天,我必须intents
在我的AndroidManifest
? 有这个工作的示例项目吗?
java - react-native-notifications 在 iOS 上工作,在 Android 上失败
我已经安装了 react-native-notifications 并且在 iOS 上一切正常,但它在 Android 上总是给我错误。我已按照此处的确切 Android 安装说明进行操作:https ://wix.github.io/react-native-notifications/docs/installation-android
我的开发流程:
- 进行修改。
npx react-native clean-project-auto; npx react-native-clean-project
rm -rf android/app/build; anroid/gradlew clean; android/gradlew build --refresh-dependencies
npx react-native start --reset-cache
- Android Studio 使缓存无效/重新启动。
- Android Studio 干净构建。
- Android Studio 同步 Gradle 文件并运行应用程序。
npx react-native run-android --deviceId emulator-5554
步骤 7. 结果Invariant Violation: PushNotificationManager is not available.
(下图)
步骤 8. 产生以下日志:
当我将包添加packages.add(new RNNotificationsPackage(MainApplication.this))
到 MainApplication.javagetPackages()
方法时,它说这个包已经与此错误相关联:(下图)
依赖项:
应用程序/build.gradle
安卓/build.gradle
我真的很想使用这个包,因为它在 iOS 上运行得非常好。有什么帮助,谢谢!
更新:
解决方法是react-native-push-notification
依赖项。react-native-notifications
但是,如果安装了软件包,上面的第 8 步仍然会导致错误。我不确定它是否值得报告错误,或者是否有通过我的 WebStorm CLI 或类似的东西启用 Java 权限的修复程序。
android - react-native-notification 前台消息
大家好
我使用图书馆wix/react-native-notifications
看起来我的 android 做错了什么(ios 工作正常)。为了我:
- registerRemoteNotificationsRegistered
- registerRemoteNotificationsRegistered
- registerNotificationOpened
- 获取初始通知
工作好。
但:
- registerNotificationReceivedForeground
- registerNotificationReceivedBackground
从未触发过。
我想我在 AndroidManifest.xml 中放了一些错误(我尝试了不同的变体,但它仍然不起作用)。
或使用时出现问题
- 反应原生通知
- 反应本机推送通知
同时。
请也许有人有一些想法?
我用:
- “反应原生通知”:“^3.2.2”,
- "react-native-pusher-push-notifications": "^2.4.0",
- “反应”:“16.9.0”,
- “反应原生”:“0.61.5”,
我认为可能是错误的 AndroidManifest.xml 的一部分:
ios - iOS 推送通知停止工作(可能是由于权利错误)
在过去的几天里,由于我们的推送通知功能不再工作,我们收到了一些错误报告。
我们使用带有 react-native-notifications 的 React Native(最新版本)。我们在应用商店中的构建是从 10 月初开始的,并且运行良好。
现在,当我按下链接到请求 PushToken 的按钮时,什么都没有发生——甚至没有触发失败回调。
当我打开设备控制台时,单击按钮时会出现以下两个错误:
但显然,推送通知的权利已设置(并且一直如此)。
你们有任何想法要检查什么吗?我现在有点不知所措。
最好的!
javascript - 如何使用自定义声音来响应本地本地通知?
伙计们,我正在尝试在 React-Native 中构建一个警报应用程序,我可以在每次设置时为我的警报设置自定义声音,即来自设备的声音。我发现的大多数选项是使用 react 原生推送通知和警报通知 npm 库。它们确实允许使用自定义声音,但每次我们需要将这些文件转储res/raw
到 App 文件夹中。这些node_modules
可以为我的用例定制吗?
react-native - 世博会多个本地通知未按时触发
Expo 多个本地通知未按时触发。我只准时收到第一个通知,而其他通知有时会延迟或同时触发。他们很少会按时触发,但为什么我面临如此不一致的结果
以下是小吃:(expo sdk 版本 40,expo-notifications 版本 0.8.2)
react-native - React-native 定期获取数据并安排本地通知
我需要每天多次设置通知。API 正在获取时间数据(可变的)。为此,我可能需要一个后台任务来定期获取一周/一天的数据。即使应用程序关闭/终止,该任务显然也应该运行,因为很少有应用程序位于前台/后台。但是我搜索过的所有库/包(例如 expo 的 TaskManager/BackgroundFetch、react-native-background-fetch、react-native-background-task 等)都有一些限制,例如当应用程序终止时它们将无法工作(刷掉从最近的应用程序列表中)或者当应用程序终止时它们不适用于 IOS
我需要一个全能的库,它可以:
- 即使应用程序关闭也执行后台任务
- 适用于 android + ios
这是一个常见的用例,但我找不到任何解决方案
android - 收到通知时,react-native-notifications 使应用程序崩溃
我正在使用 react-native-notifications 库在我的应用程序中使用消息云 firebase 实现通知,我已遵循文档中的所有准则,
对于 react-native-notifications 库
对于 firebase 云消息传递
因此,当我去 firebase 顾问并发送测试通知消息时,应用程序没有发生任何事情刚刚关闭或可能称之为崩溃,我添加firebase-analytics
了帮助我调试问题的内容以及我在发送测试通知消息时得到的内容:
这是我的代码:
在 console.log
其中安慰令牌并在
它一直在安慰'N/A'
我用整个应用程序根包裹了前面的代码:
android - React Native Android 前台推送通知与 iOS 不一致
我正在使用react-native-notifications
并且前台通知在 iOS 上正常工作,但仍显示在 Android 模拟器上。我没有要测试的 Android 设备。
这段代码中有什么我遗漏的吗?
android - 在反应原生android中管理徽章计数
我正在使用react-native-push-notification
库来使用 firebase 进行推送通知。我想在工具栏图标中显示通知计数。当新通知到来时,徽章数量会增加,打开通知后徽章数量会减少。如何做到这一点?