如何在ios7的后台运行进程 [英] how to run process in background in ios7

查看:75
本文介绍了如何在ios7的后台运行进程的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我想在前台和后台持续运行我的进程。我实现了以下代码

I want to run my process in fore ground and background continuously.I've implemented the following code

self.updateTimer = [NSTimer scheduledTimerWithTimeInterval:10.0
                                                    target:self
                                                  selector:@selector(repeatedMethod)
                                                  userInfo:nil
                                                   repeats:YES];

self.backgroundTask = [[UIApplication sharedApplication] beginBackgroundTaskWithExpirationHandler:^{
    NSLog(@"Background handler called. Not running background tasks anymore.");
    [[UIApplication sharedApplication] endBackgroundTask:self.backgroundTask];
    self.backgroundTask = UIBackgroundTaskInvalid;
}];

在前台是很好,但在后台进程只运行5分钟, 。

In foreground it is fine but in background process is running for just 5 mins and not running more than that.But I want it to run continuously even in background also.please help.

推荐答案

这是因为completionHandler是在后面调用的。 5分钟。您无法在iOS中无限期运行后台进程,直到您使用 UIBackgroundModes ,并且它也依赖于你必须提供BackgroundMode的功能,如果你在你的应用程序中使用它,否则苹果会拒绝它。

Thats happening, because the completionHandler is called after 5 mins.You cannot run a background process for indefinite period in iOS until you use one of the UIBackgroundModes and that too is dependent upon you must provide a functionality of BackgroundMode if you use it in your application otherwise apple will reject it.

例如,如果您使用VoiPBackgroundMode,您的应用程序应提供VoiP服务,否则将被拒绝

For example if you use "VoiP" BackgroundMode you application should provide "VoiP services" otherwise it will be rejected

这篇关于如何在ios7的后台运行进程的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆