使用android帐户管理器登录到google reader
我在一个Android项目中创建一个谷歌阅读器客户端。 我需要使用内置的帐户凭证,并在这一点上尽可能接近官方的谷歌阅读器应用程序 一个星期以来,我一直在为一个问题苦苦挣扎,不知道如何解决它。 我使用authtokentype“reader”从AccountManager获得了一个Auth令牌。 代币的形式是使用android帐户管理器登录到google reader,android,oauth-2.0,accountmanager,google-reader,Android,Oauth 2.0,Accountmanager,Google Reader,我在一个Android项目中创建一个谷歌阅读器客户端。 我需要使用内置的帐户凭证,并在这一点上尽可能接近官方的谷歌阅读器应用程序 一个星期以来,我一直在为一个问题苦苦挣扎,不知道如何解决它。 我使用authtokentype“reader”从AccountManager获得了一个Auth令牌。 代币的形式是 DQAAAOcAAACJAmAkHEpPnaP-v7HxPYyz3XtCNwTiFLUsqYXfLQvCko4AqUyY213U81fXeNZC3VVArBaEsJJFcRXDmczrEhD
DQAAAOcAAACJAmAkHEpPnaP-v7HxPYyz3XtCNwTiFLUsqYXfLQvCko4AqUyY213U81fXeNZC3VVArBaEsJJFcRXDmczrEhDquxiJiWSp7eM9T8Bs2VV3uqFwE7irrfarKyBH-oVn2nZxKc3wcugqa7k3p4KCotz48cQRslDQhSZj1AK4hxqO2eu5X8lutffRCPjA6kmgmXhkYA4RuTCxVXbZr0E_ytQteX2VzOlPbqrZ7QD7NiqbeJYODE3pk4BNjHTWtgXAr3J0U7LMdtRh9aC9AJoBp1SNl3jptyzqFfeEjWtVTBQlKtn40vyzMDt0sZoSIaSPquc
既然我有了令牌,我如何使用非官方的Google Reader api登录?
我知道JavaAPI,并找到了各种文档,还有。所有这些都只强调客户端使用电子邮件和密码登录。每次我找到一个代码示例时,它都是
token = someFunctionIAlreadyUse();
someUndocumentedUnknowPersonalFunction(token);
我错过了一个简单的方法吗?如果没有,我在哪里可以找到访问api的详细方法(java)?只是了解如何操作。android提供的令牌与常规google reader身份验证中使用的令牌相同。下面是Christian Dadswell使用Jsoup编写的一些代码,这些代码经过修改后可用于Android authtoken:
public static String getGoogleToken(String authKey) throws UnsupportedEncodingException, IOException
{
Document doc = Jsoup.connect(_TOKEN_URL).header("Authorization", _AUTHPARAMS + authKey).userAgent(_USER_AGENT).timeout(4000).get();
// RETRIEVES THE RESPONSE TOKEN
String _TOKEN = doc.body().text();
return _TOKEN;
}
及
和常数:
private static String _USER_AGENT = "YourAppNameHere";
private static final String _AUTHPARAMS = "GoogleLogin auth=";
private static final String _GOOGLE_LOGIN_URL = "https://www.google.com/accounts/ClientLogin";
private static final String _READER_BASE_URL = "http://www.google.com/reader/";
private static final String _API_URL = _READER_BASE_URL + "api/0/";
private static final String _TOKEN_URL = _API_URL + "token";
private static final String _USER_INFO_URL = _API_URL + "user-info";
private static final String _USER_LABEL = "user/-/label/";
private static final String _TAG_LIST_URL = _API_URL + "tag/list";
private static final String _EDIT_TAG_URL = _API_URL + "tag/edit";
private static final String _RENAME_TAG_URL = _API_URL + "rename-tag";
private static final String _DISABLE_TAG_URL = _API_URL + "disable-tag";
private static final String _SUBSCRIPTION_URL = _API_URL + "subscription/edit";
private static final String _SUBSCRIPTION_LIST_URL = _API_URL + "subscription/list";
private static String _USER_AGENT = "YourAppNameHere";
private static final String _AUTHPARAMS = "GoogleLogin auth=";
private static final String _GOOGLE_LOGIN_URL = "https://www.google.com/accounts/ClientLogin";
private static final String _READER_BASE_URL = "http://www.google.com/reader/";
private static final String _API_URL = _READER_BASE_URL + "api/0/";
private static final String _TOKEN_URL = _API_URL + "token";
private static final String _USER_INFO_URL = _API_URL + "user-info";
private static final String _USER_LABEL = "user/-/label/";
private static final String _TAG_LIST_URL = _API_URL + "tag/list";
private static final String _EDIT_TAG_URL = _API_URL + "tag/edit";
private static final String _RENAME_TAG_URL = _API_URL + "rename-tag";
private static final String _DISABLE_TAG_URL = _API_URL + "disable-tag";
private static final String _SUBSCRIPTION_URL = _API_URL + "subscription/edit";
private static final String _SUBSCRIPTION_LIST_URL = _API_URL + "subscription/list";