1
私は既に地図上の位置を検出し、ユーザからの距離をメートルで計算する仕組みになっています。Java AndroidでonLocationChangedでMediaPlayerを一度再生するには?
私の生のオーディオファイルは、その位置が望みの距離にある場合(私の場合は30メートル)再生したいと思います。
Iすでに)(私のonLocationChangedにこのコードを作っ
@Override
public void onLocationChanged(Location location) {
try {
float dis = calcdist(location.getLatitude(),location.getLongitude,lat,lng);
if(dis <= 30) {
MediaPlayer mp = MediaPlayer.create(this,R.raw.sound);
mp.setLooping(false);
mp.start();
} else {
mp.stop();
}
} catch (Exception e) {
Toast.makeText(getApplicationContext(),"Error",Toast.LENGTH_LONG).show();
}
}
今の問題は、ユーザーが再びその機能上移動、その火を取得し、距離がよりになるまで何度も音を再生したときに、あります30メートル以上
私はそれがなぜ正確に起こっているのか知っていますが、私はこれを行う正しい方法を見つけることができません。
誰でも手伝ってもらえますか?
ありがとうございます!