我已经为此工作了三天,而且我没有想法。 我经历了很多stackOverflow问题和答案。没人帮忙。 使用以下代码成功设置了我的日历:
com.google.api.client.http.HttpTransport x = AndroidHttp.newCompatibleTransport();
com.google.api.client.json.gson.GsonFactory gF = new GsonFactory();
calendar = new Calendar.Builder(x, gF, credential)
.setApplicationName(getString(R.string.app_name))
.build();
我知道日历服务没问题,因为我可以用它做很多事情,比如插入一个事件。 但是这个相当简单的代码抛出了一个未找到的IOException:
Event event = calendar.events().get("primary", eventId).execute();
我知道eventId是一个字符串,用于存储主日历中存在的事件。 为什么这段代码会抛出异常?我怎么能让它不扔呢?
答案 0 :(得分:0)
我可能找到了自己的答案。我从查询中获取eventId “content://com.android.calendar/events”数据库表。 它有98列,我认为“_id”是事件ID。 它不是。似乎列“_sync_id”是事件ID。 语句:
calendar.events().get("primary", eventId).execute();
当eventId来自列“_sync_id”时,返回正确的Event对象。 也许有人可以确认“_sync_id”确实是正确使用的列。