cordova调用ios原生(js调用swift)
1.在Plugins文件夹中创建一个swift文件说明:1.父类选CDVPlugin2.在弹出的提示框中选择创建桥接文件import Foundation@objc(XXSwiftPlugin) class XXSwiftPlugin: CDVPlugin {@objc func getContent(command:CDVInvokedUrlComman...
·
文章目录
1.在Plugins文件夹中创建一个swift文件
说明:1.父类选CDVPlugin
2.在弹出的提示框中选择创建桥接文件
import Foundation
@objc(XXSwiftPlugin) class XXSwiftPlugin: CDVPlugin {
@objc func getContent(command:CDVInvokedUrlCommand){
var pluginResult:CDVPluginResult?
let password = command.argument(at: 0) as? String;
//CDVCommandStatus_OK
pluginResult = CDVPluginResult(status: CDVCommandStatus_ERROR, messageAs: "综合处理后的结果是:swift_"+password!);
self.commandDelegate.send(pluginResult, callbackId: command.callbackId);
}
}

2.在桥接文件中引入Cordova/CDV.h
2.在桥接文件中引入#import <Cordova/CDV.h>
#import <Cordova/CDV.h>

3.在config.xml文件中加入
1
<feature name="XXSwiftPlugin">
<param name="ios-package" value="XXSwiftPlugin" />
</feature>

4.在js文件中调用swift方法
1
$(".toIos").on("click",function(){
console.log("跳转到ios");
var password = $(".toIos").html();
function success(message){
//CDVPluginResult(status: 后面的参数选CDVCommandStatus_OK会回调这个方法
console.log("成功");
console.log(message);
}
//message的值是:综合处理后的结果是:swift_跳到ios界面
function fault(message){
//CDVPluginResult(status: 后面的参数选CDVCommandStatus_ERROR会回调这个方法
console.log("失败");
console.log(message);
}
//这里参数的方法名要写getContentWithCommand,因为swift转oc的过程中会加WithCommand
Cordova.exec(success,fault,"XXSwiftPlugin","getContentWithCommand",[password]);
})

5.相关截图



6.在xcode中打开cordova项目

参考博客:
链接:
Cordova - 与iOS原生代码交互1(通过JS调用Swift方法)
链接: 使用Swift开发Cordova插件遇到的问题
更多推荐


所有评论(0)