如何解决正确构建并执行.apk文件
我构建了一个应用程序,可从当地的超级市场抓取优惠信息。对于抓取,我使用了beautifulsoup,并为ui和我的android手机kivy上的用法。在Linux上,Ubuntu和Windows在无错误的情况下都能正常工作,与构建apk文件相同。但是,当我尝试在Bluestacks,Android Studio或手机上运行它时,它不起作用。我没有任何错误。在模拟器中,该应用程序无法启动,而在我的手机上,该应用程序只是在短暂的加载屏幕后关闭。
日志行:
编译平台
运行'/ usr / bin / python3 -m pythonforandroid.toolchain create --dist_name = myapp --bootstrap = sdl2 --requirements = python3,kivy,requests,bs4 --arch armeabi-v7a --copy-libs- -color = always --storage-dir =“ / home / user / Dokumente / ordner / shopping_list / .buildozer / android / platform / build-armeabi-v7a”
-ndk-api = 21'
Cwd /home/user/Dokumente/ordner/shopping_list/.buildozer/android/platform/python-for-android
/home/user/Dokumente/ordner/shopping_list/.buildozer/android/platform/python-for-android/pythonforandroid/toolchain.py:84: 弃用警告:不建议使用imp模块,而建议使用 importlib;有关其他用途,请参见模块的文档
import imp [INFO]:将针对以下拱门进行编译: armeabi-v7a [INFO]:在$ ANDROIDAPI中找到Android API目标:27 ^ [[INFO]:可用的Android API是(27)[INFO]:请求的API 目标27可用,并且继续。 [INFO]:在以下位置找到了NDK目录 $ ANDROIDNDK:/root/.buildozer/android/platform/android-ndk-r19c [INFO]:找到NDK版本19c [INFO]:获得NDK API版本 (即支持的最低API)来自用户参数[INFO]:ccache为 如果缺少,该构建将不会在将来进行优化。 [INFO]:
找到以下工具链版本:['4.9'] [INFO]:选择 最新的gcc工具链,此处为4.9 [INFO]:现有 发行版,满足以下要求:[INFO]:
myapp:最低API 21,包括配方(hostpython3,libffi,openssl, sdl2_image,sdl2_mixer,sdl2_ttf,sqlite3,python3,sdl2,setuptools, 六,pyjnius,android,kivy,请求,bs4,certifi),为拱门而建 (armeabi-v7a)[INFO]:myapp使用此食谱具有兼容的食谱构建应用程序#7
从/ home / user / Dokumente / ordner / shopping_list复制应用程序源
创建目录/home/user/Dokumente/ordner/shopping_list/.buildozer/android/app
复制/home/user/Dokumente/ordner/shopping_list/main.py
复制/home/user/Dokumente/ordner/shopping_list/Webinteraction.py
复制/home/user/Dokumente/ordner/shopping_list/my.kv
打包应用程序
project.properties已更新
检测到Gradle项目,复制文件/home/user/Dokumente/ordner/shopping_list/.buildozer/android/platform/build-armeabi-v7a/dists/myapp__armeabi-v7a/src/main/java
运行'/ usr / bin / python3 -m pythonforandroid.toolchain apk --debug --bootstrap = sdl2 --dist_name myapp --name'My Application'--version 0.1 --package org.test.myapp- minsdk 21 --ndk-api 21 --private /home/user/Dokumente/ordner/shopping_list/.buildozer/android/app
-android-entrypoint org.kivy.android.PythonActivity --android-apptheme @android:style / Theme.NoTitleBar-方向肖像-窗口--copy-libs --arch armeabi-v7a --color =总是 --storage-dir =“ / home / user / Dokumente / ordner / shopping_list / .buildozer / android / platform / build-armeabi-v7a” --ndk-api = 21'
Cwd /home/user/Dokumente/ordner/shopping_list/.buildozer/android/platform/python-for-android
/home/user/Dokumente/ordner/shopping_list/.buildozer/android/platform/python-for-android/pythonforandroid/toolchain.py:84: 弃用警告:不建议使用imp模块,而建议使用 importlib;有关其他用途,请参见模块的文档
import imp [INFO]:将针对以下拱门进行编译: armeabi-v7a [INFO]:在$ ANDROIDAPI中找到Android API目标:27 [INFO]:可用的Android API是(27)[INFO]:请求的API 目标27可用,并且继续。 [INFO]:在以下位置找到了NDK目录 $ ANDROIDNDK:/root/.buildozer/android/platform/android-ndk-r19c [INFO]:找到NDK版本19c [INFO]:获得NDK API版本 (即支持的最低API)来自用户参数[INFO]:ccache为 如果缺少,该构建将不会在将来进行优化。 [INFO]:
找到以下工具链版本:['4.9'] [INFO]:选择 最新的gcc工具链,此处为4.9 [INFO]:现有 发行版,满足以下要求:[INFO]:
myapp:最低API 21,包括配方(hostpython3,libffi,openssl, sdl2_image,sdl2_mixer,sdl2_ttf,sqlite3,python3,sdl2,setuptools, 六,pyjnius,android,kivy,请求,bs4,certifi),为拱门而建 (armeabi-v7a)[INFO]:myapp具有兼容的食谱,使用此食谱 [INFO]:在现有发行版中,以下满足给定 要求:[INFO]:myapp:最低API 21,包括配方 (hostpython3,libffi,openssl,sdl2_image,sdl2_mixer,sdl2_ttf, sqlite3,python3,sdl2,setuptools,六个,pyjnius,android,kivy, 请求,bs4,certifi),为拱形(armeabi-v7a)构建[INFO]:
myapp具有兼容的配方,使用此[INFO]:->目录 语境 /home/user/Dokumente/ordner/shopping_list/.buildozer/android/platform/build-armeabi-v7a/build/bootstrap_builds/sdl2 [INFO]:目录上下文 /home/user/Dokumente/ordner/shopping_list/.buildozer/android/platform/build-armeabi-v7a/dists/myapp__armeabi-v7a 清单'/ tmp / p4a-extra-env-5_vpn7lx'...清单 '/家庭/用户/Dokumente/ordner/shopping_list/.buildozer/android/app'... 编译中 '/home/user/Dokumente/ordner/shopping_list/.buildozer/android/app/Webinteraction.py'... 清单 '/home/user/Dokumente/ordner/shopping_list/.buildozer/android/app/_applibs'... 编译中 '/home/user/Dokumente/ordner/shopping_list/.buildozer/android/app/main.py'... 编译中 '/home/user/Dokumente/ordner/shopping_list/.buildozer/android/app/sitecustomize.py'... 清单 '/家庭/用户/Dokumente/ordner/shopping_list/.buildozer/android/platform/build-armeabi-v7a/dists/myapp__armeabi-v7a/_python_bundle'... [INFO]:检测到的最高可用构建工具版本为30.0.1 [DEBUG]:->运行gradlew assembleDebug [DEBUG]:[DEBUG]:
在此版本中使用了不推荐使用的Gradle功能 与Gradle 7.0不兼容。 [DEBUG]:使用“ --warning-mode all” 显示各个弃用警告。 [DEBUG]:请参阅 https://docs.gradle.org/6.4.1/userguide/command_line_interface.html#sec:command_line_warnings [DEBUG]:[DEBUG]:在11秒内成功建立[DEBUG]:27 可行的任务:已执行4个,最新23个[INFO]: myapp具有兼容的食谱,使用此[INFO]:#复制 android包到当前目录[INFO]:#Android包 在构建输出中找不到文件名。猜中... [INFO]:#找到 android包文件: /home/user/Dokumente/ordner/shopping_list/.buildozer/android/platform/build-armeabi-v7a/dists/myapp__armeabi-v7a/build/outputs/apk/debug/myapp__armeabi-v7a-debug.apk [INFO]:#将版本号添加到android程序包[INFO]:# Android包重命名为myapp__armeabi-v7a-debug-0.1-.apk [DEBUG]: ->运行cp /home/user/Dokumente/ordner/shopping_list/.buildozer/android/platform/build-armeabi-v7a/dists/myapp__armeabi-v7a/build/outputs/apk/debug/myapp__armeabi-v7a-debug.apk myapp__armeabi-v7a-debug-0.1-.apk警告:收到了--sdk参数, 但是不建议使用此参数,并且不执行任何操作。没有 使用setup.py/pyproject.toml,将完整的私有数据复制到.apk中。 正在应用Java源代码补丁...正在应用补丁: src / patches / SDLActivity.java.patch警告:无法应用补丁 (退出代码1),前提是该代码已被应用: src / patches / SDLActivity.java.patch
Android包装完成!
APK myapp-0.1-armeabi-v7a-debug.apk可在bin目录中使用:user @ user-VirtualBox:〜/ Dokumente / ordner / shopping_list $
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。