2016-09-26 21 views
5

私たちはGoogle Firebase 3.xバージョンで作業していますが、私たちはFirebaseの奇妙な問題に直面しました。私たちは、スウィフト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も無効にしようとしましたが、まったく動作しませんでした。

Xcode 8でiOS 9デバイスを使用しています。何か助けていただければ幸いです。

+0

1を有効にするには、AppDelegateであなたのdidFinishLaunchingWithOptionsFIRAuth.auth()?.signInAnonymously()を追加する必要がFireBase Documentation

に応じFireBase

Anonymous Login

で匿名ログインを有効にする必要がありますそして、 :Firebase SDKの他のコンソール出力はありますか 2:あなたのデータベース? –

+0

こんにちは@lanいいえコンソール出力はありません。firebaseから得られるものは何もありません。なぜ私たちは問題を特定できないのですか? –

+0

@フランク・バンは助けてください。 –

答えて

1

に問題があると思います。あなたはFirebaseに認証を有効にしなくユーザーの認証あなたがFirebase上のデータベースにアクセスすることを許可されていない。だからを持っている必要があります。

+0

いいえ、理由はありません。私はシミュレータとiphoneの両方で同じアカウントで正常にログインしますが、実際のデバイスのDBにはアクセスできません。 – Jurasic

0

は、あなたが匿名ログイン

+0

助けてくれませんでした。さらに、匿名のサインインを許可するのは悪い習慣です。 – Jurasic

関連する問題