From c5c0df5c4f3fad1535b7c147888d06396de3151e Mon Sep 17 00:00:00 2001 From: dmcBig Date: Tue, 7 Aug 2018 15:29:30 +0800 Subject: [PATCH] getExifForKey getExifForKey --- package.json | 4 +-- plugin.xml | 2 +- src/android/MediaPicker.java | 47 +++++++++++++++++++++++------------- www/MediaPicker.js | 11 +++------ www/demo/index.js | 1 - 5 files changed, 36 insertions(+), 29 deletions(-) diff --git a/package.json b/package.json index 6c78d1b..28ab8f1 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "cordova-plugin-mediapicker-dmcbig", - "version": "2.3.0", + "version": "2.3.2", "description": "android ios mediaPicker support selection of multiple image and video", "cordova": { "id": "cordova-plugin-mediapicker-dmcbig", @@ -35,5 +35,5 @@ "bugs": { "url": "https://github.com/DmcSDK/cordova-plugin-mediaPicker/issues" }, - "homepage": "https://github.com/DmcSDK/cordova-plugin-mediaPicker#readme" + "homepage": "https://github.com/DmcSDK" } diff --git a/plugin.xml b/plugin.xml index d783754..7ca8c1b 100644 --- a/plugin.xml +++ b/plugin.xml @@ -1,6 +1,6 @@ - + MediaPicker diff --git a/src/android/MediaPicker.java b/src/android/MediaPicker.java index 525e107..aa20420 100644 --- a/src/android/MediaPicker.java +++ b/src/android/MediaPicker.java @@ -44,7 +44,7 @@ public class MediaPicker extends CordovaPlugin { @Override public boolean execute(String action, JSONArray args, CallbackContext callbackContext) throws JSONException { getPublicArgs(args); - + if (action.equals("getMedias")) { this.getMedias(args, callbackContext); return true; @@ -63,6 +63,9 @@ public class MediaPicker extends CordovaPlugin { }else if(action.equals("fileToBlob")){ this.fileToBlob(args.getString(0), callbackContext); return true; + }else if(action.equals("getExifForKey")){ + this.getExifForKey(args.getString(0),args.getString(1),callbackContext); + return true; } return false; } @@ -227,23 +230,23 @@ public class MediaPicker extends CordovaPlugin { public void compressImage( JSONArray args, CallbackContext callbackContext){ this.callback=callbackContext; - try { - JSONObject jsonObject = args.getJSONObject(0); - String path = jsonObject.getString("path"); - int quality=jsonObject.getInt("quality"); - if(quality<100) { - File file = compressImage(path, quality); - jsonObject.put("path", file.getPath()); - jsonObject.put("size", file.length()); - jsonObject.put("name", file.getName()); - callbackContext.success(jsonObject); - }else{ - callbackContext.success(jsonObject); - } - } catch (Exception e) { - callbackContext.error("compressImage error"+e); - e.printStackTrace(); + try { + JSONObject jsonObject = args.getJSONObject(0); + String path = jsonObject.getString("path"); + int quality=jsonObject.getInt("quality"); + if(quality<100) { + File file = compressImage(path, quality); + jsonObject.put("path", file.getPath()); + jsonObject.put("size", file.length()); + jsonObject.put("name", file.getName()); + callbackContext.success(jsonObject); + }else{ + callbackContext.success(jsonObject); } + } catch (Exception e) { + callbackContext.error("compressImage error"+e); + e.printStackTrace(); + } } public File compressImage(String path,int quality){ @@ -314,6 +317,16 @@ public class MediaPicker extends CordovaPlugin { } } + public void getExifForKey(String path,String tag, CallbackContext callbackContext) { + try { + ExifInterface exifInterface = new ExifInterface(path); + String object = exifInterface.getAttribute(tag); + callbackContext.success(object); + } catch (Exception e) { + e.printStackTrace(); + } + } + public String fileToBase64(String path) { byte[] data = null; try { diff --git a/www/MediaPicker.js b/www/MediaPicker.js index fb61f97..2a44161 100644 --- a/www/MediaPicker.js +++ b/www/MediaPicker.js @@ -1,4 +1,3 @@ -cordova.define("cordova-plugin-mediapicker-dmcbig.MediaPicker", function(require, exports, module) { var exec = require('cordova/exec'); @@ -23,14 +22,10 @@ var MediaPicker = { }, fileToBlob:function(arg0, success, error) { exec(success, error, "MediaPicker", "fileToBlob", [arg0]); - }, - getExif:function(arg0, success, error) { - exec(success, error, "MediaPicker", "getExif", [arg0]); + }, + getExifForKey:function(arg0,arg1, success, error) { + exec(success, error, "MediaPicker", "getExifForKey", [arg0,arg1]); } }; module.exports = MediaPicker; - - - -}); diff --git a/www/demo/index.js b/www/demo/index.js index 923dda9..84f22ed 100644 --- a/www/demo/index.js +++ b/www/demo/index.js @@ -19,7 +19,6 @@ function getThumbnail(medias) { //loading(); //show loading ui MediaPicker.extractThumbnail(medias[i], function(data) { imgs[data.index].src = 'data:image/jpeg;base64,' + data.thumbnailBase64; - imgs[data.index].setAttribute('style', 'transform:rotate(' + data.exifRotate + 'deg)'); }, function(e) { console.log(e) }); } }