加载NSBundle文件iOS

时间:2014-11-17 13:42:12

标签: ios objective-c nsbundle

我正在尝试从存储在apps文档目录中的包中加载可执行文件。我可以成功创建NSBundle并读取info.plist,但每当我尝试使用[NSBundle load]加载包时,无论我如何尝试加载包,我总会得到类似的错误:

  

无法找到CFBundle 0x的可执行文件.....(未加载)“或者,当使用NSError时”无法加载软件包“$ {PRODUCT_NAME}”,因为无法找到其可执行文件

该包包含两个项目,1)info.plist和2)Obj-c类头和实现。我编辑了info.plist来更改Principal类名。

我首先将软件包复制到iPhone模拟器文档目录中,然后在按下按钮加载软件包后运行以下代码。

NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectory = [paths objectAtIndex:0];
NSString *file = [documentsDirectory stringByAppendingPathComponent:@"TestBundle.bundle"];

NSBundle *myBundle = [NSBundle bundleWithPath: file];
[myBundle load];

据我所知,你不应该在运行时加载可执行文件,但我已经看过一些能够做到这一点的文章/评论,至少在模拟器上。

我基本上想知道为什么我会收到此错误以及如何修复它(如果可能的话)。

由于

0 个答案:

没有答案