Java Facebook sdk 4.0.1可以';Android studio无法获得一些字段
我正在使用facebook为我的android应用程序开发登录功能 我几乎什么都做了,但我不能得到所有的领域 我只得到全名和fbid的东西 姓名、性别、个人资料图片不返回任何内容Java Facebook sdk 4.0.1可以';Android studio无法获得一些字段,java,android,facebook,Java,Android,Facebook,我正在使用facebook为我的android应用程序开发登录功能 我几乎什么都做了,但我不能得到所有的领域 我只得到全名和fbid的东西 姓名、性别、个人资料图片不返回任何内容 GraphRequest.newMeRequest(AccessToken.getCurrentAccessToken(), new GraphRequest.GraphJSONObjectCallback() { @Overr
GraphRequest.newMeRequest(AccessToken.getCurrentAccessToken(),
new GraphRequest.GraphJSONObjectCallback() {
@Override
public void onCompleted(JSONObject fbUser,
GraphResponse response) {
final ParseUser parseUser = ParseUser.getCurrentUser();
try{
parseUser.fetchIfNeeded();
}catch (Exception e){}
if (fbUser != null && parseUser != null
&& fbUser.optString("name").length() > 0) {
Log.d("fb","Json--"+fbUser);
parseUser.put(USER_OBJECT_NAME_FIELD, fbUser.optString("first_name"));
parseUser.put("fullname",fbUser.optString("name"));
try{
String mm= fbUser.getString("email");
parseUser.setEmail(mm);
}catch (Exception e){//e.printStackTrace();
}
try{
String mm= fbUser.getString("gender");
if(mm.equals("male"))
{
对于个人资料图片,我使用以下内容:
try {
final String id = fbUser.getString("id");
parseUser.put("fbId", id);
//Your code goes here
String ur = "https://graph.facebook.com/" + id + "/picture?width=640&height=640";
ImageLoader imageLoader = ImageLoader.getInstance();
imageLoader.init(ImageLoaderConfiguration.createDefault(getActivity().getApplicationContext()));
imageLoader.loadImage(ur, new SimpleImageLoadingListener() {
@Override
public void onLoadingComplete(String imageUri, View view, Bitmap bmImg) {
// Do whatever you want with Bitmap
if(bmImg!=null) {
bmImg=Bitmap.createScaledBitmap(bmImg,640,640,false);
ParseFile dL = new ParseFile("dpLarge.jpg", bmImg.toString().getBytes());
Bitmap smal = Bitmap.createScaledBitmap(bmImg, 120, 120, false);
ParseFile ds = new ParseFile("dpSmall.jpg", smal.toString().getBytes());
parseUser.put("dpLarge", dL);
parseUser.put("dpSmall", ds);
}
权限:
facebookLoginButton.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
loadingStart(false); // Facebook login pop-up already has a spinner
if (config.isFacebookLoginNeedPublishPermissions()) {
ParseFacebookUtils.logInWithPublishPermissionsInBackground(getActivity(),
config.getFacebookLoginPermissions(), facebookLoginCallbackV4);
} else {
ParseFacebookUtils.logInWithReadPermissionsInBackground(getActivity(),
config.getFacebookLoginPermissions(), facebookLoginCallbackV4);
}
}
});
}
无法找出我做错了什么。我还没有使用facebook sdk,但根据您的个人资料图片问题,您是否尝试过以下帖子中的解决方案:
还可以尝试使用一些日志,例如,检查
字符串ur
是否正确显示。您请求的权限是什么?我有AndroidManifest.xml文件。对不起,我说的不是manifest权限,而是facebook权限,请检查此答案->并确保您调用的权限正确,如“公共\u配置文件”、“用户\u朋友”、“电子邮件”、“用户\u生日”
。真奇怪。如果您有facebook帐户,请加入此群()并在那里粘贴此问题