authorizationStatus返回布尔值

时间:2018-07-16 08:43:41

标签: ios swift callback unusernotificationcenter

我不确定这是否可能。

当我打电话给jQuery(document).ready(function($) { $('body').click(function(event) { html2canvas(document.getElementById("content"), { scale: 5.5, }).then(function(canvas) { // Export the canvas to its data URI representation var base64image = canvas.toDataURL("image/png"); // console.log(base64image); $('.entry-content').after(` <img src="` + base64image + `" alt=""> `); }); }); }); 时,我想从authorizationStatus返回一个布尔值

我首先创建了一个回调块来确定UNUserNotificationCenter.current().getNotificationSettings(),然后下一个函数会将布尔值返回给原始调用者。

像往常一样,在我的回调函数返回一个void时,我在void函数中遇到了非void返回值。

理想情况下,我想使用authorizationStatus就像方法:checkNotificationBlocks()

isNotificationEnabled()

1 个答案:

答案 0 :(得分:2)

我最终确实更新了代码,以得到期望的结果。 该信号量在进行等待调用时会获得一个锁,并在从异步块发出信号时被释放。

 func isNotificationEnabledBlocks() -> Bool
{
    let waitOut = DispatchSemaphore(value: 0)
    var checks = false

    checkNotificationBlocks {
        b in checks = b
        waitOut.signal()
    }
    waitOut.wait()
    return UIApplication.shared.isRegisteredForRemoteNotifications && checks == true ? true : false
}