Read and Write Settings Plugin for Xamarin and Windows
C# Other
Clone or download

README.md

Settings Plugin for Xamarin And Windows

Create and access settings from shared code across all of your apps!

Documentation

Get started by reading through the Settings Plugin documentation.

NuGet

The Future: Xamarin.Essentials

I have been working on Plugins for Xamarin for a long time now. Through the years I have always wanted to create a single, optimized, and official package from the Xamarin team at Microsoft that could easily be consumed by any application. The time is now with Xamarin.Essentials, which offers over 30 cross-platform native APIs in a single optimized package. I worked on this new library with an amazing team of developers and I highly highly highly recommend you check it out:

https://docs.microsoft.com/en-us/xamarin/essentials/

I will continue to work and maintain my Plugins, but I do recommend you checkout Xamarin.Essentials to see if it is a great fit your app as it has been for all of mine!

Build:

Platform Support

Platform Version
Xamarin.iOS iOS 7+
Xamarin.Android API 15+
Windows 10 UWP 10+
Xamarin.Mac All
Xamarin.tvOS All
Xamarin.watchOS All
.NET 4.5+
.NET Core 2.0+
Tizen 4.0+

Settings Plugin or Xamarin.Forms App.Properties

I get this question a lot, so here it is from a recent issue opened up. This plugin saves specific properties directly to each platforms native settings APIs (NSUserDefaults, SharedPreferences, etc). This ensures the fastest, most secure, and reliable creation and editing settings per application. Additionally, it works with any Xamarin application, not just Xamarin.Forms.

App.Current.Properties actually serializes and deserializes items to disk as you can see in the implementation.

To me that isn't as reliable as saving direct to the native platforms settings.

Contribution

Thanks you for your interest in contributing to Settings plugin! In this section we'll outline what you need to know about contributing and how to get started.

Bug Fixes

Please browse open issues, if you're looking to fix something, it's possible that someone already reported it. Additionally you select any up-for-grabs items

Pull requests

Please fill out the pull request template when you send one. Run tests to make sure your changes don't break any unit tests. Follow these instructions to run tests -

iOS

  • Navigate to tests/Plugin.Settings.NUnitTest.iOS
  • Execute make run-simulator-tests

Android

Execute ./build.sh --target RunDroidTests from the project root

License

The MIT License (MIT) see License file

Want To Support This Project?

All I have ever asked is to be active by submitting bugs, features, and sending those pull requests down! Want to go further? Make sure to subscribe to my weekly development podcast Merge Conflict, where I talk all about awesome Xamarin goodies and you can optionally support the show by becoming a supporter on Patreon.