我们如何注册一个多平台应用程序以在 iOS 14 中接收通知?

Posted

技术标签:

【中文标题】我们如何注册一个多平台应用程序以在 iOS 14 中接收通知?【英文标题】:How do we register a Multiplatform App to receive notifcations in iOS 14? 【发布时间】:2020-07-01 23:44:13 【问题描述】:

ios 上的主应用如下:

@main
struct MyApp: App 
    var body: some Scene 
        WindowGroup 
            ContentView()
        
    

AppDelegate 不再属于 Multiplatform 应用项目类型,我们如何注册应用以接收通知并注册移动设备?

我知道如何在 AppDelegate 中进行,但没有 AppDelegate,我不知道如何注册通知。

任何帮助将不胜感激!

【问题讨论】:

【参考方案1】:

查看 UIApplicationDelegateAdaptor,它是 NS* 等效的。它们让您提供一个将用作应用程序委托的类。示例:https://www.hackingwithswift.com/quick-start/swiftui/what-is-the-uiapplicationdelegateadaptor-property-wrapper

【讨论】:

完美!谢谢,我需要添加的只是 UNUserNotificationCenterDelegate 类:即类 AppDelegate: NSObject, UIApplicationDelegate, UNUserNotificationCenterDelegate ... 在为 Mac 构建时,是否只是忽略 UIApplicationDelegateAdaptor 调用,反之亦然,适用于 iOS 和 NS? 您可能需要包装它们,例如#if os(iOS) // UIApplication… #else // NSApplication… #endif

以上是关于我们如何注册一个多平台应用程序以在 iOS 14 中接收通知?的主要内容,如果未能解决你的问题,请参考以下文章

如何搭建一个Ghost平台的博客

注册 GPX(或 XML)文件以在 iOS 应用程序中打开

如何注册一个类以在 Qt 的 QWebChannel 信号中使用它

从零开始的Devops-通用服务平台解决方案思考

如何设计一个多平台的视频会议/聊天应用程序?

没有注册 OpKernel 以在 iOS 上使用这些属性支持 Op'Switch'