问题标签 [expo-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.

0 投票
0 回答
173 浏览

react-native - TypeError : Notifications.scheduleNotificationAsync 不是函数

我第一次尝试博览会通知。我遇到了一个错误,上面写着 TypeError : Notifications.scheduleNotificationAsync is not a function

这是我的代码:

先感谢您。

0 投票
1 回答
447 浏览

react-native - 如何检查应用程序是否安装在手机上?因此 Expo 可以为设备生成 ExpoPushtoken 以启用推送通知

我正在 Expo 的帮助下使用 react native 开发一个移动应用程序。我被要求将推送通知集成到应用程序中,因此我查看了它并按照此指南进行客户端的设置和配置。

接下来,我尝试处理从客户端生成的令牌并将其保存到数据库中,以便服务器可以使用令牌作为地址向分配给它的设备发送通知,并根据博览会团队的回答这个论坛,“ 有了 Expo,只要安装了一个应用程序,Expo 推送令牌就永远不会改变。如果用户卸载并重新安装一个应用程序,他们将获得一个新的 Expo 推送令牌...... ”。

所以我想知道我们如何才能确定应用程序是否已安装/重新安装在特定设备上?所以 expo 可以为设备生成/重新生成 ExoPushToken。任何库或片段来解决这个问题?

我现在的解决方法是每当用户使用他们的用户名和密码登录到他们的帐户时生成一个新的推送令牌(我启用了 pinscreen,因此他们每次想要访问他们的数据时都不必使用他们的用户名和密码)。

它有效,但不是有效的解决方案(我猜)。有任何想法吗?谢谢!

0 投票
0 回答
133 浏览

react-native - 应用程序中音频通知的音频均衡器 - 反应原生 iOS

鉴于我的学士项目,我正在编写一个应用程序,在该应用程序中可以最佳地更改应用程序中播放的通知声音。在这方面,我想知道是否有任何均衡器插件/模块可用于实现这一点的 react native?

在此处输入图像描述

上图显示了想要的功能

0 投票
0 回答
474 浏览

javascript - 反应原生博览会项目的 TaskManager 和 BackgroundFetch 的位置?

在我的 react native expo 项目中,我正在使用 TaskManager 实现 BackgroundFetch。但是在文档中,我只看到了如何在 App.js 文件中实现代码的示例。但是,我想将此代码委托给外部脚本文件,以获得更好的代码结构。一个不渲染任何东西的脚本文件。另外,我想将此代码与 expo Notifications 结合使用,以在应用程序不在前台时推送通知。

应用结构:

我的 App.js

我如何将其委托给外部 js 文件

以及将它与我得到的一些通知代码合并:

谢谢回答关于时间短的本科生!

0 投票
0 回答
42 浏览

react-native - 我可以在显示通知之前修改博览会推送通知的标题/正文吗?

我正在使用博览会通知服务。

我想从后端发送密钥,例如 { title: "TITLE_KEY", body: "BODY_KEY" }

然后在它出现在移动端时翻译它(基于键),然后再显示它,这样用户就不会在通知中看到键,只有翻译后的文本......

所以问题是如何在向用户显示通知之前修改通知?

0 投票
0 回答
215 浏览

android - Expo Notifications addNotificationReceivedListener 仅在 Android 独立设备上未在前台调用

我正在尝试在我的 Expo 应用程序中接收通知。我可以成功注册一个令牌,并且当应用程序没有被前台显示时,通知可以正常接收。但是,在 Android 上,只有addNotificationReceivedListener回调不会被触发。当应用程序处于前台时,这在 iOS 和 Android 上运行良好,仅当应用程序未处于前台时。这是我注册回调的代码。

这是我的 app.json

我正在使用我刚刚从 40 升级到的 Expo 41。它也无法在 40 上运行。谢谢。

0 投票
0 回答
390 浏览

react-native - iOS 上的 expo-notifications getDevicePushTokenAsync 返回一个不是 FCM 且不适用于 firebase 的令牌

  1. SDK版本:40
  2. 平台(Android/iOS/web/all):iOS
  3. 根据您有疑问的 Expo 库添加适当的“标签”。

嗨,我正在使用带有 expo 和 expo-notifications 的 react native,并在 firebase 函数中使用 firebase 消息发送通知。

集成适用于 android,而不是 iOS,返回的令牌似乎是 apn 令牌而不是 FCM,firebase 管理员拒绝该令牌“注册令牌不是有效的 FCM 注册令牌”

我尝试使用“https://iid.googleapis.com/iid/v1:batchImport”(遵循本指南:https ://www.thepolyglotdeveloper.com/2017/06/apns-tokens-fcm-tokens-simple- http/)返回一个有效的 FCM 令牌,并与 Firebase Notification Composer 一起使用,我可以通过该接口获取通知,但是如果我尝试使用 firebase 进行转换并从生成的 FCM 发送通知,我会从 firebase 收到错误“SenderId不匹配”。

正如Firebase Notification Composer所证明的那样,我已将凭据正确添加到firebase iOS客户端中,但是不知何故,expo返回的令牌未使用与firebase相同的SenderId进行签名,并且管理员检查了Composer没有吗?不知道是什么情况。

简而言之:

我想从 Notifications.getDevicePushTokenAsync() 获取 FCM 令牌,这应该是可能的,或者是可能的(至少在 github 问题中有一些讨论)。

firebase 功能代码为:

和本机反应:

(两者都与 Android 完美配合)

也在世博论坛:https ://forums.expo.io/t/expo-notifications-getdevicepushtokenasync-on-ios-returns-a-token-thats-not-fcm-and-does-not-work-with-firebase /52155

0 投票
0 回答
80 浏览

react-native - 带有博览会框架的通知正文中的秒表

我目前正在使用 expo 框架开发一个反应原生的应用程序。我正在尝试从通知正文中包含秒表的客户端发送通知。

我想做这样的事情:秒表通知

我的问题是我在尝试找到更新世博会通知正文的方法时并没有取得太大的成功。我使用 react-native 找到了一个名为notifee的不同包,但我无法将它连接到我的项目。它在安装后尝试导入 notifee 时给我的错误是 - 错误:未找到 Notifee 本机模块。我试图搜索如何解决它,但我找不到解决方案。

我想知道是否有办法更新 expo 中的通知正文,或者将 notifee 与 expo 框架连接。如果没有,你会推荐什么?(例如停止使用 expo 并使用其他框架,或使用纯 react native 等)。

感谢您的任何建议!

编码

0 投票
1 回答
96 浏览

react-native - 世博会取消或删除服务器上的预定通知

我需要使用expo-server-sdk-node取消从我的后端服务器发送的预定通知,因为它是关于可以由约会的服务提供商取消的预定约会的提醒通知,但是 expo-server-sdk-node没有任何删除通知的功能。

我还考虑过在提醒用户之前检查约会是否没有取消,但是 expo 没有事件来处理后台收到的通知。

在不弹出我的应用程序的情况下,我有什么解决方法吗?谢谢!!

0 投票
1 回答
219 浏览

expo - 由于解析失败,无法在 Expo Notification 中获取 expoToken:Lcom/google/firebase/iid/FirebaseInstanceId;

下午好,希望你们今天过得愉快,我已经在使用 expo 裸工作流构建一些应用程序,并且需要使用 Expo Notification,我正在遵循所有说明,从expo 通知文档fcm 配置设置 firebase,但是,当我尝试获取 expoToken 时,我收到了这个警告,如下所示:

我已经确定我的包名和我在firebase中注册的包名一样,你们能帮帮我吗?请:slight_smile:

这是附加信息

获取世博通证

应用程序.js

包.json

截图: 一些图片