ホーム画面のアイコンの下にあるアプリケーション名が「MyAwesomeApp」の場合、実行時にアプリケーション内でその文字列を取得するにはどうすればよいですか。
50128 次
10 に答える
139
やってみます
[[NSBundle mainBundle] objectForInfoDictionaryKey:@"CFBundleDisplayName"];
おそらくあなたは自分のアプリの名前を知っていて、それを使用することができますが…</ p>
于 2011-11-30T03:54:11.967 に答える
30
スウィフト3&4
Bundle.main.object(forInfoDictionaryKey: "CFBundleName") as? String ?? ""
Bundle.main.object(forInfoDictionaryKey: "CFBundleDisplayName") as? String ?? ""
スウィフト2.2
NSBundle.mainBundle().objectForInfoDictionaryKey("CFBundleName")
NSBundle.mainBundle().objectForInfoDictionaryKey("CFBundleDisplayName")
「CFBundleName」と「CFBundleDisplayName」の詳細
以下は、CoreFoundationKeysに関するAppleのドキュメントからのものです。
CFBundleName、「バンドル名」、バンドルの短縮名。ユーザーに表示されることを意図したものではありません。詳細については、 CFBundleNameを参照してください。(推奨、ローカライズ可能)
CFBundleDisplayName、「バンドル表示名」、バンドルのユーザーに表示される名前。Siriによって使用され、iOSのホーム画面に表示されます。詳細については、 CFBundleDisplayNameを参照してください。(必須、ローカライズ可能)
于 2016-09-01T21:23:12.743 に答える
19
[[NSBundle mainBundle] objectForInfoDictionaryKey:@"CFBundleName"];
于 2014-12-23T14:40:43.570 に答える
14
配列アイテムを取得するXcode4.5の新しい方法が大好きだからです。:)
- (NSString*)project_getAppName {
return NSBundle.mainBundle.infoDictionary[@"CFBundleDisplayName"];
}
于 2012-09-29T15:55:35.147 に答える
8
Xamarin.iOSの使用:
return ((NSString)NSBundle.MainBundle.InfoDictionary["CFBundleName"]).ToString();
于 2015-01-23T00:23:36.503 に答える
8
#include <stdlib.h>
// work for iOS and MacOSX and ~23 times faster than get name from bundle
NSString *app = [NSString stringWithUTF8String:getprogname()];
于 2016-02-10T17:34:22.610 に答える
6
スウィフト3、4、5
let appName = Bundle.main.infoDictionary?["CFBundleName"] as? String
于 2016-11-01T20:37:25.817 に答える
5
スウィフト3/4
let appName = Bundle.main.object(forInfoDictionaryKey: kCFBundleNameKey as String) as? String
于 2017-07-07T08:51:05.773 に答える
3
NSString* applicationName = [entry objectForKey:(id)kCGWindowOwnerName];
これはあなたが探しているものの例を含む良い投稿です。OPは何も受け入れませんでした。これは残念なことですが、答えは役に立ちます。
于 2011-11-30T03:42:09.380 に答える
1
注意:
アプリでを実行する場合localizations
は、ブローコードを使用して、真のローカライズされた表示名を取得する必要があります。
Bundle.main.object(forInfoDictionaryKey: "CFBundleName") as? String ?? ""
Bundle.main.object(forInfoDictionaryKey: "CFBundleDisplayName") as? String ?? ""
ではなく:
Bundle.main.object(forInfoDictionaryKey: kCFBundleNameKey as String) as? String
于 2019-04-28T07:53:27.013 に答える