firebase / firebase/firebase-cpp-sdk

[FR]: Reuse GameCenterAuthProvider implementation on macOS

Ouverte
#627 1 commentaire 0 réactions 0 personnes assignées Voir sur GitHub
api: auth type: feature request
Langage dominant
C++
Étoiles
326
Forks
137
Merge moyen
3 j 9 h
PR mergées (30 j)
5

Description

### Feature proposal

* Firebase Component: Auth

[GameKit](https://developer.apple.com/documentation/gamekit?language=objc) is supported by Apple on both iOS and macOS and its [Game Center authentication API](https://developer.apple.com/documentation/gamekit/authenticating_a_player?language=objc) is 99% reusable between OSes, with the only exception being `UIViewController` vs `NSViewController` parameter in [`GKLocalPlayer:setAuthenticateHandler`](https://developer.apple.com/documentation/gamekit/gklocalplayer/1515399-authenticatehandler?language=objc). If you guys massage your iOS implementation of `GameCenterAuthProvider` to also work on macOS, which from my experience should be pretty straightforward, then we will be able to use `GameCenterAuthProvider::GetCredential` to exchange it for a Firebase credential and thus have a unified user support across entire apple eco-system. This is particularly interesting to developers offering [universal purchase](https://developer.apple.com/support/universal-purchase/) because Game Center user IDs are shared between iOS and macOS thus enabling us to recognize the same user in Firebase across those operating systems.

Guide de contribution

Ouvrir le guide de contribution

Piste de recherche

Commencez par localiser l’implémentation iOS de GameCenterAuthProvider et son point d’entrée GetCredential ; comparez le callback UIViewController de setAuthenticateHandler avec la forme NSViewController de macOS. C’est terminé lorsque le provider peut échanger l’authentification macOS Game Center contre un credential Firebase et prendre en charge le flux utilisateur partagé.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Évaluation

Stack technique
cpp, objective-c
Domaine
authentication, desktop-dev, mobile-dev
Type d'issue
Fonctionnalité
Difficulté
4/5
Temps estimé
3-5 jours
Activité
À l'abandon
Clarté
Plutôt claire
Accessibilité débutants
25/100

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.