Я проверяю ответ, который дает пользователь, когда ему предлагают доступ к медиа-библиотеке. Я хочу знать, как я могу дождаться ответа пользователя, прежде чем продолжить
static func getAuthrization(completionHandler:@escaping (Bool) -> Void) {
var authStatus:Bool=false;
let status = MPMediaLibrary.authorizationStatus()
if(status == MPMediaLibraryAuthorizationStatus.authorized){
authStatus = true
}else{
MPMediaLibrary.requestAuthorization() { status in
if status == .authorized {
authStatus = true
}else{
print("Auth not granted")
authStatus = false
}
}
}
completionHandler(authStatus)
}
Это функция, которую я использую для получения аутентификации пользователя.
func setSongs(){
print("called from set songs")
songQuery.getAuthrization { (status) in
print(status)
}
}
И этофункция, которую я использую для вызова этой функции
, сейчас функция выполняется и завершается до того, как пользователь ответит на приглашение системы. Я хочу, чтобы код ожидал, как в js или dart, прежде чем выполнить, а затем получить ответ.
Любая помощь приветствуется