Tag Archive for widget

Tutorial android 9: leer datos desde el acelerometro(Sensor event listener))

Leer datos del acelerometro:

El acelerometro en android es solo uno de diferentes sensores que podemos encontrar en nuestros dispositivos. 
Este se compone de 3 ejes, X , Y y Z los cuales cada uno genera una entrada que se mide en gravedad.

A continuaciòn este codigo registra  entradas del acelerometro y lo muestra en pantalla.

Codigo en actividad principal:

 

package com.practivaA2;

import java.util.List;

import android.app.Activity;
import android.content.pm.ActivityInfo;
import android.hardware.Sensor;
import android.hardware.SensorEvent;
import android.hardware.SensorEventListener;
import android.hardware.SensorManager;
import android.os.Bundle;
import android.widget.TextView;

public class PracticaAcelerometro2Activity extends Activity implements SensorEventListener{
    /** Called when the activity is first created. */
	TextView x,y,z;
	private  Sensor mAccelerometer;
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        x = (TextView)findViewById(R.id.xID);
        y = (TextView)findViewById(R.id.yID);
        z = (TextView)findViewById(R.id.zID);
        this.setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
    }

    protected void onResume()
    {
    	 super.onResume();
         SensorManager sm = (SensorManager) getSystemService(SENSOR_SERVICE);
         List<Sensor> sensors = sm.getSensorList(Sensor.TYPE_ACCELEROMETER);
         if (sensors.size() > 0) //dispositivo android tiene acelerometro
         {
             sm.registerListener(this, sensors.get(0), SensorManager.SENSOR_DELAY_GAME);
         }
    }
    protected void onPause()
    {
    	SensorManager mSensorManager=(SensorManager) getSystemService(SENSOR_SERVICE);
    	mSensorManager.unregisterListener(this, mAccelerometer);
    	super.onPause();
    }
    protected void onStop()
    {
    	SensorManager mSensorManager=(SensorManager) getSystemService(SENSOR_SERVICE);
    	mSensorManager.unregisterListener(this, mAccelerometer);
    	super.onStop();
    }
	

	@Override
	public void onSensorChanged(SensorEvent event) {
		this.x.setText("X = "+event.values[SensorManager.DATA_X]);
		this.y.setText("Y = "+event.values[SensorManager.DATA_Y]);
		this.z.setText("Z = "+event.values[SensorManager.DATA_Z]);
	}

	
	@Override
	public void onAccuracyChanged(Sensor sensor, int accuracy) {	
	}
}

Codigo en main.xml (Layout)

 

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:orientation="vertical" >

    <TextView
        android:id="@+id/xID"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:text="@string/hello" />

    <TextView
        android:id="@+id/yID"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="TextView" />

    <TextView
        android:id="@+id/zID"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="TextView" />

</LinearLayout>

 

 

Tutorial Android 1: Nuestro primer programa “Hola mundo”

En esta ocasión veremos como hacer un “Hola mundo” en android, nuestra primera aplicación.

A continuación voy a proporcionarte tanto un video que he realizado , así como el código fuente del “hola mundo”.

Codigo fuente de “Hola mundo” en Android (Como se ve en el video):

 

package com.android.paquete;

import android.app.Activity;
import android.os.Bundle;
import android.widget.TextView;
public class ProyectoAndroid1Activity extends Activity {
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
         
        String var = "Hola mundo, esta es una aplicacion para Android";
        TextView vista;
        vista = new TextView(this);
        this.setTitle("Aplicacion de Jorge");
        vista.setText(var);
        setContentView(vista);
    }
}

 

Basicamente tenemos que tener presente que cuando vamos a hacer un programa para android, manejaremos un sistema de archivos que crea el Eclipse, nosotros usualmente utilizaremos la carpeta “src” para escribir allí nuestro codigo fuente, podemos incluso posteriormente crear clases y librerías propias para utilizarlas, pues el lenguaje de programación Java mantiene todas sus propiedades incluso cuando programamos para android.

Encontraremos también otro tipo de archivos, pero por el momento no nos enfoquemos en ellos pues mas adelante seran utiles para modificar otros atributos de la aplicación.

Espero este tutorial te haya sido de ayuda. No olvides dejar tus comentarios.