2015-06-29 6 views
10

मैं तेजी से पार्स के साथ एक ऐप बना रहा हूं। एपी बंद होने और फिर से चलाने के बाद PFUser.currentuser() हमेशा शून्य लौटाता है। मैं आईओएस सिम्युलेटर का उपयोग कर रहा हूं और स्थानीय डेटास्टोर सक्षम है। मैं कुछ इस तरह उपयोग कर रहा हूँ -आईओएस। PFUser.currentuser() कैश नहीं हो रहा है। ऐप पुनरारंभ करने के बाद शून्य वापस आता है

if PFUser.currentuser() == nil { 
// Perform segue to login screen 
} 

और प्रवेश के लिए मैं

PFUser.loginWithUsernameInBackground(...) 

currentuser रहता है जब तक एप्लिकेशन पुन: प्रारंभ होने, जिसके बाद यह शून्य पर रीसेट हो जाता उपयोग कर रहा हूँ। मैंने वर्तमान उपयोगकर्ता को पिन करने का भी प्रयास किया है लेकिन यह काम नहीं करता है। मैं कैसे जांच सकता हूं कि वर्तमान उपयोगकर्ता को स्थानीय रूप से कैश किया जा रहा है या नहीं। किसी भी मदद की सराहना की जाएगी। धन्यवाद।

+2

क्या आपको कोई समाधान मिला है? – Klemens

+0

यहां एक ही समस्या है। – fatuhoku

+0

ब्लॉक रिटर्न के साथ कॉल करने का प्रयास करें। क्या आप अपेक्षित उपयोगकर्ता और एक शून्य त्रुटि वापस प्राप्त कर रहे हैं? यह भी सुनिश्चित करें कि यह कॉल setApplicationId – Jeremiah

उत्तर

1

क्या आप वाकई सिम्युलेटर को रीसेट नहीं कर रहे हैं और एक ही पर चल रहे हैं? यह वर्तमान उपयोगकर्ता को साफ़ नहीं करना चाहिए। क्या यह संभव है आप

PFUser.logout() 
'applicationWillTerminate' में AppDelegate में

या कहीं और बुला रहे हैं?

+0

को कॉल करने के बाद किया जाता है PFUser.logout() का उपयोग न करें। लेकिन मैं कोर डेटा का उपयोग कर रहा हूँ। तो मेरा 'एपविल टर्मिनेट' में एक self.saveContext() कॉल शामिल है। – shubhamrawal7

2

मेरे लिए, कारण केवल निम्न भाग निष्पादित नहीं किया गया है। बहु थ्रेड से सावधान रहें। आमतौर पर यही कारण है।

Parse.setApplicationId("xx","xx") 
संबंधित मुद्दे