Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/facebook/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 如何处理Twitter和facebook请求代码_Android_Facebook_Twitter - Fatal编程技术网

Android 如何处理Twitter和facebook请求代码

Android 如何处理Twitter和facebook请求代码,android,facebook,twitter,Android,Facebook,Twitter,如何在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

如何在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.

}
您有两种选择:

1) 单击fb或twitter按钮时,将布尔值设置为true,并检查单击了哪个按钮以确定要调用的方法

   @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) 或者,您可以使用身份验证令牌来确定单击了哪个按钮,因为当您单击登录按钮时,将生成身份验证令牌(twitter或facebook,另一个应为空)


编辑:使用第二个选项的答案更新了代码,这是一种更好的方法,正如他提到的,该解决方案适用于
com.twitter.sdk.android:twitter:1.14.1
及以上版本。

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);
    }
}

请求代码::
140
用于Twitter,请求代码::
64207
用于facebookmTwitterAuthClient.onActivityResult(请求代码、结果代码、数据);callbackManager.onActivityResult(请求代码、结果代码、数据);比如何处理请求代码??在onActivity结果中,第一个有效,但第二个无效。原因可能是什么?
@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);
    }
}