微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

免费配置帐户可以进行远程通知吗?

如何解决免费配置帐户可以进行远程通知吗?

对于“常规”推送通知与远程通知间的区别以及我的免费预配配置文件中的哪些是可能的,我有些困惑。

我可以使用以下代码发送显示锁屏上的推送通知
AppDelegate.swift

func application(_ application: UIApplication,didFinishLaunchingWithOptions: [UIApplication.LaunchOptionsKey : Any]?) -> Bool {
        ...
        registerForPushNotifications()
        createNotification()
        return true
    }
    
    func registerForPushNotifications() {
        UNUserNotificationCenter.current().requestAuthorization(options: [.alert,.sound,.badge]) { [weak self] granted,_ in
            print("Permission granted: \(granted)")
            guard granted else { return }
        }
    }
    
    static func createNotification() {
        let content = UNMutableNotificationContent()
        content.title = "test-title"

        // 2. create trigger
        var components = DateComponents.init()
        components.hour = 14
        components.minute = 39
        let trigger = UNCalendarNotificationTrigger(dateMatching: components,repeats: false)

        content.badge = 1
        content.sound = UNNotificationSound.default
        
        // 4. create send request
        let request = UNNotificationRequest(identifier: UUID().uuidString,content: content,trigger: trigger)

        // add request to send center
        UNUserNotificationCenter.current().add(request) { error in
            if error == nil {
                print("Time Interval Notification scheduled!")
            }
        }
    }

但是,我真正想要的是基于某些HTTP请求创建一个每日通知
换句话说,我想向某个API发送HTTP请求(例如,它返回一个布尔值),并基于该值创建一个通知

我已经做过一些研究,并且我认为远程通知可以这样做。
不幸的是,当我尝试注册远程通知时:

dispatchQueue.main.async {
    UIApplication.shared.registerForRemoteNotifications()
}

我得到一个错误找不到适用于应用程序的有效“ aps-environment”授权字符串
正如我所说的-我没有付费的苹果开发商会员资格

我的问题是:

  1. 远程通知是否可以真正满足我的需求?
  2. 免费配置帐户是否可以进行远程通知?我发现确实可以使用“常规”推送通知

谢谢!

解决方法

  1. 似乎您对远程推送通知的工作方式有误解。您的服务器需要安排远程通知,而不是您的应用。您可以在服务器上安排每日远程通知,这足以满足您的需求,但是正如我已经说过的那样,您将需要服务器端逻辑来实现此目的。

  2. 否-您需要付费的开发人员成员身份才能使用远程推送通知。本地通知不需要付费会员,而远程通知则需要付费。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。