我仔细阅读了苹果开发用户指南重新多任务,但我仍然无法理解我如何在背景上运行简单的操作。我做了以下简单的实验但没有发生任何事情:
- (void)applicationDidEnterBackground:(UIApplication *)application
{
sleep(3);
UIAlertView *alert1 = [[UIAlertView alloc] initWithTitle:@"title" message:@"test" delegate:nil cancelButtonTitle:nil otherButtonTitles:nil , nil];
[alert1 show];
}
所以我理解在默认情况下在后台添加对音频/位置/ VoIP操作的支持,但是如何添加对这种简单操作的支持?
非常感谢你的帮助。
答案 0 :(得分:6)
我希望这个和。对你的问题非常有用
关闭应用程序时,您可以在后台看到警报视图中的消息..
- (void)viewDidLoad
{
UILocalNotification *localNotif = [[UILocalNotification alloc] init];
localNotif.fireDate =[NSDate dateWithTimeIntervalSinceNow:15];
localNotif.timeZone = [NSTimeZone localTimeZone];
localNotif.alertBody = @"Staff meeting in 30 minutes";
//localNotif.alertBody = [NSString stringWithFormat:@"%@'s Birthday",strName];
localNotif.alertAction = @"View";
localNotif.soundName = UILocalNotificationDefaultSoundName;
// localNotif.applicationIconBadgeNumber = 1;
localNotif.repeatInterval = NSYearCalendarUnit;
[[UIApplication sharedApplication] scheduleLocalNotification:localNotif];
}
答案 1 :(得分:0)
您正在尝试在应用程序进入后台时显示警报。尝试使用NSLog打印一些东西或者设置一个断点并检查控制是否来自此方法。
答案 2 :(得分:0)
你的应用在后台无法做任何UI工作。您可以在后台执行其他操作,例如获取数据或处理某些数据。 要启用音频/位置/ voip,您需要正确设置info.plist以启用它。 应记录在iOS文档中