Wenn der Anwendungsname unter dem Symbol auf dem Startbildschirm "My Awesome App" lautet, wie erhalten Sie diese Zeichenfolge zur Laufzeit in der Anwendung?
ios
xcode
uiapplication
Jonathan
quelle
quelle
Bundle display name
Eigenschaft in meineInfo.plist
Datei aufgenommen hatte.Schnelle 3 & 4
Bundle.main.object(forInfoDictionaryKey: "CFBundleName") as? String ?? "" Bundle.main.object(forInfoDictionaryKey: "CFBundleDisplayName") as? String ?? ""
Swift 2.2
NSBundle.mainBundle().objectForInfoDictionaryKey("CFBundleName") NSBundle.mainBundle().objectForInfoDictionaryKey("CFBundleDisplayName")
Weitere Informationen zu 'CFBundleName' und 'CFBundleDisplayName'
Das Folgende stammt aus der Apple-Dokumentation zu Core Foundation Keys
CFBundleName , "Bundle-Name", Der Kurzname des Bundles; nicht dazu gedacht, vom Benutzer gesehen zu werden. Weitere Informationen finden Sie unter CFBundleName . (Empfohlen, lokalisierbar)
CFBundleDisplayName , "Bundle-Anzeigename", Der vom Benutzer sichtbare Name des Bundles; Wird von Siri verwendet und ist auf dem Startbildschirm in iOS sichtbar. Weitere Informationen finden Sie unter CFBundleDisplayName . (Erforderlich, lokalisierbar)
quelle
[[NSBundle mainBundle] objectForInfoDictionaryKey:@"CFBundleName"];
quelle
Nur weil ich den neuen Xcode 4.5-Weg liebe, um ein Array-Element zu erhalten. :) :)
- (NSString*)project_getAppName { return NSBundle.mainBundle.infoDictionary[@"CFBundleDisplayName"]; }
quelle
Für Xamarin.iOS verwenden Sie:
return ((NSString)NSBundle.MainBundle.InfoDictionary["CFBundleName"]).ToString();
quelle
#include <stdlib.h> // work for iOS and MacOSX and ~23 times faster than get name from bundle NSString *app = [NSString stringWithUTF8String:getprogname()];
quelle
Swift 3/4
let appName = Bundle.main.object(forInfoDictionaryKey: kCFBundleNameKey as String) as? String
quelle
Swift 3, 4 & 5
let appName = Bundle.main.infoDictionary?["CFBundleName"] as? String
quelle
NSString* applicationName = [entry objectForKey:(id)kCGWindowOwnerName];
Hier ist ein guter Beitrag mit Beispielen dafür, wonach Sie suchen. Das OP hat nichts akzeptiert, was bedauerlich ist, aber die Antworten sind nützlich.
quelle
Achtung :
Wenn Sie eine
localizations
in Ihrer App ausführen, sollten Sie den geblasenen Code verwenden, um den tatsächlichen lokalisierten Anzeigenamen zu erhalten:Bundle.main.object(forInfoDictionaryKey: "CFBundleName") as? String ?? "" Bundle.main.object(forInfoDictionaryKey: "CFBundleDisplayName") as? String ?? ""
eher als :
Bundle.main.object(forInfoDictionaryKey: kCFBundleNameKey as String) as? String
quelle