2016-09-26 9 views
5

पर काम कर रहा है हम Google फायरबेस 3.x संस्करण के साथ काम कर रहे हैं और हमें फायरबेस से अजीब समस्या का सामना करना पड़ा। हम स्विफ्ट 3.0 का उपयोग कर रहे हैं और उपयोगकर्ता जानकारी प्राप्त करने के लिए, हम निम्नलिखित कोड का टुकड़ा का उपयोग कर रहे हैं:फायरबेस 3x विधि असली डिवाइस में काम नहीं कर रही है लेकिन सिम्युलेटर स्विफ्ट 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)

मैंने बिटकोड को भी अक्षम करने का प्रयास किया है, लेकिन यह बिल्कुल भी काम नहीं करता है।

हम आईओएस 9 डिवाइस का उपयोग एक्सकोड 8 के साथ कर रहे हैं। किसी भी मदद की सराहना की जाती है।

+0

1 सक्षम करने के लिए AppDelegate में अपने didFinishLaunchingWithOptions में FIRAuth.auth()?.signInAnonymously() जोड़ने के लिए firebase

Anonymous Login

में बेनामी लॉगिन को सक्षम करने के लिए है और FireBase Documentation

के अनुसार : क्या फायरबेस एसडीके 2 से कोई अन्य कंसोल आउटपुट है: क्या कोई नियम है आपका डेटाबेस? –

+0

हाय @lan नहीं, कोई कंसोल आउटपुट नहीं है और हमें फ़ायरबेस से कुछ भी नहीं मिलता है, जो मुख्य चीजें हैं, इसलिए हम समस्या क्यों नहीं कर सकते हैं –

+0

@ फ्रैंक वैन क्या आप कृपया –

उत्तर

1

मुझे लगता है कि समस्या प्रमाणीकरण पर है। आप Firebase पर प्रमाणीकरण सक्षम होना आवश्यक है लेकिन है प्रमाणित उपयोगकर्ता तो आप Firebase पर डेटाबेस का उपयोग की अनुमति नहीं है नहीं।

+0

नहीं, यह कारण नहीं है। मैंने सिमुलेटर और आईफोन दोनों पर एक ही खाते के साथ सफलतापूर्वक साइन-इन किया है, लेकिन असली डिवाइस डीबी पर पहुंच योग्य नहीं है। – Jurasic

0

आप आप बेनामी लॉग इन

+0

मदद नहीं की। इसके अलावा, अज्ञात साइन-इन की अनुमति देना बुरा व्यवहार है। – Jurasic

संबंधित मुद्दे

 संबंधित मुद्दे