用了NSString * jsStr = [[NSString alloc]initWithContentsOfFile:[[NSBundle mainBundle] pathForResource:@"xx" ofType:@"js"] ,一直報Error Domain=NSCocoaErrorDomain Code=258 "The Codefile"沒有知道怎麼解決的?
迷茫2017-05-02 09:35:31
靜態函式庫好像不行,必須搞bundle,而且放入的bundle的js檔案會被系統自動轉換為.txt文件,更好的解決方法是將js程式碼壓縮,然後進行URLEncode編碼可以解決這個問題。
给我你的怀抱2017-05-02 09:35:31
可以將你需要的文件一起打包到 Framework
里面,然后通过 NSBundle
去获取这个文件。不同的是不能使用 mainBundle
,因为此时的 mainBundle
指的引用 Framework
的這個程式。當然找不到你的 JS 檔了。
解決方法:
在 Framework
的工程里面,Target->Build Phases->Copy Bundle Resources
里面加入你需要打包进 Framework
的檔案
需要讀取某個檔案時使用
NSBundle *bundle = [NSBundle bundleWithIdentifier:@"your.framework.id"];
if (bundle) {
NSString *filePath = [bundle pathForResource:@"somefile" ofType:@"js"];
// ...
}
PS: Framework
需要為動態函式庫才行!