mirror of
https://github.com/apache/cordova-android.git
synced 2026-05-11 00:00:05 +08:00
Working Camera Attempt, need to merge back into trunk
This commit is contained in:
@@ -1,13 +1,7 @@
|
||||
package com.phonegap.demo;
|
||||
|
||||
|
||||
import java.io.ByteArrayOutputStream;
|
||||
|
||||
import android.graphics.BitmapFactory;
|
||||
import android.graphics.Bitmap;
|
||||
import android.graphics.Bitmap.CompressFormat;
|
||||
import android.webkit.WebView;
|
||||
import org.apache.commons.codec.binary.Base64;
|
||||
|
||||
|
||||
public class CameraLauncher {
|
||||
|
||||
@@ -23,25 +17,18 @@ public class CameraLauncher {
|
||||
|
||||
public void takePicture(int quality)
|
||||
{
|
||||
mGap.startCamera();
|
||||
mGap.startCamera(quality);
|
||||
}
|
||||
|
||||
/* Return Base64 Encoded String to Javascript */
|
||||
public void processPicture( byte[] data )
|
||||
public void processPicture( String js_out )
|
||||
{
|
||||
mAppView.loadUrl("javascript:navigator.camera.win('" + js_out + "');");
|
||||
}
|
||||
|
||||
public void failPicture(String err)
|
||||
{
|
||||
ByteArrayOutputStream jpeg_data = new ByteArrayOutputStream();
|
||||
Bitmap myMap = BitmapFactory.decodeByteArray(data, 0, data.length);
|
||||
if (myMap.compress(CompressFormat.JPEG, quality, jpeg_data))
|
||||
{
|
||||
byte[] code = jpeg_data.toByteArray();
|
||||
byte[] output = Base64.encodeBase64(code);
|
||||
String js_out = output.toString();
|
||||
mAppView.loadUrl("javascript:Camera.win('" + js_out + "');");
|
||||
}
|
||||
else
|
||||
{
|
||||
mAppView.loadUrl("javascript:Camera.fail();");
|
||||
}
|
||||
mAppView.loadUrl("javascript:navigator.camera.fail('" + err + "');");
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user