当我的应用处于前台时它可以在
中接收推送通知- (void)application:(UIApplication *)application
didReceiveRemoteNotification:(NSDictionary *)userInfo {
NSLog(@"%@",userInfo);
}
登录控制台 -
{
app = {
alert = dsafdas;
badge = 1;
sound = "myringtone.caf";
};
}
但问题是当应用程序在后台没有显示推送通知时。
在应用的设置中
ALERT STYLE - Banners
徽章应用图标 - enabled
声音 - enabled
有什么问题?
答案 0 :(得分:3)
问题是:app
应为aps
{
aps : {
而不是
{
app : {
答案 1 :(得分:2)
didReceiveRemoteNotification
中调用 foreground
,在后台模式下,用户需要点按以激活应用。
- (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo
{
if ( application.applicationState == UIApplicationStateActive ){
NSLog(@"app was already in the foreground");
}
else{
NSLog(@"app was just brought from background to foreground");
}
NSLog(@"%@",userInfo);
}
答案 2 :(得分:0)
didReceiveRemoteNotification
肯定会工作(如数据库操作或网络访问)。但在应用程序处于前台之前,它不会显示日志输出。
N.B:要在后台工作,您需要打开功能。