iOS SwiftUI 如何使用模拟器发送提醒

推送通知是开发人员保持用户参与其应用程序的最流行方法之一。在iOS应用程序中,可以使用Apple Push Notification Service(APN)合并推送通知。

运行效果

noti02.gif

但是,这并不像听起来那样简单,因为要进行设置有很多事情要做。另外,更糟糕的是,由于Xcode的iOS模拟器不支持推送通知,因此我们必须使用真实的设备来测试推送通知是否有效。

不过近期有个好消息, Xcode 11.4 beta发布后iOS Simulator
已经支持测试推送通知了。

我们来看一下苹果官方的说明:

Simulator支持模拟远程推送通知,包括后台内容获取通知。在模拟器中,将APNs文件拖放到目标模拟器上。该文件必须是带有有效Apple Push Notification Service playload(包括“ aps”密钥)的JSON文件。它还必须包含顶层的“ Simulator Target Bundle”,其字符串值与目标应用程序的bundle标识符匹配。

simctl还支持发送模拟的推送通知。如果文件包含“ Simulator Target Bundle”,则不需要束标识符,否则必须将其作为参数提供
$ xcrun simctl push <device> com.example.my-app ExamplePush.apns

如果您曾经被aps折磨过,就知道这个功能是多么的及时有用了。
接下来,我还是通过具体的代码来体验吧。

准备工具

为了测试这个新功能,您显然需要具有Xcode 11.4 beta或更高版本。我目前用的是Xcode 11.4 beta。


Xcode

第一步:让我们创建了项目名称叫TestPushNotifications

第二步:在AppDelegate.swift中添加下面代码

引入 UserNotifactions

import UIKit
import UserNotifications

创建 registerForPushNotifications()函数

func registerForPushNotifications() {
        UNUserNotificationCenter.current()
            .requestAuthorization(options: [.alert, .sound, .badge]) {(granted, error) in
                print("Permission granted: \(granted)")
        }
}

在 application(:didFinishLaunchingWithOptions:)方法中调用上面的函数

还有 60% 的精彩内容
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
支付 ¥1.00 继续阅读

相关阅读更多精彩内容

友情链接更多精彩内容