Cordova备忘录

来源:互联网 发布:windows安装 nvidia 编辑:程序博客网 时间:2024/06/06 21:54

一、plugin

新版本添加plugin 需要package.json文件。
首先安装plugman

sudo npm install -g plugman//查看是否安装成功plugman -v
cd 【插件地址】sudo plugman createpackagejson [插件]

1、iOS

插件的创建一般涉及以下几个文件:
< plugin >.js 、plugin.xml、及实现文件 oc.m、oc.h。
JavaScript部分使用cordova.exec方法,如下所示:

exec(<successFunction>, <failFunction>, <service>, <action>, [<args>]);

发送一个请求从UIWebView到iOS原生部分,调用action方法,在service类,传入args参数。
plugin.xml文档标记如下:

<feature name="LocalStorage">    <param name="ios-package" value="CDVLocalStorage" /></feature>

name属性匹配JavaScript中exec调用的service参数。value属性匹配实现文件的类名。
方法的具体实现,不做介绍了,给个官方例子:

- (void)myMethod:(CDVInvokedUrlCommand*)command{    CDVPluginResult* pluginResult = nil;    NSString* myarg = [command.arguments objectAtIndex:0];    if (myarg != nil) {        pluginResult = [CDVPluginResult resultWithStatus:CDVCommandStatus_OK];    } else {        pluginResult = [CDVPluginResult resultWithStatus:CDVCommandStatus_ERROR messageAsString:@"Arg was null"];    }        [self.commandDelegate sendPluginResult:pluginResult callbackId:command.callbackId];}

2、Android

JavaScript调用cordova.exec方法:

exec(<successFunction>, <failFunction>, <service>, <action>, [<args>]);

发送一个请求从web视图到Android原生部分,调用action方法,在service类,传入args参数。
plugin.xml文档标记如下:

<feature name="<service_name>">        <param name="android-package" value="<full_name_including_namespace>" /></feature>

name属性匹配JavaScript中exec调用的service参数。value属性匹配java类的完全限定命名空间识别码。

二、Set User Agent in Cordova App

查看平台版本号:

cordova platform list

如果使用的cordova平台版本大于4.0可以在config.xml中修改:

<preference name="OverrideUserAgent" value="Mozilla/5.0 My Browser" />
原创粉丝点击