cordova插件,H5页面中如何调用cordova的插件?
cordova插件,H5页面中如何调用cordova的插件?详细介绍
本文目录一览: cordova的插件怎么引用
4、ng-cordova安装与使用
4.1、下载ng-cordova
bower install ngCordova
4.2、引入ng-cordova.js文件
把 ng-cordova.js 或者 ng-cordova.min.js引入index.html中并放在cordova.js之前, AngularJS Ionic 文件之后 (因为ngCordova d依赖AngularJS).
4.4、引入ng-cordova的依赖
在主程序的app.js中引入ng-cordova的依赖
angular.module('myApp', ['ngCordova'])
4.5、添加插件到你的Cordova CLI环境中
cordova plugin add ...
4.6、使用
要在检查设备准备完毕之后使用
document.addEventListener("deviceready", function () {
$cordovaPlugin.someFunction().then(success, error);
}, false);
// OR with IONIC
$ionicPlatform.ready(function() {
$cordovaPlugin.someFunction().then(success, error);
});
不过我测试过,因为已经run过了,你的各种功能肯定在这之后,所以之后在哪用都可以。不过要是有些功能是启动应用就要有,还是要写在这里面的。
?
angular.module('starter', ['ionic', 'route','config','global','commonJs','ngCordova'])
.run(['$ionicPlatform','$rootScope', '$location', '$timeout', '$ionicHistory','CommonJs','$cordovaToast',function($ionicPlatform,$rootScope, $location, $timeout, $ionicHistory,CommonJs,$cordovaToast) {
$ionicPlatform.ready(function() {
// Hide the accessory bar by default (remove this to show the accessory bar above the keyboard
if (window.cordova && window.cordova.plugins && window.cordova.plugins.Keyboard) {
cordova.plugins.Keyboard.hideKeyboardAccessoryBar(true);
}
if (window.StatusBar) {
// org.apache.cordova.statusbar required
StatusBar.styleLightContent();
}
});
}]);
ionic框架优缺点?
(一)Hybrid(混合)模式开发的应用自有的性能缺陷。
由于应用的逻辑执行是基于浏览器所带的JavaScript动态代码在界面主线程上执行,因此在低端Android设备上性能缺陷严重,用户操控时卡顿感很明显。好在随着Android系统设备提供商的硬件跑分残酷竞争,目前市面所售的智能手机使用Ionic开发出的APP应用与原生应用相比已经基本无差异感了。不过即使如此,Ionic也不能用于有较高实时图形响应要求的游戏开发。
(二)深度依赖于AngluarJS框架
AngluarJS框架在为Ionic带来各种好处的同时,也带来了初学者学习,深刻理解的人用起来效率很高,不理解的用了到处是坑的局面。而对AngluarJS框架的深度依赖,也让Ionic在AngluarJS开发团队开发其2.o版本时决定重起炉灶抛弃以前的架构的时候处境尴尬,不得不有点被胁迫地将Ionic框架同步升级为2.o版本,将开发使用的主力语言从JavaScript转为微软主导开发的TypeScript。
(三)深度依赖Cordova插件提供硬件设备的接口
当没有相应的Cordova插件提供想要的硬件设备的接口时,开发人员需要自己分别编写IOS和Android平台的插件。当然这种情形出现的几率并不大。
(四)Windowsphone支持比较弱
Ionic的官方网站已经基本没有关于Windowsphone的开发内容。好在Windowsphone的市场也已经日暮西山,这部分微软死忠用户的价值基本不用惦记了
功能丰富,使用方便,但是比较笨重,比较大
H5页面中如何调用cordova的插件?
可以直接调用cordova的api。
如果你不需要调用api,你的h5只需要放到cordova相应的目录,简单修改配置就可以了。
最好是通过npm安装并生成手机安装包,具体用法官网上有。
怎样修改Nodejs内置npm默认配置
这次给大家带来怎样修改Nodejs内置npm默认配置,修改Nodejs内置npm默认配置的注意事项有哪些,下面就是实战案例,一起来看一下。Nodejs 内置的npm默认会把模块安装在c盘的用户AppData目录下(吐槽一下:不明白为啥现在的软件都喜欢把资源装在这里)C盘这么小,肯定是不行的,下面一步步修改到D盘1.打开cmd命令行,查看当前配置输入 npm config ls先看一下当前npm的配置环境,由于我已经修改过,所以可以看到修改后的路径2.修改路径这里需要修改两个路径,module路径和cache路径module对应prefixcache对应cache首先在别的盘新建两个目录D:\nodejs\node_modules\npm\node_global_modulesD:\nodejs\node_modules\npm\node_cache然后依次执行npm config set prefix"D:\nodejs\node_modules\npm\node_global_modules"npm config set cache"D:\nodejs\node_modules\npm\node_cache"3.修改环境变量新增环境变量 NODE_HOME修改Path,追加 %NODE_HOME%\;%NODE_HOME%\node_modules;%NODE_HOME%\node_modules\npm\node_global_modules\;4.测试一下重新打开一个cmd命令行,安装一个插件试试执行npm install cordova -g// -g意思是安装到全局目录下安装完毕后打开设置的安装路径看下是否成功相信看了本文案例你已经掌握了方法,更多精彩请关注Gxl网其它相关文章!推荐阅读:JS里常见内置函数使用详解如何使用js封装ajax功能函数与用法
怎么查看已经安装的cordova插件
1、打开ie浏览器,点击工具菜单管理加载项命令;
2、点击工具栏和扩展,右侧列表即可查看已安装的控件。
cordova plugins
(蓝牙串口)Bluetooth Serial
该插件可以通过蓝牙进行串行通信。 它是为了在Android或iOS和Arduino之间进行通信而编写的。 Repo(备用): https://github.com/don/BluetoothSerial
1.安装Cordova和Ionic原生插件:
2. 添加插件到app's module
Android iOS Windows Phone 8
connect(macAddress_or_uuid)
Platforms:****ANDROID IOS WINDOWS PHONE 连接到蓝牙设备
****Returns:** Observable
连接订阅,断开连接取消订阅。
connectInsecure(macAddress)
Platforms:****ANDROID 蓝牙设备不安全地连接
****Returns:** Observable
连接订阅,断开连接取消订阅。
disconnect()
断开连接的设备 ****Returns:** Promise
write(data)
Platforms:****ANDROID IOS WINDOWS PHONE 将数据写入串口
****Returns:** Promise
当数据写入时返回promise
available()
Platforms:****ANDROID IOS WINDOWS PHONE 获取可用数据的字节数 ****Returns:** Promise
返回包含可用字节的promise
read()
Platforms:****ANDROID IOS WINDOWS PHONE 从缓冲区读取数据 ****Returns:** Promise
从缓冲区返回数据的promise
readUntil(delimiter)
Platforms:****ANDROID IOS WINDOWS PHONE 从缓冲区读取数据,直到达到定界符
****Returns:** Promise
returns a promise
subscribe(delimiter)
Platforms:****ANDROID IOS WINDOWS PHONE 订阅收到数据时收到通知
****Returns:** Observable
返回一个observable.
subscribeRawData()
Platforms:****ANDROID IOS WINDOWS PHONE 订阅收到数据时收到通知 ****Returns:** Observable
返回一个observable
clear()
Platforms:****ANDROID IOS WINDOWS PHONE 清除缓冲区中的数据 ****Returns:** Promise
完成后返回promise
list()
Platforms:****ANDROID IOS WINDOWS PHONE 列出绑定设备 ****Returns:** Promise
返回一个promise
isEnabled()
Platforms:****ANDROID IOS WINDOWS PHONE 报告蓝牙是否启用 ****Returns:** Promise
返回一个promise
isConnected()
Platforms:****ANDROID IOS WINDOWS PHONE 报告连接状态 ****Returns:** Promise
返回一个promise
readRSSI()
Platforms:****ANDROID IOS WINDOWS PHONE 从连接的外围设备读取RSSI ****Returns:** Promise
返回一个promise
showBluetoothSettings()
Platforms:****ANDROID IOS WINDOWS PHONE 显示设备上的蓝牙设置 ****Returns:** Promise
返回一个promise
enable()
Platforms:****ANDROID IOS WINDOWS PHONE 在设备上启用蓝牙 ****Returns:** Promise
返回一个 promise
discoverUnpaired()
Platforms:****ANDROID IOS WINDOWS PHONE 发现不配对的设备 ****Returns:** Promise
返回一个promise
setDeviceDiscoveredListener()
Platforms:****ANDROID IOS WINDOWS PHONE 订阅蓝牙设备发现通知。 发现过程必须通过discoverUnpaired 来启动功能。 ****Returns:** Observable
返回一个 observable
setName(newName) Platforms:****ANDROID 设置广播到其他设备的可读设备名称
setDiscoverable(discoverableDuration)
Platforms:****ANDROID 使设备可以被其他设备发现
cordova 安装插件,插件数据没有同步添加到 config.xml 中,为什么
不要手动改 cordova3.X之后,插件不能自己手动添加了,手动添加后,只要cordova build,数据立即被抹去. 因此,3.X后要添加插件,需要用 cordova plungin add
cordova.exec 怎么用
在实际的项目开发中,需要用到 cordova 的插件,进行各个不同平台的辅助开发,我们可以通过 plugins.cordova.io 对现有插件的搜索,以及安装。 插件的安装和使用,详细可以通过查阅 Cordova 的官网文档 The Command-Line Interface
2021最新15个App跨平台开发框架
生活,永远不会亏待用心经营它的人。文章目录
1.Flutter2.Ionic3.Reactnative4.ApacheCordova5.Xamarin6.NativeScript7.Node.Js8.AppceleratorTitanium9.SenchaTouch10.CoronaSDK11.AdobePhonegap12.VueNative13.Qt14.CodenameOne15.Monaca作为用户来说,当然希望使用App的时候能够顺畅流利,不可否认的是,使用iOS和Android开发出来的应用非常流畅而且高效,但是缺点就是需要耗费较长的时间来开发,比如同一个App,需要在Android和iOS两端各自开发一遍,确实比较耗费人力和财力。所以人们希望选择使用跨平台应用来解决这一问题。
什么是跨平台应用开发框架?
开发人员可以使用一套相同的代码,一次性地编码即可在多个平台上面运行起来。它减少了开发人员开发应用的时间,并且能够快速地交付。所以目前为止,越来越多的人意识到跨平台应用程序和框架的好处和重要性。
跨平台应用程序开发框架的好处:
一个App适用于多个设备;一个App适用于多个平台;一个App可以在多个应用商店中发布;只需编写一次代码;代码可以跨平台复用;市场分析与测试;快速成型;快速开发;无缝产品维护;统一性、均匀性;2021年最新15个跨平台应用程序开发框架
1.FlutterFlutter由Google开发,它是一个牛逼的开源平台,可用于跨平台应用程序开发。它具有吸引力的原因是:快速的开发,富有表现力的精美UI和类似本机的性能。
使用Flutter的一些公司是Google,eBay,宝马等。
选择Flutter框架进行跨平台应用程序开发的主要原因:
高度稳定DART,AOT编译语言平稳的开发周期强大的热加载功能满足各种需求的UI套件完美匹配的Flutter现在拥有200万用户,并且还在不断增加。2.IonicIonic是用于跨平台应用程序开发的增长最快且领先的开源框架。针对移动设备进行了优化的UI组件库和工具有助于快速构建交互式应用程序。使用Ionic的企业包括GE,空中客车,Panera等。
选择Ionic进行跨平台应用程序开发的主要原因:
开发人员友好庞大的社区角度优势一个代码即可Cordovaedge高标准的UI简化测试根据一份报告,企业高管更喜欢Ionic和ReactNative等解决方案。
3.Reactnative由Facebook在2015年开发的ReactNative可帮助企业使用Swift,ObjectiveC和Java等语言构建类似于本机的应用程序。
使用ReactNative框架的一些企业是Facebook,Skype,Tesla等。
选择React本机框架进行跨平台应用程序开发的主要原因:
现成的组件社区驱动热加载开源ReactNativeforWeb功能高度可靠本地功能易于访问本机UI组件的实现在过去的几年中,大多数公司都信任ReactNative满足混合应用程序的需求。
4.ApacheCordovaApacheCordova是一个著名的跨平台应用程序开发框架,该框架使用Web技术,包括HTML,CSS和JavaScript。
使用ApacheCordova的一些企业是Walmart,Adobe,QrStore等。
选择Cordova框架进行跨平台应用程序开发的主要原因:
可重用代码熟悉的技术强大的社区支持广泛的插件免费和开源离线开发调试实时重载如今,ApacheApacheCordova云因其提供的丰富应用程序体验而被企业广泛使用。
5.XamarinXamarin是.NET平台的扩展,是开发人员和企业最受信任和喜爱的框架之一。Xamarin使用C#开发所有内容。
使用Xamarin跨平台框架的一些企业是阿拉斯加航空,美国癌症协会,JustGiving等。
选择Xamarin框架进行跨平台应用程序开发的主要原因:
开源和免费本机性能用于访问本机功能XAML的基本框架,用于使用C#构建动态移动应用程序用于通用模式的库,例如Model*ViewViewModel(MVVM)具有语法突出显示,代码完成,设计器以及其他专门用于开发移动页面的功能如今,Xamarin已成为满足企业混合应用程序开发需求的最常用平台之一。
6.NativeScriptNativeScript是具有活跃的开发人员社区的开源框架。开源框架用于使用Angular和Vue构建跨平台应用程序,以加快应用程序开发速度。
使用NativeScript框架的一些公司是GeekyAnts,TraverseLLC。,Workbox等。
选择NativeScript框架进行跨平台应用程序开发的主要原因:
一个适用于iOS或Android的代码库。可重复使用的代码具有成本效益轻松访问应用程序Angular,TypeScript或JavaScript的优势易于使用和良好的用户体验低代码开发减少维护简单的Web技能和易于使用的工具使NativeScript成为当今大多数企业的不错选择。
7.Node.JsNode.Js是一种流行的跨平台框架,其运行时框架基于ChromeV8Javascript引擎构建。效率和响应能力是使Node.Js成为企业中流行选择的两个优势。
使用Node.J的一些企业是FacebookMessenger,Twitch,Slack等。
选择Node.Js框架进行跨平台应用程序开发的主要原因:
Node.JsAPI是同步的更快的代码执行过程零缓冲和更快的输出具有事件循环功能的单线程模型开源免费服务器端开发支持和可伸缩性是使Node.Js成为跨平台应用程序开发的首要因素。
8.AppceleratorTitanium开放、可扩展的开发用于创建丰富的应用程序,使AppceleratorTitanium成为企业的第一选择。基于Eclipse的IDE,MVC框架和云服务是其它关键参数,这些参数使该平台非常适合跨平台应用程序开发。
使用该平台的一些企业包括加利福尼亚州的乐高乐园,Pulse,皇后图书馆。
选择AppceleratorTitanium进行跨平台应用程序开发的主要原因:
单一代码库开放源代码基于JavaScript的SDKAppceleratorAlloyMVC框架集成了移动后端即服务与Appcelerator的开放市场集成Titanium环境将帮助公司开发和销售应用程序加快60%,以保持领先于竞争对手的地位。
9.SenchaTouchSenchaTouch通过功能强大的SDK和HTML5广泛的工具包,帮助开发人员为移动和桌面构建一键式应用程序。允许开发人员创建动画和功能用户界面是使该平台成为企业的理想选择其它优势。一些使用SenchaTouch的企业包括布法罗大学Kaseware的LasCumbres天文台。选择SenchaTouch进行跨平台应用开发的主要原因:
更快的布局本本地封装HTML5设备API事件处理可提供更好的触摸响应新型的智能和创新版本系统SenchaTouch已经为10,000多家客户提供了动力,其中60%是《财富》100强公司。
10.CoronaSDKCoronaSDK是一个著名的跨平台框架,适用于希望为移动设备和台式机开发基于游戏的应用程序的公司。使用CoronaSDK构建的一些应用程序包括GunmanTacoTruch,Battle2,ZipZap等。选择CoronaSDK进行跨平台游戏应用程序开发的主要原因:
开源,满足所有需求的强大社区插件基于Lua调用任何本地库资源完全免费,没有任何隐藏费用,费用或特许权使用费,使该平台成为游戏应用程序开发的更好平台
11.AdobePhonegap在开放式网络技术的支持下,AdobePhonegap被广泛用于构建出色的应用程序。借助HTML,CSS和Javascript快速创建应用程序的能力,可以创建神奇的应用程序,从而使该平台成为跨平台应用程序开发的最佳框架之一。使用AdobePhonegap构建的一些应用程序包括TripCase,Untapped,snowbuddy等。
选择AdobePhonegap进行跨平台应用程序开发的主要原因:
健壮的开发社区Phonegap工具集插件库第三方工具PhoneGap始终因其更快的部署速度和丰富的应用程序体验而受到大多数公司的青睐。
12.VueNative另一个有趣的跨平台框架,用于使用JavaScript构建应用程序。Vue.JS被认为是具有成本效益的,并且是当今公司使用它的原因之一。使用Vue.Js框架构建的一些应用程序包括Kitsu,SocialAmnesia,Listmonk。
选择VueNative框架进行跨平台应用程序开发的主要原因:
实时变化同步Swift移动应用程序开发文档对象模型定义良好的生态系统降低学习曲线最小化脚手架Vue.Js广受像三星,高通,信诚等公司使用
13.QtQt拥有一整套全面的高度直观和模块化的C++库类和API,可简化应用程序开发。具有高运行时性能的高可读性,易于维护和可重用的代码使其成为有史以来最佳的跨平台框架之一。使用Qt的企业包括德国汉莎航空公司(LufthansaTechnik),克拉里乌斯(Clarius),费森尤斯(Fresenius)等。
选择Qt进行跨平台应用程序开发的主要原因:
同类最佳的收费标准自己的跨平台IDE丰富的基础启用程序集框架附加组件C,C++,Python,Javascript等许多公司都信任Qt能够提供出色的用户体验。
14.CodenameOneCodenameOne用于构建具有完整后端和前端实施的复杂的真实世界应用程序,并具有便捷性和成本效益。使用CodenameOne来构建应用程序的一些企业有Vision24,BoIGlobalGroup,MathUnderground。
选择CodenameOne进行跨平台应用程序开发的主要原因:
无需特殊硬件和100%可重用的代码可拖放的GUI生成器很好地控制像素并在任何地方绘制完全访问本机OS语言开源和免费有1800应用程序已安装,40k开发人员和1M云构建使该平台成为跨平台应用程序的良好框架发展。
15.MonacaMonaca是最受好评的开放式混合应用程序开发平台,可以立即插入任何现有的工作流程和开发环境中。CloudIDE,用于调试器的CLI和远程在线构建是使该平台最适合企业的其他因素。使用Monaca的一些业务包括Bekfood,WhatsMode,Starnick等。
选择Monaca进行跨平台应用程序开发的主要原因:
灵活的开发环境OnsenUI,用于构建美观,高性能的应用程序远程构建和持续集成强大的调试和测试Cordova电源插件Cordova的后端服务凭借易于使用的工具,服务和UI框架,Monaca被公司广泛用于更快地构建和营销应用程序。
最后,照例安利一波我们的公众号:国民程序员
每天分享GitHub优质开源项目,海量学习资料分享,另外还有程序员副业分享。值得关注!
ios为什么cordova命令安装出错
ios开发环境配置及cordova安装与常用命令
一、ios开发环境配置
1、首先要有台Mac Book,如果有Mac Book,跳过步骤2、3、4,如果没有,执行步骤2、3、4;
2、下载并安装VMware Workstation,最好是下最新版本;
3、下载并安装unlock-all(VMware Workstation默认限制安装Mac虚拟机,需要安装此文件后解除限制);
4、下载Mac OS操作系统的镜像文件(需要是.ios文件)如果下载的是.dmg文件,需要用 anytoiso.exe工具转换成.ios文件,下载完成后在VMware Workstation安装;
5、安装XCode;
6、安装.p12文件;
7、申请bundle id;
8、在XCode中设置开发者账号;
9、在XCode中下载 与bundle id 对应的描述文件;
二、cordova安装与常用命令
1.1安装nodejs
从 nodejs网站 下载并安装,安装成功后,在命令行输入命令:node 或 npm,不报错即可。
1.2 安装cordova
> npm install -g cordova
2.创建工程
a.新建一个文件夹作为工作目录,cmd切换到该路径下
>cd d:\workspace\cordova
b.创建cordova project
>cordova create helloCordova com.hzjava.myCordova HelloCordova
c.添加平台支持
首先进入刚创建的工程根目录
>cd helloCordova
然后
> cordova platforms add ios
> cordova platforms add android
> cordova platforms ls
d.添加插件(根据具体功能添加插件,比如扫码插件、文件操作插件等等,可以去cordova插件库 搜索需要的插件)
> cordova plugin add com.phonegap.plugins.barcodescanner
> cordova plugin add org.apache.cordova.file-transfer
> cordova plugin ls
注意:并非所有插件都是全平台支持的,有些可能只支持android,有些可能同时支持android和ios,所以开发多平台app时需要慎重选择插件
3.项目整合
3.1.Android
a.将静态html文件copy到helloCordova\www目录下
b.编译android工程:
>cordova build android
c.运行eclipse,导入helloCordova\platforms\android路径下的android工程
d.在html里引用cordova的js库:
cordova编译会将[根目录/www]下文件copy到具体platform的www文件夹内,如果你的代码写在platforms里的android中,编译时会被覆盖掉
因为add plugin的时候已经自动添加了相关的配置,所以只要有cordova_plugin.js就不需要手动引用cordova插件的js了。
4.打包
4.1.Android
导入platforms\android下面的工程时,会出现两个project:HelloCordova和HelloCordova-CordovaLib。打包时,将HelloCordova-CordovaLib/bin/hellocordova-cordovalib.jar拷贝到HelloCordova/libs文件夹内,然后右击主工程,选择Export
选择Export Android Application
Keystore可以自己创建一个新的,也可以使用现有的
点击『Finish』成功导出apk
4.2.ios
要打包成任意设备都可以安装的ios安装包(ipa),首先需要一个企业开发者账号($299/年),确认满足以后执行以下步骤:
a.登陆 苹果开发者中心
b.Identifiers >> App IDs,点击「+」号,创建一个app id,填写相关信息下一步即可
c.Provisioning Profiles >> Distribution,点击「+」号,创建一个profile
选择In House
选择一个app id,选择刚刚创建的那个
选择一个certificate
填写profile name
d.下载创建好的profile文件
e.下载步骤c中选择的certificate文件
f.在mac中双击certificate和profile文件将它们导入
g.打开xcode,选中工程,Build Settings >> Code Signing,Code Signing Identity选择注册的公司名
h.Provisioning Profile选择刚刚导入的profile
i.xcode >> window >> Organizer >> Archives,点击Distribute
j.选择save for enterprise or ad hoc deployment,下一步
k.选择一个profile进行签名,然后export