2017-09-07 4 views
2

Nous sommes en train de créer une application qui accède aux fichiers dans Google Drive. Notre application a une interface web, une application Android et une application iOS. Nous utilisons oAuth2 pour permettre à l'utilisateur d'autoriser notre application à accéder à son compte Google Drive. Nous utilisons le SDK Java Google Drive dans l'application Web et le SDK Android/iOS de Google Drive pour mobile. Nous ne pouvons pas utiliser les jetons oAuth renvoyés par le SDK Android dans iOS et vice versa. Nous ne pouvons pas non plus utiliser le jeton reçu par le Java SDK (par notre serveur Web) dans l'application Android. Pour cette raison, nous avons dû créer des clients oAuth séparés pour chaque plate-forme (web, Android, iOS) et l'utilisateur doit autoriser une fois sur chaque plate-forme, ce qui n'est pas très convivial. Existe-t-il une meilleure façon d'utiliser le même jeton oAuth entre les clients? Est-ce que je manque quelque chose de très basique ici?Partage de jetons Google oAuth entre des applications Android, iOS et Web

+0

Je pense qu'il vous manque quelque chose de basique. Tous les clients devraient être dans un seul projet. Les utilisateurs autorisent au niveau du projet, pas au niveau du client. Je ne connais pas iOS, mais Android OAuth est lié au nom du package et à la clé de signature. Vous ne voudriez donc pas partager un jeton d'accès Android ailleurs. – pinoyyid

Répondre

0

Vous devez obtenir un jeton sur iOS et Android pour le serveur.

See this doc for iOS See this doc for Android

Sur chacun de l'application, vous allez demander à un utilisateur de se connecter en premier. Ensuite, vérifiez sur le serveur s'il existe déjà un jeton ou non. Si ce n'est pas le cas, demandez cet accès et stockez le jeton sur le serveur.