Visualizzazione stampabile
-
consiglio per nuova app
Salve ragazzi , spero di aver aperto il topic nella sezione adatta...
arrivo subito al nocciolo della situazione... pratico sport da combattimento da anni e avevo pensato per allenarci nella reattivitā in palestra ad un app, che permette tramite stimoli uditivi o visivi(colore) ,di memorizzare tramite un cronometro , il colpo in quanti secondi arriva al bersaglio.
per quanto riguarda il cronometro non ho molti problemi nell'implementarlo, l'unica grande mancanza č che non so che razza di classe utilizzare per far bloccare lo scorrere del tempo con il "suono del colpo" sul sacco...
qualcuno ha capito di cosa parlo e mi puo dare una mano?
Vi ringrazio anticipatamente ;)
-
Ciao! la classe di cui hai bisogno č OnWhistleListener
-
Quote:
Originariamente inviato da
nicolaforum
Ciao! la classe di cui hai bisogno č OnWhistleListener
ciao grazie per la risposta... ma non riesco a trovarla questa classe nella API guide di android ... mi sapresti indirizzare?
grazie ciao
-
Ti copio il source (lo trovi con google )
public class DetectionService extends Service implements
OnWhistleListener {
Handler handler;
private DetectorThread detectorThread;
private RecorderThread recorderThread;
@Override
public void onCreate() {
super.onCreate();
handler = new Handler();
}
@Override
public IBinder onBind(Intent intent) {
return null;
}
@Override
public int onStartCommand(Intent intent, int flags, int startId) {
try {
if (intent != null && intent.getExtras() != null) {
if (intent.getExtras().containsKey("action")) {
Debug.e("", "action : " + intent.getStringExtra("action"));
if (intent.getStringExtra("action").equals("start")) {
startWhistleDetection();
}
if (intent.getStringExtra("action").equals("stop")) {
stopWhistleDetection();
stopSelf();
}
}
} else {
startWhistleDetection();
Debug.e("", "intent is null OR intent.getExtras() is null");
}
} catch (Exception e) {
e.printStackTrace();
}
return super.onStartCommand(intent, flags, startId);
}
private void startWhistleDetection() {
try {
stopWhistleDetection();
} catch (Exception e) {
e.printStackTrace();
}
recorderThread = new RecorderThread();
recorderThread.startRecording();
detectorThread = new DetectorThread(recorderThread);
detectorThread.setOnWhistleListener(this);
detectorThread.start();
}
private void stopWhistleDetection() {
if (detectorThread != null) {
detectorThread.stopDetection();
detectorThread.setOnWhistleListener(null);
detectorThread = null;
}
if (recorderThread != null) {
recorderThread.stopRecording();
recorderThread = null;
}
}
@Override
public void onDestroy() {
super.onDestroy();
}
@Override
public void onWhistle() {
Debug.e("", "onWhistle()");
}