से संस्करण पढ़ें मैं जानकारी के साथ बंडल संस्करण जानकारी को अपने कोड में पढ़ना चाहता हूं, अधिमानतः एक स्ट्रिंग के रूप में। मैं यह कैसे कर सकता हूँ?Info.plist
उत्तर
आप
[[NSBundle mainBundle] infoDictionary]
के साथ एक शब्दकोश के रूप में अपने Info.plist पढ़ सकते हैं और आप आसानी से CFBundleVersion
महत्वपूर्ण यह है कि जिस तरह से पर संस्करण प्राप्त कर सकते हैं।
अंत में, आप के साथ
NSDictionary* infoDict = [[NSBundle mainBundle] infoDictionary];
NSString* version = [infoDict objectForKey:@"CFBundleVersion"];
मुझे पता है कि कुछ समय के खोज और जवाब के बाद से पारित कर दिया है संस्करण प्राप्त कर सकते हैं।
चूंकि आईओएस 8 स्वीकृत उत्तर काम नहीं कर सकता है।
यह अब यह करने के लिए नया तरीका है:
NSString *version = (__bridge id)CFBundleGetValueForInfoDictionaryKey(CFBundleGetMainBundle(), kCFBundleVersionKey);
क्या आपके पास ऐसा लिंक है कि ऐसा क्यों है? –
अब iOS 8 में दोनों क्षेत्रों के लिए आवश्यक हैं। इससे पहले यह CFBundleShortVersionString
के बिना काम करता है। लेकिन अब ऐप स्टोर में कोई एप सबमिट करने के लिए यह एक आवश्यक प्लिस्ट फील्ड है। और kCFBundleVersionKey
की तुलना प्रत्येक नए निर्माण को अपलोड करने के लिए की जाती है, जो कि वृद्धिशील क्रम में होना चाहिए। टेस्टफलाइट के लिए विशेष रूप से बनाता है। मैं इसे इस तरह करते हैं,
NSString * version = nil;
version = [[NSBundle mainBundle] objectForInfoDictionaryKey:@"CFBundleShortVersionString"];
if (!version) {
version = [[NSBundle mainBundle] objectForInfoDictionaryKey:(NSString *)kCFBundleVersionKey];
}
धन्यवाद .. ** संस्करण = [[एनएसबंडल मेनबंडल] ऑब्जेक्टफोरइन्फो डिक्शनरी: @ "सीएफबंडलशॉर्टवर्सनस्ट्रिंग"]; ** मेरे लिए काम किया – swiftBoy
@ आरडीसी धन्यवाद। –
स्विफ्ट उपयोगकर्ताओं के लिए:
if let version = NSBundle.mainBundle().objectForInfoDictionaryKey("CFBundleShortVersionString") {
print("version is : \(version)")
}
Swift3 उपयोगकर्ताओं के लिए:
if let version = Bundle.main.object(forInfoDictionaryKey: "CFBundleShortVersionString") {
print("version is : \(version)")
}
स्विफ्ट 3:
let appBuildNumber = Bundle.main.infoDictionary!["CFBundleVersion"] as! String
let appVersion = Bundle.main.infoDictionary!["CFBundleShortVersionString"] as! String
- 1. Info.plist
- 2. iphone, स्थानीयकरण, Info.plist
- 3. आईओएस ऐप info.plist
- 4. लोकलाइजिंग नेस्टेड Info.plist कुंजी
- 5. info.plist फ़ाइल का चयन करें
- 6. ऐप स्टोर का नाम और info.plist
- 7. Info.plist फ़ाइल "ऐसी कोई फ़ाइल नहीं" त्रुटि
- 8. आईपैड के लिए info.plist सेटिंग्स केवल ऐप
- 9. UIBackgroundModes कुंजी Info.plist ड्रॉपडाउन में नहीं दिख रहा है
- 10. आईफोन - एप्लिकेशन के भीतर info.plist द्वारा इंगित ऐप आइकन बदलें?
- 11. जानकारी के लिए एक्सकोड कैसे प्राप्त करें Info.plist फ़ाइल
- 12. Info.plist और ऐप आईडी और आईट्यून्स कनेक्ट में बंडल आइडेंटिफ़ायर के बीच संबंध
- 13. info.plist में "एप्लिकेशन को आईफोन पर्यावरण की आवश्यकता है" कुंजी का क्या अर्थ है?
- 14. आईफोन एक्सकोड info.plist फ़ाइल को पुन: उत्पन्न करने के लिए कैसे करें
- 15. PROJECT-Info.plist फ़ाइल के CFBundleVersion फ़ील्ड को संपादित करने के लिए बैश स्क्रिप्ट
- 16. उपयोगकर्ता परिभाषित सेटिंग से Info.plist में एक बूलियन प्रॉपर्टी सेट करना
- 17. चेतावनी: कॉपी बंडल संसाधन निर्माण चरण में इस लक्ष्य की Info.plist फ़ाइल
- 18. Xcode बताने के लिए कैसे जहाँ मेरे Info.plist और .pch फ़ाइलों
- 19. रिलीज बनाने के दौरान Xcode Info.plist या Prefix.pch नहीं ढूंढ सकता
- 20. आईओएस 6 को कैसे स्थानांतरित करें नया Info.plist गोपनीयता उद्देश्य तार?
- 21. मल्टी-टार्गेट ऐप के लिए लक्ष्य-विशिष्ट मानों को संग्रहीत करने के लिए info.plist का उपयोग करना
- 22. एक्सकोड 4: गिट रेपो प्रतिबद्ध संस्करण का उपयोग करके प्रत्येक बिल्ड पर CFBundleVersion अपडेट करें
- 23. आईफोन और आईपैड - दो आइकन और दो plists?
- 24. सी ++ #define
- 25. निर्माण पर डीएसवाईएम में CFBundleShortVersionString अद्यतन करें?
- 26. Xcode
- 27. LSUIElement
- 28. अनुमति Xcode 4 पर निषेध
- 29. आईओएस 4
- 30. एक्सकोड 4.2 - ऐप लोडर: आइकन आयामों को सत्यापित करने में असमर्थ, कोई आइकन नहीं मिला
बिल्कुल सही। सीएफ * फ़ंक्शंस की सभी पंक्तियों की तुलना में यह बहुत आसान है ... मुझे यकीन था कि NSDictionary प्राप्त करने का एक त्वरित तरीका होना चाहिए। – Stew
संस्करण संख्या के लिए, इससे कोई फर्क नहीं पड़ता, लेकिन अन्य कुंजियों के लिए आप 'objectForInfoDictionaryKey: 'का उपयोग करना चाहेंगे, क्योंकि यह उपलब्ध होने पर स्थानीयकृत मान देता है:' [[NSBundle mainBundle] objectForInfoDictionaryKey: @ "CFBundleDisplayName"] ' – Zargony
एक्सकोड 4 में नोट यदि आप लक्ष्य के सारांश पैनल को देखते हैं तो आपको संस्करण और बिल्ड फ़ील्ड दिखाई देंगे। 'CFBundleVersion' को बिल्ड और संस्करण होने के लिए पुनर्निर्मित किया गया है' CFBundleShortVersionString' है। – memmons