无法在iPhone应用中运行后台操作

时间:2012-07-25 02:49:05

标签: iphone objective-c xcode

我仔细阅读了苹果开发用户指南重新多任务,但我仍然无法理解我如何在背景上运行简单的操作。我做了以下简单的实验但没有发生任何事情:

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

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

非常感谢你的帮助。

3 个答案:

答案 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文档中