美文网首页iOS面试资料
iOS Hybrid开发中URL字符转义问题之神坑——百分之23

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

作者: 豪冷 | 来源:发表于2019-06-14 10:24 被阅读3次

    神奇的——%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

    没有下文......

    相关文章

      网友评论

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

        本文链接:https://www.haomeiwen.com/subject/pthufctx.html