JobScheduler可以执行前台服务吗?

时间:2018-03-15 21:03:30

标签: android android-service

有可能吗?我需要启动前台服务,因为我将它与UI线程一起使用,

示例:每25分钟在我的应用中播放视频,该视频已关闭。

1 个答案:

答案 0 :(得分:3)

我认为这不是使用JobScheduler的最佳用例,但你可以!首先,你应该创建

public class ExerciseJobService extends JobService {
    private Context context;
    public ExerciseJobService(Context context) {
         this.context = context
    }

    @Override
    public boolean onStartJob(JobParameters params) {
        Intent intent = new Intent(context, YOUR_SERVICE.class)
        startForegroundService(intent)
        return true;
   }

    @Override
    public boolean onStopJob(JobParameters params) {
        return true;
    }
}

在该日程安排之后

private FirebaseJobDispatcher jobDispatcher = FirebaseJobDispatcher(GooglePlayDriver(context)) 
Job myJob = jobDispatcher.newJobBuilder()
                .setService(ExerciseJobService::class.java)
                .setTag("SIMPLE_TAG")
                .setTrigger(Trigger.NOW)
                .build()
jobDispatcher.mustSchedule(myJob)