bonjour;
j'ai un probleme avec jobservice.je voudrais faire un timer qui repete une tache apres un temps défini(par exemple le lendemain a une heure précise)
dans mainactivity j'ai la methodeet la classe receiver:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24 mScheduleJobButton.setOnClickListener( new View.OnClickListener() { @Override public void onClick(View v) { ComponentName cn=new ComponentName(getPackageName(),JobSchedulerService.class.getName()); JobInfo ji=new JobInfo.Builder(1,cn ) // .setMinimumLatency(3000) .setPeriodic(3000) .build(); // if( mJobScheduler.schedule( builder.build() ) <= 0 ) { if( mJobScheduler.schedule(ji ) <= 0 ) { //If something goes wrong } } }); mCancelAllJobsButton.setOnClickListener( new View.OnClickListener() { @Override public void onClick( View v ) { mJobScheduler.cancelAll(); } });avec setperiodic j'obtiens bien la repétition
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24 public class JobSchedulerService extends JobService { private Handler mJobHandler = new Handler( new Handler.Callback() { @Override public boolean handleMessage( Message msg ) { Toast.makeText( getApplicationContext(), "JobService task running", Toast.LENGTH_SHORT ).show(); jobFinished( (JobParameters) msg.obj, false ); return true; } } ); @Override public boolean onStartJob(JobParameters params ) { mJobHandler.sendMessage( Message.obtain( mJobHandler, 1, params ) ); return true; } @Override public boolean onStopJob( JobParameters params ) { mJobHandler.removeMessages( 1 ); return false; } }
avec setminimumlatency (qui devrais me donner le départ délayé selon moi??) je n'obtiens rien alors que j'attends le message
je ne sais pas comment délayer le départ








Répondre avec citation
Partager