2017-04-15 28 views
0

このコードは、シミュレータの必要に応じてFirebaseデータベースに保存しますが、デバイス上で完了ハンドラが呼び出されることはありません。誰かが理由や解決策を知っていますか?FirebaseのsetValue()はシミュレータでは動作しますが、デバイスでは動作しません。 iOS 10、Swift 3.1

var customersRef : FIRDatabaseReference { 
      return dbRef.child("customers") 
    } 


func saveDealData(dealBuilder: DealBuilder, errMsgHandler: ErrMsgHandler?) { 
      print("Shown in log in sim and device") 
      customersRef.child(u.id!).child("deals").childByAutoId().setValue("true") { error, dbRef in 
        print("Is called for sim but not device") 

      } 
    } 

私は以下のように)閉鎖後続とのsetValue(内側に置くことを退治しようとしましたが、同じことが起こります。

customersRef.child(u.id!).child("deals").childByAutoId().setValue("true", withCompletionBlock: { error, dbRef in 
        print("Is called in sim but not device") 
      }) 

答えて

0

この動作は、NSStringのようスウィフトの文字列をキャストすることによって修正されました。

customersRef.child(u.id!).child(("deals" as NSString)).childByAutoId().setValue("true") { error, dbRef in 
       print("Is now always called") 

     } 
:以下のよう

関連する問題