Como utilizar la cámara del celular en android studio

hola amig@s hoy veremos un tutotial pequeño sobre como utilizar la cámara del celular en android studio, teníamos un post similar pero algo antiguo y había que actualizar y organizarlo un poco, ya saben conforme uno va aprendiendo va mejorando su código, en fin empezamos.
Debemos agregar unos permisos en nuestro AndroidManifest.xml

 

 

 

 

<uses-permission android:name="android.permission.CAMERA" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />

Ahora debemos agregar un boton y un ImageView y quedara de la siguiente forma:

El botón tendrá por id btnCaptura y el imageView tendrá por id imagen.
Bueno si te pasas de flojo te dejo el código:
<RelativeLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".MainActivity">
<ImageView
android:id="@+id/imagen"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_above="@+id/btnCaptura"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true"
app:srcCompat="@android:color/background_dark" />

<Button
android:id="@+id/btnCaptura"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Tomar Foto"
android:layout_marginBottom="77dp"
android:layout_alignParentBottom="true"
android:layout_alignLeft="@+id/imagen"
android:layout_alignStart="@+id/imagen" />
</RelativeLayout>

 

Bueno ahora si nos queda trabajar la programación así que iremos a nuestro MainActivity.java

MainActivity

public class MainActivity extends Activity implements OnClickListener{
Button btn;
ImageView imagen;
Intent i;
final static int cons =0;
Bitmap bmp;
protected void onCreate(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
checkCameraPermission();
init();
}
public void init(){
btn = (Button)findViewById(R.id.btnCaptura);
btn.setOnClickListener(this);

imagen = (ImageView)findViewById(R.id.imagen);
}

private void checkCameraPermission() {
int permissionCheck = ContextCompat.checkSelfPermission(
this, Manifest.permission.CAMERA);
if (permissionCheck != PackageManager.PERMISSION_GRANTED) {
Log.i(“Mensaje“, “No se tiene permiso para la camara!.“);
ActivityCompat.requestPermissions(this, new String[]{Manifest.permission.CAMERA}, 225);
} else {
Log.i(“Mensaje“, “Tienes permiso para usar la camara.“);
}
}
public void onClick(View v){
int id;
id=v.getId();
switch (id){
case R.id.btnCaptura:
i = new Intent(android.provider.MediaStore.ACTION_IMAGE_CAPTURE);
startActivityForResult(i,cons);
break;
}
}
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data){
super.onActivityResult(requestCode,resultCode,data);
if (resultCode==Activity.RESULT_OK){
Bundle ext = data.getExtras();
bmp = (Bitmap)ext.get(“data“);
imagen.setImageBitmap(bmp);
}
}

}

 

Bueno y que hay de nuevo en esta version a la antigua, aqui agregamos unos permisos en un método llamado checkCameraPermission el cual nos pedirá en una nueva venta el permiso correspondiente si podemos usar o no la cámara y con eso no se detendrá la aplicación y tampoco dará otros errores.

y el producto final seria algo así:

Igual si piensas que hablo escribo en chino te dejo el ejercicio:

3 comentarios en «Como utilizar la cámara del celular en android studio»

  1. Carlos

    Que tal amigo excelente tutorial, esa imagen en donde se guarda, quiero insertarla en una base de datos phpmyadmin.
    Gracias por tu respuesta.
    Saludos!

Deja una respuesta

Tu dirección de correo electrónico no será publicada.

WhatsApp chat