0

나는 ionic 및 firebase로 빌드 된 앱을 보유하고 있습니다. facebook4 cordova 플러그 인을 사용하여 페이스 북으로 로그인합니다. 그들이 로그인 할 때, 나는 사용자의 이름과 전자 메일 주소를 얻습니다. 그러나 일부 장치에서는 null 전자 메일 주소가 표시됩니다. firebase의 auth 섹션으로 이동하면 displayname이 올바르게 반환되지만 전자 메일 주소는 (-)으로 비어 있습니다. 여기 내 코드가있다.Facebook4, Firebase, null 이메일 받기

facebookConnectPlugin.login(['email', 'public_profile', 'user_friends'], //first argument is an array of scope permissions 
    function (userData) { 
    if (userData.authResponse) { 
     facebookConnectPlugin.api('me/?fields=email,name,first_name,last_name', ["public_profile"], 
      function (inforesult) { 
       facebookConnectPlugin.getAccessToken(function (token) { 
        //alert("Token: " + token); 
        var credential = firebase.auth.FacebookAuthProvider.credential(token); 
        firebase.auth().signInWithCredential(credential).then(function (result) { 

     alert(JSON.stringify(result)); // the email field is null. 

     $scope.myprofile = result; 

    }).catch(function (error) { 
    // Handle Errors here. 
     alert(error.message); 
    /... 
     }); 
    }); 
    }); 

} 
}, 
function (error) { 
    alert(error); 
    } 
) 

내가 누락 된 권한이 있습니까?

답변

1

전자 메일이 승인되지 않았거나 휴대폰으로 로그인 한 경우 일 수 있습니다. 모든 사용자가 이메일을 받았는지 확인할 수는 없습니다.

+0

나는 코드에 문제가 있다고 생각했다. 감사 –