3 回答
TA贡献1865条经验 获得超7个赞
如果您只想发送通知,可以使用 Firebase Cloud Messages,它可以提供您尝试自己实现的功能。 https://firebase.google.com/docs/cloud-messaging
如果您想在 Firestore 中的数据更改后发送通知,您可以使用 FireStore 触发器 ( https://firebase.google.com/docs/functions/firestore-events ) 并通过 firebase 函数调用发送通知 (发送推送使用 Cloud Functions for Firebase 的通知)
TA贡献1856条经验 获得超11个赞
我有一个类似的问题,这就是我解决它的方法:
获取当前添加的项目数并保存在共享首选项中
打开应用程序后,获取当前的项目数量,并与共享首选项中保存的数量进行比较
设置一个条件,如果当前项目数大于共享首选项中保存的数量,则调用通知。
TA贡献1963条经验 获得超6个赞
我能够得到我想要的东西,但我不确定这是否是正确的方法。
Calendar calendar = Calendar.getInstance();
calendar.add(Calendar.MINUTE, -5);
Date before = calendar.getTime();
Calendar calendar1 = Calendar.getInstance();
Date until = calendar1.getTime();
for (DocumentChange dc : snapshots.getDocumentChanges()) {
Date date = (Date) dc.getDocument().getData().get("notificationDate");
if (dc.getType() == DocumentChange.Type.ADDED) {
if (!before.after(date) && !until.before(date)){
Log.d("life", "Data: "+date);
String title = dc.getDocument().getData().get("notificationTitle").toString();
String body = dc.getDocument().getData().get("notificationBody").toString();
getNotification(title, body);
}
}
}
我在这里所做的是检索当前时间和当前时间减去 5 分钟。(您可以选择所需的延迟分钟数),然后设定一个条件,必须仅显示延迟 5 分钟内的通知。
注意: 我知道这不是正确的做法,但这得到了我想要的结果。如果您不想要我的答案,请告诉我并发布您自己的答案,以便我确认您的答案。
添加回答
举报