我正试图通过以下方法在firebase中显示用户离线或在线。
概念很简单:
onCreate(){
isOnline = "online";
}
onDestory(){
isOnline = "ofline";
}
每当用户登录时,oncreate()
方法工作正常,它在firebase中添加isonline=“online”
字段,但ondestroy()
方法不工作,它不会更改isonline
字段的值。
// public static final String KEY_IS_ONLINE = "isOnline";
// public static final String KEY_ONLINE = "online";
// public static final String KEY_OFFLINE = "offline";
@Override
protected void onStart() {
super.onStart();
FirebaseFirestore db = FirebaseFirestore.getInstance();
DocumentReference documentReference = db.collection(Constants.KEY_COLLECTION_USERS).document(preferenceManager.getString(Constants.KEY_USER_ID));
documentReference.update(Constants.KEY_IS_ONLINE, Constants.KEY_ONLINE);
}
@Override
protected void onDestroy() {
super.onDestroy();
FirebaseFirestore db = FirebaseFirestore.getInstance();
DocumentReference documentReference = db.collection(Constants.KEY_COLLECTION_USERS).document(preferenceManager.getString(Constants.KEY_USER_ID));
documentReference.update(Constants.KEY_IS_ONLINE, Constants.KEY_OFFLINE);
}
从ondestroy()
的开发人员站点引用:-
注意:不要指望这个方法被调用作为保存数据的地方!例如,如果一个活动正在内容提供程序中编辑数据,那么这些编辑应该在onPause()或onSaveInstanceState(Bundle)中提交,而不是在这里提交。
这样做的理由如下:-
我是flutter的新手,我只是试图接收firebase推送通知到我的flutter应用程序。当应用程序关闭时,在后台接收推送通知。但是当应用程序打开时,推送通知正在接收,但它不显示警报通知(如果它打开了,我想在我的应用程序中显示推送通知的标题和正文作为警报)。这是我的代码。 谁能帮我做这个吗?
我试着用firebase云消息通过控制台发送通知来测试我的应用程序,但当我的应用程序在前台或仍在运行时。设备中不显示通知,并且触发了firebase消息服务中的日志。 这是我的firebasemessagingservice
仅当应用程序关闭时,数据有效负载的使用不会收到任何通知,并且不会触发消息接收方法。 在下图中显示数据负载,单击此处查看参数 回复是点击这里查看回复 响应成功1,但在redmi手机中未收到任何通知。
我正在使用火力点通知。当应用程序处于前台时,onMessageReceived将被调用,通知与图像一起可见(BigPictureStyle通知)。但是,当应用程序处于Kilded状态时,onMessageReceived将不被调用,而是调用带有标题和描述的基本通知。 我得到的基本通知与标题和主体时,应用程序被杀的状态。当应用程序处于死亡状态时,我如何获取图像???
我从控制台向我的应用程序发送消息,当它在后台时,我设法让应用程序做出我想要的反应。所以基本上SDK会显示一个通知,当用户点击它并启动应用程序时,我会使用一些自定义数据字段来构建对话框消息。
我目前正在开发的一个新应用程序遇到了一个奇怪的问题,如果我将应用程序发送到后台(Home按钮),然后使用应用程序图标重新启动应用程序,除了根活动之外的所有活动都会被销毁(在日志中,我会获得所有活动的OnDestroy,除了调用OnResume的根活动)。 如果我将其发送到后台并从当前任务中恢复,它将恢复应用程序。 我已经将< code > Android:launch mode = " singl