簡體   English   中英

在 Android 上部署 Kivy 時沒有錯誤但應用程序在加載屏幕后崩潰

[英]No Error while Deploying Kivy On Android But app crashes after loading screen

我正在嘗試在 android 上部署 kivy 應用程序,它在我的 linux 機器上運行良好,但是當我在 android 上部署相同的應用程序時,它在加載屏幕后崩潰。 注意:部署應用程序時沒有顯示錯誤。 它使用互聯網,我也給了互聯網權限。 在android中加載屏幕后,我的應用程序總是崩潰的原因可能是什么? 如果它們有什么不同,這是我的導入。

import kivy
from kivy.app import App
from kivy.uix.widget import Widget
from kivy.uix.label import Label
from kivy.uix.button import Button
from kivy.uix.textinput import TextInput
from kivy.uix.floatlayout import FloatLayout
from kivy.properties import ObjectProperty
from kivy.clock import Clock
from functools import partial
import pandas as pd
import time
from datetime import datetime
import plyer

這是我的完整代碼: https : //github.com/sfsdsfdf/123

我發生了同樣的事情,結果是 kivy 版本不匹配。 我使用 Kivy 2.0.0 在 Linux 上開發,但 buildozer 使用的是 kivy 1.9.1 為了修復我不得不修改 buildozer.spec 文件來指定 kivy 版本號。 首先刪除緩存的構建器文件:

rm ~./.buildozer

rm <project>/.buildozer

從此改變:

requirements = python3,kivy

對此:

requirements = python3,kivy==2.0.0,<your other requirements here>

確保所有文件擴展名都包含在 builder.spec 例如我必須添加 json 和 wav

# (list) Source files to include (let empty to include all the files)
source.include_exts = py,png,jpg,kv,atlas,json,wav

我還注意到 kivy 版本

.buildozer/android/platform/python-for-android/pythonforandroid/recipes/kivy/__init__.py

不正確。 我不知道為什么或如何設置,所以我只是手動編輯了文件。 它有 v 1.11.1,但我使用的是 2.0.0,所以我只是將其更改為。

class KivyRecipe(CythonRecipe):
    version = '2.0.0'
    url = 'https://github.com/kivy/kivy/archive/{version}.zip'
    name = 'kivy'

然后運行

buildozer -v android debug

它應該生成一個有效的 .apk 文件。

如果您仍然有錯誤,請從模擬器或啟用 USB 調試的手機運行應用程序並使用

abd logcat tee debug.log 

並尋找錯誤。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM