@@ -303,7 +303,7 @@ public void takePicture(int returnType, int encodingType)
303
303
this .imageUri = new CordovaUri (FileProvider .getUriForFile (cordova .getActivity (),
304
304
applicationId + ".provider" ,
305
305
photo ));
306
- intent .putExtra (android . provider . MediaStore .EXTRA_OUTPUT , imageUri .getCorrectUri ());
306
+ intent .putExtra (MediaStore .EXTRA_OUTPUT , imageUri .getCorrectUri ());
307
307
//We can write to this URI, this will hopefully allow us to write files to get to the next step
308
308
intent .addFlags (Intent .FLAG_GRANT_WRITE_URI_PERMISSION );
309
309
@@ -389,7 +389,7 @@ public void getImage(int srcType, int returnType, int encodingType) {
389
389
}
390
390
File photo = createCaptureFile (JPEG );
391
391
croppedUri = Uri .fromFile (photo );
392
- intent .putExtra (android . provider . MediaStore .EXTRA_OUTPUT , croppedUri );
392
+ intent .putExtra (MediaStore .EXTRA_OUTPUT , croppedUri );
393
393
} else {
394
394
intent .setAction (Intent .ACTION_GET_CONTENT );
395
395
intent .addCategory (Intent .CATEGORY_OPENABLE );
@@ -912,14 +912,14 @@ private void writeUncompressedImage(Uri src, Uri dest) throws FileNotFoundExcept
912
912
*/
913
913
private Uri getUriFromMediaStore () {
914
914
ContentValues values = new ContentValues ();
915
- values .put (android . provider . MediaStore .Images .Media .MIME_TYPE , JPEG_MIME_TYPE );
915
+ values .put (MediaStore .Images .Media .MIME_TYPE , JPEG_MIME_TYPE );
916
916
Uri uri ;
917
917
try {
918
- uri = this .cordova .getActivity ().getContentResolver ().insert (android . provider . MediaStore .Images .Media .EXTERNAL_CONTENT_URI , values );
918
+ uri = this .cordova .getActivity ().getContentResolver ().insert (MediaStore .Images .Media .EXTERNAL_CONTENT_URI , values );
919
919
} catch (RuntimeException e ) {
920
920
LOG .d (LOG_TAG , "Can't write to external media storage." );
921
921
try {
922
- uri = this .cordova .getActivity ().getContentResolver ().insert (android . provider . MediaStore .Images .Media .INTERNAL_CONTENT_URI , values );
922
+ uri = this .cordova .getActivity ().getContentResolver ().insert (MediaStore .Images .Media .INTERNAL_CONTENT_URI , values );
923
923
} catch (RuntimeException ex ) {
924
924
LOG .d (LOG_TAG , "Can't write to internal media storage." );
925
925
return null ;
@@ -1245,9 +1245,9 @@ private void checkForDuplicateImage(int type) {
1245
1245
*/
1246
1246
private Uri whichContentStore () {
1247
1247
if (Environment .getExternalStorageState ().equals (Environment .MEDIA_MOUNTED )) {
1248
- return android . provider . MediaStore .Images .Media .EXTERNAL_CONTENT_URI ;
1248
+ return MediaStore .Images .Media .EXTERNAL_CONTENT_URI ;
1249
1249
} else {
1250
- return android . provider . MediaStore .Images .Media .INTERNAL_CONTENT_URI ;
1250
+ return MediaStore .Images .Media .INTERNAL_CONTENT_URI ;
1251
1251
}
1252
1252
}
1253
1253
@@ -1261,14 +1261,23 @@ public void processPicture(Bitmap bitmap, int encodingType) {
1261
1261
CompressFormat compressFormat = encodingType == JPEG ?
1262
1262
CompressFormat .JPEG :
1263
1263
CompressFormat .PNG ;
1264
+ String imageMimeType = encodingType == JPEG ?
1265
+ JPEG_MIME_TYPE :
1266
+ PNG_MIME_TYPE ;
1264
1267
1265
1268
try {
1266
1269
if (bitmap .compress (compressFormat , mQuality , jpeg_data )) {
1267
1270
byte [] code = jpeg_data .toByteArray ();
1268
1271
byte [] output = Base64 .encode (code , Base64 .NO_WRAP );
1269
1272
String js_out = new String (output );
1270
- this .callbackContext .success (js_out );
1273
+ String base64Prefix = "data:" + imageMimeType + ";base64," ;
1274
+ String finalJsOut = base64Prefix + js_out ;
1275
+
1276
+ this .callbackContext .success (finalJsOut );
1277
+
1271
1278
js_out = null ;
1279
+ base64Prefix = null ;
1280
+ finalJsOut = null ;
1272
1281
output = null ;
1273
1282
code = null ;
1274
1283
}
@@ -1299,7 +1308,7 @@ private void scanForGallery(Uri newImage) {
1299
1308
public void onMediaScannerConnected () {
1300
1309
try {
1301
1310
this .conn .scanFile (this .scanMe .toString (), "image/*" );
1302
- } catch (java . lang . IllegalStateException e ) {
1311
+ } catch (IllegalStateException e ) {
1303
1312
LOG .e (LOG_TAG , "Can't scan file in MediaScanner after taking picture" );
1304
1313
}
1305
1314
0 commit comments