Google api java client 无法使用Google Tasks API的Java库将任务标记为未完成;s
我正在尝试设置一种方法来更改任务的状态。我运行的代码如下:Google api java client 无法使用Google Tasks API的Java库将任务标记为未完成;s,google-api-java-client,Google Api Java Client,我正在尝试设置一种方法来更改任务的状态。我运行的代码如下: private void changeStatus(String taskId, String listId, String newStatus) throws IOException { Task task = mService.tasks().get(listId,taskId).execute(); task.setStatus(newStatus); mService.tasks().update(lis
private void changeStatus(String taskId, String listId, String newStatus) throws IOException {
Task task = mService.tasks().get(listId,taskId).execute();
task.setStatus(newStatus);
mService.tasks().update(listId, task.getId(), task).execute();
}
我正在传递任务id、列表id和newStatus(即“已完成”或“需要操作”)。该代码可以很好地将任务标记为已完成,但当我尝试将其标记为未完成时,它会给我一个“无效值”错误
我已尝试将状态设置为“needsAction”,而不是将完成日期设置为:
task.setCompleted(new DateTime(new Date().getTime()));
但这也不行
正确的做法是什么
提前感谢。这是应该做的:
private void changeStatus(String taskId, String listId, String newStatus) throws IOException {
Task task = mService.tasks().get(listId,taskId).execute();
task.setCompleted(null);
task.setStatus(newStatus);
mService.tasks().update(listId, task.getId(), task).execute();
}
我已经解决了。问题是我需要先将已完成的字段设置为null。见答案。