0

J'utilise Ionic2 et GooglePlus Authentication.Authentification Google/Firebase sans displayName ou photoURL pour iOS

Je peux me connecter et créer un utilisateur avec un uid dans la liste Firebase Authentication comme prévu.

Quand je fais cela:

 GooglePlus.login({ 
      'webClientId': webClientId, 
      'offline': true 
     }).then(googleData => { 

Lorsque le webClientId correspond à la Client ID dans le iOS Credential ci-dessous.

Problème:

Cependant, pour iOS, le googleData ne contient un emailAddress et uid, mais le displayName et photoURL sont null.

Plus d'info:

J'ai un iOS Credential mis en place avec le Bundle ID correspondant à la widget id dans le config.xml:

enter image description here

config.xml

<?xml version='1.0' encoding='utf-8'?> 
<widget id="com.ionicframework.XXXXXXX" version="0.0.1" xmlns="http://www.w3.org/ns/widgets" xmlns:cdv="http://cordova.apache.org/ns/1.0"> 
    <name>theWhoZoo</name> 

Et il a également le REVERSED_CLIENT_ID correspondant à iOS URL scheme ci-dessus.

<plugin name="cordova-plugin-googleplus" spec="~5.1.1"> 
    <variable name="REVERSED_CLIENT_ID" value="com.googleusercontent.apps.XXXXXX" /> 
</plugin> 

J'ai aussi créé un Firebase App pour mon projet qui a aussi le correspondant Bundle ID (pas sûr si cela a un effet):

enter image description here

Aussi, je ne sais pas si cela fait toute différence, mais j'ajoute le CLIENT_ID pour iOS à Google Firebase authentification ici:

enter image description here

Question

Y at-il des étapes que je me manque ou faire quelque chose de mal à mettre en place pour iOS?

+0

Dois-je installer des capsules de cacao? Je préférerais garder mon application aussi simple et légère que possible. – Richard

Répondre

1

Cela devrait ajouter la portée nécessaire pour l'extraction de données profil:

window.plugins.googleplus.login({ 
    'scopes': 'https://www.googleapis.com/auth/plus.me', 
    // continue below... 

Voir le documentation officiel et le plugin documentation pour plus de détails.

La portée est décrite here.

+0

merci, je vais essayer. – Richard

+0

MERCI !!! Vous avez résolu mon problème. J'essayais de régler ça tout le week-end. – Richard

+0

chose étrange que je ne peux pas expliquer. J'ai fait le changement comme vous l'avez suggéré, puis dans 'Xcode' a construit le projet, et il renvoyait' displayName' et 'photoUrl'. Donc j'ai pensé que c'était corrigé. Cependant, j'ai ensuite fait un 'ionic build ios', puis je l'ai reconstruit dans' Xcode', et maintenant il ne retourne pas 'displayName' et' photoUrl'. – Richard