2010-08-02 91 views
5

我几天前开始为iPhone平台进行实验开发,在了解它的多任务功能的同时,我发现了“任务完成”,这可能非常有用。iPhone任务完成

我用google搜索了一下,阅读developer.apple.com/iphone上提供的文档,但还没有找到一些东西:是否有办法让这个任务完成运行一个循环(可能是无限循环),或者一个可以每10分钟运行一次的计时器?

我知道它像“作弊”,他们可能有一些对策,但无论如何,它会去尝试:)

回答

3

随着任务完成的好事吗?不可以。但是,您可以说您的应用程序是具有后台功能的音频应用程序,例如,使用kAudioSessionProperty_OverrideCategoryMixWithOthers属性设置音频会话,循环播放没有声音的某些音频。这样可以让用户退出,启动iPod或其他任何设备,并在应用程序继续运行时使其正常播放。

我已经在一个示例应用程序中测试了它,它工作。然而,这是可疑的,我不会推荐它。 (如果苹果发现它也可能会被拒绝。)

+1

一次只能有一个背景音频应用程序,或者您可以有多个?看来,如果用户打开iPod应用程序或Pandora之类的应用程序,您的应用程序将被禁用。 – lucius 2010-08-03 14:29:45

+1

只要打开音频设备的应用程序使用我在上面定义的属性,就可以拥有尽可能多的音频源。但是,像iPod这样的应用不会。如果有人想要访问音频,他们将停止播放。但是,如果您使用上述属性启动应用程序,即使iPod已请求访问,该应用程序仍会继续播放,并且iPod不会在意,因为它可以访问。该系统足够聪明,可以让iPod播放,但足够知道不会阻止其他应用,因为它与其他应用混合良好。 – jer 2010-08-03 14:39:49

+0

我还没有能够尝试这个,这是一个相当理论上的问题,我不得不承认,但这似乎是一个强制保持应用程序在后台打开的好方法。很遗憾,这可能会很快耗尽电池电量,特别是与其他应用程序或同一应用程序运行的不同处理任务结合使用时。 – wintermute 2010-08-03 18:21:02