2015-10-28 1 views
0

J'essaye de déboguer et de déployer une application de kivy à mon téléphone (androïde) en utilisant buildozer. Une partie de l'application est une carte (mapview en utilisant mbtiles) qui nécessite sqlite3. Faire quelques recherches, je trouve que je dois avoirBuildozer sqlite3 erreur opérationnelle

requirements = kivy,sqlite3,futures,requests,openssl 

Quand je déploie mon application et ouvrir la carte, il se bloque avec le message d'erreur suivant

I/python (13917): sqlite3.OperationalError: unable to open database file 

Le chemin qui pointe vers la base de données est pleine longueur. J'ai changé les autorisations de fichier à rw-rw-rw- et rwxrwxrwx de la base de données et le dossier qui contient la base de données (ils étaient rw-rw-r--/rwxrwxr-- avant). Je l'ai fait dans le dossier .buildozer/android/app/"databasefolder"/base de données. Cela ne fonctionne toujours pas et je me demande si c'est la bonne façon de changer les autorisations de fichiers. Dois-je modifier quelque chose dans le fichier android.permissions du fichier spec?

Je ne suis pas le seul à avoir ce problème, mais les solutions proposées ne fonctionnent pas pour moi ou je ne fais pas la bonne chose.

Pourrait-il y avoir une autre raison pour laquelle la base de données ne peut pas être ouverte?

Merci pour votre aide!

+0

Où essayez-vous pour l'ouvrir? – inclement

+0

J'ai écrit l'application kivy sur mon ordinateur Windows et là ça marche très bien. J'utilise une machine virtuelle (Ubuntu) pour déployer l'application sur mon téléphone. Quand je l'ouvre là, ça plante. – Jobiwan

+0

Oui, mais où essayez-vous d'ouvrir le fichier? Quel est son emplacement? – inclement

Répondre

0

Eh bien, la réponse simple dans ce cas est qu'un chemin relatif à la DB devrait être donné.