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

没有下文……

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

豪冷啊

你的鼓励是对我的认可!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值