我正在尝试让我的应用程序处理数据负载,而它是在后台。
"data": {
"aKey": "aValue",
"customtitle": "my title",
"custombody": "my body",
"customimage": "my image"
},
"notification": {
"title": "my title",
"text": "some text",
"icon": "icon to use",
"sound": "soundtouse"
}
根据“在后台应用程序中处理通知消息”一节下的文档
..数据有效载荷将在发射器活动意图的附加部分中交付。
您只遇到了FCM的预期行为。在您链接的文档中,该表显示,当使用data
有效负载时,只有当消息有效负载只有数据时,它才会触发OnMessageReceived()
:
"data": {
"aKey": "aValue",
"customtitle": "my title",
"custombody": "my body",
"customimage": "my image"
}
但是您在消息负载中同时使用了通知
和数据
。这意味着当应用程序处于后台时,有效负载将由Android系统本身处理,在通知托盘中显示通知
详细信息。
然后,当用户点击Android处理的通知时,它应该打开您的应用程序(通常是MainActivity或您通过使用click_action
设置打开的任何活动),然后您应该处理如下所示的意图:
Intent intent = getIntent();
String pos = getIntent().getStringExtra("<YOUR KEY HERE>");
if(pos !=null){
selectDrawerItem(navigationView.getMenu().getItem(Integer.parseInt(pos)));
}
当应用程序位于后台时,不调用此方法。任何帮助对我都是很大的帮助。
我现在有这个问题,我需要在应用程序在后台时处理消息推送的信息,我的意思是,甚至不点击通知。这意味着这个应用程序:(UIApplication*)应用程序didReceiveRemote teNotify:(NSDicpedia*)userInfo fetchCompletionHandler:(val(^)(UIBackground FetchResult))完成必须在后台调用Handler!这是
要在控制台应用程序中开始使用Hangfire,您需要首先将Hangfire包安装到控制台应用程序。因此,使用您的软件包管理器控制台窗口进行安装: PM> Install-Package Hangfire.Core 然后添加任务存储安装所需的软件包。例如,使用SQL Server: PM> Install-Package Hangfire.SqlServer 仅需 Hangfire.Core 软件包
我正在从google firebase为我的android应用程序发送推送通知,目标是Android5.0: 我的推送通知代码是: 但为什么?这就像当应用程序在后台时,通知不使用活动代码中的设置,而只使用AndroidManifest中的某种“默认”设置。