Login
Log into Passport
The player will not have a wallet until the ZkEvmRequestAccounts
function is called. Developers should call this function if they want to create a wallet for the player after logging into Passport.
For more details on authenticating users without a wallet, see the Authenticating users without wallet section.
To log the gamer into Passport:
- PKCE (Recommended for Android, iOS and macOS)
- Device Code Authorisation
await passport.LoginPKCE();
This opens a pop-up window on macOS or an in-app browser on mobile devices, guiding gamers through the auth flow.
await passport.Login();
This will open the gamer's default browser and take them through the auth flow.
Stored Credentials
Once the gamer is connected to Passport, the SDK will store your credentials (access, ID, and refresh tokens).
You may use Login(useCachedSession: true)
to re-login the gamer to Passport using the saved credentials. However, if this fails, it will not automatically prompt the user to re-login again.
bool hasCredsSaved = await passport.HasCredentialsSaved();
if (hasCredsSaved)
{
await passport.Login(useCachedSession: true);
// Successfully re-logged into Passport
}