センサー値とサウンドを表示する 4 つのクラスがあります。onSensorChanged() と onProgressUpdate() を使用して 4 つのクラスで異なる値を取得します。メイン クラスの 1 つのボタンをクリックしてこれらの値を取得したいと考えています。
私の問題は、センサー値をクラスに渡すにはどうすればよいですか?
これらは私のsound.classです
public Void doInBackground(Void... params) {
while(rec == true){
try{
Thread.sleep(250);
}catch(InterruptedException e){
e.printStackTrace();
}
ampitude = recorder.getMaxAmplitude();
db =(float) (20 * Math.log10(ampitude));
publishProgress(db);
}
return null;
}
public void onProgressUpdate(Float... progress){
database.addSoundData(dB);
dB = (progress[0].toString());
sound.setText("dB: "+ dB);
}
}
これは私の Sensor クラスの 1 つです
public void onSensorChanged(SensorEvent event) {
float speedX=event.values[0];
float speedY=event.values[1];
float speedZ=event.values[2];
float absoluteSpeed = (float)Math.sqrt(speedX*speedX + speedY*speedY + speedZ*speedZ);
db.addSpeedData(speedX, speedY, speedZ, absoluteSpeed );
String results = "X: "+ event.values[0] + "\nY: "+ event.values[1] + "\nZ: "+ event.values[2] +"\nAbsolute: "+ absoluteSpeed;
speed.setText(results);
}