Anmeldung über soziale Netzwerke
Sie können den Benutzern Ihrer Anwendung gestatten, sich über ihr Social-Media-Konto anzumelden. Wenn sich der Benutzer zum ersten Mal über ein soziales Netzwerk anmeldet, wird automatisch ein neues Konto erstellt. Der Benutzer muss weder einen Benutzernamen noch eine E-Mail-Adresse oder andere Daten eingeben.
Es gibt zwei Wege, die Authentifizierung über soziale Netzwerke zu implementieren:
- Webbasierte Authentifizierung. In diesem Fall öffnet die Anwendung eine Eingabemaske im Browser, um die Authentifizierung über das ausgewählte soziale Netzwerk abzuschließen. Diese Option eignet sich sowohl für mobile Apps als auch für Desktop-Anwendungen.
- Native Authentifizierung. In diesem Fall erfolgt die Authentifizierung in der Social-Media-App auf dem Gerät des Benutzers. Diese Option ist nur für mobile Apps geeignet.
Soziale Netzwerke können als primäre oder alternative Authentifizierungsmethode Ihrer Anwendung dienen.
Wenn Sie soziale Netzwerke als alternative Authentifizierungsmethode verwenden, wird das Social-Media-Konto automatisch mit einem bestehenden Benutzerkonto verknüpft, sofern die folgenden Bedingungen erfüllt sind:
- Ein Benutzer, der sich mittels Benutzername/E-Mail-Adresse und Passwort registriert hat, meldet sich über sein Social-Media-Konto bei Ihrer Anwendung an.
- Das soziale Netzwerk gibt eine E-Mail-Adresse zurück.
- Die E-Mail-Adresse des Benutzers in einem sozialen Netzwerk stimmt überein mit der E-Mail-Adresse, die bei der Registrierung in Ihrer Anwendung angegeben wurde.
Ebenso können Sie die manuelle Verknüpfung eines sozialen Netzwerks implementieren.
Anleitungen
Das SDK unterstützt die folgenden Anbieter sozialer Netzwerke:
- 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
So richten Sie die Authentifizierung über Webdienste ein:
- Ergänzen Sie die Benutzeroberfläche der Anwendung um Schaltflächen für die Authentifizierung über soziale Netzwerke.
- Binden Sie im Kundenportal Social-Media-Dienste für ein Login-Projekt ein.
- Implementieren Sie die Authentifizierungslogik aufseiten der Anwendung.
Soziale Netzwerke für Login-Projekte im Kundenportal einbinden
- Öffnen Sie Ihr Projekt im Kundenportal.
- Klicken Sie in der Seitenleiste auf Login.
- Klicken Sie beim gewünschten Login-Projekt auf Konfigurieren.
- Scrollen Sie zum Block Authentifizierung, und klicken Sie auf Anmeldung über soziale Netzwerke.
- Verknüpfen Sie die sozialen Netzwerke, über die sich die Spieler registrieren und bei der Anwendung anmelden dürfen:
- Klicken Sie auf das ⚙-Symbol und dann auf Verknüpfen, um ein soziales Netzwerk zu verknüpfen.
- Um mehrere soziale Netzwerke auf einmal zu verknüpfen, wählen Sie die gewünschten Anzeigebereiche aus (deren Umrandung färbt sich daraufhin grün). Klicken Sie danach auf das Drop-down-Menü Verwalten, und wählen Sie Verknüpfen aus.
- Um alle verfügbaren sozialen Netzwerke auf einmal zu verknüpfen, klicken Sie auf Alle auswählen. Klicken Sie danach auf das Drop-down-Menü Verwalten, und wählen Sie Verknüpfen aus.
Integration aufseiten der Anwendung
- Rufen Sie die Methode
startSocialAuth
aus der Login-Bibliothek auf. - Rufen Sie in der Methode
onActivityResult
die MethodefinishSocialAuth
aus der Login-Bibliothek auf.
Mit der nativen Authentifizierung können sich Benutzer über ein auf einem mobilen Gerät konfigurierten Social-Media-Konto bei Ihrer Anwendung anmelden.
Wenn sich ein Benutzer zum ersten Mal anmeldet, wird die Social-Media-Anwendung gestartet und bittet um Erlaubnis, den Benutzer zu authentifizieren. Danach erfolgt die Authentifizierung automatisch, ohne dass der Benutzer etwas tun muss.
Derzeit unterstützt das SDK die native Authentifizierung über die folgenden sozialen Netzwerke:
So konfigurieren Sie die native Authentifizierung:
- Ergänzen Sie die Benutzeroberfläche der Anwendung um Schaltflächen für die Authentifizierung über soziale Netzwerke.
- Konfigurieren Sie die Anwendung im Entwicklerkonto des entsprechenden sozialen Netzwerks:
- Gehen Sie für die Authentifizierung über Facebook wie folgt vor:
- Registrieren Sie sich, und erstellen Sie eine neue Anwendung.
- Konfigurieren Sie die Anwendungsseite in Ihrem Facebook-Entwicklerkonto.
- Konfigurieren Sie für die Authentifizierung über Google das Projekt in der Google API Console.
- Gehen Sie für die Authentifizierung über WeChat wie folgt vor:
- Registrieren Sie sich, und erstellen Sie eine neue Anwendung.
- Reichen Sie die Anwendung zur Überprüfung ein.
- Gehen Sie für die Authentifizierung über QQ wie folgt vor:
- Registrieren Sie sich, und erstellen Sie eine neue Anwendung.
- Reichen Sie die Anwendung zur Überprüfung ein.
- Gehen Sie für die Authentifizierung über Facebook wie folgt vor:
- Konfigurieren Sie die Authentifizierung über soziale Netzwerke aufseiten von Xsolla:
- Für Facebook bzw. Google müssen Sie das jeweilige soziale Netzwerk im Kundenportal einbinden.
- Für WeChat und QQ müssen Sie sich an Ihren Customer Success Manager wenden oder eine E-Mail an csm@xsolla.com senden.
- Installieren Sie Bibliotheken für Authentifizierungen über soziale Netzwerke. Öffnen Sie dazu die Datei
build.gradle
Ihrer Anwendung, und fügen Sie im Abhängigkeiten-Abschnitt die folgenden Zeilen hinzu, wobei<version_number>
der erforderlichen Bibliotheksversion entspricht:- Für die Authentifizierung über Facebook:
- groovy
implementation 'com.xsolla.android:login-facebook:<version_number>'
- Für die Authentifizierung über Google:
- groovy
implementation 'com.xsolla.android:login-google:<version_number>'
- Für die Authentifizierung über WeChat:
- groovy
implementation 'com.xsolla.android:login-wechat:<version_number>'
- Für die Authentifizierung über QQ:
- groovy
implementation 'com.xsolla.android:login-qq:<version_number>'
- Initialisieren Sie die Login-Bibliothek mit den folgenden Parametern:
facebook_id
: App-ID aus dem Facebook-Entwicklerkontogoogle_id
: Client-ID für die Webanwendung aus der Google API Consolewechat_id
: AppID aus dem WeChat-Entwicklerkontoqq_id
: AppID aus dem QQ-Entwicklerkonto
Beispielhafte Initialisierung der Bibliothek beim Authentifizieren über 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)
- Damit die Authentifizierung über WeChat möglich ist, muss der Anwendungscode modifiziert werden:
- Fügen Sie dem
<your_package_name>.wxapi
-Paket die KlasseWXEntryActivity
hinzu, wobei<your_package_name>
dem Namen Ihres Anwendungspakets entspricht:
- Fügen Sie dem
- 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
}
}
- Fügen Sie Ihrer
AndroidManifest.xml
-Datei die folgenden Elemente hinzu:
- Fügen Sie Ihrer
- kotlin
<activity
android:name="<your_package_name>.wxapi.WXEntryActivity"
android:exported="true"
android:launchMode="singleTask" />
Anwendungsseite in Ihrem Facebook-Entwicklerkonto einrichten
- Wechseln Sie in die Projekteinstellungen des Facebook-Entwicklerkontos.
- Navigieren Sie zu Einstellungen > Allgemeines.
- Klicken Sie auf Plattform hinzufügen, und wählen Sie Android aus.
- Geben Sie den Paketnamen Ihrer Android-Anwendung im Feld Google Play Package-Name an.
- Geben Sie im Feld Klassenname einen zulässigen Klassennamen für die Hauptaktivität an.
- Generieren Sie einen Hash-Key, und geben Sie ihn im Feld Key-Hashes an.
- Klicken Sie auf Änderungen speichern.
Zur weiteren Konfiguration der nativen Authentifizierung benötigen Sie eine App-ID und einen App-Geheimcode. Beide finden Sie in den Projekteinstellungen unter Einstellungen > Allgemeines.
Projekt in der Google API Console einrichten
- Wechseln Sie zur Google API Console.
- Klicken Sie auf Neues Projekt.
- Geben Sie den Projektnamen und den Speicherort an, und klicken Sie auf Erstellen.
- Wechseln Sie zum erstellten Projekt, und klicken Sie im Seitenmenü auf OAuth-Zustimmungsbildschirm.
- Wählen Sie die Option Extern aus, und klicken Sie auf Erstellen.
- Geben Sie die nötigen Parameter an, und klicken Sie auf Speichern.
- Klicken Sie im Seitenmenü auf Anmeldedaten.
- Erstellen Sie einen OAuth 2.0-Client für die Android-Anwendung:
- Klicken Sie auf Anmeldedaten erstellen, und wählen Sie OAuth-Client-ID aus.
- Wählen Sie unter Anwendungstyp die Option Android aus.
- Geben Sie einen Namen an.
- Geben Sie den Paketnamen aus Ihrer Android-Anwendung im Feld Paketname an.
- Rufen Sie den SHA-Schlüssel ab.
- Geben Sie den im vorherigen Schritt generierten SHA-Schlüssel im Feld SHA-1-Zertifikatfingerabdruck an.
- Klicken Sie auf Erstellen.
- Klicken Sie auf OK.
- Erstellen Sie einen OAuth 2.0-Client für die Webanwendung:
- Klicken Sie auf Anmeldedaten erstellen, und wählen Sie OAuth-Client-ID aus.
- Wählen Sie unter Anwendungstyp die Option Webanwendung aus.
- Geben Sie einen Namen an.
- Klicken Sie unter Autorisierte Weiterleitungs-URIs auf URI hinzufügen, und geben Sie folgende URI an:
https://login.xsolla.com/api/social/oauth2/callback
. - Klicken Sie auf Erstellen.
- Klicken Sie auf OK.
Zur weiteren Konfiguration der nativen Authentifizierung benötigen Sie eine Client-ID und einen Clientschlüssel. Beide finden Sie in den Einstellungen der Client-ID für die Webanwendung.
Soziale Netzwerke für Login-Projekte im Kundenportal einbinden
- Öffnen Sie Ihr Projekt im Kundenportal.
- Klicken Sie in der Seitenleiste auf Login.
- Klicken Sie beim gewünschten Login-Projekt auf Konfigurieren.
- Scrollen Sie zum Block Authentifizierung, und klicken Sie auf Anmeldung über soziale Netzwerke.
- Klicken Sie auf der Karte des gewünschten sozialen Netzwerks, rechts neben dem Titel, auf das ⚙-Symbol und dann auf Verknüpfen.
Integration aufseiten der Anwendung
- Rufen Sie die Methode
startSocialAuth
aus der Login-Bibliothek auf. - Rufen Sie in der Methode
onActivityResult
die MethodefinishSocialAuth
aus der Login-Bibliothek auf.
Nützliche Links
Letztmalig aktualisiert: 31. Juli 2024Haben Sie einen Tippfehler oder einen anderen Textfehler gefunden? Wählen Sie den Text aus und drücken Sie Strg+Eingabe.