上一篇博客讲了phonegap+cordova+ionic的环境搭建,今天再来分享一篇cordova调用原生API的文章。从技术角度上来讲,这并不是很难,只是有些细节要是没有注意,或者某些步骤不知道的,那么在坑里一时半会很难爬出来。所以这两篇博客旨在帮助小伙伴们节省更多的时间去做其他有意义的事情。

1、新建工程

  新建工程和添加平台支持的操作已经在上一篇博客中讲到了, 这里不再赘述。

  

  

2、Bower的使用

  首先确认是否安装了bower,如果没有安装,打开cmd命名,输入npm install -g bower。

  打开cmd命令,输入bower install ngCordova,如果出现以下信息,则表示本机没有安装git,因为bower管理的包的源码都托管在github网站上。

  

  Git的安装,可以直接在搜索引擎中输入 git for windows 64,下载一个git安装文件,点击安装,并把git.exe添加到环境变量中;也可以直接下载github的客户端工具,gitshell。具体安装方式可以在网上自行搜索。

  在这里,顺便讲一下bower安装js库、删除js库,查看安装js库的方式(以下三个步骤不是必须的,只是作为小插曲讲解):

  输入bower install jquery命令,安装jquery库文件,如果出现以下信息,表示安装成功:

  

  输入bower list 查看安装的js库文件:

  

  输入bower uninstall jquery,可以删除刚刚安装的js库文件:

  

  再输入bower list命令,我们会发现,安装的jquery已经不在目录中了:

  

3、安装ngCordova

  切换到工程目录下,输入 bower install ngCordova,会出现以下信息:(图中还有部分信息省略掉了,只截图了头部和尾部信息)。

  

  想要详细了解,可参考:http://www.haomou.net/2015/01/05/2015_ionic_ngCordova/

4、添加摄像头插件

  切换到工程目录下,输入cordova plugin add cordova-plugin-camera命令,出现以下信息,表示安装成功:

  

  更多插件信息:http://ngcordova.com/docs/plugins/camera/

5、修改项目

  所有准备工作完成以后,用编辑器打开新建的项目工程(我这里用的是webStorm),

  第一步:在index.html中手动引入ng-cordova.js文件。

  

  第二步:在controllers中添加ngCordova依赖。

  

  第三步:在详情页面添加一个按钮,用来触发调用摄像头操作。

  

  第四步:在详情页对应的controller中添加getCamera方法。

  

  第五步:在cmd中,进入工程目录,输入ionic run android命令,在手机上运行。

6、效果图

phonegap+cordova+ionic调用原生API的更多相关文章

  1. Ionic Cordova 调用原生 Api 实现拍照上传 图片到服务器功能

    Ionic 调用 Device 设备 Api 获取手机的设备信息 1. 找到对应的Api: https://ionicframework.com/docs/native/device/ 2. 安装相关 ...

  2. 【转】NativeScript的工作原理:用JavaScript调用原生API实现跨平台

    原文:https://blog.csdn.net/qq_21298703/article/details/44982547 -------------------------------------- ...

  3. vue 开发系列(五) 调用原生API

    概要 我们在开发手机端程序的时候了,我们经常需要使用到拍照,二维码的功能.数字天堂公司提供了大量的原生API支持. http://www.html5plus.org/doc/ 实现 1.在hbuild ...

  4. phoneGap+cordova+ionic混合app开发环境搭建

    参考链接:http://www.w2  bc.com/article/177257 待补充

  5. IONIC调用原生的等待对话框

    ngCordova提供了progressIndicator插件,用以方便的显示等待对话框,但是目前版本仅支持安卓版本.为了让苹果版本也显示,可以到以下地址下载通用的插件,JS部分的代码无需改变: ht ...

  6. Cordova+Ionic之坑

    命令:ionic platform add android 报错:Unable to start the daemon process…… 解决: 1)添加环境变量[_JAVA_OPTIONS],值: ...

  7. cordov vue项目中调用手机原生api

    cordova不仅可以把vue项目打包成app,还可以让vue借助cordova调用手机原生的api 比如拍照 比如图片上传 比如定位 比如扫描二维码 比如支付等等 Vue Cordova教程-Vue ...

  8. 使用JavaScript调用手机平台上的原生API

    我之前曾经写过一篇文章使用Cordova将您的前端JavaScript应用打包成手机原生应用,介绍了如何使用Cordova框架将您的用JavaScript和HTML开发的前端应用打包成某个手机平台(比 ...

  9. ionic-native-transitions调用原生页面切换实现ionic路由切换

    废话不多说:ionic-native-transitions调用原生页面切换实现ionic路由切换,从而大大提升ionic应用的性能. ionic-native-transitions是一个ionic ...

随机推荐

  1. Struts2学习笔记:DMI,多个配置文件,默认Action,后缀

    动态方法调用有三种方法: 1.同一Action多次映射,每个action标签的method对应要调用的方法. 当要调用的方法多了就会增加struts.xml文件的复杂性. 2.struts.Dynam ...

  2. 59.关系型与document类型数据模型对比

    现假设有如下两个类: class Department(object): def __init__(self, dept_id, name, desc, employees=[]): self.dep ...

  3. iframe使用大全

    <iframe src=”you page’s url” width=”100″ height=”30″ frameborder=”no” border=”0″ marginwidth=”0″ ...

  4. C++ <queue>用法

    C++队列可以不需要自己写,有现成的模版类 头文件: #include <queue> #include <iostream> using namespace std; (之前 ...

  5. java---括号匹配

    import java.util.HashMap;import java.util.LinkedList;import java.util.Map; /* *括号匹配 * 1.用栈实现,如果读取字符为 ...

  6. 移动端禁止滑动的js处理方式

    下面是禁止移动端滑动事件的方式,慎用  document.querySelector('body').addEventListener('touchmove', function (ev) {     ...

  7. 判断项目中是否有slf4j的实现类

    /** * 判断项目中是否有slf4j的实现类 */ @org.junit.Test public void test() { try { Enumeration<URL> resourc ...

  8. selectByExampleWithBLOBs-----搜索结果包含大字段类型----搜索结果包含大字段类型

    http://www.jb51.net/article/121482.htm mybatis generator 使用方法教程(生成带注释的实体类)

  9. Spring-data-jpa 笔记(一)

    Spring Data JPA简介: 可以理解为 JPA 规范的再次封装抽象,底层还是使用了 Hibernate 的 JPA 技术实现,引用 JPQL(Java Persistence Query L ...

  10. Ubuntu 16.04安装Synaptic Package Manager图形化APT管理工具

    安装: sudo apt-get install synaptic 启动: