1 Facebook ग्राफ़ API Gender नहीं लौटा रहा है

पर बनाया गया सवाल Tue, Apr 9, 2019 12:00 AM

मैं उपयोगकर्ता में साइन-इन करने के लिए फेसबुक एसडीके का उपयोग कर रहा हूं। लिंग प्राप्त करने के लिए मैंने अनुमति सूची में user_gender जोड़ा है।

List<String> accessPermissions = Arrays.asList("user_gender", "email", "user_birthday");
LoginManager.getInstance().logInWithReadPermissions(activity, accessPermissions);

जिसके बाद मुझे एक्सेस टोकन मिलता है। अब मैं बैकएंड टीम के लिए इस एक्सेस टोकन को पास कर रहा हूं। और बैकएंड टीम उपयोगकर्ता के जन्मदिन, लिंग, ईमेल आदि जैसे विवरण प्राप्त करने के लिए फेसबुक ग्राफ एपीआई का उपयोग कर रही है।

उपयोगकर्ता विवरण प्राप्त करने के लिए उन्होंने निम्नलिखित API को मारा।

https://graph.facebook.com/me?access_token=dummyaccesstoken&fields=name,gender,birthday,email

वे ईमेल और जन्मदिन जैसे विवरण प्राप्त करने में सक्षम हैं। लेकिन वे उपयोगकर्ता का लिंग प्राप्त करने में सक्षम नहीं हैं। चूंकि यह एक जीईटी एपीआई है, इसलिए मैं यह भी देख सकता हूं कि हमें उपयोगकर्ता का लिंग नहीं मिल रहा है।

हालाँकि, यदि हम बैकएंड में पहुँच टोकन पास करने के बजाय Android में ही विवरण प्राप्त करने का प्रयास करते हैं, तो यह ठीक काम करता है।

      GraphRequest request = GraphRequest.newMeRequest(
              loginResult.getAccessToken(),
              new GraphRequest.GraphJSONObjectCallback() {
                @Override
                public void onCompleted(
                    JSONObject object,
                    GraphResponse response) {
                  Log.d("Response", "response is "+response.getJSONObject().toString());
                  // Application code
                }
              });
          Bundle parameters = new Bundle();
          parameters.putString("fields", "id,name,link, gender");
          request.setParameters(parameters);
          request.executeAsync();

तो फेसबुक ग्राफ एपीआई में क्या समस्या है? यह लिंग वापस करने में सक्षम क्यों नहीं है? किसी और ने इस मुद्दे का सामना किया?

    
0
  1. उत्तरों के माध्यम से चला गया। लेकिन यहां मैं एक तंत्र के माध्यम से लिंग प्राप्त करने में सक्षम हूं। लेकिन ग्राफ एपीआई
    के माध्यम से नहीं मिल रहा है
    2019-04-09 18: 53: 26Z
1 उत्तर                              1                         
List<String> accessPermissions = Arrays.asList("user_gender", "email", "user_birthday");
LoginManager.getInstance().logInWithReadPermissions(activity, accessPermissions);

write instead of user_gender and email and user_birthday   

LoginManager.getInstance().logInWithReadPermissions(this, Arrays.asList("public_profile", "email"));

and write the Bundle request params

 Bundle parameters = new Bundle();
        parameters.putString("fields", "id,name,email,gender,birthday");
        request.setParameters(parameters);
        request.executeAsync();
    
0
2019-04-09 13: 29: 46Z
स्रोत रखा गया यहाँ