我想在UIWebView中显示“完整网站”(包装在一个包中)。
当我把软件包放在xcode中并将其添加到“compile stuff”时,一切都完美加载,js文件工作正常。
不幸的是,为了允许更新这个网站,我需要将这个从另一台服务器下载为zip ... 我可以很容易地获取zip,解压缩并将所有内容放在一个包中但是当我在UIWebView中加载索引页面时,js文件无效!
如何设置任何内容以使此代码可执行或类似的东西?
以下是加载我创建的包的部分:
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectory = [paths objectAtIndex:0];
NSString *test = [[NSBundle bundleWithPath:documentsDirectory] pathForResource:@"contentNewVersion.bundle/index" ofType:@"html"];
[_webView loadRequest:[NSURLRequest requestWithURL:[NSURL fileURLWithPath:test isDirectory:NO]]];
我的索引的位置是:/var/mobile/Applications/A2B602C3-DEC0-40FE-9469-288F666196A7/Documents/contentNewVersion.bundle/index.html`
答案 0 :(得分:1)
//试试这个
NSString *test = [[NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) objectAtIndex:0] stringByAppendingPathComponent:@"/contentNewVersion.bundle/index.html"];
NSLog(@"%@",test);
[webView loadRequest:[NSURLRequest requestWithURL:[NSURL fileURLWithPath:test]]];
答案 1 :(得分:1)
//下面的代码块是从NSDocumentDirectory在UIWebview中加载js文件的过程
NSString *JSFilePath = [[NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) objectAtIndex:0] stringByAppendingPathComponent:@"myfile.js"];
NSString *str_JSFilePath = [NSString stringWithFormat:@"<script src='%@'></script>", JSFilePath];
[webview loadHTMLString:str_JSFilePath baseURL:[NSURL fileURLWithPath:[[NSBundle mainBundle] resourcePath]]];