skip to Main Content

I’ve built a little application that works just as well on PC as it does on Android (nothing complicated; the application is excessively simple).

Everything works fine on my android and on my debian and windows. On the other hand, I have an esthetic problem on Android.

When I launch the application, it displays the Kivy logo and a “loading …” message.

I’m in the latest version of buildozer, kivy and python and while searching on Google (old articles) I’m told that I need to change the buildozer.spec file but none of the proposed solutions work.

Do you have any ideas? Is it still possible?

2

Answers


  1. Chosen as BEST ANSWER

    Ok I found the solution (I'm stupid ^^ )

    Here are the actions I've follow

    • open the buildozer.desc
    • add presplash.filename = yourfile.png (and not presplash.file as I've done since days ... you know why I'm stupid now)
    • add android.presplash_color= black (or any color you want)

    and compile ...

    Sorry for my stupid questions :(


  2. Customize Splash Screen (Optional): If you want to create a custom splash screen, you can create a new layout and use it to display your logo or message while the app initializes. For example, you can use Kivy’s ScreenManager to control this behavior. Here’s a simple example:

    from kivy.app import App
    from kivy.uix.screenmanager import ScreenManager, Screen
    from kivy.uix.image import Image
    from kivy.uix.label import Label
    from kivy.clock import Clock
    
    class SplashScreen(Screen):
        def __init__(self, **kwargs):
            super().__init__(**kwargs)
            # Add a custom image or message to the splash screen
            self.add_widget(Image(source='your_splash_image.png'))
            Clock.schedule_once(self.change_screen, 3)  # Wait 3 seconds before changing screen
    
        def change_screen(self, dt):
            self.manager.current = 'main_screen'
    
    class MainScreen(Screen):
        pass
    
    class MyApp(App):
        def build(self):
            sm = ScreenManager()
            sm.add_widget(SplashScreen(name='splash'))
            sm.add_widget(MainScreen(name='main_screen'))
            return sm
    
    if __name__ == '__main__':
        MyApp().run()
    

    This code shows a custom splash screen for 3 seconds before transitioning to the main screen.

    Rebuild the Application: After making the changes to the buildozer.spec file, you need to rebuild the application by running:

    buildozer android debug
    

    This should remove the Kivy logo and "loading…" message or allow you to customize the startup screen.

    Login or Signup to reply.
Please signup or login to give your own answer.
Back To Top
Search