Cordova备忘录

一、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" />

猜你喜欢

转载自blog.csdn.net/tianxiawoyougood/article/details/77503953