我正在try 构建自己的库,我想知道如果某个布尔值为真,是否有办法在我的代码中只实现一个方法.它类似于@Available(iOS 14,*),但使用在我的类中声明的布尔值.
问题出在推动措施的实施上.我的主AppDelegate中有一个变量,我想用继承来配置它.我有一个布尔值‘ush NotificationsEnabled’,它确定我是否希望在此项目中进行推送:
if pushNotificationsEnabled {
UNUserNotificationCenter.current().requestAuthorization(options: [.sound, .alert, .badge], completionHandler: { (_, _) in })
application.registerForRemoteNotifications()
UNUserNotificationCenter.current().delegate = self
}
但我不能使用didReceiveRemoteNotification方法执行此逻辑,因为我必须对其进行硬编码.在实现时(尽管它从未被调用),Xcode在日志(log)中删除以下文本:
*您已经实现了-[application:didReceiveRemoteNotification:fetchCompletionHandler:],,但是您仍然需要在您的Info.plist中支持的UIBackEarth Modes列表中添加远程通知. *
这实际上是正确的,该方法正在被实现,并且Xcode不必知道它是否将被使用.
我想知道是否有可能做我想要的逻辑,所提到的方法只有在布尔值为真的情况下才会实现.或者,如果有比使用布尔值更正确的方法,这可能是我应该 Select 的 Select .
致以问候,并感谢所有人!