2

本文不是插件详解,只是罗列公司上线项目中使用到的各种插件以及碰到的坑,如果像详细了解一个插件建议去其官方 github 查看。

ionic 插件的安装方法:ionic plugin add pluginName

我自己查找插件的方式:首先 ngcordova,然后是 cordova 官方(cordova 官方有点坑,千万注意自己的 cordova 版本,不要找到万年不更的插件,发现老是搞不出来)。

插件是各种原生代码写成的,所以建议 ionic 开发者们有空可以多看看原生,如果碰到坑可以自己改改。

cordova-plugin-app-version

app版本插件,用于提示 app 更新。

使用方式:

获取版本号:cordova.getAppVersion.getVersionNumber()

tips:iOS 就不要做版本检查了,因为 app 会被要求去除该功能!!!

cordova-plugin-console

看名字就懂了,就是把 js 文件的 console 让你在 xcode 或者 android studio 控制台里看到 js 的console。

tips:调试神器。

cordova-plugin-geolocation

这个插件非常屌,调用原生 api 并把接口做成了 w3c 标准,简单说就是你的定位相关代码只需要写一次,就能在 app 和浏览器两端跑。

document.addEventListener("deviceready", onDeviceReady, false);
function onDeviceReady() {
    console.log("navigator.geolocation works well");
}

deviceready 需要依赖于 cordova-plugin-device 插件。

tips:

  • iOS 设备支持度非常高,定位效果也不错,android 部分设备无法获取定位。如果对于定位要求很高,最好结合原生做。

  • 必须要按上面例子当中在 deviceready 出发后来完成定位,不然会出现 iOS 上提示两次的问题。

cordova-plugin-inappbrowser

在 app 里面打开网页就需要这个插件了。用法类似 geolocation 一样,他做了兼容,直接使用 window.open 即可。

tips:ionic 当中 a 标签 tel 呼出拨号的时候会有问题,需要写成这样:click 事件里 window.open("tel:" + 800xxxxxxx, "_system");

cordova-plugin-splashscreen

进入 app 的那个画面就是用的这个插件啦。

tips:ionic 提供了 ionic resource 的图片工作流,也就是他会自动生成各种尺寸的 splash 图片。但需要注意的是,你需要在 xml.config 当中添加完整,不然会出现部分机型有图片,部分机型仍旧是cordova logo 的情况。

cordova-plugin-statusbar

状态栏插件,支持开发者定义状态栏。使用方式参考 readme 即可,简单实用的一个插件。

ionic-plugin-keyboard

键盘插件,就是让 app 里的输入框能弹出键盘的。这是 ionic 作者自己的项目,我就不多说什么了吧。

tips:app 初始化定义一下就可以了。

cordova.plugins.Keyboard.hideKeyboardAccessoryBar(true);
cordova.plugins.Keyboard.disableScroll(true);

cordova-plugin-x-toast

原生 toast 提示,用安卓的应该都知道,原生的 app 那种提示,ionic 也能做哦。用法很多,请参考其 github。

tips: ngcordova 下的,所以直接用 $cordovaToast 即可。


flashback
515 声望26 粉丝

引用和评论

0 条评论