zoukankan      html  css  js  c++  java
  • 基于PhoneGap3.4框架的iOS插件的实现

    Phonegap 提供了iOS 设备的基础特性接口来供HTML页面调用,可是这些基础接口不能满足我们的一些特殊需求,所以有时候我们须要开发插件来扩展其功能。

    基于PhoneGap3.4框架的iOS插件开发。主要分下面几个步骤:

    1)搭建PhoneGap3.4的iOS开发环境,搭建步骤參考此文章

    2)编写.h头文件,演示样例代码例如以下:

    #import <Cordova/CDVPlugin.h>

    @interface CDVLogin : CDVPlugin
        - (void)login:(CDVInvokedUrlCommand*)command;
    @end

    3)编写.m源码文件。演示样例代码例如以下:

    #import "CDVLogin.h"

    @implementation CDVLogin
       - (void)login:(CDVInvokedUrlCommand*)command{
        NSString *echo = @"NIL";
         //插件返回值
        CDVPluginResult *pluginResult = nil;
        //获取传递过来的參数
        NSString *param = [command.arguments objectAtIndex:0];
       Boolean  loginStatus = [self  loginSystem:param];
        if(loginStatus){
            echo = @"YES";
     //成功时插件的返回值
            pluginResult = [CDVPluginResult resultWithStatus:CDVCommandStatus_OK messageAsString:echo];
        }else{
            echo = @"NO";
     //失败时插件的返回值
            pluginResult = [CDVPluginResult resultWithStatus:CDVCommandStatus_ERROR messageAsString:echo];
        }
        [self.commandDelegate sendPluginResult:pluginResult callbackId:command.callbackId];
       
    }
    -(Boolean) loginSystem:(NSString *)para
    {
        return YES;
    }
    @end

    4)在config.xml 里注冊插件,例如以下:

    <feature name="Login">
            <param name="ios-package" value="CDVLogin"/>
        </feature>

    5)js调用,例如以下:

    var CustomPlugin = {
        callNativeMethod: function (success, fail, param) {
            var exec = cordova.require("cordova/exec");
            return exec(success, fail,"Login","login",[param]);
        }
    };

    function callNativePlugin( param ) {
        CustomPlugin.callNativeMethod( nativePluginResultHandler, nativePluginErrorHandler, param );
    }
    function nativePluginResultHandler (result) {
        // alert("SUCCESS: " + result);
    }
    function nativePluginErrorHandler (error) {
        if(error == "NO"){
            alert("调用失败!");
        }

  • 相关阅读:
    第一章复习(已完结)
    复习——第二章(施工完成,哪里总结的不全或是有问题欢迎指出)
    实验九
    实验五
    实验四
    实验三
    实验二
    实验一
    汇编语言第二章
    【C# 大写金额转阿拉伯数字】大写金额转数值
  • 原文地址:https://www.cnblogs.com/wzzkaifa/p/6739297.html
Copyright © 2011-2022 走看看