0

我有一個應用程序與離子和firebase構建。我正在使用facebook4 cordova插件登錄Facebook。當他們登錄時,我會得到用戶的姓名和電子郵件地址。但是在某些設備中,我收到的是空電子郵件地址。當我轉到firebase中的auth部分時,雖然displayname返回正確,但我的電子郵件地址爲( - )空。這是我的代碼。Facebook4,Firebase,獲取空郵件

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

好的我認爲這是代碼有問題。謝謝 –