仅当系统唤醒时触发计时器 (macOS)

2024-04-06

我正在开发一个进行网络调用的 mac 应用程序。我正在使用一个Timer每 15 分钟进行一次网络调用以刷新一些数据。我只希望在用户使用系统时触发计时器并进行调用(否则它只是进行不必要的调用),即系统未睡眠时。我该怎么做?我读到关于 mach 有一个单调时钟,仅在系统唤醒时更新,但我不确定如何实现我的计时器以按需要运行。有没有办法判断系统是否处于唤醒状态?预先感谢您的任何帮助。


里面有4条通知NS工作区 https://developer.apple.com/documentation/appkit/nsworkspace您可以使用暂停和恢复计时器

  • didWakeNotification https://developer.apple.com/documentation/appkit/nsworkspace/1530973-didwakenotification 当机器从睡眠状态唤醒时发布。
  • willSleepNotification https://developer.apple.com/documentation/appkit/nsworkspace/1530075-willsleepnotification 在机器进入睡眠状态之前发布。
  • screensDidSleepNotification https://developer.apple.com/documentation/appkit/nsworkspace/1530288-screensdidsleepnotification 当机器屏幕进入睡眠状态时发布。
  • screensDidWakeNotification https://developer.apple.com/documentation/appkit/nsworkspace/1524606-screensdidwakenotification 当机器屏幕唤醒时发布。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

仅当系统唤醒时触发计时器 (macOS) 的相关文章

  • Swift 每 5 天重复一次 LocalNotification

    如何每 5 天上午 10 00 重复一次 LocalNotification 我尝试这个 但它不起作用 let content UNMutableNotificationContent content title Hello content
  • 如何在gcc中打印UINT64_t?

    为什么这段代码不起作用 include
  • 自定义“可搜索”搜索字段 SwiftUI iOS 15

    When using the new searchable modifier in SwiftUI on iOS 15 I have no way to customize the Search Bar appearance Specifi
  • 使用本地化故事板进行即时本地化

    我正在开发一个应用程序 它有一个切换按钮可以在英语和阿拉伯语之间切换 并且应该是动态的 我正在使用该方法https github com maximbilan ios language manager https github com ma
  • 在 try 中使用零合并运算符? for 抛出并返回可选值的函数

    我想在以下两种情况下使用 nil coalescing 运算符设置默认值 函数抛出错误 函数返回 nil 请看一下下面的代码片段 我有以下问题 为什么 item1 为零 item1和item2的初始化有什么区别 enum VendingMa
  • 在Python中通过sys.stdout写入unicode字符串

    暂时假设一个人无法使用print 从而享受自动编码检测的好处 所以这给我们留下了sys stdout 然而 sys stdout太蠢了不做任何合理的编码 http bugs python org issue4947 现在人们阅读 Pytho
  • 呈现 UIActivityViewController 时发出警告

    当我提出一个UIActivityController使用我得到的下面的代码 它被呈现 但控制台显示 Warning Attempt to present
  • Cocoa Accessibility API,我可以单击后台窗口而不激活它吗?

    我一直在寻找解决这个问题的方法 所以我想我应该寻找比我更伟大的头脑 我正在开发一个 Cocoa 应用程序 它使用 Accessibility API 来操作另一个程序 它是一个热键应用程序 我控制的应用程序通常会打开多个窗口 其中一些窗口隐
  • 如何在 Swift 中证明 String 类型的“写时复制”

    正如标题所说 我试图证明自己 Swift 中的 String 支持 COW copy on write 但我找不到证据 在尝试以下代码后 我在数组和字典上证明了 COW func address of object UnsafeRawPoi
  • swift 中带有字符的单引号

    我已经完成了 C C Java 这些语言告诉我字符用单引号括起来 主要是在遵守正确的语法时 但字符串是双引号的 Swift 的语法是否只允许字符位于单引号内 或者提供这种语法背后有一些有效的原因 逻辑 let char1 Character
  • 在 Cocoa/Carbon 下调试 NULL CGContext

    在执行程序期间 我在 XCode 调试控制台中得到以下输出
  • Mac 上的 cp --parents 选项

    在 Linux 上 我有一个可用于 cp 命令的 parents 选项 因此我可以执行以下操作 cp parents test withintest go rb test2 http www gnu org software coreuti
  • Swift 3.0 中使用索引访问字符串的 Big O

    访问的复杂度是多少String与index in swift 3 0 复杂度与数组访问或 O N 或其他相同吗 来自文档 https developer apple com library prerelease content docume
  • Swift 中的自定义输入视图

    我花了几个小时试图弄清楚如何创建 然后定制inputView上班 我有一个网格TextInputs 想想拼字板 按下时应该加载自定义inputView插入文本 我创建了一个 xib文件包含UI elements为定制inputView 我能
  • UIView 内的 UIButton 目标操作

    我有一个习惯UIView我创建了一个UIButton 在该视图中 我有以下代码 func setupViews menuControlButton addTarget self action toggleButton forControlE
  • 如何在 Swift 编程中获得基于导航的模板功能

    我的项目需要一个导航控制器 并且我的应用程序最初有一个社交登录 一旦验证通过 用户将被推送到另一个视图 我在其中显示一个具有 2 个选项卡的选项卡控制器 我不知道如何在 Swift 编程中做到这一点 我已将视图控制器嵌入到导航控制器中 一旦
  • AVPlayerLooper 每次迭代后黑闪

    我正在使用 Apple 的示例代码在UICollectionViewCell背景 我在用着AVPlayerLooper 因为它是同一视频的迭代 我的问题是 当视频结束时 它会显示轻微的黑屏闪烁 也许它正在将视频搜索到0时间 我不确定 这是代
  • 在 Mac OS X 上的 Makefile 中设置 PATH(但它适用于 Linux)

    我可以在 Linux 上的 Makefile 中设置 PATH 但不能在 Mac OS X 上设置 在 OS X 中 可以设置 PATH 但不会使用 这是一个演示 在带有 bash 4 1 2 1 release 和 GNU Make 3
  • 类unix系统中的python和python3命令有什么区别?

    我通读了每个命令的描述 但每个命令的描述都是完全相同的 所以我不明白这两个命令在类 Unix 系统中的工作方式有何不同 谁能解释其中的区别吗 Python3命令的引入是因为python命令指向了python2 从那时起 Python3 已成
  • 为程序员设置 Mac [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi

随机推荐

  • CSS 最小宽度 div 不强制其容器达到预期的正确尺寸

    我有一个需要最小宽度的 DIV 我无法使用 CSSmin width因为它不是跨浏览器的 我创建了一个具有设定宽度的内部 div 当浏览器小于这个内部 div 时 我会按预期得到一个滚动条 问题是外部 div 不断缩小 小于内部 div S
  • 如何从 github 手动或离线安装 R 包

    我尝试从 github 下载 tsdyn 包 它尚未在 cran 上更新 但我的代理阻止我连接到 github library devtools install github MatthieuStigler tsDyn ref Dev94
  • 在 React 中将函数向下传递给子组件

    我试图将一个函数传递给 React 中的子组件 如果我将该函数放在 ES6 类中 我就可以访问this props dispatch 但无权访问mapStateToProps 相反 当我在 ES6 类之外定义函数时 我似乎可以访问该函数 但
  • 如何使用office.js获取office应用程序版本值

    Office 应用程序版本可以在清单文件中提及 如下所示
  • C++11 中一个表达式中同一变量的双重赋值

    C 11 标准 http www open std org jtc1 sc22 wg21 docs papers 2012 n3337 pdf 5 17 expr ass 指出 在所有情况下 分配都是在值计算之后排序的 右操作数和左操作数的
  • 冰滑拼图寻路

    我对这个有点模糊的标题表示歉意 我不确定你会如何称呼这个谜题 我正在制作一种路径查找方法来查找移动次数最少的路线 而不是行驶的距离 游戏规则很简单 你必须从橙色方块移动到绿色方块 但你只能沿直线移动 并且不能停止沿该方向移动 直到碰到边界
  • 调整大小的 NSImageView 不重绘

    我有一个 NSImageView 它从应用程序包加载图像 它的设置如下 coverImage image NSImage imageNamed themeSignEnd png coverImage imageScaling NSImage
  • 内置 open 函数中模式 a、a+、w、w+ 和 r+ 之间的区别?

    在python内置的open http docs python org library functions html open功能 模式之间的确切区别是什么w a w a and r 特别是 文档暗示所有这些都将允许写入文件 并表示它打开文
  • Guice:如何基于(动态 Web 属性)更改运行时注入

    以下是我面临的问题的近似值 认为我们有一个带有一些规则的密码验证器 public interface RuleChecker Checks for a password strenght returns 10 for strong or 0
  • 解码 Torrent 追踪器抓取的 Torrent 哈希值?

    我在用BEncoded PHP 库 http proger i forge net BEncoded E2 80 93 handling torrent files in PHP 7Tn解码来自 Bittorrent 跟踪器的编码响应 Tr
  • 考虑行之间的“差异”对行进行分组

    我有一个表 其中包含开始时间 在示例中使用数字以保持简单 和事件的持续时间 我想确定 块 及其开始时间和结束时间 每当前一行 按开始时间排序 的结束时间 开始时间 持续时间 与当前行的开始时间之间的差值为 gt 5 一个新的 块 应该开始
  • SearchView 过滤和设置建议

    我对使用很陌生SearchView 我需要一个功能 我有一个ActionBar为此我有Search 当我点击 搜索 时 建议应该显示在List在搜索字段下方 到目前为止我所做的 在menu xml中添加搜索并将代码写入onCreateOpt
  • 尽管满足全局要求,但使用 pip 在本地安装软件包

    我正在尝试使用 pip 在本地安装包 local 问题是该软件包 在旧版本中 已经在系统上全局可用 即使全局 python 包目录是not in my PYTHONPATH pip仍然拒绝安装 认为满足了包要求 这与此处描述的问题类似 但我
  • 下载文件时更新通知时如何防止 UI 滞后?

    我目前正在使用AsyncTask要在我的应用程序后台下载大文件 当前下载进度显示为ProgressDialog这是通过更新onProgressUpdate如下 protected String doInBackground String s
  • CSS背景位置从右到左动画

    我正在尝试为背景图像设置动画 以便图像从右到左显示 我使用的图像的宽度大于背景所在的 div 容器 启动时 背景如下 background url img zeppelin png background repeat no repeat b
  • 如何使用 SoftLayer API 查找 EVault 的位置?

    我看到有 SoftLayer Account getEvaultNetworkStorage 来获取我的 EVault 存储列表 但是 使用我所掌握的信息 我无法确定特定 EVault 的位置 以下是我从 getEvaultNetworkS
  • Android 等待另一个活动结果 - 它不起作用

    如何在 android 中等待另一个活动结果 我编写了以下代码 但活动完成后 它总是转到 onCreate 方法 我有选项卡活动 从一个选项卡活动中 我调用了另一个活动 即弹出窗口 完成弹出窗口后它应该返回到上一个活动 Override p
  • 在 Java 中获取输入最有效的方式是什么?

    我正在解决这个问题question http www codechef com problems INTEST 这是我的代码 import java io IOException import java util Scanner publi
  • NodeJS 字符串格式像 Python 一样吗?

    在 python 中 我可以执行以下操作 name bob print Hey s name 有没有类似的东西 或者Python的 format 在 JavaScript NodeJS 中 您可以使用实用程序格式 https nodejs
  • 仅当系统唤醒时触发计时器 (macOS)

    我正在开发一个进行网络调用的 mac 应用程序 我正在使用一个Timer每 15 分钟进行一次网络调用以刷新一些数据 我只希望在用户使用系统时触发计时器并进行调用 否则它只是进行不必要的调用 即系统未睡眠时 我该怎么做 我读到关于 mach