La "nube" es muy grande y de vez en cuando un par de líneas de código valen más que mil de documentación. Vamos al grano:
Acelerómetro
Importar los paquetes:
import android.hardware.Sensor; import android.hardware.SensorEvent; import android.hardware.SensorEventListener; import android.hardware.SensorManager;
Implementar el interfaz: SensorEventListener
Obtener sensor de aceleración:
SensorManager manager = (SensorManager) getSystemService(Context.SENSOR_SERVICE); Sensor sensor = manager.getDefaultSensor(Sensor.TYPE_ACCELEROMETER);
Registrar el "listener":
manager.registerListener(this, sensor, SensorManager.SENSOR_DELAY_FASTEST);
Leer aceleración:
@Override
public void onSensorChanged(SensorEvent event)
{
float x = event.values[0]);
float y = event.values[1]);
float z = event.values[2]);
}
Grabación desde el micrófono
Permiso del "manifest":
<uses-permission android:name="android.permission.RECORD_AUDIO"/>
Import:
import android.media.MediaRecorder;
Código:
private MediaRecorder mRecorder = null;
/**
* Comenzar grabación
*/
private void startRecording() {
mRecorder = new MediaRecorder();
// La fuente es el micrófono
mRecorder.setAudioSource(MediaRecorder.AudioSource.MIC);
// Contenedor de audio
mRecorder.setOutputFormat(MediaRecorder.OutputFormat.THREE_GPP);
// Códec de audio
mRecorder.setAudioEncoder(MediaRecorder.AudioEncoder.AMR_NB);
// Archivo de salida, cambiar por el vuestro
mRecorder.setOutputFile(FileDescriptor.out);
try {
mRecorder .prepare();
mRecorder .start();
} catch (IOException e) {
e.printStackTrace();
mRecorder = null;
}
}
/**
* Parar la grabación
**/
private void stopRecording() {
mRecorder.stop();
mRecorder.release();
mRecorder = null;
}
Vibración
Permiso del "manifest":
<uses-permission android:name="android.permission.VIBRATE"/>
Import:
import android.os.Vibrator;
Código:
Vibrator vibrator = (Vibrator) getSystemService(Context.VIBRATOR_SERVICE);
// power: [0%,100%]
long pattern[] = {100 - power, power};
vibrator.vibrate(pattern, 0);
Continuará...
No hay comentarios:
Publicar un comentario