简体   繁体   English

Android:Google Calendar API:如何执行create event方法?

[英]Android: Google Calendar API: how to execute create event method?

am using Google Calendar API . 正在使用Google Calendar API I created very simple createEvent method. 我创建了非常简单的createEvent方法。 Now i want to call createEvent method after my createEventButton is pressed. 现在,我想在按下我的createEventButton之后调用createEvent方法。 I heard that I need to call createEvent through an AsyncTask, the question is how to do that? 听说我需要调用createEvent通过的AsyncTask,问题是如何做到这一点?

createEvent method: createEvent方法:

    public   void createEvent(){

        Event event = new Event();
        DateTime startDateTime=new DateTime(eventStart.getText().toString());

        EventDateTime start = new EventDateTime()
                .setDateTime(startDateTime)
                .setTimeZone("America/Los_Angeles");

        event.setStart(start);


        DateTime endDateTime= new DateTime(eventEnd.getText().toString());

        EventDateTime end = new EventDateTime()
                .setDateTime(endDateTime)
                .setTimeZone("America/Los_Angeles");

        event.setStart(end);

        String calendarId = "primary";


        try {
            mService.events().insert(calendarId, event).execute();
        } catch (IOException e) {
            e.printStackTrace();
        }

    }

I need to call createEvent from here: 我需要从这里调用createEvent

    createEventButton.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) { }});

This listener is in my onCreate(Bundle savedInstanceState) 该侦听器位于我的onCreate(Bundle savedInstanceState)

If you're looking for actual code on how to use the AsyncTask follow this Github sample : 如果您正在寻找有关如何使用AsyncTask的实际代码,请遵循以下Github示例

class AsyncInsertCalendar extends CalendarAsyncTask {

  private final Calendar entry;

  AsyncInsertCalendar(CalendarSampleActivity calendarSample, Calendar entry) {
    super(calendarSample);
    this.entry = entry;
  }

  @Override
  protected void doInBackground() throws IOException {
    Calendar calendar = client.calendars().insert(entry).setFields(CalendarInfo.FIELDS).execute();
    model.add(calendar);
  }
}

CalendarAsyncTask is the user-made class which extends AsyncTask. CalendarAsyncTask是扩展AsyncTask的用户自定义类。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM