Android:如何通过客户经理推特oAuth

时间:2012-07-19 12:11:04

标签: android twitter-oauth accountmanager

在我的应用程序中,我想在Twitter,Facebook等多个站点的登录过程中使用oAuth协议。我有一些关于Twitter oAuth的问题。

我使用这些行来访问令牌和秘密数据:

AccountManager am = AccountManager.get(MyActivity.this);
Account[] accounts = am.getAccountsByType("com.twitter.android.auth.login");

if(accounts.length > 0) {
    Account acct = accounts[0];
    am.getAuthToken(acct, "com.twitter.android.oauth.token", null, MyActivity.this, new AccountManagerCallback<Bundle>() {
        public void run(AccountManagerFuture<Bundle> arg0) {
            // Accessing token
        }
    }, null);               
} else {
    Toast.makeText(getApplicationContext(), "There is no defined account", Toast.LENGTH_SHORT).show();
}

所以我成功了。但我对这些问题感到好奇:

  • 我是否需要任何Twitter应用程序?
  • 我如何检查这些令牌或者我必须检查?我是说如何获取用户信息,如twitter_id?

任何信息都会很棒。

1 个答案:

答案 0 :(得分:3)

  

我是否需要任何Twitter应用程序?

是的,您需要一个Twitter应用程序来通过Twitter帐户进行身份验证。为此,请转到Twitter Developers创建您的应用程序。

  

我如何检查这些令牌或者我必须检查?我的意思是我将如何   达到用户的信息,如twitter_id?

当您在Twitter开发者网站上注册Twitter应用程序时,Twitter将生成应用程序的消费者密钥和消费者密钥。您可以根据需要重置它们。它们写在您应用的专用部分中。您可以转到<your Twitter Developers account>(您可以使用自己的Twitter凭据进行身份验证)&gt;访问此部分。 My Applications并点击您的应用。

对于OAuth令牌和OAuth秘密,Twitter开发者将在创建最后一个时为应用程序的所有者生成它们。对于其他用户,您必须执行OAuth身份验证流程才能获取其(OAuth)令牌和密码。您也可以使用此流程检索所有者OAuth令牌。在流程结束时,Twitter API将为您提供最终用户的令牌(OAuth令牌和OAuth秘密),Twitter身份以及经过身份验证的用户的屏幕名称(用户名)。通过这些信息,您将能够获得所需的所有信息。