From 3b0e0dab881dbd33bfb10bd2131e0d353c318772 Mon Sep 17 00:00:00 2001 From: Christophe BOUCAUT Date: Wed, 19 Nov 2014 11:33:05 +0100 Subject: [PATCH] Ajout d'interactions entre js & java. --- src/android/CameraLauncher.java | 20 +++++++++++++------ .../org/geneanet/customcamera/CameraView.java | 14 ++++++++++++- www/customCamera.js | 13 ++++-------- 3 files changed, 31 insertions(+), 16 deletions(-) diff --git a/src/android/CameraLauncher.java b/src/android/CameraLauncher.java index 8c30599..6bc6450 100644 --- a/src/android/CameraLauncher.java +++ b/src/android/CameraLauncher.java @@ -3,6 +3,7 @@ package org.geneanet.customcamera; import XXX_NAME_CURRENT_PACKAGE_XXX.CameraView; import org.apache.cordova.CordovaPlugin; import org.apache.cordova.CallbackContext; +import org.apache.cordova.PluginResult; import org.json.JSONArray; import org.json.JSONException; @@ -11,14 +12,21 @@ import android.os.Bundle; public class CameraLauncher extends CordovaPlugin { public boolean execute(String action, JSONArray args, CallbackContext callbackContext) throws JSONException { - Intent intent = new Intent(this.cordova.getActivity(), CameraView.class); + if (action.equals("startCamera")) { + Intent intent = new Intent(this.cordova.getActivity(), CameraView.class); - Bundle imgBase64 = new Bundle(); - imgBase64.putString("imgBase64", "mon base 64"); - intent.putExtras(imgBase64); + Bundle imgBackgroundBase64 = new Bundle(); + imgBackgroundBase64.putString("imgBackgroundBase64", args.getString(0)); + intent.putExtras(imgBackgroundBase64); - cordova.getActivity().startActivity(intent); + cordova.getActivity().startActivity(intent); - return true; + PluginResult r = new PluginResult(PluginResult.Status.OK, "base64retour"); + callbackContext.sendPluginResult(r); + + return true; + } + + return false; } } diff --git a/src/android/customCamera/src/org/geneanet/customcamera/CameraView.java b/src/android/customCamera/src/org/geneanet/customcamera/CameraView.java index 2d231f5..4321859 100644 --- a/src/android/customCamera/src/org/geneanet/customcamera/CameraView.java +++ b/src/android/customCamera/src/org/geneanet/customcamera/CameraView.java @@ -6,6 +6,7 @@ import java.util.List; import java.lang.Math; import android.app.Activity; +import android.app.AlertDialog; import android.hardware.Camera; import android.os.Bundle; import android.view.Display; @@ -33,7 +34,18 @@ public class CameraView extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { Bundle currentBundle = this.getIntent().getExtras(); - String imgBase64 = currentBundle.getString("imgBase64"); + if (currentBundle != null) { + String imgBackgroundBase64 = currentBundle.getString("imgBackgroundBase64"); + new AlertDialog.Builder(this) + .setTitle("Delete entry") + .setMessage(imgBackgroundBase64) + .show(); + } else { + new AlertDialog.Builder(this) + .setTitle("que neni") + .setMessage("que neni") + .show(); + } System.out.println("ON RENTRE DANS L'APPLICATION"); diff --git a/www/customCamera.js b/www/customCamera.js index 40cd64e..9aed4ad 100644 --- a/www/customCamera.js +++ b/www/customCamera.js @@ -1,8 +1,8 @@ +'use strict'; /** * Permet de faire l'interface entre phonegap et l'application customcamera en java. */ -'use strict'; var exec = require('cordova/exec'); @@ -10,12 +10,7 @@ var exec = require('cordova/exec'); var customCameraExport = function() { }; -// add method. -customCameraExport.prototype.getPicture = function() { - alert("Oh yeah !"); -}; - -customCameraExport.prototype.startCamera = function() { +customCameraExport.prototype.startCamera = function(imgBackgroundBase64) { exec( function(result) { console.log("success"); @@ -26,8 +21,8 @@ customCameraExport.prototype.startCamera = function() { console.log(result); }, "CustomCamera", - "testAction", - [] + "startCamera", + [imgBackgroundBase64] ); };