1

Je voudrais demander des événements. J'utilise le code suivant:Java Google Calendar API Ordre Événements Descendant

final Events feed = client.events().list(myCalendar.getId()).setOrderBy("updated").set("sortOrder", "descending") 
    .execute(); 

Cela ne fonctionne pas, cependant.

Comment puis-je commander les résultats décroissant au lieu de ascendant?

Mon agenda compte plus de 250 événements (nombre maximum d'événements renvoyés), c'est pourquoi je ne peux pas simplement parcourir tous les événements et faire un pré-filtrage.

Répondre

1

Vous devez utiliser la pagination pour effectuer une boucle sur des lignes supplémentaires.

import com.google.api.services.calendar.Calendar; 
import com.google.api.services.calendar.model.Event; 
import com.google.api.services.calendar.model.Events; 

// ... 

// Initialize Calendar service with valid OAuth credentials 
Calendar service = new Calendar.Builder(httpTransport, jsonFactory, credentials) 
    .setApplicationName("applicationName").build(); 

// Iterate over the events in the specified calendar 
String pageToken = null; 
do { 
    Events events = service.events().list('primary').setPageToken(pageToken).execute(); 
    List<Event> items = events.getItems(); 
    for (Event event : items) { 
    System.out.println(event.getSummary()); 
    } 
    pageToken = events.getNextPageToken(); 
} while (pageToken != null); 

Vous ne pouvez pas choisir ascendant ou descendant par défaut son ascendant. link

"mis à jour": à déterminer par date de dernière modification (croissant).