HTML5+下用js獲取裝置的唯一識別碼和本地資料庫的操作
阿新 • • 發佈:2019-01-03
首先獲取裝置的唯一標識,由於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);
});
}