Was ist falsch in Code? Ich habe die Zeit geändert, um nur zu testen. Bitte geben Sie das Ergebnis detailliert an.Ich möchte meine Aktivität zu einer bestimmten Zeit beginnen. Zum Beispiel 3 Uhr
AlarmManager am = (AlarmManager) getBaseContext().getSystemService(Context.ALARM_SEDate futureDate = new Date(new Date().getTime() + 86400000);
futureDate.setHours(7);
futureDate.setMinutes(45);
futureDate.setSeconds(0);
Intent intent = new Intent(getBaseContext(), MyBroadcastReceiver.class);
PendingIntent sender = PendingIntent.getBroadcast(getBaseContext(), 0,intent,
PendingIntent.FLAG_UPDATE_CURRENT);
Dies ist mein Broadcast-Reciever
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
public class MyBroadcastReceiver extends BroadcastReceiver {
//MediaPlayer mp;
@Override
public void onReceive(Context context, Intent intent) {
//mp=MediaPlayer.create(context, R.raw.alrm );
//mp.start();
//Toast.makeText(context, "Alarm....", Toast.LENGTH_LONG).show();
Intent scheduledIntent = new Intent(context, HorrorRes.class);
scheduledIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
context.startActivity(scheduledIntent);
}
}
Wo stellen Sie den Alarm ein? Das heißt, wo nennst du 'am.set()' oder eine ähnliche Methode? –
Warum machst du neues Date(). GetTime() + 86400000 welches die aktuelle Zeit bekommt und dann diese Periode hinzufügt .. und dann die Kalenderzeitparameter danach einstellen .. du solltest zuerst die Daten einstellen .. dann – JoxTraex