如何保持后台运行的 iPhone 应用程序完全正常运行

2023-11-24

首先,我知道仅支持 voip、音频和位置应用程序在后台运行,并且它们只会在播放音频或使用位置服务等时运行。

我想知道是否有一种方法可以让我的应用程序在后台完全运行,而不管对电池寿命的影响。

这样,我的应用程序的用户就可以从设置中进行选择,以便在他想要的时候并且只在他希望的时间内保持应用程序的活动状态。例如,如果他正在等待需要应用程序运行的某些内容,则在收到消息后,他可以关闭保持活动功能。

我不知道这是否可能,但我读过一些这样说的帖子,但不幸的是他们没有说如何 =(

更新:在本教程,我发现 Acrobits 在 Apple Store 上有两款“可以强制应用程序在后台保持活动和唤醒状态”的应用程序。那么有办法做到这一点吗?


从 iOS 7 开始,应用程序有更新的方式在后台运行。苹果现在认识到应用程序必须不断下载和处理数据。

这是可以在后台运行的所有应用程序的新列表。

  1. 在后台向用户播放音频内容的应用程序,例如音乐播放器应用程序
  2. 在后台录制音频内容的应用程序。
  3. 让用户随时了解其位置的应用程序,例如导航应用程序
  4. 支持互联网语音协议 (VoIP) 的应用
  5. 需要定期下载和处理新内容的应用
  6. 从外部配件接收定期更新的应用程序

您可以使用 X Code 5+ 在 Info.plist 中声明应用程序支持的后台任务。例如。将 UIBackgroundModes 键添加到应用程序的 Info.plist 文件并向数组添加“fetch”值可以让您的应用程序定期从网络下载和处理少量内容。您可以在 XCode 5 中应用程序属性的“功能”选项卡中执行相同的操作(附加快照)

Capabilities tab in XCode 5 You can find more about this in Apple documentation

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何保持后台运行的 iPhone 应用程序完全正常运行 的相关文章

  • 如何从 NSString 中删除十六进制字符

    我面临一个与字符串中的某些十六进制值相关的问题 我需要从字符串中删除十六进制字符 The problem is when i print object it prints as BLANK line And in debug mode it
  • 维护 UISegmentedControl 中的选择

    我可以保持 UISegmentViewControl 段的选定状态吗 即 即使用户选择了另一个段 也可以保持一个段显示为选中状态 我似乎在任何地方都找不到任何可以做到这一点的东西 这是不可能开箱即用的 看如何才能选择 UISegmented
  • Objective-c中的贝塞尔曲线算法

    比我聪明的人可以看一下这个吗 我正在尝试实现我发现的贝塞尔曲线算法here http webtweakers com swag GRAPHICS 0074 PAS html在 Objective c 中 输出是错误的 我想我正确地转换了代码
  • NSMenuItem、自定义视图和 mouseUp 的奇怪问题:

    我在这里遇到了一个非常非常奇怪的 NSMenu 问题 我使用的大约一半的 NSMenuItems 通过 NSMenuItem 上的 setView 方法具有自定义视图 在此自定义视图中 我实现了 mouseUp 来捕获用户单击菜单项的时间
  • 为什么 GDB 调试器不断冻结 Xcode 4?

    这真是一个奇怪的错误 我正在开发一个使用相机源的 iPhone 项目 并通过 OpenGL 着色器运行它以对其应用效果 然而 每次我在代码中简单地创建一个新的 GLfloat 时 调试器都会在启动时冻结 我无法复制和粘贴文本 因为整个 XC
  • 如何使导航栏透明并淡出,就像 iPhone 中的照片应用程序一样

    我是 iPhone 编程新手 有人可以帮我吗 我想在iPhone中开发一个类似照片应用程序的应用程序 如何使导航栏和工具栏透明并淡出 就像 iPhone 中的照片应用程序一样 感谢你 UINavigationBar继承自UIView 所以你
  • 应用未能及时恢复

    我在一个非常具体的场景中遇到 未能及时恢复 崩溃 我认为与看门狗相关 仅在从后台恢复时 并且仅在进入后台后在很短的时间内执行此操作 a最多几秒钟 这似乎是相关的崩溃日志 Incident Identifier E30F2238 5B15 4
  • 以编程方式更改 iPhone 背景

    是否可以通过代码更改 iPhone 背景 如果你写一个新的png到 User Library LockBackground png然后打电话notify post com apple language changed 设备将重新启动 并且您
  • 应用程序发布后,对如何更新 UITableView 上的数据源感到困惑

    阅读文档后 我似乎误解了有关数据管理的一些概念 所以我试图澄清一些方面 如果这篇文章听起来多余和重复 请道歉 我的应用程序有多个 TableView 每个表视图都有一个 pList 形式的数据源 因此 我有几个属性列表用作我的表的数据源 目
  • Parse.com - 获取 [PFUser currentUser] 中包含的指针数据

    我正在使用 Parse com iOS SDK 并且我不知道需要调用什么方法来确保 PFUser currentUser 包含其中包含的每个指针的数据 这可能很简单 但是 作为这个平台的初学者 我找不到解决方案 只是为了澄清一下 我试图在下
  • iPhone:在命令行 (Mac OS X) 中压缩 .app 文件会删除 CodeSigning

    我正在尝试使用 TeamCity 对我的 iPhone 应用程序进行简单的构建自动化 但遇到了这个棘手的问题 当我从构建文件夹中手动拾取并安装 app 文件时 效果很好 与 iTunes 顺利同步 我可以在手机上看到该应用程序 但是 当我尝
  • CocoaPods 生成无效的项目文件(未找到标头)

    我有一个带有 Podfile 的项目文件 如下所示 platform ios 7 0 def import pods pod Specta 0 1 8 pod Expecta 0 2 1 pod RestKit 0 20 3 pod Mag
  • iPhone ImageView序列动画

    嘿 尝试将一个简单的 png 序列动画放入我的应用程序中 我在 IB 中放置了第一个框架 并将图形动画出口连接到它 序列中有 54 个 png 名称为 Comp 1 0000 png 到 Comp 1 00053 png 这是我的代码 vo
  • 无法使用 NSDateFormatter 解析日期

    我正在获取 RSS 其中我收到以下日期戳 2010 05 10T06 11 14 000Z 现在我正在使用 NSDateFormatter 来解析这个日期时间戳 parseFormatter setDateFormat yyyy MM dT
  • 如何确定 UINavigationController 中工具栏的高度?

    我有一个带有由 UINavigationController 呈现的工具栏的视图 当我处理 UIKeyboardWillShowNotification 时 我将整个屏幕向上滚动键盘的高度 问题是当显示键盘时 底部工具栏不显示 所以我只需将
  • NSSortDescriptor 和多对多关系

    我有两种反对意见 地点和历史项目 我正在尝试获取附加到任何历史记录项目的位置 因此该位置的获取谓词是 history count gt 0 效果很好 我还想使用 NSSortDescriptor 按最新历史项目的日期对位置对象进行排序 据我
  • 如何将 Cocoa 应用程序移植到 iPhone-OS?

    我即将创建一个 Cocoa 应用程序 我想确保有一天我可以轻松地将它移植到 iPad 甚至 iPhone 我该如何提前计划 我知道我将不得不重做所有 NIB 并可能设计一个不同的工作流程 但是代码呢 仅仅用 UIsomething 替换每个
  • Parse 在哪里存储用户会话

    登录代码 PFUser logInWithUsernameInBackground self userTextField text password self passwordTextField text block PFUser user
  • iOS SDK:MapKit MKPolyLine 未显示

    我试图在地图上显示多段线 但该线没有显示 我尝试了很多事情 但注意到似乎有用 我检查了核心数据函数 它正在返回数据 所以这不是问题 它必须是我在地图点创建或地图上绘制的某个地方 我猜 我确信一定是某个地方出了点小错误 但我找不到它 My c
  • 如何在 iOS 5 中使用 Embed Segue?

    iOS 6 引入了 Embed Segue 允许在 Storyboard 中使用自定义容器控制器 有没有办法在 iOS 5 上复制这个 这里的挑战是子视图控制器的视图通常要添加为父视图控制器的某些容器视图的子视图 因为你不能随机进行序列UI

随机推荐

  • NUnit 与 Assert.AreEqual 不能很好地配合

    我对单元测试尤其是 NIt 很陌生 我只是从书中输入一些涉及 Java 和 JUnit 的示例 但我改用 C 问题是 我有一个带有重写方法的类 例如Equals and GetHashCode 但是当我尝试将此类的两个对象与Assert A
  • 为 Mac 安装 ext-zip

    我正在尝试跑步composer update我收到以下错误 Problem 1 The requested PHP extension ext zip is missing from your system Install or enabl
  • 如何阻止 R 加载包?

    我正在使用 R 中的多核包来并行化我的代码 但是 如果加载了 tcltk 包 则使用多核包分叉进程将导致 R 无限期挂起 所以我想阻止 tcltk 加载 如果任何包尝试将其作为依赖项加载 我希望立即出现错误 这可能吗 或者 我可以unloa
  • 为 jinja2 中未定义的属性引发异常

    我需要以下内容来引发异常 jinja2 Template Hello a x render a Jinja2 默默地返回一个空字符串a x 所以这呈现为 Hello 如何让 jinja2 对未定义的属性引发异常 from jinja2 im
  • 在 Javascript 中进行长时间运行的计算时如何避免冻结浏览器

    我有一个网页 其中函数中的 JavaScript 计算需要花费大量时间才能完成 并使页面冻结 当计算在后台进行时 我应该使用什么技术来确保 javascript 不会冻结浏览器 如果您只需要进行计算并且不需要在长时间运行的计算过程中访问 D
  • 如何在平面索引数组中复制值? (将所有元素按顺序追加到数组末尾)

    假设我有这段代码 x array a b c d e 有没有我可以在创建后调用的函数来复制值 所以在上面的示例中 x会成为 array a b c d e a b c d e 我想了类似下面的东西 但它不起作用 x x x x array
  • LINQ to Entities - 动态选择指定列

    我可以创建一个选择查询 仅检索 LINQ to 实体的特定列 代码中的静态 from Example in new Enities Table select new Example Column1 Example Column2 但我不知道
  • 在数据库中存储十六进制和十六进制字符的最佳数据类型

    我正在使用以太坊 API 我想将来自 api 的信息存储到 mysql 表中 地址数据如下所示 0x3f5ce5fbfe3e9af3971dd833d26ba9b5c936f0be 0x1d80982502f3bb75654df13aa32
  • Redis 复制和客户端输出缓冲区限制

    我遇到了 redis 复制问题 我无法弄清楚 Master 不断达到客户端输出缓冲区限制 主控配置 redis cli p 6380 config get client output buffer limit 1 client output
  • Microsoft Office 互操作程序集参考

    我有一个在 Visual Studio 2005 中开发的应用程序 我正在使用 ClickOnce 进行部署 我的解决方案包含两个项目 用 VB 编码的用户界面层和用 C 编码的类库 我的 C 类库有一些使用 Outlook 和 Excel
  • 我可以从 Firefox 缓存中删除特定文件吗?

    我正在开发一个 ASP net 应用程序 我必须经常更新我的 CSS 文件 我不想更新 from 中的文档频率设置about config在火狐浏览器中 我想让它默认 我使用 Firefox 作为理想的浏览器 如果我只是更新 CSS 文件
  • Mac OS X 10.8.4 上的 nc (netcat) 卡住

    我在 Mac OS X 上使用 nc 实用程序时遇到了一个小问题 我经常使用该实用程序作为快速但肮脏的解决方案来检查端口是否打开以及守护程序正在运行的版本 前几天我们部署了一组新计算机 我想验证它们正在运行什么版本的 sshd 而无需离开我
  • 创建变换以从一个矩形映射到另一个矩形?

    最简单的创建方法是什么AffineTransform它将坐标从一个矩形映射到另一个矩形 给出了浮点 双精度矩形 UPDATE 1 矩形可以完全不同 例如 0 0 1 1 和 150 14 1000 14 1 而且改造要统一改造 例如 矩形角
  • Google Cloud Pub/Sub 重试计数

    我们正在从不稳定的消息队列服务迁移到 Node JS 中的 Google Pub Sub 它似乎运行良好 但我们希望包括错误处理 我们希望限制特定消息的重试次数 例如在测试环境中重试 10 次 在生产环境中重试 100 次 现在 如果一条消
  • 如何在 Ember.js 中的控制器之间进行通信

    我想创建一个页面 其中左侧有固定视图 一些过滤器 这些视图应用于右侧的结果 例如 左侧是按流派 标题 创作年份过滤电影的过滤器 右侧是不同的图表和表格 它们根据所选的过滤器进行更新 所以我想在左边有一个固定的视图 然后在右边有一个会根据路线
  • 使用 node-mysql 中的 SSH 隧道连接到 MySQL

    当使用node mysqlnpm 包 是否可以使用 SSH 密钥而不是密码连接到 MySQL 服务器 您可以完全独立地完成 SSH 隧道组件 然后使用通过 SSH 建立隧道的 TCP 将 node mysql 或任何其他 sql 客户端 指
  • 我可以从堆栈中 POP 一个值,但将其放在 NASM Assembly 中的任何地方吗?

    NASM 程序集 Ubuntu 32 位程序 通常 当从堆栈中弹出一个值时 我会这样做 POP somewhere 进入寄存器或变量 但有时 我只是不想把它放在任何地方 我只想删除堆栈中的下一个元素 正在做 POP 就这样不行 我的一个解决
  • PHP:使用单词递增计数器函数(即第一、第二、第三等。)

    我一直在尝试找到一个使用单词递增计数器的函数 我知道可以使用带后缀的数字 即第一 第二 第三等 这是我得到的代码片段 function addOrdinalNumberSuffix num if in array num 100 array
  • JavaScript 以及为什么大写字母有时有效有时无效

    在 Notepad 中 我正在编写一个 JavaScript 文件 但有些东西不起作用 单击按钮时必须显示警报 但它不起作用 我使用了 Notepad 提供的自动完成插件 它为我提供了onClick 当我改变首都时C到一个小c 它确实有效
  • 如何保持后台运行的 iPhone 应用程序完全正常运行

    首先 我知道仅支持 voip 音频和位置应用程序在后台运行 并且它们只会在播放音频或使用位置服务等时运行 我想知道是否有一种方法可以让我的应用程序在后台完全运行 而不管对电池寿命的影响 这样 我的应用程序的用户就可以从设置中进行选择 以便在