2010-08-31 24 views
1

Je voulais lire les informations de version de ma demande à partir du fichier plit. Pour cela, j'utilise un code comme indiqué ci-dessous.NSBundle renvoie zéro

NSString *myFilePath = [[NSBundle mainBundle] 
           pathForResource:@"MyApp-Info" 
           ofType:@"plist"]; 

     // Format output 

     NSLog(@"%@",myFilePath); 

La sortie

2010-08-31 17:14:10.095 MyApp[8759:20b] (null) 

Il retourne toujours nulle, même si j'essayé d'importer un fichier existant de type, text.txt retourne encore nulle, où text.txt est importé dans l'application.

J'ai masqué pour le problème que tout le monde recommande d'utiliser NSBundel pour lire un fichier pré-importé, mais pas d'utilisation.

Toute aide, ou une meilleure façon de lire la version de l'application.

Répondre

2

Vous avez obtenu la solution via un autre lien dans le stack overflow here.

NSString *version = [[[NSBundle mainBundle] infoDictionary] objectForKey:@"CFBundleVersion"]; 


     NSLog(@"%@",version); 
1

La raison pour laquelle cela ne fonctionne pas parce que pathForResource cherche choses à l'intérieur « MyApp.app/Contents/Resources ». Le fichier Info.plist ne réside pas dans le dossier des ressources, il retournera donc zéro si vous le cherchez. La bonne façon d'y arriver est d'utiliser la méthode "infoDictionary" sur NSBundle.

+0

pouvez mettre ici le code ici, de sorte qu'il aide quelqu'un qui cherche le même genre de problème. – Ameya