70 votes

MongoDB sur Android

Est-ce que quelqu'un sait comment fonctionne MondgoDB sur Android.
Est-ce que ça fonctionne en local et les données sont répliquées plus tard?
Est-ce que ça fonctionne uniquement en ligne avec juste un backend web?

1 votes

Nous avons cherché quelque chose de similaire et la chose la plus proche que nous avons trouvée est couchbase.com/products-and-services/couchbase-mobile

1 votes

Presque toutes les réponses sont datées, veuillez consulter ce realm.io/docs/java/latest

55voto

Gates VP Points 26481

MongoDB propose des téléchargements pour plusieurs systèmes d'exploitation. Cependant, Android n'est pas l'un de ces systèmes.

Les gens utilisent MongoDB comme un "service Web" pour stocker des données, mais il n'a pas de fonctionnalités pour prendre en charge la réplication multi-maître ou votre scénario mobile occasionnellement connecté.

Si vous avez besoin de ce type de fonctionnalités, vous devriez vérifier CouchDB qui cible spécifiquement ce scénario avec Android Couchbase.

3 votes

Cette question a été répondue en juillet 2011. Comment se présente maintenant la situation en juin 2013 ?

5 votes

La page de téléchargement pour MongoDB affiche toujours le même support. Et franchement, MongoDB n'est vraiment pas conçu pour des appareils comme Android. La façon dont il mappe les données en mémoire n'est pas une très bonne idée pour les petits appareils avec une RAM limitée. Le projet Android Couchbase semble avoir été abandonné et remplacé par une version "Lite" : github.com/couchbase/couchbase-lite-android

4 votes

Aussi, consultez PouchDB. C'est une implémentation de couchdb qui utilise la base de données du navigateur pour le stockage. Fonctionne sur Android: pouchdb.com

40voto

Astral1990 Points 415

Je vais relancer cette discussion et dire que le pilote Java de MongoDB EST actuellement compatible avec Android. Certains développeurs novices peuvent avoir du mal à faire en sorte que leurs applications utilisent la bibliothèque java de MongoDB, donc je vais juste expliquer ce que vous devez faire (bien que tout cela puisse être obsolète au moment où vous lisez ceci).

Allez dans le fichier build.gradle de votre application. Ajoutez cette entrée "compile" sous vos dépendances (vous devrez probablement remplacer la version) :

dependencies {
  ...
  implementation 'org.mongodb:mongo-java-driver:3.0.3'
}

Comme vous pouvez le voir, la version du pilote à la date de cette publication est 3.0.3. Vous pouvez trouver la version actuelle en recherchant "mongo-java-driver" ou tout terme associé sur http://search.maven.org.

Si vous vous connectez à une base de données externe, vous devrez bien sûr ajouter l'autorisation INTERNET à votre manifeste. La connexion à une base de données est assez simple. Voici un exemple. Remplacez le nom d'utilisateur, le mot de passe, le domaine de l'hôte, le port et le nom de la base de données :

MongoClientURI uri = new MongoClientURI( "mongodb://nom_utilisateur:mot_de_passe@www.example.com:12345/nom_base_de_données" );
MongoClient mongoClient = new MongoClient(uri);
MongoDatabase db = mongoClient.getDatabase(uri.getDatabase());

Comme il s'agit de quelque chose lié au réseau, vous devrez exécuter tout cela dans une classe AsyncTask.

En suivant les tutoriels java sur https://www.mongodb.org/, cela devrait être relativement simple à partir de maintenant.

3voto

Dory mongoDB Server

Super nouvelle application Android
Pas besoin de rooter votre téléphone et vous pouvez exécuter votre fichier js de n'importe où.

MongoDB (de humongous) est un programme de base de données documentaire gratuit et open source multiplateforme. Classé comme un programme de base de données NoSQL, MongoDB utilise des documents de type JSON avec des schémas.

Utilisation :
1 : installer Dory mongoDB Server
2 : exécuter votre serveur
3 : installer Dory node.js
4 : exécuter ce code dans votre fichier js :

Code :

var mongoose = require('mongoose');
mongoose.connect('mongodb://localhost/test', { useMongoClient: true });
mongoose.Promise = global.Promise;

var Cat = mongoose.model('Cat', { name: String });

var kitty = new Cat({ name: 'Zildjian' });
kitty.save(function (err) {
  if (err) {
    console.log(err);
  } else {
    console.log('meow');
  }
});

Profitez.

2voto

Martin Vysny Points 559

Malheureusement, Mongo Java Driver 3.8.0 n'est plus compatible avec Android https://gitlab.com/mvysny/umn/issues/1 et ils ne revendiquent même pas le support d'Android. Peut-être qu'en suivant le fork non officiel ou en essayant GnuSasl cela pourrait aider ? mongodb 3.x driver compatibilité avec Android

1voto

sachin kumar Points 11

MongoDB est également disponible pour Android
Le seul problème est qu'il n'a pas une documentation bien structurée pour Android.

Récemment, j'ai réussi à connecter mon application Android à la base de données à distance.

Voici un exemple d'application unitaire https://github.com/i-sachinkumar/MongoDB-for-Android

Son fichier readme contient toutes les étapes à suivre dans le back-end ainsi que dans Android Studio

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X