안드로이드 개발 질문/답변
(글 수 45,052)
package com.sen;
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.Button;
import android.widget.TextView;
public class sen extends Activity implements SensorEventListener {
SensorManager sensorManager = null;
// for accelerometer values
TextView outputX = null;
TextView outputY = null;
TextView outputZ = null;
// for orientation values
TextView outputX2 = null;
TextView outputY2 = null;
TextView outputZ2 = null;
Button bt = null;
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
sensorManager = (SensorManager) getSystemService(SENSOR_SERVICE);
setContentView(R.layout.main);
// just some textviews, for data output
outputX = (TextView) findViewById(R.id.TextView01);
outputY = (TextView) findViewById(R.id.TextView02);
outputZ = (TextView) findViewById(R.id.TextView03);
outputX2 = (TextView) findViewById(R.id.TextView04);
outputY2 = (TextView) findViewById(R.id.TextView05);
outputZ2 = (TextView) findViewById(R.id.TextView06);
}
@Override
protected void onResume() {
super.onResume();
sensorManager.registerListener(this, sensorManager
.getDefaultSensor(Sensor.TYPE_ACCELEROMETER),
SensorManager.SENSOR_DELAY_GAME);
sensorManager.registerListener(this, sensorManager
.getDefaultSensor(Sensor.TYPE_ORIENTATION),
SensorManager.SENSOR_DELAY_GAME);
}
@Override
protected void onStop() {
super.onStop();
sensorManager.unregisterListener(this, sensorManager
.getDefaultSensor(Sensor.TYPE_ACCELEROMETER));
sensorManager.unregisterListener(this, sensorManager
.getDefaultSensor(Sensor.TYPE_ORIENTATION));
}
public void onSensorChanged(SensorEvent event) {
synchronized (this) {
switch (event.sensor.getType()) {
case Sensor.TYPE_ACCELEROMETER:
outputX.setText("x:" + Float.toString(event.values[0])); // x
outputY.setText("y:" + Float.toString(event.values[1])); // y
outputZ.setText("z:" + Float.toString(event.values[2])); // z
break;
case Sensor.TYPE_ORIENTATION:
outputX2.setText("x:" + Float.toString(event.values[0]));
outputY2.setText("y:" + Float.toString(event.values[1]));
outputZ2.setText("z:" + Float.toString(event.values[2]));
break;
}
}
}
@Override
public void onAccuracyChanged(Sensor sensor, int accuracy) {
}
}
이렇게 코드를 사용하는데
안드로이드 2.1버전이나 2.2 에서 시뮬레이터 이용해서 값이 제대로 되는지 알아보고 싶습니다
인터넷에 나와있는것은 대부분 1.1 이나 1.5버전이더군요...ㅜ.ㅜ
방법이 없을까여??
디자이어에서는 정상동작을 했습니다....
하드웨어적인부분이 필요한앱들은 에뮬레이터보다는 실기기에서의 동작을 추천합니다