Cordova 插件详解

添加插件

插件,可以使应用获得与设备级别交流的能力,提供了原生组件的接口。你可以自己设计插件,如,设计一个混合了 Cordova WebView 和原生组件的 hybrid 应用(详见 * 嵌入 WebViews插件开发指南
3.0 版本后,创建一个 Cordova 是不会存在任何插件的,你需要按照需要显示的添加插件。
可以在 http://plugins.cordova.io/ 查找插件,其中也包含第三方的插件。CLI 也能支持插件的查找。例如使用关键字bar、code 进行查找。

$ cordova plugin search bar code

com.phonegap.plugins.barcodescanner - Scans Barcodes

如果只是使用关键字bar,则查找结果为

cordova-plugin-statusbar - Cordova StatusBar Plugin
cordova plugin add

命令是用来添加插件的,比如

  • 基本设备信息(设备 API):
$ cordova plugin add cordova-plugin-device
  • 网络连接和电池事件:
$ cordova plugin add cordova-plugin-network-information
$ cordova plugin add cordova-plugin-battery-status
  • 网络连接和电池事件:
$ cordova plugin add cordova-plugin-network-information
$ cordova plugin add cordova-plugin-battery-status
  • 加速度计,指南针,和地理位置:
$ cordova plugin add cordova-plugin-device-motion
$ cordova plugin add cordova-plugin-device-orientation
$ cordova plugin add cordova-plugin-geolocation
  • 相机,媒体播放和捕捉:
$ cordova plugin add cordova-plugin-camera
$ cordova plugin add cordova-plugin-media-capture
$ cordova plugin add cordova-plugin-media
  • 在设备或者网络上访问文件(File API):
$ cordova plugin add cordova-plugin-file
$ cordova plugin add cordova-plugin-file-transfer
  • 通过对话框或振动通知:
$ cordova plugin add cordova-plugin-dialogs
$ cordova plugin add cordova-plugin-vibration
  • 联系方式:
$ cordova plugin add cordova-plugin-contacts
  • 全球化:
$ cordova plugin add cordova-plugin-globalization
  • 闪屏:
$ cordova plugin add cordova-plugin-splashscreen
  • 打开一个新的浏览器窗口 (InAppBrowser):
$ cordova plugin add cordova-plugin-inappbrowser
  • 控制台调试:
$ cordova plugin add cordova-plugin-console

:CLI 增加适合各个平台的插件代码。如果你想开发具有较低级别的 shel l工具或平台的 SDK,你需要运行 Plugman 工具来为每个平台单独添加的插件。 (请参阅使用 Plugman 来管理插件。)
plugin ls (或 plugin list, 或 plugin)查看当前已安装的插件。以唯一标识做为显示:

$ cordova plugin ls    # or 'plugin list'
[ 'cordova-plugin-console' ]

移除时,也用唯一标识来移除

$ cordova plugin rm cordova-plugin-console
$ cordova plugin remove cordova-plugin-console    # same

可以批量添加或者移除:

$ cordova plugin add cordova-plugin-console cordova-plugin-device

高级插件选项

添加插件时,@制定版本:

$ cordova plugin add cordova-plugin-console@latest
$ cordova plugin add cordova-plugin-console@0.2.1

非 registry.cordova.io注册的插件,也从其他 git 库添加:

$ cordova plugin add https://github.com/apache/cordova-plugin-console.git

#来指定一个标签(tag)

$ cordova plugin add https://github.com/apache/cordova-plugin-console.git#r0.2.0

或者一个分支:

$ cordova plugin add https://github.com/apache/cordova-plugin-console.git#CB-8438cordova-plugin-console

或者是一个提交:

$ cordova plugin add https://github.com/apache/cordova-plugin-console.git#f055daec45575bf08538f885e09c85a0eba363ff

如果插件(以及 plugin.xml 文件 ),是在 git 库的子目录,使用:

$ cordova plugin add https://github.com/someone/aplugin.git#:/my/sub/dir

当然也能做如下合并:

$ cordova plugin add https://github.com/someone/aplugin.git#r0.0.1:/my/sub/dir

或者,指定一个包含 plugin.xml 文件的本地插件目录:

$ cordova plugin add ../my_plugin_dir

使用 merges 自定义每个平台

虽然 Cordova 让您可以轻松地部署应用程序在许多不同的平台上,有时你需要添加一些自定义功能。在这种情况下,你不希望修改各种platforms目录下的 www 目录中的源文件,因为他们经常会被顶级www目录的跨平台源所取代。

取而代之的是,顶层merges目录提供指定资源来部署在特定平台上的地方。merges镜像中的每个特定平台的子目录反映了www源代码树的目录结构,使您能够覆盖或根据需要添加文件。例如,下面演示了如何使用merges以提高 Android 和Amazon Fire OS 设备的默认字体大小:

  • 编辑 www/index.html, 添加额外的 CSS 文件 overrides.css:
<link rel="stylesheet" type="text/css" href="css/overrides.css" />
  • 可选创建一个空的www/css/overrides.css文件,应用于非 Android 的构建, 防止文件丢失的错误。
  • 在merges/android 下创建一个css子目录,再加入相应的overrides.css文件。在www/css/index.css中指定的字体大小,例如:
body { font-size:14px; }

在重构项目中,Android 版本采用了自定义字体大小,而其他的维持不变。
还可以使用的merges来添加不存在于原始www目录中的文件。例如,一个应用程序可以将一个“后退按钮”图形插入iOS界面,存储在merges/ios/img/back_button.png,而 Android 版本,可以改为从相应的硬件按钮事件捕捉backbutton

帮助命令

遇到问题,请呼唤“帮助”。执行:

$ cordova help
$ cordova        # same

此外,你可以得到一个更详细的帮助。 例如

$ cordova run --help

info 命令产生的潜在有用的信息,如当前已安装的平台和插件,每个平台 SDK 版本,CLI 和 Node.js的版本信息列表:

$ cordova info

它既在屏幕上展示信息,并输出到本地info.txt。
:目前,仅适用于 iOS 和 Android 平台的详细信息。

更新 Cordova 和你的项目

使用如下命令更新 cordova:

$ sudo npm update -g cordova

安装特定版本

$ sudo npm install -g cordova@3.1.0-0.2.0

运行cordova -v来查看当前运行的版本, to see which version is currently running. 运行 npm info 来获取当前版本以及可用版本的信息:

$ npm info cordova

Cordova 3.0 是支持本节所述的命令行界面的第一个版本。如果您是从之前的版本更新到 3.0,则需要如上所述创建一个新的项目,那么旧的应用程序的资源复制到顶层www目录。有关升级到 3.0 的进一步的细节,参考平台开发指南。一旦您升级到cordova 的命令行界面,并使用 npm update 保持同步。

Cordova 3.0+ 可能仍然会有各种变化,包括项目级目录结构和其他依赖。在运行 npm命令来更新 Cordova 本身后,你可能需要确保项目的资源是符合最新版本的要求。运行命令,如下:

$ cordova platform update android
$ cordova platform update ios
...etc.
  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值