I use ActiveAndroid for most of my projects. ActiveAndroid is an active record style ORM which allows you to save and retrieve SQLite database records without ever writing a single SQL statement. The library takes care of all the settings and SQLite stuff, and all with just some simple code lines and few simple steps of configuration.

greenDAO

I haven’t tried greenDAO yet but I assume it is better to use the library when your project contains lots of data tables. greenDAO is considered to be the fastest ORM for Android. There are many top Android apps such as Pinterest, Path are relying on greenDAO. Many of them have over 10 million installs.

//Add new
Game game = new Game("Uncharted 4", "Naughty Dog");
game.save();
//find and delete a game
Game game = Game.findById(Game.class, 1);
game.delete();
//list all games
List&amp;lt;Game&amp;gt; games = Game.listAll(Game.class);
Game.deleteAll(Game.class);

DBFlow

DBFlow is a simple and powerful android database library with annotation processing. It is designed to be fast, high performance, and easy to approach. It reduces codes for dealing with databases with its powerful and simple API. DBFlow is boasted as a more efficient and powerful alternative to the other Android ORMs. According to the developer’s own benchmark, DBFlow is the fastest Android ORM.

Other good Android ORM libraries

Requery. It is a modern SQL based query & persistence library for Android. Requery provides a modern set of interfaces to perform and persist queries.

Ollie. Ollie is a compile-time active record ORM for Android. It supports RxJava.

RushOrm. Similar to other libraries, RushOrm replaces the need for SQL by mapping java classes to SQL tables. It can be used in projects with complex data structures and projects that communicated with a REST API.