Simple Sign-In with Google provides Google sign-in with OAuth 2.0 for Android, iOS, Windows, Mac, Universal Windows Platform (UWP) and WebGL apps made with Unity.
Any doubts? Try it in real apps! Need sign-in for other platforms?
● Google
● Apple
● Facebook
● X (Twitter)
● Telegram
● Microsoft
Authentication may be a headache, especially for beginners, especially on different platforms. So I decided to take a fresh look of current possibilities that Google and Unity provide at the moment. And after a week of research I said "Bingo!". My asset is an extremely simple solution with about 200 lines of code only. Lightweight, tiny and clean, with no massive plugins and 3rd party libs!
Benefits
● Cross-platform user auth for cross-platform games and apps
● No plugins, not 3rd party libs, no dependencies
● No impact to build size
● Get access tokens for integration with other Google services
● More security for client-server apps (get access tokens on a client, get all user data on a server to avoid tampering)
● JSON Web Tokens (JWT) validation
● SFSafariViewController is used on iOS (required by App Store review)
● Deep linking for Windows (UNITY_STANDALONE_WIN)
Setup steps
Please visit our GitHub for setup instructions.
Generic workflow (for platforms that support deep linking)
● Your app navigates users to Google using a default web browser
● Users perform sign-in to their Google account
● Google redirects users to your app (using deep linking when possible) and provides an authorization code in URI parameters
● The app is activated and obtains an authorization code
● The app exchanges the code for an access token
● The app requests user data with the access token (ID, name, email and other data according access scope defined)
Loopback flow for Editor and Windows (optional)
● Google redirects users to http://localhost:PORT/
● The app listens to localhost using HttpListener
Middlware flow for WebGL
● Redirect to Authorization Middleware is used to temporary save an auth code
● The app obtains the code from Authorization Middleware with a POST request
Known issues
Please visit our GitHub for known issues.
Support
● GitHub - Wiki
● GitHub - FAQ & Troubleshooting
● GitHub - Bugs & requests
● Discord - Questions, live chat with developers
● Unity Forums - Discussion
It would be super awesome if you rate ★★★★★ our asset and leave your feedback! Your reviews inspire us for creating and improving our assets. Thanks and good luck with your projects!