如何从android studio中的日历中的最后创建事件中获取事件ID?

时间:2018-02-03 04:13:18

标签: android calendar google-calendar-api

我使用此代码

在android calander中插入了事件
 for(int L=0; L < jsonArray.length(); L++)
            {

                    JSONObject jsonObject = jsonArray.getJSONObject(L);
                    year[L] = jsonObject.getString("year");
                    month[L] = jsonObject.getString("month");
                    day[L] = jsonObject.getString("day");
                    StartTime[L] = jsonObject.getString("StartTime");
                    Endtime[L] = jsonObject.getString("Endtime");
                    Hours[L] = jsonObject.getString("Hours");
                    final ContentValues event = new ContentValues();
                    event.put(CalendarContract.Events.CALENDAR_ID, 1);
                    event.put(CalendarContract.Events.TITLE, "WORKING SCHEDULE OF THE WEEK");
                    event.put(CalendarContract.Events.DESCRIPTION, "selva");
                    event.put(CalendarContract.Events.EVENT_LOCATION, "chennai");

            eventID[L] = Long.parseLong(baseUri.getLastPathSegment());

                }//end of for for

            Toast.makeText(getApplicationContext(), "Event Created"+eventID[1]   , Toast.LENGTH_SHORT).show();

使用for循环我在不同日期插入了事件,但我需要获取已创建事件的事件ID。

所以我在developrs.com上看到了一个帖子,我使用了这一行

eventID[L] = Long.parseLong(baseUri.getLastPathSegment());

获取eventid,但是当我尝试运行应用程序时。我被关闭。我不知道为什么,代码中没有错误,但应用程序关闭,此语句用于从calander获取上次创建的事件的id。

基本上我在这里做的是使用for循环我在不同的日期插入事件,并且我尝试在每次执行for循环时获取事件id,并将id存储在数组eventid []中,并且我尝试在吐司信息中显示它们。

任何人都可以帮我解决这个问题吗?

1 个答案:

答案 0 :(得分:0)

如果要获取先前创建的事件的eventId,则只需从JSON响应中获取它。成功致电events.insert会返回event resource,其中包含eventId