热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

PhoneGap/Cordova插件开发入门(iOS)

首页我们要创建一个Cordova项目,并导入到Xcode中。假设我们需要创建一个TestPlugin插件,包含一个test方法。在Plugins文件夹下创建estPlugin.h和

首页我们要创建一个 Cordova 项目,并导入到 Xcode 中。

假设我们需要创建一个 TestPlugin 插件,包含一个 test 方法。在 Plugins 文件夹下创建 estPlugin.h 和 TestPlugin.m 文件,并输入下面的代码:

/********* TestPlugin.h Cordova Plugin Header *******/

@interface TestPlugin : CDVPlugin

– (void)test:(CDVInvokedUrlCommand *)command;

@end

/***************** TestPlugin.m ********************/

#import “TestPlugin.h”

@implementation TestPlugin

– (void)test:(CDVInvokedUrlCommand *)command

{

UIAlertView  *alertview = [[UIAlertView alloc] initWithTitle:@”标题”message:@”Hello world!” delegate:self  cancelButtonTitle:@”取消” otherButtonTitles:@”确定”, nil];

[alertview show];

}

@end

提示一下对Objective C语言不熟悉的朋友,类文件都是拆分为h和m两部分,h包含了对类和方法的定义,m包含了具体实现。而我们常用的Java和PHP是将类的定义和实现放在一个文件中。上面的插件我们只提供一个test方法,它的功能是显示一个原生的提示框。

下面,我们需要将插件的信息写入配置文件,Cordova才能找到插件。打开Staging文件夹下的config.xml文件,在widget标签下输入:

《PhoneGap/Cordova插件开发入门(iOS)》

这样就完成了Javascript和Objective C的桥接,大功告成,我们可以使用Javascript来调用TestPlugin插件了。

cordova.exec(null,null,”TestPlugin”,”test”,[]);

上面的代码调用了插件的test方法,如果一切操作正确的话,你将看到一个类似于confirm的提示框。

一个最简单的Cordova插件就开发完成了.


推荐阅读
  • 作为一名在大型手机游戏公司工作的程序员,尽管主要负责游戏逻辑和内容的开发,但对iOS底层开发接触较少。现在有了iPhone和可以虚拟MAC环境的电脑,希望能找到有效的iOS开发学习路径。 ... [详细]
  • 本文详细介绍如何在 macOS 上编译 FFmpeg 3.1.1,并将其集成到 iOS 项目中,包括必要的环境配置和代码示例。 ... [详细]
  • 本文详细介绍了如何在iOS5中创建和理解简单的Hello World应用,包括Interface Builder的使用、Objective-C源代码文件的结构以及事件处理机制。 ... [详细]
  • 本文总结了在使用React Native开发过程中遇到的一些常见问题及其解决方法,包括配置错误、依赖问题和特定组件的使用技巧。 ... [详细]
  • iOS中UITabBar与UINavigationController的集成及样式自定义
    探讨如何在iOS开发中有效结合UITabBarController和UINavigationController,并实现自定义样式。项目源码已托管至GitHub:https://github.com/zcsoft/ZCTabNav ... [详细]
  • 本文介绍了iOS应用开发的主要框架,包括Foundation、UIKit、CoreData及CoreGraphics等,并探讨了开发iOS应用所需的硬件和软件环境,以及推荐的编程语言。 ... [详细]
  • 在现代移动应用开发中,尤其是iOS应用,处理来自服务器的JSON数据是一项基本技能。无论是使用Swift还是PHP,有效地解析和利用JSON数据对于提升用户体验至关重要。本文将探讨如何在Swift中优雅地处理JSON,以及PHP中处理JSON的一些技巧。 ... [详细]
  • 如何恢复CAD中意外丢失的图纸数据
    当使用CAD进行绘图时,因突然断电或其他原因导致计算机关闭可能会造成工作数据的丢失。然而,通过利用CAD软件的自动保存功能,用户通常能够恢复至最近一次自动保存的数据状态。 ... [详细]
  • NameNode内存优化基于缓存相同文件名的方法
    NameNode内存优化基于缓存相同文件名的方法Namenodeheapoptimizationreuseobjectsforcommonlyuse ... [详细]
  • 智慧城市建设现状及未来趋势
    随着新基建政策的推进及‘十四五’规划的实施,我国正步入以5G、人工智能等先进技术引领的智慧经济新时代。规划强调加速数字化转型,促进数字政府建设,新基建政策亦倡导城市基础设施的全面数字化。本文探讨了智慧城市的发展背景、全球及国内进展、市场规模、架构设计,以及百度、阿里、腾讯、华为等领军企业在该领域的布局策略。 ... [详细]
  • 本章探讨了使用固定数组实现栈和队列的基本方法,以及如何通过这些基本结构来实现更复杂的操作,如获取栈中的最小值。此外,还介绍了如何利用栈来模拟队列的行为,反之亦然。 ... [详细]
  • iOS 10 系统下 AVPlayer 视频播放故障排除
    在使用 iOS 10 系统时,如果遇到 AVPlayer 无法正常播放视频的问题,这可能是由于 Xcode 中异常处理设置不当导致的。本文将详细探讨如何调整 Xcode 设置以解决这一问题。 ... [详细]
  • 本文档提供了在iOS开发中使用OClint进行静态代码分析的详细步骤,包括安装、更新和使用方法,以及相关资源链接。 ... [详细]
  • 本文探讨了如何在字符串中无条件地将一个值替换为另一个值,即使原值不断变化。例如,无论原始值是2、4还是5,都能将其成功替换。 ... [详细]
  • 代码生成器实战教程:提升编程效率的利器
    本系列文章旨在通过一系列实践案例,详细介绍如何利用代码生成器提高开发效率。本文将引导您完成从下载安装到实际应用的全过程。 ... [详细]
author-avatar
你眼眸下的伤谁能读懂UPV
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有