After installing the Buildozer software, we run the Buildozer init command under the folder containing main.py, And then we'll see a buildozer.spec this file under the folder, this file is mainly used to configure a series of settings, using a text editor, Linux under the use of Vim editor open. Here's an example: [app]# (str) Title of your application change 1title = test# (str) package name change 2package.name = test# (str) package do Main (needed for Android/ios packaging) Package.domain = org.example# (str) Source code where the main.py Livesource.dir = . # (list) Source files to include (let empty to include all the files) source.include_exts = py,png,jpg,kv,atlas# (list) so Urce files to exclude (let empty to not exclude anything) #source. exclude_exts = spec# (list) List of directory to exclude (Let empty to not exclude anything) #source. Exclude_dirs = Tests, bin# (list) List of exclusions using pattern Matching#sou Rce.exclude_patterns = license,images/*/*.jpg# (str) Application versioning (Method 1) # Version.regex = __version__ = ' (. * ) ' # version.filename =% (source.dir) s/main.py# (str) application Versioning (Method 2) Change 3version = 0.1# (list) Applicatio n Requirements Change 4requirements = kivy# (str) Presplash of the application change 5presplash.filename =% (Source.dir) s/data/presplash.pn g# (str) Icon of the application change 6icon.filename =% (source.dir) s/data/icon.png# (str) supported orientation (one of the land Scape, portrait or All) change 7orientation = all# (bool) indicate if the application should is fullscreen or not change 8fullscreen = 0## Android Specific change 9## (list) permissionsandroid.permissions = internet# (int) Android API to use change 10android.api = 19# (int) Minimum API required (8 = Android 2.2 devices) # change 11ANDROID.MINAPI = 9# (int) Android SDK version to use change 12an DROID.SDK = 20# (str) Android NDK version to use change 13ANDROID.NDK = 9c# (bool) Use--private data storage (True) or--dir p Ublic Storage (False) android.private_storage = true# (str) Android NDK directory (if empty, it'll be automatically downl Oaded.) #android. Ndk_path =# (str) Android SDK directory (if empty, it'll be automatically downloaded.) #android. Sdk_path =# (str) Android entry POint, default is OK for kivy-based app#android.entrypoint = org.renpy.android.pythonactivity# (list) List of Java. jar file s to add to the Libs so that Pyjnius can access# their classes. Don ' t add jars that don't need, since extra jars can slow# down the build process. Allows wildcards matching, for example:# ouya-odk/libs/*.jar#android.add_jars = foo.jar,bar.jar,path/to/more/*.jar# ( list) List of Java files to add to the Android project (can be Java or a# directory containing the files) #android. add_src =# (str) python-for-android branch to use, if not master, useful to try# not yet merged features. #android. Branch = master# (str) OUYA Console category. Should be one of the GAME or app# If You leave this blank, OUYA support would not be enabled#android.ouya.category = app# (str) Filename of OUYA Console icon. It must is a 732x412 PNG image. #android. Ouya.icon.filename =% (source.dir) s/data/ouya_icon.png# (str) XML file to include As an intent filters in <activity> Tag#android.manifeSt.intent_filters =# (list) Android additionnal libraries to copy into Libs/armeabi#android.add_libs_armeabi = Libs/andro id/*.so# (BOOL) Indicate whether the screen should stay on# Don ' t forget to add the Wake_lock permission if you set this T o true#android.wakelock = false# (list) Android application Meta-data to set (key=value format) #android. Meta_data =# (List Android Library project to add ('ll be added in the# project.properties automatically.) #android. Library_references =## IOS specific## (str) Name of the certificate to use for signing the debug version# Get a l Ist of available Identities:buildozer iOS list_identities#ios.codesign.debug = "IPhone Developer: <lastname> <f Irstname> (
Deploying Kivy to mobile devices using Buildozer