Skip to content

cson2701/TinyDB-Kotlin--Android-Shared-Preferences-Turbo

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

63 Commits
 
 
 
 
 
 

Repository files navigation

TinyDB -- Android-Shared-Preferences-Turbo

This class simplifies calls to SharedPreferences in a line of code. It can also do more like: saving a list of strings, integers and saving images. All in 1 line of code!

Example usage:

TinyDB tinydb = new TinyDB(context);

//Put data in database
tinydb.putInt("clickCount", 2);
tinydb.putFloat("xPoint", 3.6f);
tinydb.putLong("userCount", 39832L);

tinydb.putString("userName", "john");
tinydb.putBoolean("isUserMale", true); 

tinydb.putList("MyUsers", mUsersArray);
tinydb.putImagePNG("DropBox/WorkImages", "MeAtlunch.png", lunchBitmap);

//Get data from database
int dataint = tinyDB.getInt("clickCount");
String datastring = tinyDB.getString("userName");
//These plus the corresponding get methods are all included

This is just an example of how easy it is to use. There are many more useful methods included in the class. Enjoy :)

If you'd like to also save Objects, use the methods:

tinydb.putObject(key, object);
tinydb.putListObject(key, objectsArray);

Example of saving Objects:

Person person = new Person("john", 24);
tinydb.putObject("user1", person); //saves the object
tinydb.getObject("user1", Person.class); // retrieves the object from storage

ArrayList<Person> usersWhoWon = new ArrayList<Person>();
ArrayList<Object> winnersObjects = new ArrayList<Object>();

for(Person p : usersWhoWon){
    winnersObjects.add((Object)p); // casting to raw objects
}

tinydb.putListObject("allWinners", winnersObjects);

Kotlin usage sample:

// instantiate
var tinyDB : TinyDB = TinyDB(applicationContext)


// put / save
tinyDB.putString("nameKey", "John")

var winnerPerson : Person = Person()
tinyDB.putObject("winnerKey", winnerPerson);

// get
var personName : String  = tinyDB.getString("nameKey")
var winnerPerson : Person = tinyDB.getObject("winnerKey", Person::class.java)

Before you can use the save objects methods, you must first:

  1. Import Gson into your project Gradle:
dependencies {
  implementation 'com.google.code.gson:gson:2.8.8'
}
  1. Uncomment the save objects methods in your copy of TinyDB.java, starting at: Line31, Line330, Line345, Line486

Installation

Just add the TinyDB.java file as a Java Class into your project.

Learning app developement?

Check out my very easy videos on youtube

Lastly, there is TinyDB for IOS too 😊

About

A Kotlin version of the original TinyDB

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Java 50.8%
  • Kotlin 49.2%