CloudKit 通知

2023-11-24

我可能在这里遗漏了一些明显的东西。

如何创建一个 CloudKit 通知,其中包含有关您收到通知的 CKRecord 的详细信息? (即不仅仅是通用的“已创建新项目!”,而是带有记录标题的通知,例如“吉尔和杰西卡的生日派对!”)

为每个新记录更改创建一个带有新 notification.alertBody 的新订阅的正确方法是吗?这没有任何意义。

这使得选项 queryNotification.recordID 可以从 CloudKit (或我的本地存储)中提取数据并以某种方式将其添加到通知中?添加或更改已通知通知的值的方法是什么?我缺少什么?

更新:根据埃德温的建议,这里有一个代码片段,但它不起作用。

let notification = CKNotificationInfo()
notification.alertBody = "Added: %@" as NSString
notification.alertLocalizationArgs = ["name"]

只需填写CKNotificationInfo对象的.alertLocalizationArgs即可

.alertLocalizationArgs 的文档说:

该属性的使用是可选的。该属性包含一个数组 NSString对象,每个对象对应记录的一个字段 触发了推送通知。这些名称用于检索 记录中的相应值。然后使用这些值 替换alertBody或中的任何替换变量 AlertLocalizationKey 字符串。值本身必须是 NSString, NSNumber 或 NSDate 对象。不要用其他值指定键。 长度超过 100 个字符的字符串值可能是 添加到推送通知时会被截断。

如果您使用 %@ 作为替换变量,这些变量是 替换为按顺序遍历数组。如果您使用的变量 形式%n$@,其中n是整数,n表示索引(从 1) 数组中要使用的项目。因此,数组中的第一项 替换变量%1$@,第二项替换变量 %2$@,等等。您可以使用索引替换变量来更改 结果字符串中项目的顺序,这可能是必要的 当您本地化应用程序的消息时。

以下是我如何使用它的 2 个示例:

            notificationInfo.alertBody = "%1$@ : %2$@"
            notificationInfo.alertLocalizationArgs = ["FromName", "Text"]

第二个样本:

            notificationInfo.alertLocalizationKey = "News: %1$@"
            notificationInfo.alertLocalizationArgs = ["Subject"]

Localized.strings 文件中的键为“News: %1$@”

更新:看起来您现在需要使用 .alertLocalizationKey。所以第一个样本不再起作用了。

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

CloudKit 通知 的相关文章

  • 如何跟踪 SwiftUI 应用程序中的所有触摸

    我正在尝试在 SwiftUI 应用程序中实现锁屏 我需要跟踪每个事件才能重新启动锁定计时器 在 UIKit 应用程序中 我使用了这种方法 重写 UIApplication 它允许了解应用程序中的任何事件 override func send
  • 使用 Swift 在 Sprite Kit 中构建棋盘游戏? [关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 在使用 Swift 的 Sprite Kit 中 我试图构建一个国际象棋棋盘 实际上是一个类似国际象棋的棋盘 平铺网格 那么一般来说
  • Google Cardboard - Cardboard VR 套件有 iPhone / iOS 入门项目吗?

    我正在看Google Cardboard 套件 一种廉价的 VR 设置 https developers google com cardboard 使用 Android 设备玩 3d VR 游戏 我看到他们有一个 Android 演示项目
  • SwiftUI:如何让项目的拖放重新排序起作用?

    我有以下 SwiftUI 视图 struct ContentView View State var model Model var body some View ScrollView LazyVGrid columns columns sp
  • 将 .p12 证书存储在钥匙串中以供稍后使用

    我正在尝试按照 Apple 文档处理此处的客户端 p12 证书 https developer apple com library ios documentation Security Conceptual CertKeyTrustProg
  • xcode 6 资产目录 iPhone 6

    这个问题还没有得到解答 使用资产目录时 特定于设备 非通用 选项为 1x 2x r 2x 3x 1x 是不必要的 因为它不是视网膜 2x 是 ip4 的最佳选择 分辨率为 640x960 r 2x 适合 ip5 分辨率为 640x1136
  • 如何在 UITextView 中禁用放大功能

    我想摆脱 UITextView 中的放大和文本选择 但我需要电话号码 链接和地址检测器 我在用 void addGestureRecognizer UIGestureRecognizer gestureRecognizer if gestu
  • Draggable Boxview 不更新 Xamarin

    我的第一个问题是框视图生成在左上角 而不是我指定的设计网格第 10 行和网格第 3 列 第二个问题在于可拖动视图 在代码本地可拖动视图的第一部分中 它正确地调用了触摸事件 但也许它没有在GUI中更新
  • SKScene和SKView的paused属性之间的区别

    我使用以下代码暂停 SKScene self paused YES 然而 根据这个answer https stackoverflow com a 21593852 2043580 by 安德烈 戈尔杰耶夫 https stackoverf
  • 如何设置 UINavigationbar 的渐变颜色?

    我想设置UINavigationbar backgroundColor渐变颜色 我想通过颜色数组设置它以创建渐变 理想情况下 作为内部的可访问方法UINavigationBar将其颜色更改为此渐变 有什么建议么 除了手动设置图像作为导航栏的
  • 为什么我无法更改 UIBarButtonItem 的标题?

    我想改变UIBarButtonItem s title 但这段代码不起作用 void viewDidLoad self smay void smay AppDelegate apd AppDelegate UIApplication sha
  • UIView 周围的虚线边框

    如何在周围添加虚线边框UIView 像这样的东西 如果您喜欢子层 还有另一种方法 在您的自定义视图的 init 中 输入以下内容 border 是 ivar border CAShapeLayer layer border strokeCo
  • 带有图像的 UITableView 滚动非常慢[重复]

    这个问题在这里已经有答案了 可能的重复 带图像的表格视图 加载和滚动缓慢 https stackoverflow com questions 4071497 table view with images slow load and scro
  • UIImageWriteToSavedPhotosAlbum 选择器语法问题

    努力让 UIImageWriteToSavedPhotosAlbum 快速工作https developer apple com library ios documentation UIKit Reference UIKitFunction
  • Xcode 服务器 ibtool 构建失败

    我一直在研究使用 Xcode Server 进行 CI 我已经解决了一些问题 但现在有一个问题困扰着我 构建似乎工作正常 但在测试阶段挂起 并在日志底部生成以下内容 2015 11 25 14 44 45 650 xcodebuild 58
  • iOS Twitter NSURLErrorDomain 代码=-1012

    我正在尝试通过在我的应用程序中注册 Twitter 来获取用户的联系方式 我发现this https github com malcommac DMTwitterOAuthgithub上的项目看起来非常好 我只遇到一个问题 如果我使用来自
  • Swift 错误:发出 SIGABRT 信号如何解决

    我只是 Swift 编码的初学者 我的想法很简单 就是一个有两个按钮的应用程序 单击时 文本字段将更改其文本 在 Main StoryBoard 中 我添加一个文本字段和两个按钮 在 ViewController swift 文件中 我这样
  • AGVTool new-version 和 What-version 不对应

    当我做 agvtool new version all 99 它更新我的 Info plist 文件 但是 如果我这样做 agvtool what version or agvtool next version 我收到此错误 There d
  • 游戏中心玩家显示名称在沙盒中始终为“我”

    我使用用户的游戏中心显示名称和玩家 ID 来维护他们在我的服务器上的个人资料 当我进行测试时 一切似乎都正确执行 但我的沙箱帐户的用户显示名称显示为 Me 而不是附加到我的帐户的显示名称 Billybobbo 这应该在沙盒模式下发生吗 Co
  • 构建 iOS 应用程序后退出代码 1 错误

    我正在尝试使用 RestKit 构建我的项目 当我构建它时 我收到以下错误 我尝试使用 Apple LLVM 3 0 和 LLVM GCC 4 2 进行编译 两者都产生相同的结果 任何人有任何想法是什么导致了这个问题 Ld Users Ji

随机推荐

  • 如何在 Pygame 中按住“按键”?

    我使用 Pygame 1 9 6 和 Python 3 7 4 我想按住空格键 它会不断地一遍又一遍地执行相同的操作 我知道如何按下按钮KEYDOWN 我看了下问题 如何在 Pygame 中有效地按住键 寻求答案 但无法理解一个答案 whi
  • Delphi 编译和构建在同一项目上生成不同的二进制文件

    在新的 VCL 应用程序中Compile and Build操作生成相同的二进制文件和映射文件 即使关闭 在项目中包含版本信息 选项 exe 文件末尾也有细微差别 已经讨论过 映射文件的字节与字节相同 但是当我添加任何第三方组件时 构建和编
  • 从 ul li jquery 获取所选项目

    您好 我正在动态地在 ul li HTML 标记中填充一个列表 我所需要的只是获取相应 ul 的选定 li 的值 我尝试了所有可能的 jquery 方法 但仍然未定义 我将 ul li 填充为 jQuery get url function
  • MySQL 按 ID 和最新日期时间分组

    我在这里看到了类似的问题 但没有一个对我的情况有帮助 我有一个表可以说测试 使用 mysql MyISAM 测试具有以下架构 TID INT PRIMARY KEY AUTO INCREMENT TData varchar data tha
  • 当只有 https URL 时,获取证书并将其添加到 Java 信任库?

    我正在尝试通过 Google Cloud Message 服务器向 Android 设备发送推送通知 我们用来执行此操作的 URL 是 https android googleapis com gcm send 在我们的企业应用程序中 我们
  • Clojure 宏将保留关联映射顺序

    作为前言 我在 Windows 7 64 位 上运行 Java 版本 6 更新 33 使用clooj作为我的 IDE 我没有尝试在任何其他系统中重现我的问题 我对 Clojure 有经验 但对 Java 一点经验都没有 我试图解决的整个问题
  • Firebase 存储安全规则 400 错误问题“权限被拒绝。无法访问存储桶 xxxxx-****.appspot.com”

    尝试上传照片时 我不断从 firebase 链接收到消息错误 提示我的 React 项目中的 firebase 存储上传出现 400 错误 之前一切正常并成功上传图像 但现在它停止上传照片 出现以下错误 我不知道问题出在哪里 检查中提示出来
  • Horner 小数部分递归算法 - Java

    我正在尝试创建一个递归方法 使用 Horner 算法将以 n 为基数的小数转换为以 10 为基数的小数 我在这里和各处进行了搜索 但找不到任何详细处理小数部分的地方 需要注意的是 我在递归方面非常薄弱 因为我还没有在编程课程中正式学习它 但
  • 我需要一个 MSI 自定义操作来从 MSI 源目录复制文件

    我正在使用 VS 2008 为 c windows 项目创建一个安装程序 我正在尝试编写一个自定义操作 该操作从存储在文件服务器上的 MSI 文件的源目录复制设置文件 例如 server fileshare myappinstaller m
  • Spring REST 服务:如何配置以删除 json 响应中的空对象

    我有一个返回 json 响应的 Spring Web 服务 我使用此处给出的示例来创建服务 http www mkyong com spring mvc spring 3 mvc and json example 返回的json格式为 na
  • 配置 Tomcat 以使用 Windows 证书存储进行 SSL

    我已经部署了许多 SSL 配置 包括 Tomcat cacerts keytool 和 IIS Windows 证书存储 netsh http sslcert 因此我熟悉这些过程 有没有人想出一种方法将 Tomcat 的 SSL 连接器指向
  • 可以允许来自 HTTPS 网站的 HTTP 请求吗?

    我已经安装了 非通配符 SSL 证书 以便我的网站可以使用 HTTPS 当我尝试从 HTTP url 请求资源时 我收到如下错误消息 混合内容 页面位于 https example com 已加载完毕 HTTPS 但请求不安全的样式表 ht
  • JsonSchema:根据另一个属性的值验证类型

    我正在使用以下架构来验证我的 json schema http json schema org schema title Rules description Describes a set of rules type object prop
  • 无法从 Microsoft Graph Explorer 更新 Sharepoint 托管元数据字段

    我正在尝试通过 Graph Explorer 更新与列表项关联的字段 https developer microsoft com en us graph graph explorer 或 REST API 调用 对于其中一个字段 其值可以是
  • Apache Camel Http 和 SSL

    我一直在尝试获得与 Camel 一起使用的 2 路 ssl https 代理 我已经能够使用 2 路 ssl 设置 Jetty 组件 现在尝试让它与 Http4 组件一起工作以完成代理的客户端 当我将码头流量路由到日志组件时 一切都很好 并
  • Weka GUI - 内存不足,无法加载?

    我过去也曾加载过同样的 Weka 安装 我只是尝试加载 Weka GUI 双击图标 但出现以下错误 我该如何修复它 OutOfMemory Not enough memory Please load a smaller dataset or
  • 无法在当前目录中获取脚本源

    显然 我不能source脚本 如果该脚本位于当前目录中 例如 source some dir script sh Ok 工作正常 但如果我与脚本位于同一目录中 则会出错 cd some dir source script sh sh sou
  • Java显示当前时间

    我有一个代码 可以显示运行应用程序时的当前日期和时间 DateFormat dateFormat new SimpleDateFormat yyyy MM dd HH mm ss Calendar cal Calendar getInsta
  • VIM:按函数名称排序

    我的 menu vim 文件中有很多函数 是否可以 由我 选择它们并按函数名称对它们进行排序 p e 从乐趣中找到台词 或函数 到线endfun 查找函数名称并根据函数名称对整个块进行排序 从 a z 有时我会在函数名称上方添加一行注释 可
  • CloudKit 通知

    我可能在这里遗漏了一些明显的东西 如何创建一个 CloudKit 通知 其中包含有关您收到通知的 CKRecord 的详细信息 即不仅仅是通用的 已创建新项目 而是带有记录标题的通知 例如 吉尔和杰西卡的生日派对 为每个新记录更改创建一个带