JobScheduler能否执行前台服务?

5

这个可行吗?我需要启动我的前台服务,因为我要和UI线程一起使用它。

例如:每25分钟在我的应用程序中播放一个视频,即使应用程序已关闭也能播放。


你想即使应用程序没有打开也能播放视频吗? - azizbekian
是的,我需要在前台启动应用程序并播放一个带有音乐的服务。 - Pablo Cegarra
你必须查看聊天头像并使用相同的实现。 - Adeel Turk
什么是“聊天头像”? - Pablo Cegarra
1个回答

8

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

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接