Buildozer развернуть застрял

Это мое первое приложение, которое показывает другое изображение в зависимости от даты. Он отлично работает на ПК, но buildozer apk не запускается и buildozer разворачивается на устройстве без сообщения об ошибке. Я схожу с ума от этой проблемы. Вот мой код приложения:

# coding=utf-8
from kivy.app import App
from random import random, randint,choice
from kivy.uix.widget import Widget
from kivy.uix.button import Button
from kivy.graphics import Color, Rectangle
from kivy.uix.floatlayout import FloatLayout
from kivy.uix.behaviors import ButtonBehavior
from kivy.uix.screenmanager import ScreenManager, Screen, FadeTransition
import datetime
from kivy.uix.label import Label
from kivy.uix.popup import Popup
from kivy.uix.image import Image

class MyButton(ButtonBehavior, Image):
    def __init__(self, **kwargs):
        super(MyButton, self).__init__(**kwargs)
        self.source = 'butto.png'
        self.size_hint = (0.3, 0.3)
    def on_press(self):
        self.source = 'pressed.png'
    def on_release(self,*args):
        self.source = 'butto.png'

class exitt(ButtonBehavior, Image):
    def __init__(self, **kwargs):
        super(exitt, self).__init__(**kwargs)
        self.source = 'exit.png'
    def on_press(self):
        self.source = 'bluext.png'
    def on_release(self,*args):
        self.source = 'exit.png'

class killbtn(ButtonBehavior, Image):
    def __init__(self, **kwargs):
        super(killbtn, self).__init__(**kwargs)
        self.source = 'killbtn.zip'
    def on_release(self,*args):
        self.source = 'killbtn.zip'



class ScreenOne(Screen):

    def __init__ (self,**kwargs):
        super (ScreenOne, self).__init__(**kwargs)
        my_box1 = FloatLayout()
        bubine = ['a','b']
        frasi=['a','b']
        bubilist= choice(bubine)
        buongglist=choice(frasi)
        my_label1 = Label(text="[color=ff3333]%s, %s![/color]" %(buongglist,bubilist),size_hint_y= .9, text_size=(330, None),halign= 'center', height=self.size[1],line_wrap=True, font_size='24dp', markup= True,pos_hint= {'center_x':.5, 'center_y':.77})
        my_button1=MyButton()
        my_button1.size_hint=(.6, .35)
        my_button1.pos_hint= {'center_x':.5, 'center_y':.3}
        my_button1.bind(on_release=self.changer)
        my_box1.add_widget(my_label1)
        my_box1.add_widget(my_button1)
        self.add_widget(my_box1)
        with self.canvas.before:
            Color(.5, .5, .9, 1)
            self.rect = Rectangle(pos=self.pos, size=self.size)
        self.bind(size=self.update_rect)
    def update_rect(self, instance, value):
        self.rect.pos = self.pos
        self.rect.size = self.size
    def my_callback(self,dt):
        App.get_running_app().stop()
    def changer(self,*args):
        legg=open('gg.txt', 'r')
        ultimogg=legg.readline()
        legg.close()
        oggi=datetime.datetime.now().strftime('%d')
        if ultimogg==oggi:
            kill= killbtn()
            kill.bind(on_press=self.uccidi)
            popup = Popup(title='Kill.',content=kill,size_hint=(.75,.75))
            popup.bind(on_dismiss=self.my_callback)
            popup.open()
        else:
            self.manager.current = 'screen3'
    def uccidi(self,*args):
        zipcaso=randint(1001,1013)
        load_zipped_png_files = Image(source = 'GIFS/%s.zip'% zipcaso,anim_loop=1,anim_delay = 0.1,keep_ratio = False,keep_data = True,size_hint=(1,1))
        popup = Popup(title='Cosi impara.',content=load_zipped_png_files,size_hint=(.75,.75))
        popup.bind(on_dismiss=self.my_callback)
        popup.open()


class ScreenThree(Screen):
    def __init__(self,**kwargs):
        super (ScreenThree,self).__init__(**kwargs)
        my_box1 = FloatLayout()
        oggi=datetime.datetime.now().strftime('%d')
        if oggi=='23'or oggi=='14'or oggi=='26' or oggi=='01':
            mese=datetime.datetime.now().strftime('%m')
            if  oggi=='23' and mese=='07':
                numoggi = 'luglio'
            elif  oggi=='14'and mese=='02':
                popup = Popup(title='Buon anniversario stella!',content=Label(text='Hello world'),size_hint=(.75,.75))
                popup.open()
                numoggi = 'febbraio'
            elif oggi=='26' and mese=='08':
                numoggi = 'agosto'
            elif oggi=='01' and mese=='01':
                numoggi = 'gennaio'
        else:
            legg=open('numimg.txt', 'r')
            ultimogg=legg.readline()
            legg.close()
            if ultimogg=='1004':
                numoggi=1001
            else:
                numoggi=int(ultimogg)+1
            file = open('numimg.txt','w') 
            file.seek(0)
            file.write(str(numoggi)) 
            file.close()
        file = open('gg.txt','w') 
        file.seek(0)
        file.write(oggi) 
        file.close()
        if numoggi>1019:
            miraglio = Image(source = 'IMMAGO/%s.zip'% numoggi,keep_ratio = False,keep_data = True,size_hint=(1,1))
        else:
            miraglio = Image(source = 'IMMAGO/%s.jpg'% numoggi,keep_ratio = False,keep_data = True,size_hint=(1,1))
        my_button1 = exitt()
        my_button1.size_hint = (0.075, 0.075)
        my_button1.pos_hint= {'right': .97,'top':.97}
        my_button1.bind(on_release=self.changer)
        my_box1.add_widget(miraglio)
        my_box1.add_widget(my_button1)
        self.add_widget(my_box1)
    def changer(self,*args):
        App.get_running_app().stop()



class TestApp(App):
    def build(self):
        self.icon = 'icona.png'
        my_screenmanager = ScreenManager()
        my_screenmanager= ScreenManager(transition=FadeTransition())
        screen1 = ScreenOne(name='screen1')
        screen3 = ScreenThree(name='screen3')
        my_screenmanager.add_widget(screen1)
        my_screenmanager.add_widget(screen3)
        return my_screenmanager

if __name__ == '__main__':
    TestApp().run()

Вот лог buildozer:

andrea@andrea-VirtualBox ~/Desktop/kivy $ buildozer android_new debug deploy run# Check configuration tokens
# Ensure build layout
# Check configuration tokens
# Preparing build
# Check requirements for android
# Run 'dpkg --version'
# Cwd None
Debian 'dpkg' package management program version 1.18.4 (i386).
This is free software; see the GNU General Public License version 2 or
later for copying conditions. There is NO warranty.
# Search for Git (git)
#  -> found at /usr/bin/git
# Search for Cython (cython)
#  -> found at /usr/local/bin/cython
# Search for Java compiler (javac)
#  -> found at /usr/lib/jvm/java-8-openjdk-i386/bin/javac
# Search for Java keytool (keytool)
#  -> found at /usr/lib/jvm/java-8-openjdk-i386/jre/bin/keytool
# Install platform
# Apache ANT found at /home/andrea/.buildozer/android/platform/apache-ant-1.9.4
# Android SDK found at /home/andrea/.buildozer/android/platform/android-sdk-20
# Android NDK found at /home/andrea/.buildozer/android/platform/android-ndk-r9c
# Check application requirements
# Check garden requirements
# Compile platform
# Run 'python -m pythonforandroid.toolchain create --dist_name=quta --bootstrap=sdl2 --requirements=kivy,hostpython2 --arch armeabi-v7a --copy-libs --color=always --storage-dir=/home/andrea/Desktop/kivy/.buildozer/android/platform/build'
# Cwd /home/andrea/Desktop/kivy/.buildozer/android/platform/python-for-android-master
[INFO]:    Will compile for the following archs: armeabi-v7a
[INFO]:    Found Android API target in $ANDROIDAPI
[INFO]:    Available Android APIs are (19)
[INFO]:    Requested API target 19 is available, continuing.
[INFO]:    Found NDK dir in $ANDROIDNDK
[INFO]:    Got NDK version from $ANDROIDNDKVER
[INFO]:    Using Google NDK r9c
[INFO]:    Found virtualenv at /usr/local/bin/virtualenv
[INFO]:    Found the following toolchain versions: ['4.6', '4.8', 'clang3.3']
[INFO]:    Picking the latest gcc toolchain, here 4.8
[WARNING]: Missing executable: autoconf is not installed
[WARNING]: Missing executable: automake is not installed
[WARNING]: Missing executable: libtoolize is not installed
[INFO]:    Of the existing distributions, the following meet the given 
[INFO]:    -> running ant debug
           working: BUI[INFO]:    <- directory context /home/andrea/Desktop/kivy/.buildozer/android/platform/python-for-android-master
[INFO]:    # Copying APK to current directory
[INFO]:    # Found APK file: /home/andrea/Desktop/kivy/.buildozer/android/platform/build/dists/quta/bin/QuTA-0.1-debug.apk
[INFO]:    -> running cp /home/andrea/Desktop/kivy/....(and 69 more)
# Android packaging done!                                                      
# APK QuTA-0.1-debug.apk available in the bin directory
# Run '/home/andrea/.buildozer/android/platform/android-sdk-20/platform-tools/adb devices'
# Cwd None
* daemon not running. starting it now on port 5037 *
* daemon started successfully *
List of devices attached 
LGH955a5caf8f0  device

# Deploy on LGH955a5caf8f0
# Run '/home/andrea/.buildozer/android/platform/android-sdk-20/platform-tools/adb install -r /home/andrea/Desktop/kivy/bin/QuTA-0.1-debug.apk'
# Cwd /home/andrea/.buildozer/android/platform

У меня есть еще один вопрос. Python Datetime модуль работает на устройствах Android? Спасибо, в любом случае!

0 ответов

Другие вопросы по тегам