iOS 调用本地.js文件的方法

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了iOS 调用本地.js文件的方法相关的知识,希望对你有一定的参考价值。

参考技术A 接到一个需求,需要我调用本地.js文件里的方法,我一开始就想当然的直接用webView去调用:

结果是一直在打印error,后来发现并不能去调.js文件里的东西,但是可以用html文件包装一下.js文件

这样就能访问到generatorBrainKey()方法了,但是在真机测试的时候又出现问题了,因为我们写的地址是固定的,无法找到指定的.js文件,这个问题的当时纠结了半天,结果发现解决办法就是把前面的地址去掉只保留文件名就行.

这样就没问题了.

ios如何加载本地文件

1,本地的html文件一定要放到工程文件的根目录

2,html代码中的图片路径一定要是相对路径

3,下面是用UIWebView调用本地文件的方法

方法一:

NSString *filePath = [[NSBundle mainBundle]pathForResource:@"1" ofType:@"html"];

NSString *htmlString = [NSString stringWithContentsOfFile:filePath encoding:NSUTF8StringEncoding error:nil]

[myWebView loadHTMLString:htmlString baseURL:[NSURL URLWithString:filePath]];

方法二:

NSString *filePath = [[NSBundle mainBundle]pathForResource:@"1" ofType:@"html"];

NSURL *url = [NSURL fileURLWithPath:filePath];

NSURLRequest *request = [NSURLRequest requestWithURL:url];

[myWebView loadRequest:request];

[self.view addSubview:myWebView];
参考技术A NSString *plistPath = [[NSBundle mainBundle] pathForResource:@"plistdemo" ofType:@"plist"];
NSMutableDictionary *data = [[NSMutableDictionary alloc] initWithContentsOfFile:plistPath];
NSLog(@"%@", data);//直接打印数据。

上面为plist文件读取示例

以上是关于iOS 调用本地.js文件的方法的主要内容,如果未能解决你的问题,请参考以下文章

在android中怎样调用本地js文件里的方法并得到返回值

iOS JS 交互之利用系统JSContext实现 JS调用oc方法

iOS JS 交互之利用系统JSContext实现 JS调用oc方法

异步文件 IO 方法如何处理 Node.js 中的本地文件?

如何在IOS平台上使用js直接调用OC方法

如何在IOS平台上使用js直接调用OC方法