安排自动壁纸在后台更改

时间:2018-11-30 11:36:08

标签: android android-studio android-jobscheduler android-wallpaper

我们如何将后台任务设置为android,以便在给定时间从URL加载图像并将其设置为墙纸

1 个答案:

答案 0 :(得分:0)

使用此代码设置墙纸

WallpaperManager myWallpaperManager 
        = WallpaperManager.getInstance(getApplicationContext());
        try {
            myWallpaperManager.setResource(R.drawable.five);
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }

并且您需要在您的清单中添加此权限

<uses-permission android:name="android.permission.SET_WALLPAPER" />

您需要JobDispatcher定期运行任务。

    FirebaseJobDispatcher dispatcher = new FirebaseJobDispatcher(new GooglePlayDriver(this));
    Job myJob = dispatcher.newJobBuilder()
            .setService(MyJobService.class)

            .setTag("DAILY-MAIN-SYNC")
            .setRecurring(true)   //  setRecurring
            // don't persist past a device reboot
            .setLifetime(Lifetime.FOREVER)
            .setTrigger(Trigger.executionWindow(1, (int) TimeUnit.DAYS.toSeconds(1)))
            .setExtras(myExtrasBundle)
            .build();
    dispatcher.schedule(myJob);

这项工作将每天运行

现在创建MyJobService extends JobService

@Override
    public boolean onStartJob(JobParameters job) { ....

写我上面写的代码。

希望这将引导您进入正确的轨道。