나는 내 앱의 가속도계 샘플링 속도에 어려움을 겪고 있습니다. 그래서 샘플링 속도 테스트 용으로 약간의 앱을 개발하기로 결정했습니다.Android 가속도 샘플링 속도 통계
내 코드에 실수가 있습니까? 샘플링 속도는 거의 변화 : - 나는 스레드 우선 순위 아마도 지나치게 업데이트를 제외하고 (그 잘못 아무것도 볼 수없는 코드에 대충 살펴 후/
private PowerManager.WakeLock mWakeLock;
private TextView infotext;
private SensorManager sensorManager;
private long nanoNow;
private long nanoOld;
private long nanodiffsum=0;
private int i=0;
private int values=2000;
private long[] nanodiff=new long[values];
DescriptiveStatistics myDescrStat = new DescriptiveStatistics();
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
int tid=android.os.Process.myTid()
android.os.Process.setThreadPriority(android.os.Process.THREAD_PRIORITY_URGENT_AUDIO);
infotext = (TextView) findViewById(R.id.textView);
sensorManager=(SensorManager)getSystemService(SENSOR_SERVICE);
sensorManager.registerListener(this,sensorManager.getDefaultSensor(Sensor.TYPE_ACCELEROMETER),SensorManager.SENSOR_DELAY_FASTEST);
final PowerManager pm = (PowerManager) getSystemService(Context.POWER_SERVICE);
mWakeLock = pm.newWakeLock(PowerManager.PARTIAL_WAKE_LOCK, "My Tag");
mWakeLock.acquire();
}
public void onSensorChanged(SensorEvent event){
if(event.sensor.getType()==Sensor.TYPE_ACCELEROMETER){
if (i==0){
nanoOld=event.timestamp;
}
if (i == values) {
for (int i=1; i<nanodiff.length; i++){
myDescrStat.addValue(nanodiff[i]);
nanodiffsum+=nanodiff[i];
}
infotext.setText(
"Average:" + nanodiffsum/values + "ms\n" + " = " + (double) 1000/(nanodiffsum /values) + "Hz" + "\n" +
"mean: " + 1000/myDescrStat.getMean() + "\n" +
"std:" + 1000/myDescrStat.getStandardDeviation() + "\n" +
"max:" + 1000/myDescrStat.getMin() + "\n" +
"min:" + 1000/myDescrStat.getMax() + "\n");
mWakeLock.release();
sensorManager.unregisterListener(this);
}else{
nanoNow=event.timestamp;
nanodiff[i]=(nanoNow-nanoOld)/1000000;
if (i%20==0)
infotext.setText("Aktuell: " + nanodiff[i] + "ms" + " = " + Math.round((double)1000/ nanodiff[i]) + "Hz");
nanoOld=nanoNow;
i++;
}
}
}
친절과 관련, 아서