Xamarin.Essentials will have this functionallity, please take a look at it. But we will continue to maintain TinyAccountMananger for thoose who use it. https://docs.microsoft.com/en-us/xamarin/essentials/
Account manager for Xamarin and UWP. Store account information in your app in a secure way.
Platform | Status |
---|---|
iOS | |
Android | |
UWP |
This is as short guide how to get started using TinyAccountManager.
The easiest way is to install the package from NuGet:
Install-Package TinyAccountManager
You should install it on all your platform project and if you have other projects in your solution where you want to access it, you should install it there as well.
Here is a small get started guide, there are also a sample project if you take a look in the src folder.
The first you need to do is to initialize the AccountManager per platform.
//iOS
TinyAccountManager.iOS.AccountManager.Initialize();
//Android
TinyAccountManager.Droid.AccountManager.Initialize();
//UWP
TinyAccountManager.UWP.AccountManager.Initialize();
The only filed that are required is ServiceId.
var account = new Account()
{
ServiceId = "TinyAccountManagerSample",
Username = "dhindrik"
};
account.Properties.Add("Password", "MySecretPassword");
await AccountMananger.Current.Save(account);
It's recommended that you use Exists before Get, if you using Get and there is no matching account it will throw an exception.
Account account = null;
var exists = await AccountManager.Current.Exists("TinyAccountManagerSample")
if(exists)
account = await AccountManager.Current.Get("TinyAccountManagerSample")
await AccountManager.Current.Remove("TinyAccountManagerSample")
If you want to use IOC instead of the singleton pattern, you just register the implemenation for each platform with the IAccountManager interface. If you select this way you don't have to run Initialize on each platform
iOS: iOSAccountManager
Android: AndroidAccountManager
UWP: UWPAccountManager