From 236cdaee16dd7b56d37c55f5b30e3c1ca29dc0e3 Mon Sep 17 00:00:00 2001 From: Gabriel Pettier Date: Wed, 12 Aug 2020 23:14:29 +0200 Subject: [PATCH] Add support for --presplash-lottie option of p4a allow using Lottie animation as splashscreen on Android --- buildozer/default.spec | 8 +++++++- buildozer/targets/android.py | 13 +++++++++---- 2 files changed, 16 insertions(+), 5 deletions(-) diff --git a/buildozer/default.spec b/buildozer/default.spec index c9f2828..b2bfdb1 100644 --- a/buildozer/default.spec +++ b/buildozer/default.spec @@ -74,13 +74,19 @@ osx.kivy_version = 1.9.1 # (bool) Indicate if the application should be fullscreen or not fullscreen = 0 -# (string) Presplash background color (for new android toolchain) +# (string) Presplash background color (for android toolchain) # Supported formats are: #RRGGBB #AARRGGBB or one of the following names: # red, blue, green, black, white, gray, cyan, magenta, yellow, lightgray, # darkgray, grey, lightgrey, darkgrey, aqua, fuchsia, lime, maroon, navy, # olive, purple, silver, teal. #android.presplash_color = #FFFFFF +# (string) Presplash animation using Lottie format. +# see https://lottiefiles.com/ for examples and https://airbnb.design/lottie/ +# for general documentation. +# Lottie files can be created using various tools, like Adobe After Effect or Synfig. +#android.presplash_lottie = "path/to/lottie/file.json" + # (list) Permissions #android.permissions = INTERNET diff --git a/buildozer/targets/android.py b/buildozer/targets/android.py index 82527fe..9cf4fba 100644 --- a/buildozer/targets/android.py +++ b/buildozer/targets/android.py @@ -1092,11 +1092,16 @@ class TargetAndroid(Target): for activity in add_activities: build_cmd += [("--add-activity", activity)] - # add presplash - presplash = config.getdefault('app', 'presplash.filename', '') + # add presplash, lottie animation or static + presplash = config.getdefault('app', 'android.presplash_lottie', '') if presplash: - build_cmd += [("--presplash", join(self.buildozer.root_dir, - presplash))] + build_cmd += [("--presplash-lottie", join(self.buildozer.root_dir, + presplash))] + else: + presplash = config.getdefault('app', 'presplash.filename', '') + if presplash: + build_cmd += [("--presplash", join(self.buildozer.root_dir, + presplash))] # add icon icon = config.getdefault('app', 'icon.filename', '')