Android y Java (21)


Android: Limpiar la pila de actividades.

Un ejemplo de uso:

A – Menú principal con opciones (se pulsa botón y vamos a B)
B – Lista (se pulsa un elemento y vamos a C)
C – Detalle de elemento seleccionado de la lista (Se pulsa Editar y vamos a D)
D – Editando el elemento (Se pulsa Borrar y se lanza startActivity para volver a A)




Java: Grabar y reproducir sonido con Android

El código para una aplicación de ejemplo, un ejercicio que he hecho para aprender a usar las clases MediaRecorder y MediaPlayer y que se basa en grabar un sonido en la tarjeta SD y luego reproducirlo. La aplicación muestra dos botones, uno que alterna entre iniciar y finalizar la grabación y para reproducir el sonido, este estará desactivado al inicio y mientras esta grabando el sonido. Yo lo he hecho para la versión 15 de la API (Android 4.0) pero sólo por que me gusta más la interfaz, cambiando alguna linea del AndroidManifest.xml funcionará en versiones anteriores.




Controlar el sensor de proximidad en Android

Se necesitará tener un TextView con id proximityTextView en el layout para poderlo probar

package ud10.e2;

import android.app.Activity;
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 Main extends Activity implements SensorEventListener{
   ImageView proxImg;
   SensorManager sm;
   Sensor proxSensor;
   
   @Override
   public void onCreate(Bundle savedInstanceState) {
      super.onCreate(savedInstanceState);
      setContentView(R.layout.main);

      sm         = (SensorManager) getSystemService(SENSOR_SERVICE);
      proxSensor = sm.getDefaultSensor(Sensor.TYPE_PROXIMITY);
      proxText   = (TextView) findViewById(R.id.proximityTextView);

      sm.registerListener(this, proxSensor, SensorManager.SENSOR_DELAY_NORMAL);
   }
   
   @Override
   public void onAccuracyChanged(Sensor sensor, int accuracy) {}
   
   @Override
   public void onSensorChanged(SensorEvent event) {
      proxText.setText(String.valueOf(event.values[0]));
   }
}



Java: Enviar SMS en Android.

Un par de funciones para enviar mensajes (en algún caso no sólo sms), su funcionalidad es diferente:

El uso de las dos es el mismo:

enviaSMS("000000000","El mensaje");
enviaSMS2("000000000","El mensaje");