私は方向を見いだす必要があるプロジェクトに取り組んでいます。私はコードを書いてテストしました。それはいくつかのデバイスでうまくいきましたが、他のデバイスでは(ポインタ)も動かなかった。私はこれについて学び、磁気センサーがコンパスの働く唯一の鍵であることを知りました。磁気センサーなしでコンパスが動作しない
public class Compass extends Activity implements SensorListener {
SensorManager sensorManager;
static final int sensor = SensorManager.SENSOR_ORIENTATION;
ViewCOm viewcom;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// Set full screen view
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
WindowManager.LayoutParams.FLAG_FULLSCREEN);
requestWindowFeature(Window.FEATURE_NO_TITLE);
viewcom = new ViewCOm(this);
setContentView(viewcom);
// get sensor manager
sensorManager = (SensorManager) getSystemService(SENSOR_SERVICE);
}
// register to listen to sensors
@Override
public void onResume() {
super.onResume();
sensorManager.registerListener(this, sensor);
}
@Override
public void onPause() {
super.onPause();
sensorManager.unregisterListener(this);
}
// Ignore for now
public void onAccuracyChanged(int sensor, int accuracy) {
}
// Listen to sensor and provide output
public void onSensorChanged(int sensor, float[] values) {
if (sensor != Compass.sensor)
return;
int orientation = (int) values[0];
viewcom.setDirection(orientation);
}
}
私の質問は、コンパスを作成するGPSやMAPのような他の方法はありますか?
ありがとうございます。
2つの否定の投票....しかし、 "いいえのコメント" ... :)笑い::) – Devraj