android登录facebook用户ID和用户名
我写的代码可以登录facebook并显示用户ID和用户名。它可以正常工作,但我在登录时遇到一个问题,我必须双击登录按钮才能进入下一个活动(我想在自动登录时启动新活动) 这是我的密码android登录facebook用户ID和用户名,android,facebook,Android,Facebook,我写的代码可以登录facebook并显示用户ID和用户名。它可以正常工作,但我在登录时遇到一个问题,我必须双击登录按钮才能进入下一个活动(我想在自动登录时启动新活动) 这是我的密码 public void loginToFacebook() { mPrefs = getPreferences(MODE_PRIVATE); String access_token = mPrefs.getString("access_token", null);
public void loginToFacebook() {
mPrefs = getPreferences(MODE_PRIVATE);
String access_token = mPrefs.getString("access_token", null);
long expires = mPrefs.getLong("access_expires", 0);
if (access_token != null) {
facebook.setAccessToken(access_token);
getProfileInformation();
if (isBoolean == true) {
Intent in = new Intent(getApplicationContext(),
ChooseLocation.class);
in.putExtra("ID", id.getText().toString());
in.putExtra("NAME", name.getText().toString());
startActivity(in);
}
Log.d("FB Sessions", "" + facebook.isSessionValid());
}
if (expires != 0) {
facebook.setAccessExpires(expires);
}
if (!facebook.isSessionValid()) {
facebook.authorize(this,
new String[] { "email", "publish_stream" },
new DialogListener() {
@Override
public void onCancel() {
}
@Override
public void onComplete(Bundle values) {
SharedPreferences.Editor editor = mPrefs.edit();
editor.putString("access_token",
facebook.getAccessToken());
editor.putLong("access_expires",
facebook.getAccessExpires());
editor.commit();
try {
} catch (Exception e) {
}
}
@Override
public void onError(DialogError error) {
}
@Override
public void onFacebookError(FacebookError fberror) {
}
});
}
}
@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
facebook.authorizeCallback(requestCode, resultCode, data);
}
public void getProfileInformation() {
mAsyncRunner.request("me", new RequestListener() {
@Override
public void onComplete(String response, Object state) {
Log.d("Profile", response);
String json = response;
try {
JSONObject profile = new JSONObject(json);
final String id = profile.getString("id");
final String name = profile.getString("name");
runOnUiThread(new Runnable() {
@Override
public void run() {
Toast.makeText(getApplicationContext(),
"Name: " + name + "\n:id " + id,
Toast.LENGTH_SHORT).show();
LoginFacebook.this.name.setText(name);
LoginFacebook.this.id.setText(id);
isBoolean = true;
}
});
} catch (JSONException e) {
e.printStackTrace();
}
}
@Override
public void onIOException(IOException e, Object state) {
}
@Override
public void onFileNotFoundException(FileNotFoundException e,
Object state) {
}
@Override
public void onMalformedURLException(MalformedURLException e,
Object state) {
}
@Override
public void onFacebookError(FacebookError e, Object state) {
}
});
}
}
我做错了什么?如果有人知道答案,请帮助我
谢谢使用未完成的方法启动新活动。我尝试过但没有工作:(