Sigueme en Facebook Sigueme en Twitter Sigueme en Instagram Sigueme en Youtube
JC Mouse Bolivia
Index / Android / Vibrate: ¿Cómo hacer vibrar un dispositivo Android?

Vibrate: ¿Cómo hacer vibrar un dispositivo Android?

Autor jc mouse martes, julio 11, 2017

En este post crearemos una app para utilizar el vibrador de nuestro dispositivo android usando para ello el IDE Android Studio

Paso 1: El Proyecto

Creamos un nuevo proyecto en Android Studio que se llamara “Vibrate“, a continuación seleccionamos el SDK “Minimum SDK: API 16 Android 4.1” para tener mayor compatibilidad con dispositivos.

Presionamos siguiente y elegimos un Empty Activity, dejamos como esta el nombre de “MainActivity” y su layout “activity_main” que sale por defecto, presionamos finish para crear el proyecto.

vibrate

Paso 2: Permisos

Para poder usar el vibrador del dispositivo, debemos añadir el siguiente permiso al archivo Manifest

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

Paso 3: Interfaz

Reemplazamos el contenido del archivo activity_main.xml por:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    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"
    android:orientation="vertical"
    tools:context="org.example.vibrate.MainActivity">

    <Button
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="Vibrar 500 ms"
        android:id="@+id/button1"/>

    <Button
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="Vibrar dado un patron"
        android:id="@+id/button2"/>

    <Button
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="Vibrar Indefinidamente"
        android:id="@+id/button3"/>

</LinearLayout>

Paso 4: Código

Reemplazamos el código de la clase MainAcitivity por:

import android.content.Context;
import android.os.Vibrator;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.widget.Button;

public class MainActivity extends AppCompatActivity {

    private Vibrator vibrator;

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

        Button button1 = ((Button)findViewById(R.id.button1));
        Button button2 = ((Button)findViewById(R.id.button2));
        final Button button3 = ((Button)findViewById(R.id.button3));
        
        // Obtiene instancia a Vibrator
        vibrator = (Vibrator) getSystemService(Context.VIBRATOR_SERVICE);

        //Compruebe si dispositivo tiene un vibrador.
        if (vibrator.hasVibrator()) {//Si tiene vibrador

            //vibra N milisegundos
            button1.setOnClickListener(
                    new View.OnClickListener() {
                        public void onClick(View view) {
                            long tiempo = 500; //en milisegundos
                            vibrator.vibrate(tiempo);
                        }});

            //vibra segun un patron dado
            button2.setOnClickListener(
                    new View.OnClickListener() {
                        public void onClick(View view) {
                            long[] pattern = {400, //sleep
                                              600, //vibrate
                                              100,300,100,150,100,75};
                            // con -1 se indica desactivar repeticion del patron
                            vibrator.vibrate(pattern, -1);
                        }});

            //vibra segun un patron dado indefinidamente
            button3.setOnClickListener(
                    new View.OnClickListener() {
                        public void onClick(View view) {
                            if(!button3.getText().equals("Detener")){
                                button3.setText("Detener");
                                long[] pattern = {400, 600, 100,300,100,150,100,75};
                                vibrator.vibrate(pattern, 0);
                            }else{
                                button3.setText("Vibrar indefinidamente");
                                vibrator.cancel();//cancela vibración
                            }
                        }});

        } else {//no tiene
            Log.v("VIBRATOR", "Este dispositivo NO puede vibrar");
        }
    }
}

Ejecutamos y probamos:

hash

enjoy!!!

Tags

Si te ha gustado podrías compartirlo o dejar un comentario. ¡Muchas gracias!
Autor: JC Mouse

Yo soy yo :) JC Mouse, Soy orgullosamente boliviano soy fundador y CEO de la web jc-Mouse.net uno de las pocas web en emprendimiento y tecnología en Bolivia.

Toda la información que encuentres en este sitio es y sera completamente gratis siempre, puedes copiar, descargar y re-publicar si así lo deseas en otros blogs o sitios web, solo te pido a cambio que dejes una referencia a esta web. Esto nos ayuda a crecer y seguir aportando. Bye

Enjoy! :)

También Te Podría Interesar

Botones circulares de Google Plus en java

Botones circulares de Google Plus en java

Continuación del tutorial “Google Circles en java” o.O 🙂 La Interfaz El proyecto consta de una sola interfaz...

WhatsApp: Aprende a usar la nueva función ‘Estado’

WhatsApp: Aprende a usar la nueva función ‘Estado’

A continuación te mostramos una guía sobre la nueva nueva función ‘estado‘ de WhatsApp.  Primero que nada, a...

CORBA en java .:. Ejemplo completo

CORBA en java .:. Ejemplo completo

Common Object Request Broker Architecture (CORBA) es un estándar que permite que diversos componentes de software escrit...

Como saber el tipo de objeto que contiene un hashmap

Como saber el tipo de objeto que contiene un hashmap

La clase hashMap es muy util para almacenar objetos de la forma ( Clave, Objeto ), donde Clave es un identificador único...

Crear componente Switch de Android para Java Swing

Crear componente Switch de Android para Java Swing

En este post crearemos un componente que solo hay en android y que no esta disponible en la paleta de controles de Netbe...

Matriz de Adyacencia: Representación de grafos en Java

Matriz de Adyacencia: Representación de grafos en Java

En este post conoceremos una forma de representar grafos mediante una Matriz de Adyacencia y un ejemplo básico de este e...

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

*

Comparte lo que sabes

Categorias

Últimas entradas

Existen varias aplicaciones (free y de pago) que emulan una impresora virtual para generar archivos en PDF  (Portable Do...

En este post construiremos paso a paso un SharedPreferences más conocido en español como “Preferencias de Usuario...

La Inteligencia Artificial (AI – Artificial Intelligence) estará presente en casi cada aspecto de nuestra vida en...

Una Interface Funcional es una interface que contiene uno y solo un método abstracto aunque puede contener métodos por d...

Android Bolivia

Bandera en Alto