接收远程通知和使用应用时如何显示UILocalNotification
?不是UIAlertView
?
我正在使用此代码,但它没有显示任何内容
- (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo
{
for (id key in userInfo) {
NSLog(@"key: %@, value: %@", key, [userInfo objectForKey:key]);
}
localNotification = [[UILocalNotification alloc] init];
NSString *message = [[userInfo valueForKey:@"aps"] valueForKey:@"alert"];
localNotification.applicationIconBadgeNumber = 0;
localNotification.alertBody = message;
localNotification.soundName = UILocalNotificationDefaultSoundName;
localNotification.fireDate = [NSDate dateWithTimeIntervalSinceNow:0];
localNotification.timeZone = [NSTimeZone defaultTimeZone];
localNotification.alertAction = @"ok!!!";
[application scheduleLocalNotification:localNotification];
}
我也试过了:
[application presentLocalNotificationNow:localNotification];
但它也不起作用。
有人可以帮忙吗?
答案 0 :(得分:2)
答案 1 :(得分:1)
如果应用程序在通知发送时正在运行,则屏幕上不会显示任何警报。应用程序自动调用其委托的应用程序:didReceiveLocalNotification:method
答案 2 :(得分:-3)
为了在应用程序位于前台时查看用户界面,您需要自己处理显示。
您可以从屏幕顶部创建自己的视图并为其设置动画,然后在延迟一段时间后将其设置为动画。
正如其他答案所提到的,有一些开源项目可以使这更容易实现:除了#VALUE
我发布了一个具有类似功能的pod linked in this answer。