2016-07-07 14 views
8

जैसे ही यह CNContactStore तक पहुंच का अनुरोध करने का प्रयास करता है, मेरा कोड क्रैश हो जाता है। कोई विचार अगर यह बीटा मुद्दा है?स्विफ्ट 3/एक्सकोड 8 - सीएनकॉन्टैक्ट [एक्सेस] <Private>

var addressBookStore = CNContactStore() 

addressBookStore.requestAccess(for: .contacts) { (granted, error) 

में

// यह सांत्वना संदेश दुर्घटना में शुरू हो रहा है - मैसेंजर [836: 1,175,155] [पहुंच] निजी

दुर्घटना इस लाइन पर होता है और यहां तक ​​कि यहां तक ​​कि त्रुटि मुद्रण को रोकने !

अग्रिम धन्यवाद

उत्तर

21

यहाँ सुझाव के रूप में: https://developer.apple.com/reference/contacts

महत्वपूर्ण

एक iOS ऐप्लिकेशन पर या iOS 10.0 के बाद से जुड़ा हुआ है अपने Info.plist फ़ाइल उपयोग विवरण में शामिल करना चाहिए डेटा के प्रकारों के लिए कुंजी पहुंच की आवश्यकता है या यह क्रैश हो जाएगी। विशेष रूप से संपर्क डेटा तक पहुंचने के लिए, इसे में एनएससी कॉन्टैक्ट्सयूज डिस्क्रिप्शन शामिल करना होगा।

आप अपने Info.plist फ़ाइल

enter image description here

तो फिर तुम प्राधिकरण संवाद मिल जाएगा में NSContactsUsageDescription कुंजी addd किया है। इस कुंजी ऐप के बिना दुर्घटनाग्रस्त हो जाएगा।

enter image description here

let addressBookStore = CNContactStore() 

addressBookStore.requestAccess(for: CNEntityType.contacts) { (isGranted, error) in 
    print(isGranted) 
    print(error) 
} 
+3

इस तरह के एक सरल उपाय। मुझे विश्वास नहीं है कि मुझे याद आया! बहुत बहुत धन्यवाद – InfinitePod

+1

कमाल की नोक !!! स्व-परीक्षा! –

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