Estoy trabajando en una aplicación universal y me gustaría acceder a los valores almacenados en el archivo app-info.plist en mi código.
Razón: creo una instancia de un UIViewController dinámicamente desde un guión gráfico usando:
UIStoryboard* storyboard = [UIStoryboard storyboardWithName:@"MainStoryboard_iPhone" bundle:nil];
self = [storyboard instantiateViewControllerWithIdentifier:@"ExampleViewController"];
Ahora, tener el nombre del guión gráfico @ "MainStoryboard_iPhone" arriba es feo.
Quiero hacer algo como:
UIStoryboard* storyboard = [UIStoryboard storyboardWithName:appInfo.mainStoryboardBaseNamePhone bundle:nil];
self = [storyboard instantiateViewControllerWithIdentifier:@"ExampleViewController"];
donde appInfo quizás puede ser un NSDictionary de todos los valores en app-info.plist
fuente
Sintaxis Swift 4+ para la solución de Damo
Ejemplo
fuente
Bundle
requiereimport SystemConfiguration
Bueno, puedes acceder a info.plist muy fácilmente:
Obtener el nombre del guión gráfico:
No estoy seguro de si detectará si está en un iPad y debería usar la
UIMainStoryboardFile~ipad
clave instalada.fuente
fuente
NSDictionary *dict = [NSDictionary dictionaryWithContentsOfFile:path];
También puede utilizar el método infoDictionary en NSBundle:
fuente