Mostrando entradas con la etiqueta android studio. Mostrar todas las entradas
Mostrando entradas con la etiqueta android studio. Mostrar todas las entradas

lunes, 14 de agosto de 2017

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
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:

  Link de la descarga
Programador alfa, lomo plateado, barba de clavos, mentón de roca, no descarga la aplicación sigue el tutorial. Clic para DESCARGAR

     
ENLACES DE INTERÉS:

miércoles, 26 de julio de 2017

Como importar una libreria en android studio

hola amig@s programadores hoy veremos un tema muy interesante, he visto en los programadores novatos tener mucho problemas a la hora que quieren exportar sus librerías externas mejor dicho los archivos .jar  y cuando buscan información al respecto y luego no les funciona su copia y pega empiezan a llorar buuuu, así que hoy lo explicaremos de forma detallada y con manzanitas para dar por cerrado este tema.

Empezamos nos llevara un aproximado de 3 minutos.

Cómo importar librerías .jar en Android Studio



  • Una vez situado en tu proyecto Android Studio, ve a la carpeta "libs" en caso de no existir crea la carpeta a la altura de build y src.



  • Una vez hayas creado esta carpeta, ya podrás añadir todos tus archivos con extensión .jar


      Pero esto no termina aquí, porque el siguiente paso es muy importante, necesitas añadir las dependencias a Build.gradle (Module:app).



  • En este ejemplo añadimos la librería frutas.jar Para ello, añadimos el siguiente código en Build.gradle, en dependencies(). Se hace igual para cualquier librería:
dependencies {
    compile fileTree(include: ['*.jar'], dir: 'libs')
    testCompile 'junit:junit:4.12'
    compile 'com.android.support:appcompat-v7:25.3.0'
    compile files('libs/frutas.jar')
}

Si analizamos un poco nos damos cuenta que empezamos con el compile files luego le indicamos que esta en la carpeta libs para luego indicarle que le haremos referencia al archivo frutas.jar

AH! PILLIN  aun no acabamos falta lo mas importante 

  • Y por último, tras añadir este trocito de código, necesitas hacer la sincronización del proyecto con el gradle. Te saldrá un aviso en amarillo en la parte superior, puedes hacer clic en “Sync Project with Gradle Files“.

Lo vemos en la siguiente imagen:

                                                           Clic para agrandar la imagen


No tendremos que hacer nada más que esto para tener las librerías que necesitemos en Android. Bueno cuídense mucho y no se rompan la cabeza:

NOTA: una vez un usuario siguió esta guía y ya quería llorar porque no le funcionaba, adivinen que? descargo mal la librería jajajajaja xD


ENLACES DE INTERÉS:


Como importar fuentes a android studio

Hola amig@s programadores siempre a la hora de hacer un proyecto necesitamos darle la mejor vista que podemos y entre ellas siempre es bueno ver la escritura, es un detalle que podria traerte mas cliente o impresionar a tu jefe. Para ello hoy veremos Como insertar tipos de fuentes en Android Studio.

Bien sin mas rodeos empezamos con el Tuto que nos llevara aproximadamente dos minutos:


  • Sitúate en app > src > main.
  • Crea el directorio “assets” (a la misma altura de java y res). Dentro de assets, crea la carpeta “fonts”, y a su vez, dentro, crea/importa el archivo “nombre_fuente.ttf”.






Es en la carpeta fonts, dónde tendrás que arrastrar la fuente concreta que quieras usar con la extensión .ttf. Si buscas por la red, encontrarás un montón de ZIP con fuentes, que puedes arrastrar y colocar dentro de assets, para luego solo llamar a las fuentes que tu quieras desde la aplicación. Si tienes dudas con algo de esto, puedes preguntarnos abajo en los comentarios.


¿CÓMO USO LA FUENTE QUE ACABO DE IMPORTAR?

Typeface face=Typeface.createFromAsset(getAssets(),"fonts/nombre_fuente.ttf");
txtV.setTypeface(face);

Tan solo tendrás que pegar ese código en la Activity en que quieras usar la nueva fuente. Y acuérdate de cambiar el nombre anterior por el nombre de tu fuente, podrás importar las fuentes que quieras. ¡Espero que te haya servido y que lo disfrutes!


Y con eso hemos terminado amigos, cuídense y nos vemos en un próximo tutorial.


martes, 7 de marzo de 2017

Como utilizar el vibrador en un celular con android studio

Hola a todos hoy veremos un tutorial nuevo, como manipular el vibrador del celular, traigo un ejemplo básico pero muy ilustrativo.

Debemos tener en cuenta a la clase Vibrator para proceder con nuestro ejercicio, si deseas leer algo mas al respecto te dejo un enlace aquí. Al final del articulo podrán descargar el código fuente y recuerden que estoy trabajando en un versión vieja de Android, por experiencia podría decir que funcionaria en cualquier versión pero debemos tener en cuenta esto.

PASO 1: Debemos ir a nuestro AndroidManifest.xml y agregar un permiso.

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




PASO 2: Debemos crear 3 botones en nuestro activity_main.xml, uno sera para uno sera para que la vibración sea constante el segundo botón para que sea uno sola vibración y el ultimo nos servirá para parar la vibración y debe quedar como la siguiente imagen:




<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:id="@+id/activity_main"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    tools:context="com.androidmorefast.pc.appvibrador01.MainActivity">


    <Button
        android:text="Opcion 2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:id="@+id/btn_brivate_once"
        android:onClick="performVibrateOnce"
        android:layout_alignTop="@+id/btn_brivate_repeat"
        android:layout_alignLeft="@+id/btn_brivate_repeat"
        android:layout_alignStart="@+id/btn_brivate_repeat"
        android:layout_marginTop="64dp" />

    <Button
        android:text="Stop"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:id="@+id/btn_brivate_cancel"
        android:onClick="performVibrateCancel"
        android:layout_below="@+id/btn_brivate_once"
        android:layout_alignLeft="@+id/btn_brivate_once"
        android:layout_alignStart="@+id/btn_brivate_once"
        android:layout_marginTop="24dp" />

    <Button
        android:text="Opcion 1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:id="@+id/btn_brivate_repeat"
        android:onClick="performVibrateRepeat"
        android:layout_marginTop="35dp"
        android:layout_alignParentTop="true"
        android:layout_centerHorizontal="true" />
    />
</RelativeLayout>

PASO 3: Bueno ahora solo queda echarle mano al código, en nuestro código vamos a inicializar los tres botones y luego haremos uso de la clase vibration y en cada uno de los botones se indicara la forma y el tiempo de vibración:

public class MainActivity extends AppCompatActivity {
    private Button btnOpc1;
    private Button btnOpc2;
    private Button btnCancel;
    private boolean isVibrating = false;
    private Vibrator vibrador;


    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        btnOpc1 = (Button) findViewById(R.id.btn_brivate_once);
        btnOpc2 = (Button) findViewById(R.id.btn_brivate_repeat);
        btnCancel = (Button) findViewById(R.id.btn_brivate_cancel);
        vibrador = ((Vibrator) getSystemService(VIBRATOR_SERVICE));
        vibrador.cancel();
    }

    public void performVibrateOnce(View view) {
        if (!vibrador.hasVibrator()) {
            Toast.makeText(MainActivity.this,
                    "No soporta Vibrador", Toast.LENGTH_LONG).show();
            return;
        }
        if (isVibrating)
            vibrador.cancel();
        vibrador.vibrate(1000L);
        isVibrating = true;
        btnCancel.setEnabled(true);
        new Handler().postDelayed(new Runnable() {
            @Override
            public void run() {
                isVibrating = false;
                btnCancel.setEnabled(false);
            }
        }, 1000);
    }

    public void performVibrateRepeat(View view) {
        if (!vibrador.hasVibrator()) {
            Toast.makeText(MainActivity.this,
                    "No esta activado", Toast.LENGTH_LONG).show();
            return;
        }
        if (isVibrating)
            vibrador.cancel();

        long delay = 250;
        long keeVip = 250;
        long on_off = 250;
        int repeat = 1;

        vibrador.vibrate(new long[]{delay, keeVip, on_off, on_off, on_off}, repeat);
        isVibrating = true;
        btnCancel.setEnabled(true);
    }

    public void performVibrateCancel(View view) {
        if (!vibrador.hasVibrator()) {
            Toast.makeText(MainActivity.this,
                    "No hay Vibrador", Toast.LENGTH_LONG).show();
            return;
        }
        if (isVibrating) {
            vibrador.cancel();
            btnCancel.setEnabled(false);
            isVibrating = false;
        }

    }

}



Bueno con eso hemos terminado, espero les haya gustado y les sirva para algún proyecto que tengan a futuro.


Link de la descarga
Programador alfa, lomo plateado, barba de clavos, mentón de roca, no descarga la aplicación sigue el tutorial. Clic para DESCARGAR
     
ENLACES DE INTERÉS:

viernes, 17 de febrero de 2017

como usar Fragment Map guia basica en android studio

Hola gente, decidí hacer un tutorial de la forma mas básica para aquellos que parecería que le tuvieran miedo a los Fragment Map, pero hoy veremos un ejercicio muy fácil, sin mas rodeos necesitamos lo sgte.


PASO 1:  Primero debemos incrustar una linea a nuestro build.gradle que nos permitirá usar los servicios de Google Map.

dependencies {
    compile 'com.google.android.gms:play-services-maps:9.4.0'
}


PASO 2:  Ahora debemos agregar algunos permisos a nuestro archivo AndroidManifest.xml  les recuerdo mis pequeños aprendices que los 2 uses-permission deben ir antes de la etiqueta application y los meta-data con el uses-feature después de cerrar activity y por ultimo donde dice "Tu clave API_KEY"   Ahí deben colocar su clave api.  


  <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
  <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />

        <meta-data
            android:name="com.google.android.gms.version"
            android:value="@integer/google_play_services_version" />
        <meta-data
            android:name="com.google.android.geo.API_KEY"
            android:value="Tu clave API_KEY" />

        <uses-feature
            android:glEsVersion="0x00020000"
            android:required="true" />


PASO 3: Vallan a su activity_main.xml  entren en modo text y borren todo y peguen lo siguiente

<?xml version="1.0" encoding="utf-8"?>
<fragment xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/map"
    android:name="com.google.android.gms.maps.MapFragment"
    android:layout_width="match_parent"
    android:layout_height="match_parent" />



El resultado en modo gráfico sera el siguiente:




PASO 4: Ahora toca la parte del código, se deben dirigir a su MainActivity.java  y poner el siguiente código.

public class MainActivity extends AppCompatActivity
        implements OnMapReadyCallback {

    private GoogleMap mapa;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        MapFragment mapFragment = (MapFragment) getFragmentManager()
                .findFragmentById(R.id.map);

        mapFragment.getMapAsync(this);
    }

    @Override
    public void onMapReady(GoogleMap map) {
        mapa = map;
    }
}



Y el resultado sera el siguiente:


Y eso fue todo espero les sirva.


Link de la descarga
Programador alfa, lomo plateado, barba de clavos, mentón de roca, no descarga la aplicación sigue el tutorial. Clic para descargar
     
ENLACES DE INTERÉS:

 

Copyright @ 2015 Android-facil.

Designed by Draganus | AndroidFacil