2012-03-16 63 views
1

我想在android中使用oauth登錄到twitter後知道我的屏幕名稱。在android中oauth後twitter用戶的屏幕名稱

我使用OAuth認證, 我爲它

new OAuthRequestTokenTask(this,consumer,provider).execute(); 
public OAuthRequestTokenTask(Context context,OAuthConsumer consumer,OAuthProvider provider) { 
    this.context = context; 
    this.consumer = consumer; 
    this.provider = provider; 
} 
@Override 
protected Void doInBackground(Void... arg0) 
{ 
try { 
    Log.i(TAG, "Retrieving request token from Google servers"); 
    final String url = provider.retrieveRequestToken(consumer, Constants.OAUTH_CALLBACK_URL); 
     Log.i(TAG, "Popping a browser with the authorize URL : " + url); 
     Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse(url)).setFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP | Intent.FLAG_ACTIVITY_NO_HISTORY | Intent.FLAG_FROM_BACKGROUND); 
     context.startActivity(intent); 

    } catch (Exception e) { 
     Log.e(TAG, "Error during OAUth retrieve request token", e); 
    } 

    return null; 
} 

,並在其後的代碼,我的工作onNewIntent(意向意圖)

回答

2

使用此代碼

private OAuthProvider provider; 
private OAuthConsumer consumer; 
final Uri uri = params[0]; 
final String oauth_verifier = uri.getQueryParameter(OAuth.OAUTH_VERIFIER); 
consumer.setTokenWithSecret(consumer.getToken(),consumer.getTokenSecret()); 
provider.retrieveAccessToken(consumer, oauth_verifier); 
HttpParameters params1 = provider.getResponseParameters(); 
String userName = params1.getFirst("screen_name"); 
Log.v("user name >>>>>>>>", userName); 
+0

的人,你是唯一一個給出正確答案的人 - 如何從oauth twitter api獲取screen_name。非常感謝!!! – 2012-06-20 11:39:11

+0

不客氣。 – Manikandan 2012-06-20 17:48:07

+0

@Rojer和Manikanand任何人都可以提供完整的程序來打開twitter並獲得screeName。我被困在這裏。請提供教程,如果有的話。 – 2013-10-22 12:21:07

相關問題