gpt4 book ai didi

java - 从 Android 版 facebook SDK 获取电子邮件地址

转载 作者:行者123 更新时间:2023-12-02 04:01:03 25 4
gpt4 key购买 nike

我在我的应用程序中集成了 Facebook 登录。我获取了其他个人资料信息,但无法从 sdk 获取电子邮件。这可能吗?

public void getProfileInformation_fb() {
mAsyncRunner.request("me", new RequestListener() {
@Override
public void onComplete(String response, Object state) {

String json = response;
try {
JSONObject profile = new JSONObject(json);
// getting name of the user

final String name = profile.getString("name");
// getting email of the user
final String email = profile.getString("email");

final String id = profile.getString("id");


Log.i("ID , Name", ""+id+ ""+name);

Log.i("Email", ""+email);


runOnUiThread(new Runnable() {

@Override
public void run() {
Log.i("Face Book", "" + email);
}

});

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

最佳答案

此代码 ID 对我有用。

  LoginManager.getInstance().registerCallback(callbackManager,
new FacebookCallback<LoginResult>() {
@Override
public void onSuccess(LoginResult loginResult) {
// App code
accessToken = loginResult.getAccessToken();


GraphRequest request = GraphRequest.newMeRequest(
accessToken,
new GraphRequest.GraphJSONObjectCallback() {
@Override
public void onCompleted(
JSONObject object,
GraphResponse response) {
// Application code

try {

String name = object.getString("name");
String birthday = object.getString("birthday");
String gender = object.getString("gender");
String email = object.getString("email");
String picture = object.getString("picture");






} catch (Exception e) {
e.printStackTrace();
}










}
});
Bundle parameters = new Bundle();
parameters.putString("fields", "id,name,link,birthday,first_name,gender,last_name,location,email,picture.type(large)");
request.setParameters(parameters);
request.executeAsync();







}

@Override
public void onCancel() {
// App code
Log.e("fb", "cancel ");
LoginManager.getInstance().logOut();
}

@Override
public void onError(FacebookException exception) {
// App code
Log.e("fb", "error " + exception);
LoginManager.getInstance().logOut();
}
});

关于java - 从 Android 版 facebook SDK 获取电子邮件地址,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34891632/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com