Klingelton nach 2 Minuten automatisch stoppen

  • 1 Antworten
  • Neuester Beitrag
Diskutiere Klingelton nach 2 Minuten automatisch stoppen im Android App Entwicklung im Bereich Betriebssysteme & Apps.
N

newpageart

Neues Mitglied
Hallo ihr lieben,

ich habe ein Activity in dem beim Start ein klingelton abgespielt wird. Dieser läuft derzeit solange bis jemand den "Stop"-Button drückt. Dies funktioniert auch ohne Probleme. Nun würde ich gern aber noch etwas einbauen, damit der Klingelton nicht dauerhaft abgespielt wird. Also der Klingelton soll entweder über den Button, oder spätestens nach 2 Minuten (automatisch) beendet werden.
Wie könnte ich das nun am besten anstellen, das der klingelton nach 2 Minuten automatisch gestopt wird?

Diesen Code verwende ich derzeit:
Code:
public class MyScheduledActivity extends Activity {
    private MediaPlayer mMediaPlayer; 
    
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        // TODO Auto-generated method stub
        super.onCreate(savedInstanceState);
        setContentView(R.layout.layout_scheduledactivity);
        
        Button buttonDismiss = (Button)findViewById(R.id.dismiss);
        
        buttonDismiss.setOnClickListener(new Button.OnClickListener(){
            @Override
            public void onClick(View arg0) {
                // TODO Auto-generated method stub
                mMediaPlayer.stop();
                finish();
            }});

        playSound(getBaseContext(), getAlarmUri());
    }
    
    protected void onStop() {
        super.onStop();
    }
    
    private void playSound(Context context, Uri alert) {
        mMediaPlayer = new MediaPlayer();
        try {
            mMediaPlayer.setDataSource(context, alert);
            final AudioManager audioManager = (AudioManager) context
                    .getSystemService(Context.AUDIO_SERVICE);
            if (audioManager.getStreamVolume(AudioManager.STREAM_ALARM) != 0) {
                mMediaPlayer.setAudioStreamType(AudioManager.STREAM_ALARM);
                mMediaPlayer.prepare();
                mMediaPlayer.start();
            }
        } catch (IOException e) {
            Log.v("Out", "ERROR: "+e.toString());
        }
    }
 
    private Uri getAlarmUri() {
        Uri alert = RingtoneManager
                .getDefaultUri(RingtoneManager.TYPE_ALARM);
        if (alert == null) {
            alert = RingtoneManager
                    .getDefaultUri(RingtoneManager.TYPE_NOTIFICATION);
            if (alert == null) {
                alert = RingtoneManager
                        .getDefaultUri(RingtoneManager.TYPE_RINGTONE);
            }
        }
        return alert;
    }
}
Viele Grüße,
Tom
 
StefMa

StefMa

Experte
Google mal nach
Thread runnable

Gruß

Gesendet von meinem Nexus 4 mit der Android-Hilfe.de App
 
Ähnliche Themen - Klingelton nach 2 Minuten automatisch stoppen Antworten Datum
4