Alternatives to SQLite in Android in Android development?

Android development offers several alternatives to SQLite for data storage. These alternatives can provide improved performance, ease of use, or scalability depending on the application's requirements.
Alternatives to SQLite, Android data storage, NoSQL databases, Firebase, Room Persistence Library, Realm, ObjectBox

// Example of using Room Persistence Library
@Entity
public class User {
    @PrimaryKey
    public int uid;
    @NonNull
    public String firstName;
    @NonNull
    public String lastName;
}

@Dao
public interface UserDao {
    @Insert
    void insert(User user);
    
    @Query("SELECT * FROM user WHERE uid = :userId")
    User getUserById(int userId);
}

@Database(entities = {User.class}, version = 1)
public abstract class AppDatabase extends RoomDatabase {
    public abstract UserDao userDao();
}

// Usage in Activity or Fragment
AppDatabase db = Room.databaseBuilder(getApplicationContext(), AppDatabase.class, "database-name").build();
User user = new User();
user.uid = 1;
user.firstName = "John";
user.lastName = "Doe";
db.userDao().insert(user);
    

Alternatives to SQLite Android data storage NoSQL databases Firebase Room Persistence Library Realm ObjectBox