사실 어떻게 센서를 사용하는지 몰라 이것저것 해보고 있습니다. 그런데 s=manager.getDefaultSensor(Sensor.TYPE_ORIENTATION);//마그네틱 센서 얻기
이 부분을 실행하면서 Null point exception이 떠 프로그램이 자동으로 종료됩니다. 무엇이 문제인가요? 그리고 혹시
센서를 사용하는 예제코드를 얻을수 있을까요?
public class projectActivity extends Activity implements OnClickListener, OnCheckedChangeListener {

CheckBox cb;
CheckBox cb2;
CheckBox cb3;
//////////////////////////////////센서변수
Sensor s;
SensorEventListener listener;
int rate=3; //SENSOR_DELAY_NORMAL
SensorManager manager;
//////////////////////////////////
Button button;
Button button2;
Button button3;
Button button4;
Button button5;
Button button6;
//////////////////////
float[] Ro;
float[] I;
float[] gravity;
float[] geomagnetic;
float[] values={0,0,0};
float[] posture;
///////////////////////
int turn=0;
String[] text={"자세 교정 start", "자세 교정 stop"};
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.front);

Button button=(Button)findViewById(R.id.tap);
button.setOnClickListener(this);
s=manager.getDefaultSensor(Sensor.TYPE_ORIENTATION);//마그네틱 센서 얻기
}

@Override
public void onClick(View v) {
// TODO Auto-generated method stub
if (v.getId()==R.id.cal){
setContentView(R.layout.calibration);
newbutton();
if(manager.registerListener(listener,s,rate)){  //센서 등록
turn=(turn+1)%2;
button5.setText(text[turn]);
SensorManager.getRotationMatrix(Ro, I, gravity, geomagnetic);
while(turn==1)
posture=SensorManager.getOrientation(Ro, values);
button5.setText(posture[0]+"");
}
}
else if(v.getId()==R.id.mea){
setContentView(R.layout.measurement);
newbutton3();
cb=(CheckBox)findViewById(R.id.CheckBox1);
cb.setOnCheckedChangeListener(this);
cb2=(CheckBox)findViewById(R.id.CheckBox2);
cb2.setOnCheckedChangeListener(this);
cb3=(CheckBox)findViewById(R.id.CheckBox3);
cb3.setOnCheckedChangeListener(this);
}
else if(v.getId()==R.id.sta){
setContentView(R.layout.main);
newbutton2();
}
else if(v.getId()==R.id.tap){
setContentView(R.layout.main);
newbutton2();
}
else if(v.getId()==R.id.start2){
setContentView(R.layout.main);
newbutton2();
}
}
}