Apple 的静默推送通知可以在后台启动我的应用程序吗?

2023-12-03

根据苹果的文档,我可以通过添加来注册静默通知"content-available" = 1键值对aps有效负载字典。我希望我的应用程序在无声通知到达时在后台唤醒。我设置App downloads content in response to push notifications价值Required background modes在我的 info.plist 中

这是我的有效负载字典

{"aps":
      {
       "alert":"Notification alert","badge":1,"sound":"default","content-available":1
      }
}

我收到回调-(void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo fetchCompletionHandler:(void (^)(UIBackgroundFetchResult))completionHandler 当我的应用程序处于后台时。但我的问题是,当我们的应用程序处于终止状态时,我们是否可以回调此方法或任何其他方法?

我不希望我的应用程序用户看到通知,但我希望我的应用程序通过无声通知在后台唤醒它来执行某些任务。

任何建议,将不胜感激。


当设备收到推送消息时content-available设置后,您的应用程序将由 Apple 在后台启动。用户不会意识到这一点。来自文档:

内容可用:将此键的值设置为 1 表示有新内容可用。包含这个键和值意味着当您的应用程序在后台启动时或恢复,-application:didReceiveRemoteNotification:fetchCompletionHandler:叫做。

也来自docs

didReceiveRemoteNotification:但是,如果用户 已强制退出。在这种情况下,用户必须重新启动您的应用程序 或在系统尝试启动您的应用程序之前重新启动设备 再次自动。

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

Apple 的静默推送通知可以在后台启动我的应用程序吗? 的相关文章

  • 当地图视图只是屏幕的一部分时,如何在 iOS 模拟器中进行捏合?

    我在 iPad 上有一个视图 我正在添加MKMapView也就是说 全屏高度的一半 然而 当我尝试在 iOS 模拟器上进行捏合时 它不起作用 因为 to nubs 填充了模拟器上的整个 iPad 视图 And so with the map
  • 在 Xcode 5 中重命名 iOS 项目[重复]

    这个问题在这里已经有答案了 我需要重命名一个 iOS 项目 有没有办法在不开始一个全新项目的情况下做到这一点 我发现的所有其他信息都与 Xcode 4 或旧版本相关 这些方法似乎使项目崩溃 我在尝试任何名称更改之前创建了一个快照 在 Xco
  • 更改组织以使用 Xcode 9 在 iTunes Connect 上上传二进制文件

    我在 Xcode9 上配置了多个团队 当我尝试将二进制文件上传到 Xcode 9 上的 iTunes Connect 时 没有更改团队的选项 并且出现以下错误 ERROR ITMS 4088 来自苹果开发者论坛的解决方案 1 正常存档2 窗
  • UIButton的高亮状态由什么控制事件开始和结束

    我正在创建类似钢琴的视图UIButton作为钢琴键 什么UIControlEvents当按钮获得和失去突出显示状态时 我应该监听以获得回调吗 我试图创建子类UIButton并添加属性观察者highlighted并且运行良好 然而 有时我需要
  • 减少 CoreData 的调试输出?

    我正在开发一个使用 CoreData 的 iOS macOS 项目 它工作正常 但它会向控制台输出大量调试信息 这使得控制台无法使用 因为我的打印语句隐藏在所有与 CoreData 相关的内容中 我有一个非常简单的 CoreData 设置
  • 在 iOS 中,如何创建一个始终位于所有其他视图控制器之上的按钮?

    无论是否呈现模态或用户执行任何类型的转场 有没有办法让按钮在整个应用程序中 始终位于顶部 而不是屏幕顶部 有什么方法可以让这个按钮可拖动并可捕捉到屏幕上吗 我正在以苹果自己的辅助触摸作为此类按钮的示例 您可以通过创建自己的子类来做到这一点U
  • UIView晃动动画

    我试图在按下按钮时使 UIView 摇动 我正在调整我找到的代码http www cimgf com 2008 02 27 core animation tutorial window shake effect http www cimgf
  • 当 isUserInteractionEnabled false 时,SKSpriteNode 不会让触摸通过

    我正在尝试在 SpriteKit 中创建一个覆盖层 方法是使用SKSpriteNode 但是 我希望触摸穿过覆盖层 所以我设置isUserInteractionEnabled为假 然而 当我这样做时 SKSpriteNode似乎仍然吸收所有
  • 如何使用 alamofire 通过基本身份验证上传图像?

    我正在尝试使用 alamofire 4 7 1 和此代码上传图像 但说实话 我怀疑我没有编写正确的代码来上传图像 func uploadDefect defectRemark String defectLocation String def
  • SwiftUI 意外地自动弹出 NavigationLink

    我有一个简单的用例 其中一个屏幕使用 NavigationLink 推送另一个屏幕 iOS 14 5 有一个奇怪的行为 即推送的屏幕在被推送后立即弹出 Code NavigationLink destination EmptyView Em
  • 有没有办法在 Firebase 中等待查询完成?

    我正在使用 TableView 在 Viewcontroller 中的 iOS 应用程序中进行查询 我想确保在继续加载 TableView 之前我的查询已经返回 有没有办法保证查询已经完成 None
  • 在 iOS 7 中 viewForHeaderInSection 部分是从 1 开始而不是从 0 开始

    我正在处理UITableView在我的项目中 这个项目是在 Xcode 4 5 中创建的 现在我正在使用 Xcode 5 所以我的问题是何时在 iOS 6 中运行我的项目 viewForHeaderInSection方法部分从 0 开始没问
  • jQuery:离线后 POST 出错(iOS 和 Chrome)

    我构建了一个具有离线功能的 HTML5 Web 应用程序 使用 AppCache 程序流程为 Online 在网络上时 应用程序预加载一些基本信息 工作 Offline 用户拿着装有应用程序的平板电脑offline 然后在应用程序上执行他们
  • iOS 7 tabBar 横线,如何去掉?

    Apple 在 iOS 7 中的 tabBar 上添加了一条细线 该线应该在 tabBar 和 UI 之间起到阴影或淡入淡出的作用 由于我使用的是定制的 tabBar 这条线非常令人恼火 你如何删除它 请告诉我这是可能的 否则我需要重新设计
  • 未知异常和崩溃

    当我尝试快速滚动表格视图或从远程重新加载数据时 我的应用程序崩溃了 当我先进行远程获取然后滚动表格视图时 一切似乎都工作正常 我不知道下面的崩溃日志意味着什么 它只是有时工作正常 有时崩溃 Incident Identifier 710A1
  • 通过 Button Swift 中的标签发送行和部分

    我里面有这个cellForRowAtIndexPath cell plusBut tag indexPath row cell plusBut addTarget self action plusHit forControlEvents U
  • 有没有办法在 onclick 触发时禁用 iPad/iPhone 上的闪烁/闪烁?

    所以我有一个有 onclick 事件的区域 在常规浏览器上单击时 它不会显示任何视觉变化 但在 iPad iPhone 上单击时 它会闪烁 闪烁 有什么办法可以阻止它在 iPad iPhone 上执行此操作吗 这是一个与我正在做的类似的示例
  • 所有 RestKit 项目在归档时都无法构建

    这个问题涉及RESTKIT 0 9 x 如果您是 Restkit 新手 请考虑使用较新的版本0 10 x https github com RestKit RestKit tree v0 10 1 branch 我最近继承了一个项目 使用r
  • UIViewController 内的 UIsearchController 使用自动布局

    有没有人成功实施过UIViewController其中包含两个UISearchController searchBar and a UItableView使用自动布局来布局所有内容 我正在尝试实现类似的目标1密码 https itunes
  • 如何在 UITableView 的 switch 语句中创建变量?

    我正在构建一个包含三个部分的 tableView 我已经完成了前两个工作 但最后一个有点阻力 我的问题似乎涉及尝试在 switch 语句中声明变量 实际上是嵌套的 switch 语句 据我所知 这不是一个好主意 但在这种情况下 这似乎是唯一

随机推荐

  • 设置 JTable 中列的数据类型

    我创建了一个带有表模型的 JTable 现在 根据我所拥有的输入 我想将一列设置为特定的数据类型 我该怎么做呢 import java awt GridLayout import javax swing import javax swing
  • PHP - “print/echo”显示结束标签 - 或不输出

    启动一些 PHP 并对 echo print 的工作方式感到困惑 我的代码中有这个代码index html 我的页面上的输出是 Hello World gt 如果我删除 div 标签 我没有得到任何输出 使用echo产生相同的行为 这是怎么
  • 如何将网页不可用页面替换为自定义页面? (网页浏览)

    我想更改页面Webpage not Available or ERR NAME NOT RESOLVED to 我的页面 没有互联网连接 如果再次在线或连接互联网 则可以使用刷新按钮返回在线状态 如果未连接 则留在页面中没有网络连接 看起来
  • 如何循环遍历特定表单的所有打开实例?

    我需要更新动态创建的 Form2 的列表框 假设我必须更新此 ListBox 当然在 Form1 中 我没有此 Form2 的引用 因此我无法调用 UpdateList 方法 不 我不能将其设为静态 我什至不知道有没有打开Form2 可能有
  • 将元素插入数组C

    我有一个之前已经排序过的数字数组 所以不需要对其进行排序 我需要插入一个给定的值 将其命名val 位于我的数组中的有效位置 我的程序适用于小于上一个值的给定值 但对于该值大于上一个值的情况 我的程序只是不想插入该值 例如 对于数组 1 2
  • Oracle 动态 sql 与触发器使用:新和:旧变量

    我正在尝试使用 all tab columns 将大型触发器代码简化为简洁的代码 因为表包含 200 列 由于某种原因 当尝试使用动态 sql 时 它不允许我更新声明的变量 DECLARE v new rec SOME TABLE ROWT
  • GridView行重叠:如何使行高适合最高的项目?

    Like 前一个人 我在 GridView 项目之间有不需要的重叠 注意除了最右边的一列之外的每一列中的文本 我与上一个问题的不同之处在于我不想要恒定的行高 我希望行高变化为容纳最高的内容在每一行中 以有效利用屏幕空间 看着GridView
  • ##[警告]未找到 Visual Studio 版本“14.0”。回退到版本“15.0”

    我的项目需要使用 MSbuild 14 0 visual studio 2015 运行 但这仅需要 Visual Studio 2017 Community MSBuild 15 0 Bin msbuild exe I have insta
  • 显示 Google 图表中没有值的日期

    我有下面的脚本并且它运行完美 不过 也有可能有些日子没有订单 在这种情况下 日期仍应显示 但值应为零 就像上面一样 它从 06 19 跳转到 06 21 有没有办法仍然显示 06 20 并且将值设置为零 数据库中不存在缺失的日期 因为只有在
  • UWP 单元测试编译错误

    我正在将 WPF 项目迁移到 UWP 在 UWP 中设置新的单元测试项目时 当新的单元测试针对已迁移的项目 而该项目又依赖于解决方案中的另一个项目时 我会遇到错误 每个解决方案构建时都不会出现错误 Solution Explorer Com
  • 空 Div 导致非常奇怪的行为

    有这样的东西 div class something div div p Some text here p div 这全部在 XSL 模板中调用 由于某种原因 当它呈现时 我发现空的 div 永远不会关闭 这 p 它的内容在这个 div 内
  • 同时从麦克风录制音频并在Python中播放效果

    我的目标是通过笔记本电脑麦克风录制我的声音 并同时在 python 中添加效果 我需要的是类似于音乐效果踏板 您可以在其中连接吉他或麦克风 并添加混响 回声或失真等 我正在使用 pyaudio 和 wave 来录制和播放音频 使用 scik
  • 如何修复 Eclipse Java 虚拟机启动器错误?

    就像标题所说 我遇到了 eclipse JVM 启动器的问题 昨晚 一切正常 据我所知 从那时起我的电脑上没有任何变化 然而 今天早上我醒来发现 当我在 Eclipse 中运行任何项目时 我收到了这个错误 Java Virtual Mach
  • Android 删除本地化

    我在 Play 商店中的应用程序没有除默认版本之外的任何本地化版本 美国英语 这次我创建了一个新的apk来更新它 它使用android support v7 appcompat图书馆 因此 当我上传新的 apk 并在 apk 详细信息中显示
  • 为什么此查询会导致 Oracle 中的合并笛卡尔连接

    我最近有一个查询需要修改 这是原文 SELECT RTRIM position AS POSITION Other fields FROM schema table x WHERE hours gt 0 AND pay RGW AND NO
  • 将大量数据从 C# 导出到 Excel 的最佳/最快方法是什么

    我有使用 OpenXML 库导出数据的代码 我有 20 000 行和 22 列 这需要很长时间 大约 10 分钟 有没有任何解决方案可以将数据从 C 导出到 Excel 速度会更快 因为我是从 ASP NET MVC 应用程序执行此操作 而
  • IMFSinkWriter无法导出mp4的大尺寸视频

    我的 Windows MFC 应用程序具有导出视频文件的功能 并且它可以选择编码格式 通过WMV or MP4 和框架尺寸 但是 不幸的是当我尝试导出时MP4每次都设置大帧大小的文件MF E INVALIDMEDIATYPE发生了 简而言之
  • 正则表达式:按逗号分割,但排除括号和引号内的逗号(单引号和双引号)

    我有一根绳子 5 5 5 C A B A B B A A B C A B 我想用逗号分割它 但需要排除括号和引号内的逗号 单引号和双引号 像这样 5 5 5 C A B A B B A A B C A B 使用java正则表达式如何实现这一
  • AWS:将 Cognito 授权用户限制为特定 Lambda 函数

    我正在使用 AWS 并且有以下设置 UserPool API网关 Lambda函数 API 网关使用 UserPool 授权者来保护 lambda 函数 到目前为止 这是有效的 现在我想将每个 lambda 函数限制为特定的用户组 因此 我
  • Apple 的静默推送通知可以在后台启动我的应用程序吗?

    根据苹果的文档 我可以通过添加来注册静默通知 content available 1键值对aps有效负载字典 我希望我的应用程序在无声通知到达时在后台唤醒 我设置App downloads content in response to pu