JobScheduler 可以执行前台服务吗?

Can a JobScheduler execute a foreground service?

可能吗?我需要启动我的前台服务,因为我在 UI 线程中使用它,

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

我认为这不是使用 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)