1

我使用 Evernote 的 Android Job 库。版本 1.2.0。

对于日常工作,我使用 DailyJob ( https://evernote.github.io/android-job/javadoc/com/evernote/android/job/DailyJob.html ),如下所示:

public class DailySyncJob extends DailyJob {

    public static final String TAG = "DailySyncJob";

    public static void schedule() {
        if (!JobManager.instance().getAllJobRequestsForTag(TAG).isEmpty()) {
            // job already scheduled, nothing to do
            return;
        }

        JobRequest.Builder builder = new JobRequest.Builder(TAG).setRequiredNetworkType(JobRequest.NetworkType.UNMETERED);

        // run job between 11pm and 6am
        DailyJob.schedule(builder, TimeUnit.HOURS.toMillis(23), TimeUnit.HOURS.toMillis(6));
    }

    @NonNull
    @Override
    protected DailyJobResult onRunDailyJob(Params params) {
        // do something
        return DailyJobResult.SUCCESS;
    }
}

是否onRunDailyJob启动应用程序类 onCreate()?

4

1 回答 1

3

我是图书馆的主要开发者。如果您的进程没有运行,那么首先调用您的 Appliction#onCreate() 。这不是图书馆特有的。如果您的进程已经死亡,Android 会以这种方式工作。

于 2017-10-13T20:47:35.630 回答