Ich möchte die Versionsinformationen des Bundles aus Info.plist in meinen Code einlesen, vorzugsweise als Zeichenfolge. Wie kann ich das machen?
iphone
objective-c
cocoa-touch
xcode
info.plist
John Smith
quelle
quelle
objectForInfoDictionaryKey:
stattdessen verwenden, da der lokalisierte Wert zurückgegeben wird, falls verfügbar:[[NSBundle mainBundle] objectForInfoDictionaryKey:@"CFBundleDisplayName"]
CFBundleVersion
wurde für Build und Version umfunktioniertCFBundleShortVersionString
.NSString *version = [[NSBundle mainBundle] objectForInfoDictionaryKey:@"CFBundleShortVersionString"];
NSString *build = [[NSBundle mainBundle] objectForInfoDictionaryKey:@"CFBundleVersion"];
self.versionLabel.text = [NSString stringWithFormat:@"%@.%@", version, build];
für Swift-Benutzer:
für Swift3-Benutzer:
quelle
Ich weiß, dass seit der Suche und der Antwort einige Zeit vergangen ist.
Seit iOS8 funktioniert die akzeptierte Antwort möglicherweise nicht mehr.
Dies ist der neue Weg, dies jetzt zu tun:
quelle
In iOS 8 sind jetzt beide Felder erforderlich. Früher funktioniert es ohne die
CFBundleShortVersionString
. Jetzt ist es jedoch erforderlich, eine App im App Store einzureichen. UndkCFBundleVersionKey
wird für das Hochladen jedes neuen Builds verglichen, der in inkrementeller Reihenfolge erfolgen muss. Speziell für TestFlight-Builds. Ich mache es so,quelle
Swift 3:
quelle