Releases: thirdweb-dev/unity
v4.1.2
What's Changed
- [Native] Fix
Wallet.SignTypedDatafailing with external wallets when the payload contains arrays. - [Native] Add fallback for chain id requests with external wallets.
- [General] Use culture-insensitive parsing when converting an eth value to wei.
v4.1.1
What's Changed
- [Native] Fixed gas estimation failing in some cases when interacting with custom contracts using SmartWallet.
- [WebGL] Support for static method
Transaction.WaitForTransactionReceipt. - [General] New static class
Blockswith block processing functionality, get information on latest or specific blocks including transaction data. - [General] Build Size Optimization: moved unused files outside from Resources folder, sprites' scale fixed to support compression by @umutkutlu in #130
v4.1.0
What's Changed
- [General] Added support for Apple and Facebook Logins (Apple Touch/Face ID supported on Mobile platforms as well).
Prefab_ConnectWalletwas also updated with the additional social logins.
- [General] Logging in with the same previous email / social auth will automatically log the user in now.
- [General] Improved performance / code structure for Embedded Wallets.
- [General] Added support for new chains, updated chains package.
- [Native] Fixed main thread freezing in the Embedded Wallet post-login flow in some cases.
- [WebGL] Added support for Smart Wallet Admin/Session Key management APIs (see previous release for more details).
- [WebGL] Added support for Smart Wallet account overrides on connection (see previous release for more details).
- [WebGL] Updated Live Preview.
Visit our Embedded Wallet and Smart Wallet documentation to get started creating seamless onboarding and dynamic gameplay flows!
This is a minor update, meaning some structure or DLL changes occured. When upgrading, it is best to remove previous SDK files to avoid issues.
v4.0.1
What's Changed
All about smart wallets! Create session keys, add and remove admins - enable endless upgrading and signless possibilities for ALL types of EOAs.
- [Native] Exposed
sdk.wallet.CreateSessionKey- you are now able to easily grant another wallet access to your smart account, with many restrictions possible. - [Native] Exposed
sdk.wallet.AddAdmin- you can now add new admins to your smart wallet. - [Native] Exposed
sdk.wallet.RemoveAdmin- you can now remove admins from your smart wallet. - [Native] You can now pass
smartWalletAccountOverrideoptional parameter tosdk.wallet.Connectto connect to a Smart Wallet you are not necessarily the admin signer of. - [Native] Fixed a bug where asking for a signature would get the smart wallet stuck in force deployment mode.
What this means
This may be a small patch, but it unlocks quite literally endless possibilities.
Example Scenarios
- Connect a user to a smart wallet using their Metamask wallet as EOA. Create a session key for a signless wallet like LocalWallet, EmbeddedWallet or your backend wallet - the user now only has to sign once to perform that transaction, and you can connect the new signer to the user's Smart Wallet to interact with contracts on their behalf.
- Connect a user to a smart wallet using a guest wallet as EOA, not asking for commitment from the get go - such as a LocalWallet or EmbeddedWallet EOA. You can then go through an upgrade path where the user can claim the generated smart account with all its assets. Simply add the Metamask account as that smart wallet's admin!
- You might've heard of thirdweb Engine, and you want to execute your transactions using it. Simply create a session key for your backend wallet to execute transactions on your user's behalf. The built in scoping as well as your server acting as a middleman, makes for a great flow!
v4.0.0
It's finally here!
Embrace the modularity of Embedded Wallets as we begin this journey in bringing you the best wallet UX you've seen in Web3 Gaming.
Pair them with Smart Wallets to enhance user experiences with signless and gasless experiences, retaining assets across multiple apps.
What's Changed
- Embedded Wallets - WebGL, Standalone, Android and iOS support
- Email - Login with your email using a one-time password. Automatically login if you weren't signed out previously.
- Google - Login flow through browser on standalone platforms, in app for other platforms.
- Custom Auth - Bring your own auth, currently supports OIDC compatible methods.
- Cross-platform/device compatibility - Ensures you get the same final wallet address no matter where you login from.
- Added
WalletProvider_EmbeddedWalletUI prefab and related script. - Removed
Magiclogin option and related code/prefabs/sprites.- Also removed
WebViewpackage and related scripts/plugins.
- Also removed
- Removed
Paperlogin option and related code/prefabs/sprites. - Added
AuthOptionsto Wallet Connection API. - Added
ThirdwebConfigto configure mobile custom schemes for deeplinking purposes through theThirdwebManager. - Added
Thirdweb.Browsercollection of native browser integrations. - Added post-gradle generation script for Android platforms.
- Various improvements and bugfixes.
NB: Login with Email feature in WebGL will automatically be unlocked by end of October, no SDK update required.
This is a major update, you must remove previous SDK folders and reimport for the best upgrade experience.
Additional Links
v3.3.1
What's Changed
- [Native] Parallelized UserOps using multidimensional nonces - sending multiple Smart Wallet transactions at the same time is now much faster!
- [Native] Refactored provider used for reading, added sdk analytics.
- [WebGL] Updated bridge, added sdk analytics.
v3.3.0
What's Changed
-
New Wallet Provider - EmbeddedWallet! The ultimate, secure and seamless email and social login experience.
- Login with the same email cross platform, get the same wallet address.
- Works great as the signer (personal wallet) to use Smart Wallets (ERC4337) with.
- Instead of the normal OTP flow, you can optionally choose to sign in with google (WebGL only for now)
- Does not require the user to keep a recovery code.
- Non-custodial.
- Enable this wallet easily by providing a Client ID with Embedded Wallets service enabled.

-
[General] The Connect Wallet Prefab now exposes
personalWalletin the Inspector, making it easier to test different EOAs with the Smart Wallet option.

-
[Native] You can now provide a Bundle ID Override as part of the
ThirdwebManagerGeneral Settings, useful for testing api keys.

-
[Native] Smart Wallet Native Transaction Queuing - sending multiple transactions in quick succession / edge cases fixed.
-
[Native] Your app metadata is properly passed to MetaMask now, and sessions are ended on Disconnect by default.
-
[General] NFTLoader in
Scene_Prefabsspinner is now... less ugly! -
[General] Added Live Preview (Unity WebGL) to the Readme!
This is a minor update, meaning some structure or DLL changes occured. When upgrading, it is best to remove previous SDK files to avoid issues.
v3.2.1
What's Changed
- [WebGL] You can now pass recommended wallet ids to the WalletConnect modal, set in ThirdwebManager inspector to override defaults.
- [WebGL] Updated bridge.
- [General] Removed unnecessary third party Assembly Definitions.
v3.2.0
What's Changed
- Replace
AsyncAwaitUtilpackage withRedcode.Awaiting. - Add namespaces to a lot of third party packages to resolve issues importing in existing web3 projects.
- Follow Asset Store validation rules.
This is a minor update, meaning some structure or DLL changes occured. When upgrading, it is best to remove previous SDK files to avoid issues.
v3.1.1
What's Changed
- [General] Fixed all remaining compiler warnings.
- [Native] Reduced Smart Wallet user op hash polling to 2s + can send without waiting for receipt properly now.
- [Native] Fixed potential issue with
Wallet.Transferwhen using external wallet RPC over passed RPC.
