2015-12-31 11 views
5

पर डिप्लिंक मेरी समस्या है: मैं क्लाउडकिट का उपयोग करने वाले ऐप पर काम कर रहा हूं। मुझे परिदृश्य को सौंपने की ज़रूरत है कि उपयोगकर्ता डिवाइस पर iCloud में लॉग इन नहीं है। मैं उन्हें iCloud सेटिंग्स पर भेजना चाहता हूं, और उन्हें याद दिलाता हूं कि iCloud डेटा को मेरे ऐप के लिए चालू करने की आवश्यकता है। मैं यह तय करने के लिए NSFileManager.defaultManager().ubiquityIdentityToken का उपयोग कर रहा हूं कि मुझे उपयोगकर्ता की iCloud सेटिंग्स को खोलने की आवश्यकता है या नहीं। समस्या यह है कि, मैं यह नहीं समझ सकता कि कैसे। डिवाइस की iCloud सेटिंग्स के लिए यूआरएल क्या है? मैंने बहुत सारे शोध किए हैं, और मुझे पता है कि मैं UIApplicationOpenSettingsURLString नहीं चाहता हूं। यह ऐप की सेटिंग्स है, डिवाइस नहीं। यह आईओएस 9 की नई सुरक्षा विशेषताओं, जो मुझे लगता है कि मैं ठीक तरह से स्थापित है के साथ किसी भी आसान बना दिया है:आईओएस 9: iCloud सेटिंग्स

enter image description here

+1

लगता है कि यह पहले से ही एक जवाब यहाँ है की तरह (यह संभव नहीं है) http://stackoverflow.com/questions/25988241/url-scheme-open-settings-ios – inorganik

+0

आप सेटिंग एप्लिकेशन को नहीं खोल सकता अपने ऐप की सेटिंग्स के अलावा। और 'LSApplicationQueriesSchemes' के पास ऐसा करने के लिए कुछ भी नहीं है। – rmaddy

+0

मैं यह धारणा थी कि LSApplicationQueriesSchemes यूआरएल कि आईओएस 9 –

उत्तर

0

आप सेटिंग एप्लिकेशन के iCloud खंड शुरू कर सकते हैं। मैंने दोनों को आईओएस 9.3 और 10.2 पर परीक्षण किया है।

  1. परियोजना सेटिंग्स/जानकारी/यूआरएल प्रकार से आपके ऐप्लिकेशन पर एक नया URL स्कीम जोड़ें:

    चरणों इस प्रकार हैं।

enter image description here

  1. अब, आप इस कोड के साथ सेटिंग/iCloud एप्लिकेशन खोल सकते हैं। आईओएस से 10 के लिए

    let iCloudURL = URL(string: "App-prefs:root=CASTLE") 
    if let settingsURL = iCloudURL { 
        UIApplication.shared.openURL(settingsURL) 
    } 
    

नोट *: openURL विधि वास्तव में हटा दिया गया है और आप पूरा होने हैंडलर विधि के साथ खुला उपयोग करना चाहिए:

open(_ url: URL, 
    options: [String : Any] = [:], 
    completionHandler completion: ((Bool) -> Void)? = nil) 

संदर्भ