Creo un'activity che si ripropone ciclicamente a intervalli, per il momento, regolari.
Ecco, ho ripassato e riprodotto. Questa è un'activity che si riproduce da sola dopo un determinato intervallo di tempo:
public class MainActivity extends AppCompatActivity {
private AlarmManager alarmManager;
private PendingIntent pendingIntent;
private Button button;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
button=(Button) findViewById(R.id.button);
Intent intent=new Intent(getApplicationContext(),MainActivity.class);
alarmManager=(AlarmManager)getSystemService(Context.ALARM_SERVICE);
pendingIntent=PendingIntent.getActivity(getApplicationContext(),0,intent,0);
button.setOnClickListener(new Button.OnClickListener(){
@Override
public void onClick(View view) {
}
});
}
@Override
public void onDestroy(){
super.onDestroy();
alarmManager.set(AlarmManager.ELAPSED_REALTIME_WAKEUP, SystemClock.elapsedRealtime()+5*1000,pendingIntent);
}
}
Ora devo trovare il modo di far cessare il ciclo.
public class MainActivity extends AppCompatActivity {
private AlarmManager alarmManager;
private PendingIntent pendingIntent;
private Button button;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
button=(Button) findViewById(R.id.button);
Intent intent=new Intent(getApplicationContext(),MainActivity.class);
alarmManager=(AlarmManager)getSystemService(Context.ALARM_SERVICE);
pendingIntent=PendingIntent.getActivity(getApplicationContext(),0,intent,0);
button.setOnClickListener(new Button.OnClickListener(){
@Override
public void onClick(View view) {
alarmManager.cancel(pendingIntent);
if(pendingIntent!=null) pendingIntent.cancel();
}
});
}
@Override
public void onDestroy(){
super.onDestroy();
alarmManager.set(AlarmManager.ELAPSED_REALTIME_WAKEUP, SystemClock.elapsedRealtime()+5*1000,pendingIntent);
}
}
Ecco.Il ripasso l'ho fatto da questo mio stesso post
Nessun commento:
Posta un commento