HTML5+下用js获取设备的唯一识别码和本地数据库的操作

首先获取设备的唯一标识,由于ios审核的阻挡,我现在只是获取它idfa来作为唯一识别码(这个会被重置,如果idfa不重要的话是可以考虑此方法的),Android就不用多说了

if(ua.match(/iphone\sOS/i) == "iphone os"){//识别设备ios/android
		var ASIdentifierManager = plus.ios.importClass("ASIdentifierManager");
		var sharedManager = ASIdentifierManager.sharedManager();
		if(sharedManager.isAdvertisingTrackingEnabled()){
			var advertisingIdentifier = sharedManager.advertisingIdentifier();
			var idfa = plus.ios.invoke(advertisingIdentifier,"UUIDString");
			return idfa;//获取并返回idfa
		}
		//return device_id;
	}else{
		var device_id = plus.device.uuid.valueOf();
		return device_id.substring(0,15);//获取andriod的uuid
	}

下面就用js来操作一下本地数据库

deviceinfo.opendb = function(){//创建数据库
	return openDatabase('TEST','1.0',"evaluateairport",2*1024*1024);
};
//操作数据的公共方法
deviceinfo.update = function(db,sql,func,funcerr){
	if(db&&sql){
		db.transaction(function(context){
			context.executeSql(sql,[],function(context,result){
				func(result);
			},function(context,error){
				funcerr(error);
			});
		});
	}
};
var db = deviceinfo.opendb();//一定要实例此数据库,可以全局使用

接下来是获取拍照或录像的方法

//获取摄像功能  photo 拍照     video  录像
deviceinfo.cameraOrVideo = function(actionflag,pathname,funsuc,funerr){
	if(actionflag){//识别拍照或者录像
		var cmr = plus.camera.getCamera();
		if(actionflag == "photo"){
			var res = cmr.supportedImageResolutions[0];
			var fmt = cmr.supportedImageFormats[1];		//0格式png    1格式jpg
			console.log("Resolution: "+res+", Format: "+fmt);
			cmr.captureImage(
				function(imgpath){
					funsuc(imgpath);
				},
				function(imgerr){
					funerr(imgerr);
				},//参数配置 其中pathname是图片的路径和名称
				{resolution:res,format:fmt,filename:pathname});
		}else if(actionflag == "video"){
			var vidres = cmr.supportedVideoResolutions[0];
			var vidfmt = cmr.supportedVideoFormats[0];
			console.log("Resolution: "+vidres+", Format: "+vidfmt);
			cmr.startVideoCapture(
				function(vidpath){
					funsuc(vidpath);
				},
				function(viderr){
					funerr(viderr);
				},//参数配置 其中 pathname是录像文件保存的位置和录像的名称
				{resolution:vidres,format:vidfmt,filename:pathname});
		}
	}
}

图片压缩

//压缩图片
deviceinfo.compressIMG = function(imgpath,dectpath,funsuc,funerr){
	plus.zip.compressImage(
		{
			src:imgpath,//源路径
			dst:dectpath,//目标路径
			format: 'jpg',//图片格式
			quality:20,//质量 越小图片质量越差
			overwrite:true//是否覆盖
		},
		function(suc){
			funsuc(suc);
		},
		function(filed){
			funerr(filed);
		});
}


你可能感兴趣的:(HTML5+)