source

프로그래밍 방식으로 번들 식별자 가져오기

ittop 2023. 4. 22. 10:29
반응형

프로그래밍 방식으로 번들 식별자 가져오기

앱 내에서 번들 식별자 문자열을 프로그래밍 방식으로 가져오려면 어떻게 해야 합니까?

목표-C

NSString *bundleIdentifier = [[NSBundle mainBundle] bundleIdentifier];

스위프트 1.2

let bundleIdentifier = NSBundle.mainBundle().bundleIdentifier

Swift 3.0

let bundleIdentifier = Bundle.main.bundleIdentifier

자마린OS

var bundleIdentifier = NSBundle.MainBundle.BundleIdentifier
[[NSBundle mainBundle] bundleIdentifier];

(정보)

가치를 얻으려면 핵심 기반 접근 방식이 필요할 수 있습니다.ARC의 예를 다음에 나타냅니다.

NSString *value = (__bridge_transfer NSString *)CFDictionaryGetValue(CFBundleGetInfoDictionary(CFBundleGetMainBundle()),
                                                                     (const void *)(@"CFBundleIdentifier"));

Swift 3.0에서 번들 ID를 프로그래밍 방식으로 가져오려면 다음 절차를 수행합니다.

Swift 3.0

let bundle = Bundle.main.bundleIdentifier

프로그램적으로 취득하려고 하는 경우는, 다음의 코드 행을 사용할 수 있습니다.

목표-C:

NSString *bundleIdentifier = [[NSBundle mainBundle] bundleIdentifier];

Swift 3.0 :

let bundleIdentifier =  Bundle.main.bundleIdentifier

최신 swift용 업데이트 iOS 및 Mac 앱 모두에서 작동합니다.

이 매크로를 사용하면, 단축할 수 있습니다.

#define BUNDLEID    [NSString stringWithString:[[NSBundle mainBundle] bundleIdentifier]]

#define BUNDLEIDEQUALS(bundleIdString) [BUNDLEID isEqualToString:bundleIdString]

이렇게 비교할 수 있습니다.

if (BUNDLEIDEQUALS(@"com.mycompany.myapp") {
    //do this
}

언급URL : https://stackoverflow.com/questions/8883102/obtain-bundle-identifier-programmatically

반응형