Iphone 如何在ios4中执行网络后台
我们的应用程序不使用默认的电子邮件应用程序发送电子邮件,而是使用SMTP实现。现在,当应用程序位于前台时,电子邮件将使用SMTP连接发送。但是,如果我点击send,然后切换到另一个应用程序,电子邮件就不会被发送。只有当我们恢复到应用程序时才会发送。通常,我们希望在应用程序处于后台时发送电子邮件。欢迎任何提示。聊天应用程序如何轮询新消息?如果我们得到任何关于这方面的提示,我们也可以完成我们的任务。苹果对第三方应用程序的要求之一是,你不能在后台运行你的应用程序。我认为,您可以通过在应用程序的shouldTerminate方法中返回NO来完成任务,但您的应用程序将不会被苹果批准发布到AppStore中。这是一个好问题 根据苹果关于多任务的文档: 除了前面的键,iOS 提供了在中执行工作的其他两种方法 背景: 任务完成-应用程序可以询问 系统需要额外的时间来完成 给定任务。Iphone 如何在ios4中执行网络后台,iphone,objective-c,cocoa,cocoa-touch,iphone-sdk-3.0,Iphone,Objective C,Cocoa,Cocoa Touch,Iphone Sdk 3.0,我们的应用程序不使用默认的电子邮件应用程序发送电子邮件,而是使用SMTP实现。现在,当应用程序位于前台时,电子邮件将使用SMTP连接发送。但是,如果我点击send,然后切换到另一个应用程序,电子邮件就不会被发送。只有当我们恢复到应用程序时才会发送。通常,我们希望在应用程序处于后台时发送电子邮件。欢迎任何提示。聊天应用程序如何轮询新消息?如果我们得到任何关于这方面的提示,我们也可以完成我们的任务。苹果对第三方应用程序的要求之一是,你不能在后台运行你的应用程序。我认为,您可以通过在应用程序的shou
本地 通知-应用程序可以 将本地通知安排为 在预定的时间交付 如果您的任务不是长且连续的任务,例如VOIP服务、GPS服务或音频服务,则可以将其声明为“有限长度任务”,并可以在后台完成此任务。请记住,MU仅在iOS 4.0中可用,并且仅适用于3GS和4设备。您还应该为不支持MU的其他设备管理这些任务 始终根据官方文件,您可以这样做: 您可以使用任务完成来确保 这一点很重要,但很有潜力 长期运行的操作不会结束 当用户离开 应用程序例如,您可以 使用此技术保存用户数据 磁盘或完成下载 来自网络服务器的重要文件。 有两种设计模式 您可以使用启动此类任务:
- 包装任何长期运行的关键任务
具有
和-[UIApplication beginBackgroundTaskWithExpirationHandler:]
调用。这 在紧急情况下保护这些任务 您的应用程序突然停止 移到背景-[UIApplication endBackgroundTask:
- 等你的
应用程序代理的
方法 被调用并启动一个或多个 然后是任务应用程序标识符背景:
一般来说,你不能在后台运行,但是问题是当应用程序退出时完成一些你可以完成的事情,这叫做“任务完成”。在
beginBackgroundTask…
和endBackgroundTask:
中包装的任务可以在后台继续执行大约10分钟。应该足够完成一个小的下载和类似的。