NuGet Package pbX Settings Plugin for UWP, iOS, macOS, tvOS, watchOS, Android and .NET

Plugin that makes it easy to handle all sorts of settings, more precisely, values of any type that is accessed through a key.

This plugin was inspired by another similar component written by James Montemagno, but I used a different approach to data handling and usage.
This plugin uses the native settings storage, which means all settings are persisted across app updates, saved natively, and on some platforms synchronized between devices.

- Android: SharedPreferences
- Apple: NSUserDefaults
- UWP: ApplicationDataContainer
- .NET / .NET Core 2: UserStore -> IsolatedStorageFile

The main plugin class (Plugin.pbXSettings.Settings) is fully ready for use in any binding systems because implements interface INotifyPropertyChanged. Can also be used as a regular collection, that is, it can be enumerated :)

The class uses .NET DataContractSerializer for saving and restoring keys and values, which means you can put and retrieve practically any valid .NET object as long as it meets the requirements of this serialization technolgy.


Version: 1.0.46
Author(s): Piotr Boguslawski
Last Update: Monday, July 10, 2017
.NET Fiddle: Create the first Fiddle
Project Url:
NuGet Url:

Install-Package Xam.Plugins.pbXSettings
dotnet add package Xam.Plugins.pbXSettings
paket add Xam.Plugins.pbXSettings
Xam.Plugins.pbXSettings Download (Unzip the "nupkg" after downloading)