Veuillez noter que bien que l'API vous permette de vérifier les notifications, il n'existe aucune méthode inhérente pour les obtenir automatiquement. Vous devrez trouver un moyen d'aller chercher de nouvelles notifications périodiquement et les afficher dans votre application. Cela dépasse le contexte de cette question et a été omis.
try {
Bundle bun = new Bundle();
bun.putString(Facebook.TOKEN, Utility.mFacebook.getAccessToken());
bun.putString("include_read", "true"); // CHANGE "true" to "false" if you need just the unread/unseen notifications
String result = Utility.mFacebook.request("/me/notifications", bun);
JSONObject JORoot = new JSONObject(result);
JSONArray JAFeeds = JORoot.getJSONArray("data");
Log.e("TEST LENGTH", String.valueOf(JAFeeds.length()));
} catch (Exception e) {
// TODO: handle exception
}
Parse Maintenant, le contenu en utilisant la JAFeeds
JSONArray dans un for loop
. Si vous avez besoin juste le nombre, vous pouvez l'obtenir à l'aide JAFeeds.length()
(voir le Log.e
dans le code ci-dessus)
Note: Puisque vous avez la balise facebook-graph-api
dans l'OP, je suggère un exemple en utilisant l'API graphique. Cependant, si vous avez besoin d'une solution utilisant FQL, faites le moi savoir.
mise à jour:
Selon le commentaire de l'OP, en ajoutant une solution de rechange à l'aide FQL
try {
String query = "SELECT notification_id, recipient_id, object_id, object_type, sender_id, title_text, body_text, href, created_time FROM notification WHERE recipient_id=me() AND is_unread = 1 AND is_hidden = 0"
Bundle newNotifications = new Bundle();
newNotifications.putString("method", "fql.query");
newNotifications.putString("query", queryStatus);
String responseNewNotifications = Utility.mFacebook.request(newNotifications);
JSONArray JANotifications = new JSONArray(responseNewNotifications);
Log.e("TEST LENGTH", String.valueOf(JANotifications.length()));
} catch (Exception e) {
// TODO: handle exception
}
Tant la solution API graphique, ainsi que la solution FQL sont des codes de production et le travail qu'ils devrait. Si quelque chose de spécifique ne fonctionne pas, veuillez commenter ou mettre à jour le PO avec le problème.
oui ... pouvez-vous me fournir une solution FQL .... cela ne fonctionne pas ... thx –
@ dany: laissez-moi obtenir au bureau pour le code FQL. Mais qu'est-ce qui n'a pas fonctionné? Ce code est utilisé dans la production et fonctionne parfaitement. –
peut-être que je ne sais pas pour initialiser la session facebook ... pouvez-vous s'il vous plaît fournir quelque chose de complet? ... je veux dire je pense avoir besoin de permissions, je dois définir un ACCES TOCKEN et un APP ID, quel est l'ordre de faire tout ça? ... Merci beaucoup, Vous seriez un sauveur de la vie si vous pouvez dire que –