2

我已经仔细阅读了关于多任务处理的苹果开发用户指南,但我仍然无法理解如何在后台运行简单的操作。我做了以下简单的实验,但什么也没发生:

- (void)applicationDidEnterBackground:(UIApplication *)application
{
   sleep(3);
   UIAlertView *alert1 = [[UIAlertView alloc] initWithTitle:@"title" message:@"test" delegate:nil cancelButtonTitle:nil otherButtonTitles:nil , nil];
   [alert1 show];
}

所以我知道默认情况下在后台添加对音频/位置/VoIP 操作的支持,但是如何添加对这样一个简单操作的支持?

非常感谢您的帮助。

4

3 回答 3

6

我希望这个答案。对您的问题非常有用

当您关闭应用程序时,您可以在后台看到 AlertView 中的消息。

- (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];


}
于 2012-07-25T05:12:57.320 回答
0

当您的应用程序进入后台时,您正尝试显示警报。尝试使用 NSLog 打印一些东西或放置一个断点并检查是否控制此方法。

于 2012-07-25T03:00:52.997 回答
0

您的应用在后台无法执行任何 UI 操作。您可以在后台执行其他操作,例如获取数据或处理一些数据。要启用音频/位置/voip,您需要正确设置您的 info.plist 以启用它。应该记录在 iOS 文档中

于 2012-07-25T03:02:37.510 回答