sencha touch 相机,相册调用

sencha touch 相机,相册调用

相机,相册调用公共类

//设备相关类
var Phone = {

	    createNew: function() {

	        var phone = {};

	        /*
	          * 获得照片
	         * 参数:
	          * callback - 回调方法,成功回调照片文件、或base64编码串
	         * source  - 相机或相册,CAMEAR/ALBUM
	          * direction - 前镜头或后镜头,FRONT/BACK
	          * width height- 尺寸
	         *
	          */
	         phone.takePhoto = function(parm) {
	        	 console.log(parm);
	            var callbackfn = parm.callback;
	             if(!callbackfn || typeof(callbackfn) !== "function") return;

	            parm.source    = parm.source || 'CAMERA';
	             parm.direction = parm.direction || 'BACK' ;
	             parm.width     = parm.width  || 640;
	             parm.height    = parm.height || 640;

	            // 来源:相机、相册
	            var sourceType;
	             switch(parm.source.toUpperCase()) {
	                 case 'ALBUM':
	                     sourceType = 2;
	                     break;

	                default:
	                     sourceType = 1;
	                     break;
	             }

	            // 相机方向
	            var direction;
	             switch(parm.direction.toUpperCase()) {
	                 case 'FRONT':
	                     direction = 1;
	                     break;

	                default:
	                     direction = 0;
	                     break;
	             }

	            // 相片大小
	            var width  = parm.width;
	             var height = parm.height;

	            if(navigator.camera) {

	                navigator.camera.getPicture(
	                     function(data) {
	                    	 console.log('Camera cleanup success');
	                         callbackfn(/*'data:image/jpeg;base64,' + */data);
	                     },
	                     function(e) {
	                         console.log("Error getting picture: ", e);
	                         callbackfn('');
	                     },
	                     {
	                         quality: 95,

	                        destinationType: 0,

	                        sourceType : sourceType,

	                        allowEdit : true,

	                        encodingType: 0,

	                        targetWidth  : width,
	                         targetHeight : height,

	                        correctOrientation: true,

	                        saveToPhotoAlbum: false,

	                        cameraDirection: direction
	                     }
	                 );

	            } else {
	                 // 没有相机
	                var filename = '‘;
	                console.log('没有相机');
	                callbackfn(filename);
	             }
	         };

	         return phone;
	    }
	 };
	 var phone = Phone.createNew();

下面是相机的调用

//相机
					the_camera : function(){
						var parm = {
								callback : function(filename) {
									if(filename != ''){
										console.log(filename);
										//这里成功以后返回的
									}
								},
								 source:'CAMERA',// 相机或相册,CAMEAR/ALBUM
							     direction:'FRONT',// 前镜头或后镜头,FRONT/BACK
							     width:640, //width
							     height:640 // height
						};
						 phone.takePhoto(parm);
					},

相册的调用

//相册
					photo_album : function(){
						var parm = {
								callback : function(filename) {
									if(filename != ''){
										console.log(filename);
										//跟相机一样,只是传的参数不一样而已
									}
								},
								 source:'ALBUM',// 相机或相册,CAMEAR/ALBUM
							     direction:'FRONT',// 前镜头或后镜头,FRONT/BACK
							     width:640, //width
							     height:640 // height
						};
						 phone.takePhoto(parm);
					},

如果报错
java.lang.RuntimeException: Unable to get provider android.support.v4.content.FileProvider
java.lang.ClassNotFoundException: Didn’t find class “android.support.v4.content.FileProvider”
的话
点击这里https://blog.csdn.net/weixin_43369058/article/details/85602248

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值