我试图构建一个测试项目只是为了查看安装是否有效,但我几乎立即收到此错误......
/home/kivy/Android/sdk/platform-tools/tools/android
我已经安装了 Android Studio 并运行了更新。我安装了所需的 14(android 4.0) 工具。我下载了 NDK,即使 Android Studio 创建了一个包含工具、平台、平台工具等文件夹的新 Android 文件夹,我仍然下载了独立文件夹 Android-Linux (r24.4.1)。
Android-Linux 和 NDK 坐在家里/documents/sdk_ndk/...
Android Studio创建的Android文件夹就在home/Android
Android Studio 本身带有 NDK 和 Android-Linux 文件夹。
.bashrc 有...
export ANDROIDSDK=$HOME/Documents/sdk_ndk/android-sdk-r24.4.1
export ANDROIDNDK=$HOME/Documents/sdk_ndk/android-ndk-r13b
export ANDROIDAPI="14"
export ANDROIDNDKVER="r13b"
我什至试过了....
export ANDROIDSDK=$HOME/Android/sdk
export ANDROIDNDK=$HOME/Documents/sdk_ndk/android-ndk-r13b
export ANDROIDAPI="14"
export ANDROIDNDKVER="r13b"
构建命令是....
p4a apk --private ~/Desktop/testapp --package=org.example.myapp --name "testapp" --version 0.1 --bootstrap=sdl2 --requirements=python2,kivy
当我设置这个...
export ANDROIDSDK=$HOME/Documents/sdk_ndk/android-sdk-r24.4.1
未找到 API 目标 14。
当我设置这个...
export ANDROIDSDK=$HOME/Android/sdk
我没有收到 api 错误,但收到路径错误。
not found /home/kivy/Android/sdk/platform-tools/tools/android
我什至试过...
export ANDROIDSDK=$HOME/Android/sdk/tools
export ANDROIDSDK=$HOME/Android/sdk/platform-tools
--------更新--------------------
我在路径周围添加了'"'.....
export ANDROIDSDK="$Home/Documents/sdk_ndk/android-sdk-r24.4.1"
#export ANDROIDSDK="$Home/Android/sdk"
export ANDROIDNDK="$Home/Documents/sdk_ndk/android-ndk-r13b"
export ANDROIDAPI="14"
export ANDROIDNDKVER="r13b"
现在收到错误提示找不到/tools/android。这很奇怪,因为在 tools 文件夹中有一个 Android 文件。它没有 .sh 扩展名,但它在那里。
这是整个终端输出......
kivy@kivy-VirtualBox:~$ p4a apk --private ~/Desktop/testapp --package=org.urchatty.com --name "testapp" --version 0.1 --bootstrap=sd12 --requirements=python2,kivy
[INFO]: This python-for-android revamp is an experimental alpha release!
[INFO]: It should work (mostly), but you may experience missing features or bugs.
[INFO]: Will compile for the following archs: armeabi
[INFO]: Found Android API target in $ANDROIDAPI
Traceback (most recent call last):
File "/usr/local/bin/p4a", line 9, in <module>
load_entry_point('python-for-android==0.4', 'console_scripts', 'p4a')()
File "/usr/local/lib/python2.7/dist-packages/pythonforandroid/toolchain.py", line 754, in main
ToolchainCL()
File "/usr/local/lib/python2.7/dist-packages/pythonforandroid/toolchain.py", line 343, in __init__
getattr(self, command_method_name)(unknown)
File "/usr/local/lib/python2.7/dist-packages/pythonforandroid/toolchain.py", line 87, in wrapper_func
user_ndk_ver=self.ndk_version)
File "/usr/local/lib/python2.7/dist-packages/pythonforandroid/build.py", line 226, in prepare_build_environment
android = sh.Command(join(sdk_dir, 'tools', 'android'))
File "/usr/local/lib/python2.7/dist-packages/sh.py", line 1029, in __init__
raise CommandNotFound(path)
sh.CommandNotFound: /Documents/sdk_ndk/android-sdk-r24.4.1/tools/android
kivy@kivy-VirtualBox:~$
--------更新------------------------
似乎我在 bashrc 中的路径必须写成....“/home/kivy/....”。在另一个错误击中我之前我没走多远....
kivy@kivy-VirtualBox:~$ p4a apk --private $HOME/code/myapp --package=org.example.myapp --name "My application" --version 0.1 --bootstrap=sdl2 --requirements=python2,kivy
[INFO]: This python-for-android revamp is an experimental alpha release!
[INFO]: It should work (mostly), but you may experience missing features or bugs.
[INFO]: Will compile for the following archs: armeabi
[INFO]: Found Android API target in $ANDROIDAPI
[INFO]: Available Android APIs are (4, 19)
[INFO]: Requested API target 19 is available, continuing.
[INFO]: Found NDK dir in $ANDROIDNDK
[INFO]: Got NDK version from $ANDROIDNDKVER
[INFO]: Using Google NDK r13b
[INFO]: Found virtualenv at /usr/local/bin/virtualenv
[WARNING]: ndk_platform doesn't exist: /home.kivy/Documents/android-ndk-r13b/platforms/android-19/arch-arm
[WARNING]: Could not find toolchain subdirectory!
[WARNING]: Could not find any toolchain for arm-linux-androideabi!
[WARNING]: Missing executable: autoconf is not installed
[WARNING]: Missing executable: automake is not installed
[WARNING]: Missing executable: libtoolize is not installed
[ERROR]: python-for-android cannot continue; aborting
kivy@kivy-VirtualBox:~$
最佳答案
EL3PHANTEN 的回答带来了不同。
# $ANDROIDSDK/tools/android update sdk --no-ui --filter 2,3,15
使用终端而不是管理器似乎有所帮助。 SDK下载的文件其实比较少。使用 SDK 管理器 UI,它们要大得多。
另一个技巧是在 bashrc 中。路径只能以“/”开头。
"/home/kivy/Documents/...."
最后,p4a 正在做它的事情。 Kivy 网站真的应该更新它的文档以包含 EL3PHANTEN 的目的。此外,文档中使用的路径样式...
export ANDROIDSDK="$HOME/Documents/android-sdk-21"
export ANDROIDNDK="$HOME/Documents/android-ndk-r10e"
export ANDROIDAPI="14" # Minimum API version your application require
export ANDROIDNDKVER="r10e" # Version of the NDK you installed
如果出于某种原因,那不会削减。如果我早点从 EL3PHANTEN 获得帮助,而不是像现在一样在 Kivy 网站上做所有事情,我本可以节省大量带宽和时间。
我现在唯一的想法是,接下来我会遇到什么错误?显然,关于这些东西的文档不是 100%。
关于android - 安装 Python-For-Android Linux Ubuntu,构建错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41033549/