Skip to content

easy to use SharedPreference. You can read/write your object to SharedPreference easily

Notifications You must be signed in to change notification settings

kingfisherphuoc/EasySharedPreference

Repository files navigation

EasySharedPreference

an easy to use SharedPreference library. You can read/write your object to SharedPreference easily with few lines of code.

Installing

Use Gradle:

compile 'com.kingfisherphuoc:easy_sharedpreference_library:1.3'

How to use?

Before you do anything with SharedPreference, you have to initialize the library first. You can do it in your Application class or in your first Activity's OnCreate:

/**
 * You have to initialize all your preference when open app.
 *
 * @param context
 * @param createDefaultPreference : true if we want to create default {@link SharedPreferences}
 * @param names                   : list of custom {@link SharedPreferences}
 */
SharedPreferencesManager.init(this, true, "Pre1","Pre2"); 
// or using default sharedpreference name only
SharedPreferencesManager.init(this, true);

After doing first config, you can use the SharedPreferencesManager at anywhere you want. You can check the sample project for more detail:

// Primitive type
SharedPreferencesManager.getInstance().putValue("Test", 1); // save to default sharedPreference 
SharedPreferencesManager.getInstance().getValue("Test", Integer.class);// get from default
// you can get default value if the key is not used before.
SharedPreferencesManager.getInstance().getValue("TestNotSavedBefore", Integer.class,100);// return 100 if key does exist
// Save your custom object:
SharedPreferencesManager.getInstance().putValue("testData", testGun);
Gun gun = SharedPreferencesManager.getInstance().getValue("testData", Gun.class); 
// Save list object to another SharedPreference
SharedPreferencesManager.getInstance(AnotherPreferenceName).putValue("guns", guns);
List<Gun> datas = SharedPreferencesManager.getInstance(AnotherPreferenceName).getValues("guns", Gun[].class); // get list object
// remove/clear value from sharedPreferences:
SharedPreferencesManager.getInstance().clear(); //SharedPreferencesManager.getInstance().remove("test");
// Print the log of all saved value from SharedPreferences:
SharedPreferencesManager.getInstance().printAllKeyValues();
//get All keys from SharedPreferences 
 Map<String, ?> allEntries = SharedPreferencesManager.getInstance().getAllKeys();
 for (Map.Entry<String, ?> entry : allEntries.entrySet()) {
      if (entry == null || entry.getValue() == null) continue;
       Log.e("SharedPreferenceManager", entry.getKey() + ": " + entry.getValue().toString());
     }
// you can also get the SharedPreference to use if you want to interact directly with it
SharedPreferencesManager.getInstance().getSharedPreference();

What's in the next version?

What are the things you want to have in this library? Contact me or create a new issue for it.

License

Copyright 2017 Doan Hong Phuoc

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

About

easy to use SharedPreference. You can read/write your object to SharedPreference easily

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Languages