【发布时间】:2016-03-26 04:48:23
【问题描述】:
import android.content.Intent;
import android.graphics.Typeface;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.view.View;
import android.view.MenuItem;
import android.widget.TextView;
import com.facebook.CallbackManager;
import com.facebook.FacebookSdk;
import com.facebook.login.LoginManager;
import com.facebook.login.widget.LoginButton;
import android.widget.Toast;
import com.facebook.FacebookCallback;
import com.facebook.FacebookException;
import com.facebook.login.LoginResult;
public class MainActivity extends AppCompatActivity {
private CallbackManager callbackManager;
private LoginButton loginButton;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
FacebookSdk.sdkInitialize(getApplicationContext());
callbackManager = CallbackManager.Factory.create();
setContentView(R.layout.login);
Typeface myTypeface = Typeface.createFromAsset(getAssets(), "MAGNETOB.TTF");
TextView myTextview = (TextView) findViewById(R.id.textview1);
myTextview.setTypeface(myTypeface);
loginButton = (LoginButton) findViewById(R.id.fb_login_button);
LoginManager.getInstance().registerCallback(callbackManager, new FacebookCallback<LoginResult>() {
@Override
public void onSuccess(LoginResult loginResult) {
System.out.println("Facebook Login Successful!");
System.out.println("Logged in user Details : ");
System.out.println("--------------------------");
System.out.println("User ID : " + loginResult.getAccessToken().getUserId());
System.out.println("Authentication Token : " + loginResult.getAccessToken().getToken());
Toast.makeText(MainActivity.this, "Login Successful!" + loginResult.getAccessToken().getUserId() , Toast.LENGTH_LONG).show();
*** // Over here where it says get.UserId()***
}
@Override
public void onCancel() {
Toast.makeText(MainActivity.this, "Login cancelled by user!", Toast.LENGTH_LONG).show();
System.out.println("Facebook Login failed!!");
}
@Override
public void onError(FacebookException e) {
Toast.makeText(MainActivity.this, "Login unsuccessful!", Toast.LENGTH_LONG).show();
System.out.println("Facebook Login failed!!");
}
});
}
@Override
protected void onActivityResult(int reqCode, int resCode, Intent data) {
callbackManager.onActivityResult(reqCode, resCode, data);
}
在我的 onSucess 方法中,我想使用 toast 打印用户名,但似乎无法找到没有 textview 的方法,这不是我想要的,我想使用 toast 加载用户名,但目前我正在加载用户 ID。
请帮忙谢谢
【问题讨论】:
-
您无法再获取用户名,因为 Graph API 的 v2.0:developers.facebook.com/docs/apps/changelog#v2_0
标签: java android facebook methods