1

我想从 plit 文件中读取我的应用程序的版本信息。

为此,我使用如下所示的代码。

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

        // Format output

        NSLog(@"%@",myFilePath);

输出

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

即使我尝试导入现有类型的文件,它总是返回 nil,text.txt 仍然返回 nil,其中 text.txt 是在应用程序中导入的。

我已经对这个问题进行了调查,并不是每个人都建议使用 NSBundel 来读取预先导入的文件,但没有用。

任何帮助,或更好的方式来阅读应用程序版本。

4

2 回答 2

2

这不起作用的原因是 pathForResource 在“MyApp.app/Contents/Resources”中查找内容。Info.plist 文件不位于资源文件夹中,因此如果您在那里查找它,它将返回 nil。正确的方法是在 NSBundle 上使用“infoDictionary”方法。

于 2010-08-31T13:16:35.337 回答
2

通过此处堆栈溢出中的另一个链接获得解决方案。

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


        NSLog(@"%@",version);
于 2010-08-31T12:55:54.390 回答