Bip*_*and 8 android kotlin android-workmanager
我正在使用工作经理进行定期任务.我要执行单个工作实例
我的代码如下
val workManager = WorkManager.getInstance()
val callDataRequest = PeriodicWorkRequest.Builder(MyLoggerWork::class.java,
15, TimeUnit.MINUTES)
.addTag(worker)
.build()
workManager.enqueueUniquePeriodicWork(worker, ExistingPeriodicWorkPolicy.KEEP, callDataRequest)
Run Code Online (Sandbox Code Playgroud)
我的工作人员记录如下
18/09/2018 03:18:19
18/09/2018 03:18:19
18/09/2018 03:18:19
18/09/2018 03:18:19
18/09/2018 03:37:18
18/09/2018 03:37:18
18/09/2018 03:37:18
18/09/2018 03:37:18
Run Code Online (Sandbox Code Playgroud)
这是我的MyLoggerWork类
public class MyLoggerWork: Worker(){
override fun doWork(): Result {
addlog()
return Worker.Result.SUCCESS
}
private fun addlog() {
try {
val directory = File(Environment.getExternalStorageDirectory().path + "/", "Jobs")
if (!directory.exists()) {
directory.mkdir()
}
val file = File(directory.path, "jobs_.txt")
if (!file.exists() && directory.exists()) {
file.createNewFile()
}
try {
val text = SimpleDateFormat("dd/MM/yyyy hh:mm:ss").format(Date())
val stream = FileOutputStream(file, true)
stream.write("\r\n".toByteArray())
stream.write(text.toByteArray())
stream.close()
} catch (e: Exception) {
e.printStackTrace()
}
} catch (e: IOException) {
e.printStackTrace()
}
}
}
Run Code Online (Sandbox Code Playgroud)
我正在使用以下依赖
implementation 'android.arch.work:work-runtime:1.0.0-alpha08'
Run Code Online (Sandbox Code Playgroud)
为什么我的工作被召唤4次???
归档时间: |
|
查看次数: |
1184 次 |
最近记录: |