Android Приложение через buildozer: требования и рецепты - PullRequest
0 голосов
/ 06 августа 2020

Я пытаюсь развернуть приложение android. Я работаю с kivy framework и buildozer в python. Моя проблема - включить библиотеку pandas. Это мой простой и рабочий тестовый код:

from kivy.app import App
from kivy.uix.label import Label

import kivy
kivy.require('1.11.1')

import pandas as pd

class TestLibraries(App):
    
    def build(self):
        
        df = pd.DataFrame()
        df.loc[0, 'text'] = 'this is pandas'
        return Label(text = df.loc[0, 'text'])


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

Следующим шагом является определение файла buildozer .spe c. Здесь я вижу два варианта:

  1. Требования по переходу: Поэтому я изменяю файл .spe c следующим образом
# (list) Application requirements
# comma separated e.g. requirements = sqlite3,kivy
requirements = python3,kivy==1.11.1,pandas

Это работает очень хорошо. 2. По рецепту: Беру рецепт с github . и положил в мою папку под названием recipe. После этого я изменяю файл .spe c следующим образом

# (str) The directory in which python-for-android should look for your own build recipes (if any)
p4a.local_recipes = /PATH_TO_FOLDER/recipe/

В файле журнала buildozer я могу прочитать:

Listing '/PATH_TO_FOLDER/.buildozer/android/app/recipe/pandas'...
Compiling 'PATH_TO_FOLDER/.buildozer/android/app/recipe/pandas/__init__.py'...

Итак, buildozer нашел рецепт, но библиотека не установлена и приложение не работает.

И вопрос: почему бы и нет?

Вы можете попросить меня использовать второй вариант, потому что первый вариант работает очень хорошо. На следующем этапе я хочу написать новый рецепт. Поэтому мне нужно научиться правильно включать существующий рецепт.

Надеюсь, вы понимаете мою проблему и даете несколько советов.

Спасибо, Капа

...