当 iPhone 处于睡眠模式时,iPhone 应用程序延迟 10 -15 分钟

2024-04-03

我创建了一个使用 NSTimer 的应用程序,它每秒都会触发一次。

我的问题是,如果 Iphone 处于睡眠模式,我会延迟 10 到 15 事件触发前的分钟数。我已经 stackoverflowed 并用谷歌搜索了这个 其原因似乎是手机在某些情况下停止监听 处于睡眠模式时的事件。

有些人通过播放静音来解决这个问题,不允许 打电话睡觉。

  1. 延迟的原因可能是什么?
  2. 静音解决方案似乎是一种非常“肮脏”的解决方案。还有其他方法可以解决这个问题吗?
  3. 如果我使用静音解决方案会通过苹果审核吗?

Code:

timer = [NSTimer timerWithTimeInterval:1.0f target:self selector:@selector(goAction)userInfo:nil repeats:YES];

[[NSRunLoop currentRunLoop] addTimer:timer forMode:NSRunLoopCommonModes];

-(void)goAction {
  // Here i check for some dates and then call the activateBeepAlarmView 
}

好吧,既然没有人回答我的三个问题,我就不得不回答它们:

1. 延迟的原因可能是什么?我必须引用Ben S https://stackoverflow.com/questions/1805202/interacting-with-iphone-while-in-sleep-mode:

一旦 applicationWillResignActive 在您的应用程序上被调用,您只需停止接收事件: 当应用程序从活动状态转换到非活动状态时,委托可以实现此方法来进行调整。当应用程序处于非活动状态时,它正在执行但不调度传入事件。当弹出覆盖窗口或设备锁定时会发生这种情况。

睡眠模式的目的是节省能源。为此,设备将停止侦听您所请求的事件。 NSTimer 事件仍然会触发,因为它们不需要昂贵的(电池方面的)硬件监控。此外,闹钟是使用 NSTimer 实现的,因此即使在睡眠时它们也需要能够运行。否则,人们可能不会醒来并责怪他们的 iPhone。

2.静音解决方案似乎是一个非常“肮脏”的解决方案。还有其他方法可以解决这个问题吗?
不,目前我还没有找到其他解决方案,如果我错了,请随时纠正我。 查看this http://blog.marcopeluso.com/2009/08/23/how-to-prevent-iphone-from-deep-sleeping/博客文章如何做到这一点。

3. 如果我使用静音方案会通过苹果审核吗? Yes

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

当 iPhone 处于睡眠模式时,iPhone 应用程序延迟 10 -15 分钟 的相关文章

  • CMSampleBufferSetDataBufferFromAudioBufferList 返回错误 12731

    我正在尝试捕获应用程序声音并将其传递给 AVAssetWriter 作为输入 我正在设置音频单元的回调以获取 AudioBufferList 问题始于将 AudioBufferList 转换为 CMSampleBufferRef 它总是返回
  • 无需 iPhone 6 Plus 即可预览 iOS 应用程序

    我已经在 Yosemite 中使用 iPhone 6 和 Quicktime 完成了 iOS 应用程序预览 视频 但我无法在 iTunes Connect 中为 iPhone 6 上传它 而且我没有 iPhone 6 设备 有没有办法在没有
  • 我如何从 iPhone 设备获取电子邮件历史记录..?

    friends 我想从我的 iPhone 访问电子邮件历史记录 并且还希望在收到新邮件时收到通知 如果可能的话 请向我提供源代码片段 Thanks 简而言之 使用任何已记录的 API 都是不可能的
  • 访问 google reader 的 Endpoints API 时出错

    我正在尝试在iPhone APP中实现google reader 到目前为止我已经成功收到了sid and auth 当我尝试使用以下命令调用 Endpoints API 时 问题就出现了GET 这是代码 ASIHTTPRequest re
  • 如何检索 iPhone 的区域设置

    我用谷歌搜索过它 但令我有点惊讶的是我找不到它 我只想访问设备配置的区域设置 我试图找到如何列出所有系统属性 以防我能在那里找到区域设置 但甚至找不到如何做到这一点 我知道 认为 我之前检索过系统属性 但我也记得在谷歌搜索时找到该信息并不容
  • 默认情况下在 MPMovies PlayerViewController 中显示字幕

    有什么方法可以在默认情况下由 MPMovies PlayerViewController 加载的电影上显示字幕吗 这部电影在视频中嵌入了字幕 谢谢你 不幸的是 这个功能在MPMoviePlayer播放类 这显然相当烦人 您应该考虑向 App
  • 使用 ZBarSDK 时 iPhone 相机失去自动对焦功能

    我正在开发一个应用程序 用户可以选择是否要扫描条形码或拍摄某物的照片 为了拍照 我正在使用UIImagePickerController照常 为了扫描条形码 我使用 ZbarSDK 1 2ZBarReaderViewController 拍
  • 如果我在 iTunes Connect 中点击“拒绝二进制文件”来提交更新的二进制文件,我会失去排队的位置吗?

    我已通过 iTunes Connect 向 App Store 提交了一个应用程序 状态为 审核中 我不知道这是否意味着他们真的开始关注它 我怀疑这只是意味着它已被放入审阅者队列中 在它发布之前我想添加一个调整 但是 如果这意味着点击 拒绝
  • iPhone Twitter SDK 与 iOS 5 设备的集成问题

    我已成功将 Twitter Sharekit 与我的 iPad 应用程序源集成 当我在模拟器和装有 iOS 4 X 的 iPad 1 上测试该应用程序时 它运行完美 并且成功发布了推文 但是 如果我在装有 iOS 5 的 iPad 2 上安
  • 在成为FirstResponder或resignFirstResponder的情况下将对象保持在键盘顶部?

    我目前在键盘顶部有一个 UITextField 当您点击它时 它应该粘在键盘顶部并平滑地向上移动 我不知道键盘的具体时长和动画类型 所以确实很坎坷 这是我所拥有的 theTextView resignFirstResponder UIVie
  • 重新启动应用程序时出现异常 SIGKILL

    我在 iPhone 模拟器中构建并运行一个项目 我通过按主页按钮将其发送到后台 然后我双击主页按钮在后台找到我的应用程序并点击它 它变得活跃并且应用程序继续运行 在这里 无论我重复多少次 我都没有问题 然后我通过点击应用程序图标上的红色小减
  • 在 Xcode5 中使用 XCTest 时 AFNetworking 导致错误

    我正在使用 Xcode 5 现在刚刚开始对现有项目进行单元测试 为此我添加了CocoaTouch Unit Testing Bundle作为我的项目的目标 目标名称是 MyAppTests 我之前使用添加了 AFNetworking 库Co
  • HTML 分页

    有没有html分页的开源项目 我正在为 iPhone 开发一个应用程序 我想在 UIWebView 上显示 HTML 文件 并且不希望用户向下滚动以查看屏幕上未显示的剩余内容 我想在第二个 UIWebView 上显示剩余的内容 我怎样才能做
  • 在 iOS 上使用 Web 服务的最佳方式?

    我想构建一个 iOS 应用程序 让您登录到网络服务 之后 应用程序将 当用户选择时 通过 https 发送登录名 密码以及请求的变量 例如 在请求 新闻更新 后 它将收到 XML 格式的请求信息 类似于
  • iPhone UINavigationBar 使用 [UINavigationBar 外观] 更改所有控制器的字体样式

    我知道我可以单独更改导航栏的字体 如本答案所述 更改导航栏的字体 https stackoverflow com questions 5832036 change the navigation bars font 目前我正在使用一种更全局的
  • 进入前台后刷新数据

    更改默认设置后 我想在AppDelegate中进入前台时刷新myViewController的数据 我所做的是 AppDelegate m void applicationDidFinishLaunching UIApplication a
  • iphone NSDate 转换问题

    在我的 facebook 图表 Api 中 我正在获取这些数据 来自杰森 updated time 2011 05 17T14 52 16 0000 我正在使用此代码将其转换为有效的日期格式 NSDateFormatter df NSDat
  • 个人帐户开发者之间的 Apple 开发/分发证书

    我一直在到处寻找有关处理证书的正确答案 想象一下以下帐户 Joe拥有个人 Apple 帐户 但他根本不会编码 他只是发布了该应用程序并将其称为自己的 Bob还有一个个人 Apple 帐户 Bob 是一位编码专家 Joe 付费让他开发他的第一
  • 在 UIImage 顶部绘制透明圆圈 - iPhone SDK

    我在尝试找出如何在 UIImageView 中的 UIImage 顶部绘制透明圆圈时遇到了很多麻烦 谷歌给了我线索 但我仍然找不到有效的例子 有没有人知道的例子可以证明这一点 最简单的方法就是创建一个半透明的方形 UIView 然后将其图层
  • CGImage/UIImage 在 UI 线程上延迟加载会导致卡顿

    我的程序显示一个水平滚动表面 从左到右平铺有 UIImageViews 代码在 UI 线程上运行 以确保新可见的 UIImageView 分配有新加载的 UIImage 加载发生在后台线程上 一切工作几乎都很好 除了每个图像变得可见时出现口

随机推荐

  • 如何从 Golang 访问 C 指针数组

    我正在使用 FFmpeg 为 Windows 平台编写一个应用程序 它是 golang 包装器 goav 但我无法理解如何使用 C 指针来访问数组 我试图获取存储在 AVFormatContext 类中的流以在 go 中使用 并最终将帧添加
  • ToString("0") 与 ToString(CultureInfo.InvariantCulture)

    我想确保我的应用程序中的某些数字在打印时没有任何分隔符 分组等 无论当前环境如何 似乎以下两种方法产生相同的结果 可能还有更多 123456789 ToString 0 123456789 ToString CultureInfo Inva
  • 为什么 Rails 不引发 I18n::MissingInterpolationArgument 异常?

    我创建了一个虚拟 Rails 4 1 5 应用程序来显示 I18ntranslate当未提供要插值的变量时 方法不会引发 I18n MissingInterpolationArgument 仅当提供错误的内容时才会引发该异常 这是预期的行为
  • 从源代码构建 Docker 失败

    从 dotcloud docker git 克隆之后 cd docker sudo make VERBOSE 1 Fetching https net http cookiejar go get 1 https fetch failed u
  • 撤消已推送的合并

    好吧 我弄得有点乱了 显然 在我家里的机器上 开发分支没有更新 我做出了承诺并推动了 结果是实际的 origin develop 分支已合并到我的本地开发分支中 由于某种原因 它被视为不同的分支 一方面 我真的不明白这是怎么发生的 其次 我
  • 通用二叉树节点析构函数问题

    我一直在做一项作业 现在我被有问题的析构函数困住了 我必须创建一个包含所有常用成员函数和一些特殊运算符的通用二叉树 还有一个限制 一切都必须迭代地工作 所以这次没有令人讨厌的递归黑客 BinTreeNode 类的析构函数显然有一些非常错误的
  • Laravel 中 detach() 方法也可以应用于一对多关系吗?

    在 Laravel 文档中 我发现 detach 方法可以分离多对多关系中的所有对象 detach 方法也可以应用于 Laravel 中的一对多关系吗 如果不是 在这种情况下如何分离所有 n 个对象 在多对多关系中 detach 方法仅删除
  • 更改通过文字初始化创建的对象的原型

    假设我只想使用 不是构造函数 我有一个这样的对象 var o name Jack 如果我想创建另一个对象 其原型是o我使用这个语法 var u Object create o console log u name prints Jack u
  • 传递具有可变大小的二维数组

    我正在尝试将二维数组从一个函数传递到另一个函数 然而 数组的大小不是恒定的 尺寸由用户决定 我曾尝试对此进行研究 但运气不佳 大多数代码和解释都是针对数组的恒定大小 在我的函数中A我声明该变量 然后对其进行一些操作 然后必须将其传递给 Fu
  • 如何使用 shell 始终获取下载 tomcat 服务器的最新链接

    我写了一个shell脚本来下载并安装tomcat服务器v 8 5 31 wget http www us apache org dist tomcat tomcat 8 v8 5 31 bin apache tomcat 8 5 31 ta
  • 如何从 f:selectItems 获取标签和值

    我正在开发一个 JSF 页面 该页面有一个基于List
  • 在 hibernate 中使用 where 子句选择查询

    我有班级登录 其中有userId username and password 对于要登录的用户 我正在检查username and password并得到userId If userId不为零则它将引导至主页 我正在尝试在休眠状态下执行此操
  • AWS CodePipeline 并部署到 EKS

    正在开发 AWS CodePipeline 用于构建容器并将其部署到 EKS 集群 AWS CodePipeline 似乎不支持 仅 ECS 对 EKS 的部署操作 我尝试探索其他选项 例如使用 lambda 函数 我找到了以下在 lamb
  • Redmine 和 SVN:如何在提交发生后将修订链接到问题?

    这样我们就成功地将Redmine与SVN集成了 这是一个成熟的集成 已经几个月了 Post commit hook 更新 Redmine 中的存储库 SVN 提交中的评论可以完美地导入到 Redmine 中 它能够在问题和修订 日志时间 整
  • javascript es6 双箭头函数

    我想更好地理解 es6 箭头函数 给出以下示例 export default function applyMiddleware middlewares return createStore gt reducer preloadedState
  • 如何计算 MIDI 文件的时间长度

    我正在使用名为 midas 的有用库的帮助下读取 as3 flash cs5 中的 midi 文件 http code google com p midas3 http code google com p midas3 midi as3 库
  • 实现托管属性处理程序 Shell 扩展的正确方法是什么?

    现在 NET CLR 4 0 支持并行 SxS 操作 现在应该可以编写 shell 托管代码中的扩展 我已经尝试过并成功编码了属性处理程序 实现 IPropertyStore IInitializeWithStream 和 IPropert
  • SVG 无法在绝对定位的父级中正确调整大小

    我遇到一个问题 内联
  • 在 CakePHP v2.0 中使用电子邮件地址进行身份验证

    好吧 这个问题与我最近在 Stack Overflow 上问的问题类似 但我基本上只是使用 CakePHP 书中的代码而不是我自己的代码来尝试理解为什么有些东西不起作用 基本上 这个想法是允许用户在 Cake 2 0 版本中使用他们的电子邮
  • 当 iPhone 处于睡眠模式时,iPhone 应用程序延迟 10 -15 分钟

    我创建了一个使用 NSTimer 的应用程序 它每秒都会触发一次 我的问题是 如果 Iphone 处于睡眠模式 我会延迟 10 到 15 事件触发前的分钟数 我已经 stackoverflowed 并用谷歌搜索了这个 其原因似乎是手机在某些