Pourquoi ai-je un “sqlite3: pas trouvé d'erreur” sur un Nexus enracinée Un quand j'essaie d'ouvrir une base de données à l'aide de la commande adb shell?
# sqlite3 /data/data/com.moodme.android/databases/moodme
sqlite3 /data/data/com.moodme.android/databases/moodme
sqlite3: not found
Vous devez vous connecter pour publier un commentaire.
Sur l'émulateur Android,
sqlite3
est dans/system/xbin
. Il n'y a pas de/system/xbin
sur un Nexus One (Android 2.2). Donc, je pense quesqlite3
n'est pas installé sur le Nexus One.sqlite3
est un exécutable de ligne de commande. "Aussi, si ce n'est pas sur le Nexus One, il est un moyen pour l'obtenir là-bas?" -- vous êtes les bienvenus pour essayer de trouver un BRAS de port et de voir si vous pouvez obtenir ce travail. Je suis douteux que c'est vraiment la solution pour tout problème que vous pensez que vous avez, si. Android apps n'en avez pas besoin. Pour le développement, vous pouvez le retirer de la base de données hors de votre téléphone enracinée et examiner sur votre machine de développement.sqlite3
client binaires existent sur n'importe quel appareil.Comme une alternative (peut ne pas être sécurisé ou même bonne idée), vous pouvez toujours télécharger le
sqlite3
binaire à/system/bin
cela a fonctionné pour moi:D'abord, permet de monter
/system/
pour permettre la lecture/écriture (rw)dans un autre terminal cd (change directory) où
sqlite3
est et permet de pousserMaintenant le dos à l'autre shell vous permet de copier et de modifier les autorisations du fichier binaire
Maintenant permet de monter back
/system/
en lecture seule (ro)Et maintenant, nous pouvons utiliser sqlite3 de shell:
Note:
je suis en utilisant le sqlite3 binaire qui vient avec "SuperOneClickv1.6.5-ShortFuse"Vous pouvez toujours tirer
sqlite3
binaires à partir de l'émulateur:Commencer un émulateur, puis à partir d'un terminal
Si vous êtes paresseux comme moi, vous pouvez télécharger un ici pour ICS ou avant ou pour Jelly Bean et plus tard ici
Assurez-vous d'utiliser la bonne pour votre version d'Android que vous pouvez obtenir
eloc_library[1306]: 14446 cannot locate 'sqlite3_enable_load_extension'...
ou des erreurs similaires sur exécuter/system/lib/libsqlite.so
et/system/lib/libsqlite_jni.so
à partir de l'émulateur sur mon appareil. (Bien sûr/system/lib/
dossier sur le périphérique), Puis ça marche, enfin.À partir de la réponse de evelio, j'ai eu de problème pour pousser le sqlite3 fichier /system/bin. Donc, au lieu de cela, j'ai poussé à l' /sdcard.
Dans ce fil, j'ai trouvé la bonne Solution (réponse de Kila):
Comment puis-je installer sqlite3 sur enracinée NexusOne pistes de pain d'épice
Il fonctionne sur mon Samsung Galaxy S II avec 2.3.3.
Pour installer sqlite3 sur la NON-ENRACINÉE appareils, ici, c'est un moyen qui a été prouvé à travailler sur mon Galaxy S3, l'ex république yougoslave de.
Sur le Nexus 4 procédez de la manière suivante :
Avis le dossier /system/xbin et le chmod 777 est
Quelques informations qui peuvent aider quelqu'un à propos de cette question
Pour les gens qui se demandent où trouver un travail sqilte3 fichier binaire pour copier:
Vous pouvez utiliser l'émulateur pour obtenir un binaire travail. Vous devez avant de vérifier si votre version est basée sur _86, _64, ou le BRAS et de reproduire cette image ou vous pouvez obtenir une version incompatible qui va provoquer un tre.
Vérifier quelle est la version de votre appareil android
https://www.quora.com/How-can-I-check-whether-my-Android-phone-is-32-bit-or-64-bit
Bâtiment BRAS dans android studio
Android Studio - Comment puis-je Faire une AVD Avec les BRAS au Lieu de HAXM?
Ensuite, utilisez les notes ci-dessous pour déplacer des fichiers entre votre machine et à l'arrière de l'appareil android.
Faire de la bad en écriture
Émulateur Android sdcard pousser erreur: Read-only file system
De la copie de fichiers à partir de la bad à l'appareil local de la machine
Comment faire pour copier les fichiers à partir de Android avec adb pull
Sur un dispositif enracinée nexus 4 ces liens avec les instructions sur cette page. Espérons que cela aide quelqu'un. La clé est que vous devez monter à obtenir la permission d'écriture dans l'appareil via adb.