Connexion via les réseaux sociaux
Dans votre application, vous pouvez implémenter l’authentification utilisateur via des comptes de réseaux sociaux. Si l’utilisateur se connecte pour la première fois via un réseau social, un nouveau compte est automatiquement créé. L’utilisateur n’a pas besoin de saisir de nom d’utilisateur, d’adresse e-mail ou d’autres données.
Il existe deux manières d’implémenter l’authentification via les réseaux sociaux :
- Authentification Web. Dans ce cas, l’application ouvre un formulaire dans le navigateur pour compléter l’authentification via le réseau social sélectionné. Cette option convient aux applications mobiles et de bureau ;
- Authentification native. Dans ce cas, l’authentification est effectuée via l’application de réseau social sur l’appareil de l’utilisateur. Cette option ne convient qu’aux applications mobiles.
La connexion via les réseaux sociaux peut être utilisée comme méthode d’authentification principale ou alternative dans votre application.
Si vous utilisez la connexion via les réseaux sociaux comme méthode d’authentification alternative, le compte de réseau social est automatiquement lié à un compte utilisateur existant si les conditions suivantes sont remplies :
- l’utilisateur inscrit par nom d’utilisateur/adresse e-mail et mot de passe se connecte à votre application via un compte de réseau social ;
- le réseau social renvoie une adresse e-mail ;
- l’adresse e-mail de l’utilisateur sur le réseau social est la même que celle utilisée pour l’inscription dans votre application.
Vous pouvez également implémenter la liaison manuelle d’un compte de réseau social.
Instructions
Le SDK prend en charge la connexion via les fournisseurs suivants :
- Amazon
- Apple
- Baidu
- Battle.net
- Discord
- GitHub
- Kakao
- MSN
- Mail.ru
- Microsoft
- Naver
- Odnoklassniki
- PayPal
- Steam
- Twitch.tv
- VK
- Vimeo
- Xbox Live
- Yahoo
- Yandex
- YouTube
Pour configurer l’authentification via les services Web :
- Dans l’interface de l’application, ajoutez des boutons d’authentification via les réseaux sociaux.
- Configurez les réseaux sociaux pour le projet de connexion dans le Compte éditeur.
- Implémentez la logique d’authentification côté application.
Configurer les réseaux sociaux pour le projet de connexion dans le Compte éditeur Xsolla
- Ouvrez votre projet dans le Compte éditeur.
- Dans le menu latéral, cliquez sur Login.
- Dans le volet du projet de connexion, cliquez sur Configure.
- Accédez au bloc Authentication et sélectionnez la section Social login.
- Connectez les réseaux sociaux que les utilisateurs peuvent utiliser pour s'inscrire et se connecter à l'application :
- Pour connecter le réseau social souhaité, cliquez sur l'icône ⚙ et sélectionnez Connect
- Pour connecter plusieurs réseaux sociaux à la fois, sélectionnez les volets requis (leurs bordures deviennent vertes). Ensuite, dans le menu déroulant Manage, sélectionnez Connect
- Pour connecter simultanément tous les réseaux sociaux disponibles, cliquez sur Select all. Ensuite, dans le menu déroulant Manage, sélectionnez Connect
Intégration côté application
- Appelez la méthode
startSocialAuth
de la bibliothèque Login. - Dans la méthode
onActivityResult
, appelez la méthodefinishSocialAuth
de la bibliothèque Login.
L’authentification native permet aux utilisateurs de se connecter à votre application via un compte de réseau social configuré sur un appareil mobile.
La première fois qu’un utilisateur se connecte, l’application de réseau social est lancée et demande l’autorisation d’authentifier l’utilisateur. Ensuite, l’authentification est effectuée automatiquement sans que l’utilisateur ne fasse quoi que ce soit.
Actuellement, le SDK implémente l’authentification native via les réseaux sociaux suivants :
Pour configurer l’authentification native :
- Dans l’interface de l’application, ajoutez des boutons d’authentification via les réseaux sociaux.
- Configurez l’application dans le compte de développeur de réseau social :
- Pour l’authentification via Facebook :
- Inscrivez-vous et créez une nouvelle application ;
- Configurez la page de l’application dans votre compte de développeur Facebook.
- Pour l’authentification via Google, configurez le projet dans Google API Console.
- Pour l’authentification via WeChat :
- Inscrivez-vous et créez une nouvelle application ;
- Soumettez la demande pour examen.
- Pour l’authentification via QQ :
- Inscrivez-vous et créez une nouvelle application ;
- Soumettez la demande pour examen.
- Pour l’authentification via Facebook :
- Configurez l'authentification via les réseaux sociaux côté Xsolla :
- Pour Facebook et Google, configurez la connexion via les réseaux sociaux dans le Compte éditeur ;
- Pour WeChat et QQ, contactez votre responsable de la réussite client ou envoyez un e-mail à csm@xsolla.com.
- Installez des bibliothèques pour l'authentification via les réseaux sociaux. Pour ce faire, ouvrez le fichier
build.gradle
de votre application et, dans la section des dépendances, ajoutez les lignes ci-dessous, où<version_number>
est la version requise de la bibliothèque :- Pour l'authentification via Facebook :
- groovy
implementation 'com.xsolla.android:login-facebook:<version_number>'
- Pour l'authentification via Google :
- groovy
implementation 'com.xsolla.android:login-google:<version_number>'
- Pour l'authentification via WeChat :
- groovy
implementation 'com.xsolla.android:login-wechat:<version_number>'
- Pour l'authentification via QQ :
- groovy
implementation 'com.xsolla.android:login-qq:<version_number>'
- Initialisez la bibliothèque Login avec les paramètres suivants :
facebook_id
— App ID du compte de développeur Facebook ;google_id
— Client ID de l'application Web Google API Console ;wechat_id
— AppID du compte de développeur WeChat ;qq_id
— AppID du compte de développeur QQ.
Exemple d’initialisation de la bibliothèque lors de l’authentification via OAuth 2.0 :
- kotlin
val loginConfig = LoginConfig.OauthBuilder()
.setProjectId("login-project-id")
.setOauthClientId("oauth2-client-id")
.setSocialConfig(XLogin.SocialConfig(
facebookAppId = "facebook_id",
googleServerId = "google_id",
wechatAppId = "wechat_id",
qqAppId = "qq_id"
))
.build()
XLogin.init(applicationContext, loginConfig)
- Pour l'authentification via WeChat, modifiez le code de l'application :
- Ajoutez la classe
WXEntryActivity
au package<your_package_name>.wxapi
, où<your_package_name>
est le nom
- Ajoutez la classe
- kotlin
package <your_package_name>.wxapi
import android.app.Activity
import android.os.Bundle
import com.tencent.mm.opensdk.modelbase.BaseReq
import com.tencent.mm.opensdk.modelbase.BaseResp
import com.tencent.mm.opensdk.openapi.IWXAPI
import com.tencent.mm.opensdk.openapi.IWXAPIEventHandler
import com.tencent.mm.opensdk.openapi.WXAPIFactory
import com.xsolla.android.login.util.WechatUtils
class WXEntryActivity : Activity(), IWXAPIEventHandler {
private lateinit var iwxapi: IWXAPI
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
iwxapi = WXAPIFactory.createWXAPI(this, WechatUtils.wechatAppId, false)
iwxapi.handleIntent(intent, this)
finish()
}
override fun onReq(req: BaseReq?) {
}
override fun onResp(resp: BaseResp) {
WechatUtils.wechatResult = resp
}
}
- Ajoutez l'élément suivant à votre fichier
AndroidManifest.xml
:
- Ajoutez l'élément suivant à votre fichier
- kotlin
<activity
android:name="<your_package_name>.wxapi.WXEntryActivity"
android:exported="true"
android:launchMode="singleTask" />
Configurer une page d'application dans le compte de développeur Facebook
- Accédez aux paramètres du projet dans le compte de développeur Facebook.
- Accédez à Settings > Basic.
- Cliquez sur Add Platform et sélectionnez Android.
- Spécifiez le nom de package de votre application Android dans le champ Google Play Package Name.
- Spécifiez le nom complet de classe Activity par défaut dans le champ Class Name.
- Générez la clé de hachage et spécifiez-la dans le champ Key Hashes.
- Cliquez sur Save Changes.
Pour poursuivre la configuration de l’authentification native, vous aurez besoin de l’App ID et de l’App Secret, qui se trouvent dans les paramètres du projet sous la section Settings > Basic.
Configurer un projet dans Google API Console
- Accédez à Google API Console.
- Cliquez sur New Project.
- Spécifiez Project et Location et cliquez sur Save.
- Accédez au projet créé et cliquez sur l'OAuth consent screen dans le menu latéral.
- Sélectionnez l'option External et cliquez sur Create.
- Spécifiez les paramètres nécessaires et cliquez sur Save.
- Cliquez sur Credentials dans le menu latéral.
- Créez un client OAuth 2.0 pour votre application Android :
- Cliquez sur Create credentials et sélectionnez OAuth client ID ;
- Spécifiez Android dans le champ Application type ;
- Spécifiez Name ;
- Spécifiez le nom de package de votre application Android dans le champ Package name ;
- Générez une clé SHA ;
- Spécifiez la clé SHA générée à l'étape précédente dans le champ SHA-1 certificate fingerprint ;
- Cliquez sur Create ;
- Cliquez sur OK.
- Créez un client OAuth 2.0 pour l'application Web :
- Cliquez sur Create credentials et sélectionnez OAuth client ID ;
- Spécifiez Web application dans le champ Application type ;
- Spécifiez Name ;
- Cliquez sur Add URI dans la section Authorized redirect URIs et spécifiez
https://login.xsolla.com/api/social/oauth2/callback
; - Cliquez sur Create ;
- Cliquez sur OK.
Pour poursuivre la configuration de l’authentification native, vous aurez besoin du Client ID et du Client Secret, qui se trouvent dans les paramètres de l’ID client de l’application Web.
Configurer les réseaux sociaux pour le projet de connexion dans le Compte éditeur Xsolla
- Ouvrez votre projet dans le Compte éditeur.
- Dans le menu latéral, cliquez sur Login.
- Dans le volet du projet de connexion, cliquez sur Configure.
- Accédez au bloc Authentication et sélectionnez la section Social login.
- Pour configurer un réseau social, accédez à la carte de réseau social, cliquez sur l'icône ⚙ à droite du nom, puis sélectionnez Connect.
Intégration côté application
- Appelez la méthode
startSocialAuth
de la bibliothèque Login. - Dans la méthode
onActivityResult
, appelez la méthodefinishSocialAuth
de la bibliothèque Login.
Liens utiles
Dernière mise à jour: 31 Juillet 2024Faute de frappe ou autre erreur dans le texte ? Sélectionnez le texte concerné et appuyez sur Ctrl+Entée.