用了NSString * jsStr = [[NSString alloc]initWithContentsOfFile:[[NSBundle mainBundle] pathForResource:@"xx" ofType:@"js"] ,一直報(bào)Error Domain=NSCocoaErrorDomain Code=258 "The Codefile"沒有知道怎麼解決的?
靜態(tài)函式庫好像不行,必須搞bundle,而且放入的bundle的js檔案會被系統(tǒng)自動轉(zhuǎn)換為.txt文件,更好的解決方法是將js程式碼壓縮,然後進(jìn)行URLEncode編碼可以解決這個(gè)問題。
可以將你需要的文件一起打包到 Framework
里面,然后通過 NSBundle
去獲取這個(gè)文件。不同的是不能使用 mainBundle
,因?yàn)榇藭r(shí)的 mainBundle
指的引用 Framework
的這個(gè)程式。當(dāng)然找不到你的 JS 檔了。
解決方法:
在 Framework
的工程里面,Target->Build Phases->Copy Bundle Resources
里面加入你需要打包進(jìn) Framework
的檔案
需要讀取某個(gè)檔案時(shí)使用
NSBundle *bundle = [NSBundle bundleWithIdentifier:@"your.framework.id"];
if (bundle) {
NSString *filePath = [bundle pathForResource:@"somefile" ofType:@"js"];
// ...
}
PS: Framework
需要為動態(tài)函式庫才行!