WeX5的混合模式底层基于cordova/phonegap,所以开发本地插件只需要按照相应规范就可以,由于BeX5基于WeX5,所以本文档也适用于BeX5。

一、如何使用本地插件(Cordova plugin)

在需要使用插件的页面对应的js中,如下代码引用:

1
2
3
4
require("$UI/system/lib/cordova/cordova");
//cordova运行环境,多个页面用cordova插件,每个页面都需要require进来
require("cordova!com.phonegap.plugins.barcodescanner");
//使用的cordova插件

再参考插件的文档,书写对应的js。例如二维码插件barcodesacnner,代码如下:

1
2
3
4
5
6
7
8
9
10
11
12
//扫描二维码,返回二维码信息
cordova.plugins.barcodeScanner.scan(
 function (result) {
 alert("We got a barcode\n" +
 "Result: " + result.text + "\n" +
 "Format: " + result.format + "\n" +
 "Cancelled: " + result.cancelled);
 },
 function (error) {
 alert("Scanning failed: " + error);
 }
);

二、插件列表见下表

其中:

“所在位置”为studio.exe(也就是IDE工具中)“Native/plugins”文件夹下;

“调用名称”为JS调用时使用到的名称;

“参数”,如果需要参数,那么在打包为APP应用的时候,需要进行参数的填写;

“案例路径”,为studio.exe(也就是IDE工具中)具体案例所在路径。

注意:

1、部分插件在目前发布的V3.2.1中没有包含,这部分会在下个版本中带上,如果需要在V3.2.1中使用,请直接下载后覆盖对应目录:插件下载

2、插件相关说明,均在对应插件“所在位置”目录下的xdoc文件中,详细使用方法请参考对应文档。

插件名称功能描述详情
支付宝支付 阿里支付本地扩展插件 所在位置:com.justep.cordova.plugin.alipay调用名称:navigator.alipay参数:需要案例路径:/UI2/takeout
银联支付 银联支付本地扩展插件 所在位置:com.justep.cordova.plugin.unionpay调用名称:navigator.unionpay案例路径:/UI2/takeout
 微信支付(分享)  微信v3本地扩展插件,包括微信支付和微信分享 所在位置:com.justep.cordova.plugin.weixin.v3调用名称:navigator.weixin参数:需要案例路径:/UI2/takeout
 下载插件  下载多个或单个文件,可以进行校验的一致性或下载完成自动解压文件 所在位置:de.fastr.phonegap.plugins.downloader调用名称:window.downloader案例路径:/UI2/demo/native/downloader
 本地文件插件  本地文件插件,提供对本地文件的存取操作,该插件基于html5的File 所在位置:org.apache.cordova.file调用名称:window.File案例路径:/UI2/takeout
 文件打开插件  在app中使用默认打开方式打开本地文件  所在位置:org.apache.cordova.file-opener2调用名称:cordova.plugins.fileOpener2案例路径:/UI2/demo/native/fileOpener
 本地文件传输  本地文件传输插件,提供文件的上传下载操作  所在位置:org.apache.cordova.file-transfer调用名称:window.FileTransfer
 文件打开  在app中用打开音频,视频,图片或其他格式的文件等,支持本地文件和远程文件 所在位置:org.apache.cordova.open调用名称:cordova.plugins.disusered案例路径:/UI2/demo/native/open
 打开文档插件  打开文档插件,下载指定url的文档并使用系统注册过的应用打开 所在位置:ch.ti8m.documenthandler调用名称:window.handleDocumentWithURL
 md5校验  读取大文件并生成md5sum增量 所在位置:de.fastr.phonegap.plugins.md5chksum
调用名:window.md5chksum
 极光推送 具体使用方法:极光JPush插件使用流程 所在位置:cn.jpush.phonegap.JPushPlugin调用名称:window.plugins.jPushPlugin参数:需要

 

案例路径:/UI2/takeout

 近场通讯  近场通讯插件,仅支持Android 所在位置:com.chariotsolutions.nfc.plugin调用名称:window.nfc
 百度定位  百度定位插件 所在位置:com.justep.cordova.plugin.baidulocation调用名称:navigator.baiduLocation
 地理位置  地理位置位置插件,提供地理位置信息,依赖百度定位插件 所在位置:org.apache.cordova.geolocation调用名称:navigator.geolocation案例路径:/UI2/demo/native/geolocation
 社交分享  分享插件,可分享文本、图片等文件,并关联打开本地注册过的可分享类型 所在位置:nl.x-services.plugins.socialsharing调用名称:plugins.socialsharing
 二维码扫描  二维码、条形码扫描插件 所在位置:com.phonegap.plugins.barcodescanner
调用名称:cordova.plugins.barcodeScanner
 视频播放插件  视频播放插件,支持本地路径和http://路径 所在位置:com.phonegap.plugins.videoplayer调用名称:cordova.plugins.videoPlayer案例路径:/UI2/demo/native/videoplayer
 状态栏  状态栏本地插件,用来控制状态栏的显示方式 所在位置:org.apache.cordova.statusbar调用名称:window.StatusBar参数:需要
 Http请求  Http请求插件,使用本地接口发送http请求,这将提供跨域的ajax调用  所在位置:plugin.http.request调用名称:navigator.plugins.HttpRequest
 内置浏览  内置浏览本地插件,类似浏览器中js的window.open,用指定模式打开url 所在位置:org.apache.cordova.inappbrowser调用名称:window.open
 蓝牙  蓝牙插件,提供对蓝牙设备的监听和使用 所在位置:com.megster.cordova.ble调用名称:window.ble
 照相机  照相机本地插件,调用照相机获取图片 所在位置:org.apache.cordova.camera调用名称:navigator.camera案例路径:/UI2/demo/native/camera
 设备信息  设备信息本地插件,获取设备信息,包括操作系统类型和版本、设备uuid等 所在位置:org.apache.cordova.device调用名称:window.device
 设备传感器  加速器本地插件,获取设备加速器(acceleration)信息 所在位置:org.apache.cordova.device-motion调用名称:navigator.accelerometer案例路径:/UI2/demo/native/accelerometer
 指南针  电子罗盘本地插件,获取设备方向信息 所在位置:org.apache.cordova.device-orientation调用名称:navigator.compass
 联系人  联系人本地插件,获取设备联系人信息 所在位置:org.apache.cordova.contacts调用名称: navigator.contacts
 声音设备  本地声音设备插件,用于播放声音、控制音量等 所在位置:org.apache.cordova.media调用名称:window.Media案例路径:/UI2/demo/native/audio
 多媒体文件录制  多媒体录制本地插件,用于捕获图片、录制声音和视频 所在位置:org.apache.cordova.media-capture调用名称: navigator.device.capture
 电池状态   电池状态插件,监控设备电池状态 所在位置:org.apache.cordova.battery-status调用名称: navigator.battery
 屏幕旋转  控制屏幕旋转方向 所在位置:net.yoik.cordova.plugins.screenorientation调用名称:window.plugins.screen案例路径:/UI2/demo/native/screenorientation
 屏幕常亮插件  使屏幕禁止睡眠 所在位置:nl.x-services.plugins.insomnia调用名称: plugins.insomnia
 设备震动  震动本地插件,调用设备进行震动 所在位置:org.apache.cordova.vibration调用名称:navigator.notification
 本地日历插件  用于调用本地日历,设置活动相关操作 所在位置:nl.x-services.plugins.calendar调用名称:plugins.calendar案例路径:/UI2/demo/native/calendar
 本地浮动框提示  浮动提示插件,弹出本地浮动提示框 所在位置:nl.x-services.plugins.toast调用名称: plugins.toast
 本地等待和进度对话框  基于Spinner提供的本地等待和进度对话框 所在位置:hu.dpal.phonegap.plugins.SpinnerDialog调用名称: plugins.spinnerDialog
 本地选项卡  本地选项卡插件,用来展示一组本地选项列表 所在位置:nl.x-services.plugins.actionsheet调用名称:plugins.actionsheet案例路径:/UI2/demo/native/actionsheet
 本地对话框  本地对话框插件,提供提醒(alert)、询问(confirm, prompt)和蜂鸣音(beep)的本地调用 所在位置:org.apache.cordova.dialogs调用名称:navigator.notification
 SQLite插件  SQLite插件,提供本地数据库的存储 所在位置:com.brodysoft.sqlitePlugin调用名称:window.SQLitePlugin案例路径:/UI2/demo/native/sqlite
 app缓存清除插件  清除app缓存 所在位置:at.modalog.cordova.plugin.cache调用名称:window.cache案例路径:/UI2/demo/native/clearCache
 应用安装状态  应用安装状态插件, 通过URI Scheme (iOS) 或者包名(Android)判断指定的应用是否已安装 所在位置:com.ohh2ahh.plugins.appavailability调用名称: window.appAvailability
 app后台运行  app后台运行插件,防止app在后台进入睡眠状态 所在位置:de.appplant.cordova.plugin.background-mode调用名称:cordova.plugins.backgroundMode案例路径:/UI2/demo/native/backgroundMode
 应用图标数字提醒  应用图标数字提醒。IOS通过应用图标数字进行提醒;Android系统由于系统限制,通过状态栏进行提醒 所在位置:de.appplant.cordova.plugin.badge调用名称:plugin.notification.badge案例路径:/UI2/demo/native/badge
 获取app版本相关信息  获取app版本相关信息  所在位置:uk.co.whiteoctober.cordova.appversion调用名称: cordova.getAppVersion
 闪屏插件  欢迎页本地插件,默认建议包含。启动本地应用时显示指定的图片  所在位置:org.apache.cordova.splashscreen调用名称: navigator.splashscreen
 国际化  国际化插件,提供语言、日期、货币等本地化信息  所在位置:org.apache.cordova.globalization调用名称:navigator.globalization
 本地转场动画  本地转场动画插件,提供页面间的本地转场动画效果  所在位置:com.telerik.plugins.nativepagetransitions调用名称:plugins.nativepagetransitions案例路径:/UI2/demo/native/barcode
 复制粘贴  复制粘贴文本  所在位置:com.verso.cordova.clipboard调用名称:cordova.plugins.clipboard案例路径:/UI2/demo/native/clipboard
 自定义URL协议  自定义指定的协议类型URL_SCHEME,并通过handleOpenURL回调进行接管。例如指定协议mycoolapp,则将接管mycoolapp://xxx  所在位置:nl.x-services.plugins.launchmyapp调用名称:window.plugins.launchmyapp参数:需要
 console  提供全局对象console,通过console.log()记录日志  所在位置:org.apache.cordova.console调用名称:window.console
键盘插件  键盘插件,用来显示隐藏键盘及其他关于键盘的操作  所在位置:org.apache.cordova.keyboard调用名称:window.Keyboard案例路径:/UI2/demo/native/keyboard
网络信息 网络信息本地插件,获取网络连接信息 所在位置:org.apache.cordova.network-information调用名称:navigator.connection
隐私屏幕 隐私屏幕插件,本插件无调用接口,包含即可。包含后,如果用应用管理程序切换应用时将不会看到当前应用的屏幕快照 所在位置:org.devgeeks.privacyscreen调用名称:案例路径: