phonegap-调用android手机照相机

原创 2015年11月20日 18:35:25


环境配置参见:http://blog.csdn.net/adrian_rendong/article/details/49910335 点击打开链接

附完整android工程包http://download.csdn.net/detail/adrian_rendong/9287027

使用Node.js创建工程


打开Node.js控制台并进入到准备存放工程文件的文件夹下

1.创建一个phonegap工程

phonegap create adrian

2.进入项目文件中的plugins文件夹下

cd adrian 
cd plugins

3.下载插件

cordova plugin add org.apache.cordova.dialogs  
cordova plugin add org.apache.cordova.vibration 
cordova plugin add org.apache.cordova.camera

4.添加android平台

cordova platform add android

5.编译android工程

cordova build


注意:提示错误(如果未提示错误不必进行下一步)
继续输入
phonegap run android


现在android的工程就创建好了

导入工程

参见http://blog.csdn.net/adrian_rendong/article/details/49910335

编写调用照相机程序

1.编辑index.html

打开index.html
将里面的代码全部删除,粘贴如下代码
<!DOCTYPE html>  
<html>    
<head>     
 <title>Capture Photo</title>    
 <script type="text/javascript" charset="utf-8" src="cordova.js"></script>     
 <script type="text/javascript" charset="utf-8">      
    var pictureSource;    
    var destinationType;         
    document.addEventListener("deviceready",onDeviceReady,false);         
        function onDeviceReady() {      //加载后执行  
        	pictureSource=navigator.camera.PictureSourceType;        
        	destinationType=navigator.camera.DestinationType;    
        }     
        function onPhotoDataSuccess(imageData) {          
	        console.log(imageData);           
	        var smallImage = document.getElementById('smallImage');          
	        smallImage.style.display = 'block';        
	        smallImage.src = "data:image/jpeg;base64," + imageData;    
	    }      
        function onPhotoURISuccess(imageURI) {        
	        console.log(imageURI);        
	        var largeImage = document.getElementById('largeImage');        
	        largeImage.style.display = 'block';        
	        largeImage.src = imageURI;    
	    }      
        function capturePhoto() {        
	        navigator.camera.getPicture(onPhotoDataSuccess, onFail, { 
	        	quality: 50,        
	        	destinationType: destinationType.DATA_URL });    
	    }      
        function capturePhotoEdit() {        
	        navigator.camera.getPicture(onPhotoDataSuccess, onFail, { 
	        	quality: 20, allowEdit: true,        
	        	destinationType: destinationType.DATA_URL });    
	    }      
        function getPhoto(source) {        
	        navigator.camera.getPicture(onPhotoURISuccess, onFail, { 
	        	quality: 50,        
	        	destinationType: destinationType.FILE_URI,        
	        	sourceType: source });    
	    }      
        function onFail(message) {      
        	alert('Failed because: ' + message);    
        }     
    </script>  
</head>   
<body>    
    <button onclick="capturePhoto();">Capture Photo</button> <br>  
    <button onclick="capturePhotoEdit();">Capture Editable Photo</button> <br>    
    <button onclick="getPhoto(pictureSource.PHOTOLIBRARY);">From Photo Library</button><br>    
    <button onclick="getPhoto(pictureSource.SAVEDPHOTOALBUM);">From Photo Album</button><br>   
    <img style="display:none;width:60px;height:60px;" id="smallImage" src="" />    
    <img style="display:none;" id="largeImage" src="" />    
</body>  
</html>

2.在config.xml中添加功能

打开config.xml
<widget>中添加如下代码
<feature name="Notification">      
<param name="android-package" value="org.apache.cordova.dialogs.Notification" />  
</feature>  
<feature name="Vibration">      
<param name="android-package" value="org.apache.cordova.vibration.Vibration" />  
</feature>

截图如下

3.为android应用增加权限

打开AndroidManifest.xml
<manifest>下添加如下代码
<uses-permission android:name="android.permission.VIBRATE" /> 


截图如下



4.打包成android安装文件



5.界面图







版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

cordova 插件 开发添加 android 权限

cordova 插件 开发添加 android 权限

Android+ionic +phonegap 调用摄像头 $cordovaCamera

1、配置环境,配置调用摄像头所需要的插件ng-cordova我是离线下载:http://ngcordova.com/docs/install/ 2、引入ng-cordova.js文件ng-c...

phonegap之config.xml

phonegap的config.xml文件的整个phonegap参数配置的关键,包含调用本地 API ,自定义插件 ,屏幕 Orientation  Fullscreen 等关键配置。 ...

cordova调用相机

该篇主要讲述cordova如何调用相机。Cordova框架提供了两个用于访问设备相机的API,一个是Camera API,它使用开发者能直接访问本地相机的API,另一个是Media Capture A...

ionic插件基础(三)——插件原理及cordova相机插件的使用

本文主要讲解了插件的原理和使用cordova封装好的插件的使用

给定A, B两个整数,不使用除法和取模运算,求A/B的商和余数

给定A, B两个整数,不使用除法和取模运算,求A/B的商和余数。 1.   最基本的算法是,从小到大遍历: for (i = 2 to A -1)          if (i * B > A)...

利用K-means聚类算法根据经纬度坐标对中国省市进行聚类

K-means聚类算法是一种非层次聚类算法,在最小误差的基础上将数据划分了特定的类,类间利用距离作为相似度指标,两个向量之间的距离越小,其相似度就越高。程序读取全国省市经纬度坐标,然后根据经纬度坐标进...

Radon变换理论介绍与matlab实现--经验交流

本人最近在研究Radon变换,在查阅了各种资料之后在此写下个人的理解,希望与各位牛牛进行交流共同进步,也使得理解更加深刻些。 Radon变换的本质是将原来的函数做了一个空间转换,即,将原来的XY平...

CT图像重建技术

由于csdn贴图不方便,并且不能上传附件,我把原文上传到了资源空间CT图像重建技术 1.引言 计算机层析成像(Computed Tomography,CT)是通过对物体进行不同角度的射线投影测量而...

Matlab绘图-很详细,很全面

Matlab绘图强大的绘图功能是Matlab的特点之一,Matlab提供了一系列的绘图函数,用户不需要过多的考虑绘图的细节,只需要给出一些基本参数就能得到所需图形,这类函数称为高层绘图函数。此外,Ma...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:phonegap-调用android手机照相机
举报原因:
原因补充:

(最多只允许输入30个字)