已有iOS项目集成cordova并使用wkwebview
2018-10-25 本文已影响92人
Abler
搜索cordova集成,教程很多.不过需要依赖CordovaLib.xcodeproj工程的也就是说必须要导入相关的工程以及文件,笔者很讨厌这种方法,步骤比较多,感觉很繁琐.想通过cocoapod集成可以省很多事.
本文在已有的iOS项目集成cordova, 并使用wkwebview为例,以及集成摄像头功能.
----- 本教程是反复试验,最精简,最简单的集成方式
1.创建一个新的cordova项目,走第1步之前,建议从零创建一个cordova项目熟练一下,命令如下
cordova create Demo com.cordova.demo.hello HelloWorld
cd Demo
cordova platform add ios
//添加相机和wkwebview插件
cordova plugin add cordova-plugin-wkwebview-engine
cordova plugin add cordova-plugin-camera
2.,创建一个新的iOS项目,并使用cocoapod(这里步骤就不说了), podfile文件如下
pod 'Cordova'
#相机插件
pod 'cordova-plugin-camera'
#wkwebview插件
pod 'cordova-plugin-wkwebview-engine'
3.注意(2)podfile文件里面的插件和(1)里面的插件对应,
将下面两个标记出来的文件和文件夹移动到iOS 项目中,注意是/platforms/ios
文件夹下面的
[demo地址https://github.com/AblerSong/cordovaDemo.git ],
image.png 向项目中添加文件
4.访问远程界面
在config.xml
文件中添加, 如果没有下面将会打开Safari或者无反应
<allow-navigation href="http://*/*" />
<allow-navigation href="https://*/*" />
.h
和.m
文件如下
@interface MainViewController : CDVViewController
@end
#import "MainViewController.h"
@implementation MainViewController
- (instancetype)init
{
self = [super init];
if (self) {
// 不要在wwwFolderName设置url,原因是URL地址会被拼接,导致实际访问地址错误,拼接之后地址如下
// [NSURL URLWithString:[NSString stringWithFormat:@"%@/%@", self.wwwFolderName, self.startPage]];
self.wwwFolderName = @"";
self.startPage = @"https://www.baidu.com";
}
return self;
}
@end