当应用程序处于活动状态时,所有操作都正常运行,但当没有任何活动运行时,我仍然通过firebase notification获得一个带有app_name和Body的通知,并打开MainActivity。
这是我的MyFirebaseMessagingService类:-
我看到了一个类似的问题,但对我的情况没有帮助。
public class MyFirebaseMessagingService extends FirebaseMessagingService {
@Override
public void onMessageReceived(RemoteMessage remoteMessage) {
if(remoteMessage.getNotification()!=null){
if(DictionarySscWords.send_notifications) { //tried removing this condition but same result.
sendnoti(remoteMessage.getNotification().getBody());
}
}
}
private void sendnoti(String body) {
Intent i1=new Intent(this,MainActivity.class);
i1.putExtra("word", body);
i1.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
PendingIntent pi=PendingIntent.getActivity(this,0,i1,PendingIntent.FLAG_CANCEL_CURRENT);
Uri ns=RingtoneManager.getDefaultUri(RingtoneManager.TYPE_NOTIFICATION);
NotificationCompat.Builder nb=new NotificationCompat.Builder(this).setSmallIcon(R.drawable.heart)
.setContentTitle("Word Of the Day")
.setContentText(body).setSmallIcon(R.drawable.heart)
.setAutoCancel(true)
.setSound(ns)
.setContentIntent(pi);
NotificationManager notificationManager = (NotificationManager)getSystemService(Context.NOTIFICATION_SERVICE);
notificationManager.notify(0,nb.build());
}
}
正如它在Firebase文档中所说:
当应用程序处于后台时,通知消息会传递到通知托盘。对于前台应用程序,消息由以下回调处理:
DidReceiverEmoteNotification:在iOS上,Android上的OnMessageReceived()。数据包中的通知键包含通知。
{
"to" : "bk3RNwTe3H0:CI2k_HHwgIpoDKCIZvvDMExUdFQ3P1...",
"notification" : {
"body" : "great match!",
"title" : "Portugal vs. Denmark",
"icon" : "myicon"
}
}
{
"to" : "bk3RNwTe3H0:CI2k_HHwgIpoDKCIZvvDMExUdFQ3P1...",
"data" : {
"Nick" : "Mario",
"body" : "great match!",
"Room" : "PortugalVSDenmark"
},
}
我想创建一个即使应用程序被杀死也在运行的服务,所以我创建了一个未绑定的服务,这样它就不会绑定到活动生命周期。但是每次我通过长按和滑动杀死应用程序时,服务也会被杀死。请帮帮我。谢谢 服务 我从这样的活动中称之为 startService(new Intent(my service . class . getname())); 服务运行正常,直到应用程序在后台或前台,但当我长按并扫描应用程序时,服务也
编辑:这是我的舱单
onMessageReceived(RemoteMessage RemoteMessage)在应用程序处于后台时未调用或仅显示{“body”:“test”,“title”:“test notification}之类的json字符串
问题内容: 你们有以下问题的解决方法吗? 在注册活动的onDestroy中(当用户按下后退按钮时),我调用一个新活动,以便用户可以输入当天的某些最终生产数据,然后通过电子邮件发送该报告。问题在于,在刚刚开始的活动中,对getIntent的调用返回null,而我必须从那里获取数据。 ================================================== ========
问题内容: 这是我的媒体播放器代码。当我在模式下以断点运行时,我不知道这段代码中缺少什么。文件夹中的所有文件都会播放。但是,当我以正常模式运行该应用程序时,会播放第一个文件,然后出现此错误: 码: 问题答案: 您没有调用的方法,即超类。将调用添加到的方法中:
我正在尝试通过rxkotlin上传图像,我的问题是当我在应用程序中关闭屏幕时,上载过程会终止,因为我正在将订阅添加到我的处置中,所以当我的屏幕关闭或销毁时,我将进行处置。因为这个dispose,我的工作被终止了,因为无论如何我都需要处理其他的东西,这会导致内存泄漏 因此,我这样做,有没有其他方法来继续这项工作,即使在屏幕被破坏或清除后没有内存泄漏?