2015-02-03 14 views
5

Ich baue ein einfaches Android RPG. Jeder Spieler hat Zugriff auf maximal 50 Soldaten. Jeder Soldat hat einige Werte (Klasse, HP, Angriff, usw.) und drei Inventar-Slots. Es wird nur etwa 100 Gegenstände im Spiel geben, um diese Inventar-Slots zu füllen. Ich hatte gehofft, eine relationale Datenbank einzurichten, die einen Tisch für Soldaten, einen Tisch für Gegenstände im Besitz und einige andere verschiedene Tische hätte.Android SQLite Alternativen

Geschwindigkeit ist mein Hauptanliegen. SQLite ist die offensichtliche erste Wahl. Es scheint jedoch sehr sperrig und auf Datenbanken mit 1000 Zeilen ausgerichtet zu sein. Gibt es eine bessere Option für kleine Datenbanken? Ich brauche keine komplexen Abfragen oder irgendetwas, nur eine Möglichkeit, Daten zu speichern und auf einem Server zu sichern.

+0

für Ihre Bedürfnisse, ist SQLite DB die beste Wahl. Weil es einfach zu implementieren ist, benötigen Sie keine Bibliotheken von Drittanbietern und es ist schnell, auch mit vielen Einträgen. Aber es liegt an Ihnen zu entscheiden, hier nach Alternativen zu suchen: http://StackOverflow.com/Questions/417917/Alternatives-To-sqlite – Opiatefuchs

+5

"Geschwindigkeit ist mein Hauptanliegen" - für ein Spiel, Ihre Datenbank oder andere Die Dateistruktur sollte Ihr Backing Store sein, aber Ihr Spiel sollte mit POJOs arbeiten, die aus den Datenbankinhalten erstellt wurden. Wenn Sie die POJOs ändern (z. B. einen Inventar-Slot ändern), starten Sie auch einen Hintergrund-Thread, um den Backing Store zu aktualisieren. – CommonsWare

Antwort

5

Es gibt zwei nette Bibliotheken, die Datenpersistenz in Android viel schneller und einfacher zu implementieren wie folgt machen;

Schrank>https://bitbucket.org/littlerobots/cupboard (unterstützt von SQLite)

Realm>http://realm.io/news/realm-for-android/

Realm ist die neuere und scheint etwas besser, aber beide scheinen ähnliche Implementierungen zu haben.

Hoffe, das hilft.

+1

also, wenn sie von der guten 'sqlite unterstützt werden, sollten sie nicht besser ... – injecteer

+9

Realm wird nicht von sqlite unterstützt. Es ist eine unabhängige Datenbank mit eigener API. – lobzik

+0

Arh, Entschuldigung, ich dachte es war. Danke für die Information. –

3

Im Moment gibt es mehrere einbettbare Datenbanken, die Sie in einer mobilen Anwendung verwenden können. Lassen Sie uns die beliebtesten von ihnen untersuchen und einige ihrer Merkmale hervorheben, die zu ihrer weitverbreiteten Verwendung beigetragen haben. Die folgende Tabelle gibt einen Überblick über den Typ der Daten, die jede dieser Datenbanken speichern kann, die Lizenz, unter der sie gespeichert ist, und die Plattformen, die sie unterstützt. Lesen Sie mehr here

List of Database for Android Platform

3

Was Zucker ORM und Firebase?

Sugar ORM ist eine Bibliothek, die verwendet werden kann, um mithilfe von Object-Relational Mapping mit der SQLite-Datenbank zu interagieren. Object-Relational Mapping (ORM) ist eine Technik, mit der Daten aus einer SQLite-Datenbank mithilfe eines objektorientierten Paradigmas abgefragt und bearbeitet werden können. Und Sugar ORM kümmert sich um Dinge wie die Erstellung der Datenbank, die Verwaltung von Objektbeziehungen und bietet klare und einfache APIs für Datenbankoperationen.

Firebase ist eine Echtzeit-Cloud-basierte NoSQL-Datenbank. Es speichert und synchronisiert Daten in Echtzeit mit der Cloud-basierten NoSQL-Datenbank. Daten werden über alle Clients hinweg in Echtzeit synchronisiert und bleiben verfügbar, wenn Ihre App offline geht. Daten werden als JSON gespeichert und Entwickler kann die Daten mithilfe einer webbasierten Konsole durchsuchen. Und es beinhaltet auch Offline-Unterstützung. Es ist sehr einfach, Firebase in ein Android-Projekt zu integrieren.

Kopiert von Alternatives to the SQLite in Android