JobScheduler not scheduling service in every minute

20 Views Asked by At

I want to schedule a job starting within 1 minute and continue on same interval. I have tried as below but not working.

public static void scheduleJob(Context context) {
    ComponentName serviceComponent = new ComponentName(context, MyJobService.class);
    JobInfo.Builder builder = new JobInfo.Builder(0, serviceComponent);
    builder.setMinimumLatency(60 * 1000); // Wait at least 30s
    builder.setOverrideDeadline(60 * 1000); // Maximum delay 60s

    JobScheduler jobScheduler = (JobScheduler)context.getSystemService(Context.JOB_SCHEDULER_SERVICE);
    jobScheduler.schedule(builder.build());
}

public class MyJobService extends JobService {
@Override
public boolean onStartJob(JobParameters params) {
    // Write your code here
    Log.d("KKKKKKKK MyJobService", "onStartJob");
    return true;
}

@Override
public int onStartCommand(Intent intent, int flags, int startId) {
    Log.d("KKKKKKKK onStartCommand", "onStartCommand");
    return super.onStartCommand(intent, flags, startId);
}
}


public class MyApplication extends Application {
@Override
public void onCreate() {
    super.onCreate();
    scheduleJob(getApplicationContext());
}
}


 <uses-permission android:name="android.permission.FOREGROUND_SERVICE" />
 <service
        android:name=".service.MyJobService"
        android:label="Word service"
        android:permission="android.permission.BIND_JOB_SERVICE" >
 </service>
0

There are 0 best solutions below