2010-02-10 39 views
3

在我的Android应用程序中,我想从google.com/contacts检索生日字段,因为此字段在android联系人应用程序中未同步。 如何获得Google通讯录的读取权限?如何从Android手机获得对google.com/contacts的读取权限?

我看到了Google contacts APIs,我有使用它吗?哪一个 ? Portable version

还是有一种简单的方法来读取这些联系人,就像Android在进行同步时所做的那样?

在此先感谢

回答

3

曾经有一个劈的AccountManager是前我在一年前开发了一个关于android开发人员小组的帖子,但它已被删除。有一种没有记录的方法,你必须通过反思来访问。我似乎无法在任何地方找到它,就像谷歌已经删除线程或其他东西。我在下面找到类似的东西,但这不是我工作的那个。

http://donpark.org/blog/2009/01/24/android-client-side-oauth

在最坏的情况下,现在都出来了大多数设备,应最终得到2.1。所以你可以让他们登录,然后验证并从谷歌获得授权密钥,如果他们在2.1使用AccountManager,不要打扰他们的凭据。类似下面

WebRequest req = HttpWebRequest.Create(
@"https://www.google.com/accounts/ClientLogin? accountType=GOOGLE&[email protected]&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); 

https://developer.android.com/about/dashboards/index.html

1

应该使用的AccountManager是可能的,因为Android 2.0的。

没有教程和示例,我没有访问任何> = 2.0设备来试用它。

http://code.google.com/p/android/issues/detail?id=1073#c28

据我了解,你应该能够getAuthToken FO谷歌帐户,并通过它在授权这里头授权:的GoogleLogin AUTH = yourAuthToken

+0

THX但我的设备是1.5 – tbruyelle 2010-02-15 22:17:30