package com.android.sensor;
import org.openintents.sensorsimulator.hardware.Sensor;
import org.openintents.sensorsimulator.hardware.SensorEvent;
import org.openintents.sensorsimulator.hardware.SensorEventListener;
import org.openintents.sensorsimulator.hardware.SensorManagerSimulator;
import android.app.Activity;
import android.hardware.SensorManager;
import android.os.Bundle;
import android.widget.TextView;
public class mainActivity extends Activity implements SensorEventListener{
private SensorManagerSimulator mSensorManager;
private TextView mTextView1;
private TextView mTextView2;
private TextView mTextView3
;
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
mTextView1 = (TextView) findViewById(R.id.text1);
mTextView2 = (TextView) findViewById(R.id.text2);
mTextView3 = (TextView) findViewById(R.id.text3);
mSensorManager = SensorManagerSimulator.getSystemService(this,SENSOR_SERVICE);
mSensorManager.connectSimulator();
}
@Override
protected void onResume() {
// TODO Auto-generated method stub
super.onResume();
mSensorManager.registerListener(this,mSensorManager.getDefaultSensor(Sensor.TYPE_ACCELEROMETER),SensorManager.SENSOR_DELAY_FASTEST);
mSensorManager.registerListener(this,mSensorManager.getDefaultSensor(Sensor.TYPE_MAGNETIC_FIELD),SensorManager.SENSOR_DELAY_FASTEST);
mSensorManager.registerListener(this,mSensorManager.getDefaultSensor(Sensor.TYPE_ORIENTATION),SensorManager.SENSOR_DELAY_FASTEST);
mSensorManager.registerListener(this,mSensorManager.getDefaultSensor(Sensor.TYPE_TEMPERATURE),SensorManager.SENSOR_DELAY_FASTEST);
}
@Override
protected void onStop() {
// TODO Auto-generated method stub
mSensorManager.unregisterListener(this);
super.onStop();
}
@Override
public void onAccuracyChanged(Sensor arg0, int arg1) {
// TODO Auto-generated method stub
}
@Override
public void onSensorChanged(SensorEvent event) {
// TODO Auto-generated method stub
int sensor = event.type;
float[] values = event.values;
switch (sensor) {
case Sensor.TYPE_ACCELEROMETER:
mTextView1.setText("Accelerometer: " + values[0] + ", " + values[1]+ ", " + values[2]);
break;
case Sensor.TYPE_MAGNETIC_FIELD:
mTextView2.setText("Compass: " + values[0] + ", " + values[1]+ ", " + values[2]);
break;
case Sensor.TYPE_ORIENTATION:
mTextView3.setText("Orientation: " + values[0] + ", " + values[1]+ ", " + values[2]);
break;
}
}
}
上为编辑源代码:
http://code.google.com/p/openintents/downloads/list?q=sensorsimulator
再此下载sensor simulator包,并参考http://www.javalord.com/javalordblog/?p=559进行安装调试,并使用2.0效果会更好。
注:在此过程中遇到程序自动关闭问题
为<android.permission.INTERNET>没有加入,无法从192.168.1.100中d