iOS Hybrid开发中URL字符转义问题之神坑——百分之23

神奇的——%23

从本地加载H5资源时,使用 URLfileURLWithPath:定位资源时
文件路径:
/var/mobile/Containers/Data/Application/590E20E4-5839-43DD-BCC3-3543318F32D3/Demo.app/H5/index.html#/home
中的 #符号
NSString转成 NSURL
变成 %23
结果导致 H5 一直加载不了!!!

百度 ios URL转义
各种说使用:
stringByAddingPercentEscapesUsingEncoding:
CFURLCreateStringByAddingPercentEscapes()

还是不行!!!
依旧是 %23


强大的 URLWithString:

参见:iOS URL 字符转义问题

不使用: fileURLWithPath:
而是直接使用:URLWithString
本地路径字符串加上前缀: file://
完美加载!!!

NSString *path = [NSString stringWithFormat:@"file://%@", h5Path];
NSURL * URL = [NSURL URLWithString:path];

一波又起:Could not create a sandbox extension for /

百度之后,原因是:
iOS9.0以下版本, WKWebview不支持 load 项目根目录下的 HTML 源文件。
需要把 html放到 tmp目录下,然后加载 tmp下的 html文件
参见:WKWebView使用遇到的坑

然而,一波操作之后,html是可以加载了,但是界面元素是各种飞啊!!!
不忍直视 T_T

没有下文......

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Swift1> Swift和OC的区别1.1> Swift没有地址/指针的概念1.2> 泛型1.3> 类型严谨 对...
    cosWriter阅读 11,135评论 1 32
  • 1、WKWebView 白屏问题WKWebView 自诩拥有更快的加载速度,更低的内存占用,但实际上 WKWebV...
    无名感恩阅读 2,159评论 0 3
  • 1、WKWebView 白屏问题WKWebView 自诩拥有更快的加载速度,更低的内存占用,但实际上 WKWebV...
    iosRn阅读 2,111评论 1 10
  • 导语 WKWebView 是苹果在 WWDC 2014 上推出的新一代 webView 组件,用以替代 UIKit...
    Jecky丶阅读 8,620评论 2 22
  • WkWebView是IOS8中引入的新组件,苹果将UIWebViewDelegate 与 UIWebView 重构...
    i_belive阅读 5,054评论 1 25