La lecture de tous les événements d'aujourd'hui à l'aide de CalendarContract - Android 4.0+
Je suis en train d'utiliser Android nouveau calendrier de l'API pour lire tous les événements de l'agenda. Je vais avoir du mal à trouver la bonne sélection sur la base de données de requête pour renvoyer tous les événements. Il semble que tous les récurrents et tous les événements de la journée sont écartés de la sélection. Ce qu'est la sélection args ne me permettrait d'obtenir tous les événements d'aujourd'hui dans le calendrier de l'api?
Voici ma tentative:
Cursor cur = null;
String selection = "((" + CalendarContract.Events.DTSTART
+ " >= ?) AND (" + CalendarContract.Events.DTEND + " <= ?))";
Time t = new Time();
t.setToNow();
String dtStart = Long.toString(t.toMillis(false));
t.set(59, 59, 23, t.monthDay, t.month, t.year);
String dtEnd = Long.toString(t.toMillis(false));
String[] selectionArgs = new String[] { dtStart, dtEnd };
cur = c.getContentResolver().query(CalendarContract.Events.CONTENT_URI,
null, selection, selectionArgs, null);
Je ne suis pas sûr de la façon d'élargir le choix ou d'en ajouter pour obtenir les événements récurrents et tous les événements de la journée. Toute aide serait appréciée.
Avez-vous compris cela??? Je suis coincé avec le même problème
J'ai trouvé la solution. Je vais poster momentanément
J'ai posté la réponse. Cheers! 😀
vérifier: stackoverflow.com/questions/26844770/...
J'ai trouvé la solution. Je vais poster momentanément
J'ai posté la réponse. Cheers! 😀
vérifier: stackoverflow.com/questions/26844770/...
OriginalL'auteur Zaid Daghestani | 2012-04-13
Vous devez vous connecter pour publier un commentaire.
Pour obtenir tous les événements d'aujourd'hui, y compris des événements récurrents, vous devez utiliser le tableau d'Instances, c'est à dire
Notez que vous devez ajouter les contraintes de temps pour les événements uri, vous ne pouvez pas trier toute autre manière.
Afin d'inclure tous les événements de la journée, d'élargir la recherche à 11:59PM la nuit précédente et 12:00 ce soir.
OriginalL'auteur Zaid Daghestani
Vos conditions de vous donner uniquement les événements qui sont strictement dans la limite aujourd'hui. Vous devriez vérifier celles qui commencent avant aujourd'hui, et à la fin après (multidays événement).
Pour des événements récurrents, je vérifie manuellement. Je n'ai pas trouvé un autre moyen.
- Je utiliser quelque chose comme:
Ce qui concerne,
OriginalL'auteur SebastienS
vous devriez être en mesure d'ajouter de la CalendarContract.Les événements.ALL_DAY à votre condition de sélection de filtre pour tous les ALL_DAY événements.
le récurrent événements sont également présents dans les Instances de la table. C'est contrairement à la table des Événements qui ne contient que le premier événement, qui définit la séquence des "instances".
OriginalL'auteur Moritz
Je sais que c'est un peu tard, mais j'avais une question très semblable et a eu du mal à trouver la réponse que je cherchais. Forcé à l'UTC de fuseau horaire pour tous les événements d'une journée rendu les choses difficiles. Voici ma solution:
La requête pourrait être affiné pour ne pas avoir besoin de 2 pièces, mais c'était assez bon pour moi.
Dans le cas où cela peut aider, voici où dayStart et dayEnd est venu à partir de:
OriginalL'auteur brbaker
Essayez d'utiliser des Instances.CONTENT_BY_DAY_URI. Cochez cette réponse pour un exemple - https://stackoverflow.com/a/36622111/1219241
OriginalL'auteur alcsan