Мы работаем с версией Google Firebase 3.x, и перед нами столкнулась странная проблема с Firebase. Мы используем Swift 3.0 и для получения сведений пользователей, мы используем следующий фрагмент кода:Firebase 3x метод не работает в реальном устройстве, но работает на симуляторе Swift 3.0
func getUserDetails(uid text:String!, userBlock:@escaping (_ details:AnyObject) -> Void) {
//check DB Reference is nil or not.
if self.rootDBRef == nil {
self.rootDBRef = FIRDatabase.database().reference()
}
//check input text must not be empty
if text.trim().characters.count == 0 {
userBlock("" as AnyObject)
return
}
let query = self.rootDBRef.child("users").queryOrdered(byChild: "uid").queryEqual(toValue: text)
query.observeSingleEvent(of: .value, with: { (dbSnapshot) in
guard let snap: FIRDataSnapshot? = dbSnapshot else {
print("No Result Found")
return
}
if snap?.value is NSNull {
//block(found: false)
userBlock("" as AnyObject)
return
}
let dict = snap?.value as! [String : AnyObject]
userBlock(dict as AnyObject)
})
}
Этот код никогда не будет вызываться в реальном устройстве и мы не получаем никаких журналов ошибок, но тот же код работает в симуляторе. Это странная проблема и да, я уже проверил аналогичный вопрос: Firebase not worked on real devices (iOS)
Я также пытался отключить BitCode, но это не сработало.
Мы используем устройство iOS 9 с Xcode 8. Любая помощь приветствуется.
1 : Есть ли какой-либо другой выход консоли из SDK Firebase 2: Существуют ли какие-либо правила для вашей базы данных? –
hi @lan no нет никакого выхода на консоль, и ничего не получается из firebase, и это главное, почему мы не можем знать, в чем проблема –
@frank van вы можете помочь –