iOS WKWebView下的Hybrid开发

2018-02-26  本文已影响0人  帅气影中人

前言

最近闲来无事,翻阅了一些iOS Hybrid开发,感觉都好厉害的样子,现在大型APP都在采用此技术,以淘宝为首,于是动手操作一番

正文

Hybrid优势:

但是 Hybrid 也有自己的劣势,比如体验上肯定比不了 Native,而且对于一个 Native 开发者而言要理解前后端的技术,对开发者的要求较高,但我相信这是好事儿~~

好啦,上面是我https://www.jianshu.com/p/7e6d099c8022 copy过来的;但我想告诉大家的事儿,只要缓存做得好,体验和原生相比并不差

test.gif

说一下我的大体思路:

为了效果更佳,导航栏要用原生,且不使用页面跳转进度条(话说缓存数据没有这个值),让用户认为页面都是原生,提升产品体验感。Web的三种不同页面跳转方式:

做了一个粗糙的demo,效果如上图,地址:github地址
demo中压缩包是本地导入,实际工程中不能这样做,否则失去了web页面的灵活性
BaseWebViewController中创建WKWebView对象,子类FirstViewController、SecondViewController调用并赋值,需要注意WKWebView的加载方法

    if ([[UIDevice currentDevice].systemVersion floatValue] >= 9.0) {
        // 文件地址
        NSURL *fileUrl = [NSURL fileURLWithPath:filePath];
        // 文件夹地址
        NSURL *direUrl = [NSURL fileURLWithPath:p1];
        [self.webView loadFileURL:fileUrl allowingReadAccessToURL:direUrl];
        
    }else{
        
        NSURL *fileURL = [self fileURLForBuggyWKWebView8:[NSURL fileURLWithPath:filePath]];
        NSURLRequest *request = [NSURLRequest requestWithURL:fileURL];
        [self.webView loadRequest:request];
    }

有很多同学说页面没有css效果,我之前也遇到了这个问题,解决方案:地址

上一篇下一篇

猜你喜欢

热点阅读