Cordova(PhoneGap)使用(iOS)

1、Cordova说明:

Cordova提供了一组设备相关的API,通过这组API,移动应用能够以JavaScript访问原生的设备功能,如摄像头、麦克风等。 Cordova还提供了一组统一的JavaScript类库,以及为这些类库所用的设备相关的原生后台代码。 Cordova支持如下移动操作系统:iOS, Android,ubuntu phone os, Blackberry, Windows Phone, Palm WebOS, Bada 和 Symbian。

Cordova是贡献给Apache后的开源项目,是从PhoneGap中抽出的核心代码,是驱动PhoneGap的核心引擎。你可以把他想象成类似于Webkit和Google Chrome的关系

官方说明文档

官方常用命令文档

2、安装(终端)

$ sudo npm install -g cordova

安装之后使用 cordova help如果出现如下问题:

-bash: cordova: command not found 

执行如下操作即可:(解决该问题连接)

sudo chown -R $USER /usr/local
sudo chmod -R 0775 /usr/local
npm install -g cordova

3、创建iOS项目(终端)

$ cd ~/Desktop/
$ cordova create hello com.example.hello HelloWorld (Desktop路径下生成“hello”目录)
$ cd hello
$ cordova platform add ios (下载iOS相关资源)

Desktop/hello/platforms/ios/下打开HelloWorld.xcodeproj项目即可

4、创建cordova调用设备相册的iOS项目

3建立的项目基础上进行

cd ~/Desktop/hello
$ cordova plugin add org.apache.cordova.camera (下载cordova调用设备相册相关资源)
$ cordova plugin add org.apache.cordova.media-capture
$ cordova plugin add org.apache.cordova.media

$ cordova plugin add org.apache.cordova.file (下载cordova调用访问设备文件资源)
$ cordova plugin add org.apache.cordova.file-transfer

下一步来实现调用设备相册功能,可以加载本地的js、html文件来实现,也可以通过本身包含调用设备相册的动态网页来实现。先实现本地的js、html文件功能: 将下载后的index.html替换项目hello/platforms/ios/www/中的index.html,将下载后的phonegap.js加入项目工程中,在真机运行:

Cordova(PhoneGap)使用(iOS)_第1张图片

点击 Gapture Photo:

Cordova(PhoneGap)使用(iOS)_第2张图片

Cordova(PhoneGap)使用(iOS)_第3张图片

由于公司项目,不能公开动态网页链接,但是本人亲测调用设备相册的动态网页是没有问题的。image

实现代码:在继承CDVViewControllerViewController中的ViewDidLoad

- (void)viewDidLoad {
    [super viewDidLoad];

    NSURLRequest *rq = [NSURLRequest requestWithURL:[NSURL URLWithString:@"dynamic_camera_url"]];
    [self.webView loadRequest:rq];
}

5、向已存在的iOS项目植入cordova

1、新建xcode项目,命名为CordovaDemo
2、进入hello/platforms/ios/

CordovaLib文件夹拖入到CordovaDemo中: 

再将www文件夹拖入到CordovaLib中:(Added folders选择为Create folder references) 

HelloWorld中的config.xmlPlugins(没有这个文件,不能拍照!)拖入到CordovaLib中: 

3、代码编写:

ViewController继承于CDVViewController: 

4、运行出现错误,添加<Foundation/Foundation.h>框架即可:

image

5、实现调用设备相册功能,参照  "创建cordova调用设备相册的iOS项目"
6、搞定回家!!最终项目下载地址

6、项目遇到的问题:

1、对cordova的项目archive时,提示“cordova/cdvplugin.h' file not found”失败

add $(OBJROOT)/UninstalledProducts/include to BuildSettings->Header Search Paths 解决该问题连接

你可能感兴趣的:(html,ios,Cordova,PhoneGap,Camera)