2012-01-16 14 views

Respuesta

374

Objective-C

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

Swift 1,2

let bundleIdentifier = NSBundle.mainBundle().bundleIdentifier 

Swift 3,0

let bundleIdentifier = Bundle.main.bundleIdentifier 
+9

Esta respuesta no se limita a iOS. Funciona para aplicaciones de Mac también. – Jonny

+7

En Swift, use 'let bundleIdentifier = NSBundle.mainBundle(). BundleIdentifier' –

+1

(puede eliminar este comentario) pero me encanta la sensación de leer la respuesta en el comentario, vea algo como @Jonny s y Tim (aunque usted puede ver esto en otra respuesta completa), se vincula a otra cosa que sigue siendo relevante y útil. Gracias por los buenos chicos de la comunidad. – haxpor

45
[[NSBundle mainBundle] bundleIdentifier]; 

(documentation)

+2

+1 para el enlace de la documentación. –

+0

En Swift, use 'let bundleIdentifier = NSBundle.mainBundle(). BundleIdentifier' –

1

Es posible que necesite un enfoque de Core Foundation para obtener el valor. ARC ejemplo es el siguiente:

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

f usted está tratando de conseguirlo mediante programación, puede utilizar debajo de la línea de código:

Objective-C:

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

Swift 3.0:

let bundleIdentifier = Bundle.main.bundleIdentifier

Actualizado para el último swift Lo hará trabajar para aplicaciones iOS y Mac.

0

Puedo utilizar estas macros para que sea mucho más corto:

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

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

así que puede simplemente comparar de esta manera:

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

Para obtener el identificador de paquete de programación en Swift 3.0:

Swift 3.0

let bundle = Bundle.main.bundleIdentifier 
Cuestiones relacionadas