упаковка приложения kivy на андроид

Раньше у меня никогда не было проблем с компиляцией моих приложений kivy (делал это много раз), но теперь у меня есть одна проблема: приложение обычно загружается на мой телефон, но когда я его открываю, оно зависает на значке предварительной заставки и выдает мне сообщение: «не удалось извлечь общедоступные данные». я думал, что это мой файл sqlite3. Итак, я изменил его имя и добавил в ./distribute.sh -m "sqlite3 kivy", но проблема осталась. Мой build.py выглядит так:

./build.py --dir /home/toufic/Desktop/Pay4 --name "Lebanese PayCalc" --package org.demo.PayCalc --version 1.2.4 --icon /home/toufic/Desktop/Pay4/lp.png --presplash /home/toufic/Desktop/Pay4/onmyown.png --permission INTERNET --permission WRITE_EXTERNAL_STORAGE --window debug installd

если я попытаюсь скомпилировать его с помощью buildozer, у меня будет следующая ошибка:

File "/usr/lib/python2.7/bsddb/__init__.py", line 270, in <lambda>
    return _DeadlockWrap(lambda: self.db[key])  # self.db[key]
bsddb.db.DBPageNotFoundError: (-30985, 'DB_PAGE_NOTFOUND: Requested page not found')

в моем файле main.py у меня есть следующие зависимости:

from kivy.app import App
from kivy.uix.floatlayout import FloatLayout
from kivy.properties import ObjectProperty
from net_pay_oop import * # it's a class i have written and using its instance in  my code
from kivy.uix.popup import Popup
from kivy.uix.label import Label
import sqlite3
import datetime
import os
import math
import smtplib
from kivy.core.window import Window
from kivy.uix.screenmanager import ScreenManager,Screen
import sys

Короче говоря, мне нужен правильный способ его компиляции либо с помощью python-for-android, либо с помощью утилиты Buildozer (я новичок в этом). Может ли кто-нибудь помочь в зависимости от модулей, которые я использую, или есть ли способ отладить сборку и узнать, где скрывается проблема?

Редактировать: поэтому я как бы сделал приложение открытым, но службы SMTP не работают. Должен ли я сделать ./distribute.sh «openssl sqlit3 kivy»?


person toufikovich    schedule 22.11.2013    source источник


Ответы (1)


Решение для включения служб smtp заключалось в том, чтобы включить в Distribut.sh параметр openssl, но все же ошибка, отображаемая моим устройством: "не удалось извлечь общедоступные данные", не была устранена. я предполагаю, что это проблема sqlite3, но дело в том, что это происходит только при первой установке, и после этого мое приложение нормально загружается, отображает все сохраненные данные и нормально их просматривает.

person toufikovich    schedule 22.11.2013