2016-01-28 2 views
2

Как обрабатывать код запроса Twitter и facebook на ActivityResult.Как обращаться с кодом Twitter и facebook

@Override 
    protected void onActivityResult(int requestCode, int resultCode, Intent data) { 
     super.onActivityResult(requestCode, resultCode, data); 

     // If request code of facebook than i will call other function and if 
     // request code of twitter than i will call some other function but 
     // how i can seprate both by request code. 

} 
+0

код запроса :: '140' для Twitter и запроса кода ::' 64207' для Facebook –

+0

mTwitterAuthClient.onActivityResult (reque stCode, resultCode, данные); callbackManager.onActivityResult (requestCode, resultCode, data); Чем обрабатывать код запроса? in onActivity result –

ответ

3

У вас есть 2 варианта:

1) на нажатие фб или твиттер кнопки установить логическое значение верно и проверьте, какая кнопка была нажата, чтобы определить метод, который вы хотите позвонить.

@Override 
    protected void onActivityResult(int requestCode, int resultCode, Intent data) { 
    super.onActivityResult(requestCode, resultCode, data); 

    if (fb_clicked == true) 
{ 
    //call the callback manager's onActivityResult 
} 
else if(twitter_clicked == true) 
{ 
    //call the twitter login button's onActivityResult 
} 
} 

2) Или вы можете использовать токен аутентификации, чтобы определить, какая кнопка была нажата в качестве маркера аутентификации будет генерироваться при нажатии на LoginButton (щебет или facebook и другой должен быть нулевым)

@Override 
    protected void onActivityResult(int requestCode, int resultCode, Intent data) { 
    super.onActivityResult(requestCode, resultCode, data); 

    if (AccessToken.getCurrentAccessToken() !=null) 
    //call the callback manager's onActivityResult 

    else 
    { 
    //call the twitter login button's onActivityResult 
    } 
} 
+0

Первый работал, но второй не сделал. Что может быть причиной? – h8pathak

4

по com.twitter.sdk.android:twitter:1.14.1 вы можете использовать:

@Override 
public void onActivityResult(int requestCode, int resultCode, Intent data) { 
    super.onActivityResult(requestCode, resultCode, data); 

    if (requestCode == TwitterAuthConfig.DEFAULT_AUTH_REQUEST_CODE) { 
     // Twitter request code 
     // TwitterLoginButton::onActivityResult(requestCode::int, resultCode::int, data::Intent); 
    } else { 
     // Use Facebook callback manager here 
     // CallbackManager::onActivityResult(requestCode::int, resultCode::int, data::Intent); 
    } 
} 
Смежные вопросы