Comment avoir un accès en lecture à google.com/contacts d'un combiné Android?
-
19-09-2019 - |
Question
Dans mon application android, je voudrais récupérer le champ d'anniversaire de google.com/contacts, car ce champ n'est pas synchronisé dans l'application de contacts Android. Comment puis-je avoir un accès en lecture aux contacts Google?
J'ai vu Google API contacts , est-ce que j'ai pour l'utiliser ? laquelle ? Version portable ?
Ou est-il un moyen simple de lire ces contacts, comme Android fait quand il y a une synchronisation?
Merci d'avance
La solution
Il y avait un hack avant AccountManager était reased, j'ai commencé un fil il y a environ un an sur le groupe de développeurs Android, mais il a été supprimé. Il y avait une méthode non documentée que vous avez eu accès par la réflexion. Je ne peux pas sembler trouver partout maintenant, comme Google a supprimé le fil ou quelque chose. J'ai trouvé quelque chose de similaire ci-dessous, mais ce n'est pas celui que j'avais travail.
http://donpark.org/blog/2009 / 01/24 / applications client-side-oauth
Dans le pire des cas, la plupart des appareils qui sont maintenant, devraient éventuellement obtenir 2.1. Donc, vous pouvez simplement les faire se connecter puis valider et obtenir la clé d'authentification de Google, et si elles sont en 2.1 utiliser AccountManager et ne les dérangent pas les pouvoirs. quelque chose comme ci-dessous
WebRequest req = HttpWebRequest.Create(
@"https://www.google.com/accounts/ClientLogin? accountType=GOOGLE&Email=them@gmail.com&Passwd=pass&service=gbase&source=sadboy");
WebResponse resp = req.GetResponse();
string all;
using (StreamReader sr = new System.IO.StreamReader(resp.GetResponseStream()))
all = sr.ReadToEnd().Trim();
int auth = all.IndexOf("auth=");
string auth = all.Substring(auth, all.Length - auth);
Autres conseils
Il devrait être possible depuis Android 2.0 en utilisant AccountManager.
Il n'y a pas de tutoriels ni échantillons, je n'ai pas accès à tout périphérique> = 2.0 pour l'essayer.
Voir http://code.google.com/ p / android / questions / détail? id = 1073 # C28
Si je comprends bien, vous devriez être en mesure de getAuthToken fo compte Google et de le transmettre dans l'autorisation d'en-tête comme ici Autorisation: GoogleLogin auth = yourAuthToken