ios - आईओएस में साझा प्राथमिकताओं के बराबर
sharedpreferences (2)
स्विफ्ट 3 के लिए यहां एक अपडेट है
पढ़ना
let preferences = UserDefaults.standard
let currentLevelKey = "currentLevel"
if preferences.object(forKey: currentLevelKey) == nil {
// Doesn't exist
} else {
let currentLevel = preferences.integer(forKey: currentLevelKey)
}
लिख रहे हैं
let preferences = UserDefaults.standard
let currentLevel = ...
let currentLevelKey = "currentLevel"
preferences.set(currentLevel, forKey: currentLevelKey)
preferences.synchronize()
मैं आईओएस के लिए एक एंड्रॉइड ऐप पोर्ट कर रहा हूं, एक बार जब मैंने एक स्तर पूरा किया था, तो प्रत्येक चीज को एंड्रॉइड में साझा प्राथमिकताएं थीं।
इस तरह जब उपयोगकर्ता ऐप में वापस आ जाता है, तो वे देख सकते हैं कि वे स्तर 3 या जो भी हो।
आईओएस में एक समान तंत्र है? या क्या मुझे मैन्युअल रूप से किसी एप्लिकेशन विशिष्ट फ़ाइल को लिखना है?
यदि हां, तो मैं केवल अपने आवेदन के लिए दिखाई देने वाली फ़ाइलों को कैसे लिखूं?
NSUserDefaults का उपयोग करें: - ध्यान दें कि यह डेटा के छोटे बिट्स के लिए है, जैसे कि आपके द्वारा उल्लिखित वर्तमान स्तर। इसका दुरुपयोग न करें और इसे बड़े डेटाबेस के रूप में उपयोग करें, क्योंकि जब भी आप अपना ऐप खोलते हैं, तो इसे स्मृति में लोड किया जाता है, भले ही आपको इससे कुछ चाहिए या नहीं (आपके ऐप के अन्य भाग भी इसका उपयोग करेंगे)।
उद्देश्य सी:
पढ़ना:
NSUserDefaults *preferences = [NSUserDefaults standardUserDefaults];
NSString *currentLevelKey = @"currentlevel";
if ([preferences objectForKey:currentLevelKey] == nil)
{
// Doesn't exist.
}
else
{
// Get current level
const NSInteger currentLevel = [preferences integerForKey:currentLevelKey];
}
लिख रहे हैं:
NSUserDefaults *preferences = [NSUserDefaults standardUserDefaults];
NSString *currentLevelKey = @"currentlevel";
const NSInteger currentLevel = ...;
[preferences setInteger:currentLevel forKey:currentLevelKey];
// Save to disk
const BOOL didSave = [preferences synchronize];
if (!didSave)
{
// Couldn't save (I've never seen this happen in real world testing)
}
।
स्विफ्ट:
पढ़ना:
let preferences = NSUserDefaults.standardUserDefaults()
let currentLevelKey = "currentLevel"
if preferences.objectForKey(currentLevelKey) == nil {
// Doesn't exist
} else {
let currentLevel = preferences.integerForKey(currentLevelKey)
}
लिख रहे हैं:
let preferences = NSUserDefaults.standardUserDefaults()
let currentLevelKey = "currentLevel"
let currentLevel = ...
preferences.setInteger(currentLevel, forKey: currentLevelKey)
// Save to disk
let didSave = preferences.synchronize()
if !didSave {
// Couldn't save (I've never seen this happen in real world testing)
}