Comment prendre des photos de l'appareil photo sans aperçu lorsque mon application démarre?

Maintenant tout ce que je veux est une application qui prend juste l'image de la caméra lors du lancement. Pas de présentation, pas de prévisualisation de la caméra...rien, juste une simple icône de l'application pour lancer l'application. Une fois lancé, l'appareil doit prendre une photo.

Voici l'aperçu de l'image, qui je ne veux pas apparaître dans mon application. Je veux juste eanble mon appli pour cliquez sur l'image bouton encerclé dans l'image ici:

Comment prendre des photos de l'appareil photo sans aperçu lorsque mon application démarre?

Une fois que la photo est prise alors que je dois l'enregistrer dans ma galerie photo.

Quelqu'un peut-il me guider? Grâce

Voici un code que j'ai essayé sur émulateur et de l'appareil.

import java.io.IOException;
import android.app.Activity;
import android.hardware.Camera;
import android.hardware.Camera.PictureCallback;
import android.hardware.Camera.ShutterCallback;
import android.os.Bundle;
import android.util.Log;
import android.view.SurfaceHolder;
import android.view.SurfaceView;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.ImageButton;
public class Main extends Activity implements SurfaceHolder.Callback{
private Camera camera;
private ImageButton cameraClick;
private SurfaceHolder mHolder; 
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
SurfaceView surfaceView = (SurfaceView)findViewById(R.id.surfaceView1);
mHolder = surfaceView.getHolder();
mHolder.addCallback(this);
mHolder.setType(SurfaceHolder.SURFACE_TYPE_PUSH_BUFFERS);  
cameraClick = (ImageButton) findViewById(R.id.cameraClick);
cameraClick.setOnClickListener( new OnClickListener() {
public void onClick(View v)
{
camera.takePicture(shutterCallback, rawCallback,jpegCallback);
}
});  
}
//Handles when shutter open
ShutterCallback shutterCallback = new ShutterCallback()
{
public void onShutter()
{   
}
};
/** Handles data for raw picture */
PictureCallback rawCallback = new PictureCallback()
{
public void onPictureTaken(byte[] data, Camera camera)
{   
}
}; 
/** Handles data for jpeg picture */
PictureCallback jpegCallback = new PictureCallback()
{
public void onPictureTaken(byte[] data, Camera camera)
{
//we do something using return byte[] of taken image.
}
};
@Override
public void surfaceChanged(SurfaceHolder holder,int format,int width,int height)
{
//Set camera preview size,orientation,rotation using parameters 
Camera.Parameters parameters = camera.getParameters();
parameters.set("orientation", "portrait");
camera.setParameters(parameters);
camera.startPreview();       
}
@Override
public void surfaceCreated(SurfaceHolder holder)
{
camera = Camera.open();
try {
camera.setPreviewDisplay(holder);
}
catch (IOException e)
{
e.printStackTrace();
}
}
@Override
public void surfaceDestroyed(SurfaceHolder holder)
{
camera.stopPreview();
camera.release();
camera = null; 
}
}

Maintenant, je suis capable d'entendre la photo, cliquez sur le bouton cliquez sur à la fois sur l'émulateur et l'appareil. Maintenant, je veux enregistrer l'image en tant que bien. Aucun indice?

source d'informationauteur Muhammad Maqsoodur Rehman | 2013-12-19