sidebar_position |
---|
1 |
There are two ways to consume the package:
⭐️ Key Features:
-
Cross-Platform: Unified API which works on Android, iOS, Web, and macOS.
- Android: Built with Credential Manager library
- Web: Uses Sign In with Google for Web
- iOS & macOS: Powered by the Google Sign-In SDK
-
Trusted: Over 130k npm package downloads.
-
See the UI: screenshots of the features.
-
Faster Sign-Ups: Reduce sign-up and sign-in times on Android by up to 50%, according to Google.
🛡️ Advanced security features
🔧 Easier setup - Automatic detection of configuration parameters for faster integration.
📱 An example app - to showcase all Universal sign in features
Your purchase enables improvements in the module and upstream SDKs (such as 1, 2).
Available on the public npm registry, this version:
- Has platform support limited to Android and iOS.
- Uses functional, but deprecated legacy Android Google Sign-In.
- Contains none of the extra features listed above.
Universal sign in requires purchasing a license, after which you will be able to configure your (or your colleagues') access to the private npm package and to the private repo with the sources and examples. Alternatively, as an Expo customer, obtain access through this form.
The private npm package is like any other, but it's hosted on the GitHub npm packages registry, not the public npm registry. Therefore, a small bit of setup is needed:
-
Obtain here a Personal Access Token with
packages:read
permission. -
Set up your package manager so that it fetches the package from the GH packages registry instead of the public registry. In this example, we're using an
NPM_TOKEN_GOOGLE_SIGN_IN
environment variable.
import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem';
create a `.yarnrc.yml` file in your project root with the following content:```yml title=".yarnrc.yml"
npmScopes:
react-native-google-signin:
npmRegistryServer: https://npm.pkg.github.com
npmAuthToken: '${NPM_TOKEN_GOOGLE_SIGN_IN}'
```
//npm.pkg.github.com/:_authToken=${NPM_TOKEN_GOOGLE_SIGN_IN}
@react-native-google-signin:registry=https://npm.pkg.github.com/
If you use another package manager (such as Bun), refer to its documentation on how to set up a custom registry.
```bash yarn add @react-native-google-signin/google-signin@latest ``` ```bash npm i @react-native-google-signin/google-signin@latest ```If you're using the Universal version, open the lockfile (yarn.lock
/ package-lock.json
...) and verify that the package is fetched from the GitHub registry (the entry must point to npm.pkg.github.com
, not registry.npmjs.org
). If it does not, it means that your package manager is not configured correctly - try uninstalling and reinstalling the package.
There are several guides to follow now:
- Expo guide for native mobile apps built with Expo
- Web guide if you want to use the package on web
- If you're not using Expo but plain React Native, follow Android guide and iOS guide
The packages support last 3 stable releases of React Native. Unofficially, they may work with older versions too.
If you're using the New Architecture, it's strongly recommended to use the latest React Native version available.