Repetir alarmas cada lunes en Android usig AlarmManager / BroadcastReceiver
Quiero repetir mi tarea todos los lunes a las 09:00 AM y las 05:00 PM. He utilizado el siguiente código para eso, pero no soy capaz de repetir la tarea.
Codigo de Actividad: –
- ¿Necesito anular el registro de 'anonymous' BroadcastReceiver
- Cancelar el registro del receptor de radiodifusión registrado a través del manifiesto
- Error de excepción del receptor no registrado?
- Error de Constructor vacío en DeviceAdminReceiver
- ¿Cómo registrar el intentfilter personalizado para transmitir el receptor en el archivo de manifiesto?
public class AndroidScheduledActivity extends Activity { /** Called when the activity is first created. */ int id = 115; Intent myIntent; PendingIntent pendingIntent; AlarmManager alarmManager; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); Button buttonStart = (Button)findViewById(R.id.start); myIntent = new Intent(getBaseContext(), MyScheduledReceiver.class); myIntent.putExtra("id", id); pendingIntent = PendingIntent.getBroadcast(getBaseContext(), id, myIntent, 0); alarmManager = (AlarmManager)getSystemService(ALARM_SERVICE); buttonStart.setOnClickListener(new Button.OnClickListener(){ public void onClick(View arg0) { // TODO Auto-generated method stub setForMonday(); finish(); }}); } public void setForMonday() { Calendar calendar = Calendar.getInstance(); calendar.set(Calendar.DAY_OF_WEEK,2); calendar.set(Calendar.HOUR,09); calendar.set(Calendar.MINUTE, 00); calendar.set(Calendar.SECOND, 0); calendar.set(Calendar.MILLISECOND, 0); System.out.println("Old is set@ :== " + calendar.getTime()); long interval = calendar.getTimeInMillis() + 604800000L; System.out.println("Next Millis = " + interval); alarmManager.setRepeating(AlarmManager.RTC_WAKEUP, calendar.getTimeInMillis(), interval, pendingIntent); } }
Nota: – conté el intervalo basado en 86400000 * 7 = 604800000;
Receptor: –
public class MyScheduledReceiver extends BroadcastReceiver { @Override public void onReceive(Context context, Intent intent) { // TODO Auto-generated method stub System.out.println("Receiver"); } }
Si alguien tiene alguna idea por favor, amablemente ayudar. Gracias
- Android MediaProjectionManager en servicio
- Corregir el patrón para adquirir un WakeLock en un BroadcastReceiver y liberarlo en un servicio
- Java.lang.SecurityException: Permiso Negación: no se permite enviar broadcast android.intent.action.MEDIA_MOUNTED en KitKat solamente
- El receptor de difusión tarda demasiado en recibir en onReceive () después de que el modo de avión esté apagado / encendido
- Cómo determinar el remitente de Broadcast Intent
- Android - BroadcastReceiver no recibe intenciones personalizadas
- Android: validar la identidad del remitente de la intención
- Aplicación de los permisos de Android en la misma aplicación
Eliminar la variable de intervalo y utilizar lo siguiente en lugar de eso.
alarmManager.setRepeating(AlarmManager.RTC_WAKEUP, calendar.getTimeInMillis(),AlarmManager.INTERVAL_DAY * 7, pendingIntent);
- LibGDX no puede cargar una imagen específica
- Disposición de Android con 2 botones espaciados uniformemente