GCMNetorkManager PeriodicTask工作1分钟,但不要2

时间:2016-10-31 11:28:30

标签: android gcm-network-manager

我已经实施了GCMNetworkManager PeriodicTask

我已根据手册仔细检查了所有步骤,已阅读GCMNetMan的所有文档

设置一分钟的时间 - 完美无缺。设置2或5分钟 - 没有任何作用。

Kotlin的代码:

class ScheduleService: GcmTaskService() {
    private val TAG = "ScheduleService"

    override fun onInitializeTasks() {
        Log.wtf(TAG, "onInitializeTasks")
        val gcmMan = GcmNetworkManager.getInstance(this)
        gcmMan.schedule(PeriodicTask.Builder()
            .setPeriod(120000L)
            .setFlex(60000L)
            .setPersisted(true)
            .setService(ScheduleService::class.java)
            .setTag(GPSControl.SCHEDULED)
            .setUpdateCurrent(true)
        .build())
    }

    override fun onRunTask(taskParams: TaskParams): Int {
        Log.wtf(TAG, "onRunTask: ${taskParams.tag}")
        GPSControl.trigger(applicationContext, taskParams.tag)
        if (taskParams.tag == GPSControl.SCHEDULED)
            return GcmNetworkManager.RESULT_RESCHEDULE
        else return GcmNetworkManager.RESULT_SUCCESS
    }

    override fun onStartCommand(intent: Intent?, flags: Int, startId: Int): Int {
        return super.onStartCommand(intent, flags, startId)
    }
}

1 个答案:

答案 0 :(得分:0)

我是个白痴。 setPeriod()setFlex()接受SECONDS中的参数