2017-01-25 2 views
0

использование Google Calendar API. Я создал очень простой метод createEvent. Теперь я хочу вызвать метод createEvent после нажатия createEventButton. Я слышал, что мне нужно позвонить createEvent через AsyncTask, вопрос в том, как это сделать?Android: API Календаря Google: как выполнить метод создания события?

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(); 
     } 

    } 

Мне нужно позвонить createEvent здесь:

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

Этот слушатель находится в моем onCreate(Bundle savedInstanceState)

ответ

2

Если вы ищете для фактического кода о том, как используйте AsyncTask follow this Github sample:

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 - пользовательский класс, который расширяет AsyncTask.

+0

Не могли бы вы привести пример, как использовать его, с помощью моего метода? – Darius92

Смежные вопросы