无法使用MacOS中的Buildozer构建kivy(python 2)apk [错误套接字错误] [SSL:TLSV1_ALERT_PROTOCOL_VERSION]

时间:2018-06-01 04:48:41

标签: android python-2.7 kivy buildozer

我是Kivy的新手。我的环境如下: 操作系统:MacOS v10.12.6 Kivy:使用Python v2.7.10 Buildozer:v0.35dev

我的main.py目前适用于我的Mac上的Kivy和Android手机上的Kivy Launcher。

当我尝试通过" buildozer android debug"在Mac上构建我的apk时命令,我得到以下错误和日志跟踪下面。我可以知道如何解决这个问题吗?

-Stephen

  

检查配置令牌

     

确保构建布局

     

检查配置令牌

     

准备构建

     

检查android

的要求      

搜索Git(git)

     

- >发现于/ usr / bin / git

     

搜索Cython(cython)

     

- >发现于/Library/Frameworks/Python.framework/Versions/2.7/bin/cython

     

搜索Java编译器(javac)

     

- >发现于/System/Library/Frameworks/JavaVM.framework/Versions/A/Commands/javac

     

搜索Java keytool(keytool)

     

- >发现于/System/Library/Frameworks/JavaVM.framework/Versions/A/Commands/keytool

     

安装平台

     

运行' pip install -q --user" appdirs" "&COLORAMA GT = 0.3.3" " SH> = 1.10,< 1.12.5" "的Jinja2" " 6"'

     

Cwd无

     

Apache ANT在/Users/cck/.buildozer/android/platform/apache-ant-1.9.4

中找到      

Android SDK位于/Users/cck/.buildozer/android/platform/android-sdk-20

     

Android NDK在/Users/cck/.buildozer/android/platform/android-ndk-r9c

中找到      

检查申请要求

     

检查花园要求

     

编译平台

     

Run' /System/Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python

     

-m pythonforandroid.toolchain create --dist_name = reviseChinese --bootstrap = sdl2 --requirements = kivy --arch armeabi-v7a --copy-libs --color = always --storage-dir = / Users / cck / OneDrive - act / Desk / kivy / .buildozer / android / platform / build'

     

Cwd / Users / cck / OneDrive - act / Desk / kivy / .buildozer / android / platform / python-for-android-new-toolchain

     

[INFO]:将为以下拱门编译:armeabi-v7a [INFO]:
  在$ ANDROIDAPI [INFO]中找到Android API目标:可用Android   API是(19)[INFO]:请求的API目标19可用,   持续。 [INFO]:在$ ANDROIDNDK [INFO]中找到了NDK目录:得到了NDK   来自$ ANDROIDNDKVER [INFO]的版本:使用Google NDK r9c [INFO]:
  在/ usr / local / bin / virtualenv [INFO]找到virtualenv:ccache是   缺少,将来不会优化构建。 [INFO]:
  找到以下工具链版本:[' 4.6',' 4.8',' clang3.3']   [INFO]:选择最新的gcc工具链,这里4.8 [警告]:   缺少可执行文件:未安装pkg-config [警告]:丢失   可执行文件:未安装autoconf [警告]:缺少可执行文件:   未安装automake [警告]:缺少可执行文件:libtoolize是   未安装[INFO]:没有现有的dists符合给定的   要求! [INFO]:没有符合您要求的dist,   所以一个人将被建造。 [INFO]:找到多个有效依赖项   订单:[INFO]:[' hostpython2',' sdl2_image',' sdl2_mixer',   ' sdl2_ttf',' python2',' sdl2','六',' pyjnius',u' kivy& #39;] [INFO]:
  [&#39; hostpython3crystax&#39;,&#39; sdl2_image&#39;,&#39; sdl2_mixer&#39;,&#39; sdl2_ttf&#39;,   &#39; python3crystax&#39;,&#39; sdl2&#39;,&#39; six&#39;,&#39; pyjnius&#39;,u&#39; kivy&#39;] [INFO]:<登记/>   [&#39; hostpython2&#39;,&#39; pygame_bootstrap_components&#39;,&#39; python2&#39;,&#39; sdl&#39;,   &#39;六&#39;,&#39; pygame&#39;,&#39; pyjnius&#39;,u&#39; kivy&#39;] [INFO]:使用第一个   这些:[&#39; hostpython2&#39;,&#39; sdl2_image&#39;,&#39; sdl2_mixer&#39;,&#39; sdl2_ttf&#39;,   &#39; python2&#39;,&#39; sdl2&#39;,&#39; six&#39;,&#39; pyjnius&#39;,u&#39; kivy&#39;] [INFO]:选   bootstrap是sdl2_gradle [INFO]:#使用sdl2_gradle创建dist   bootstrap [INFO]:Dist将有名称reviseChinese和食谱   (kivy)[INFO]:Dist还包含从pip安装的modules()   [INFO]: - &gt;运行cp -r /Users/cck/OneDr ...(和另外215个)[INFO]:    - &GT;目录上下文/ Users / cck / OneDrive / build / bootstrap_builds / sdl2_gradle-python2 [INFO]:   &lt; - 目录上下文/ Users / cck / OneDrive -   ACT /台/ kivy / .buildozer /安卓/平台/蟒蛇换Android的新工具链   [INFO]:食谱构建顺序为[&#39; hostpython2&#39;,&#39; sdl2_image&#39;,   &#39; sdl2_mixer&#39;,&#39; sdl2_ttf&#39;,&#39; python2&#39;,&#39; sdl2&#39;,&#39; six&#39;,&#39; pyjnius& #39 ;,   u&#39; kivy&#39;] [INFO]:#下载食谱[INFO]:正在下载   hostpython2 [INFO]: - &gt;运行mkdir -p /Users/cck/One ...(和26   更多)[信息]: - &gt;目录上下文   / Users / cck / OneDrive / packages / hostpython2 [INFO]: - &gt;赛跑   basename https://python.org/ftp...(and 34更多)[INFO]: - &gt;赛跑   rm -f .mark-Python-2.7.2.tar.bz2 [INFO]:
  从中下载hostpython2   https://python.org/ftp/python/2.7.2/Python-2.7.2.tar.bz2追溯   (最近一次调用最后一次):文件   &#34; /System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/runpy.py" ;,   第162行,在_run_module_as_main中       &#34; main &#34;,fname,loader,pkg_name)文件&#34; /System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/runpy的.py&#34 ;,   第72行,在_run_code中       run_globals文件中的exec代码&#34; / Users / cck / OneDrive - act / Desk / kivy / .buildozer / android / platform / python-for-android-new-toolchain / pythonforandroid / toolchain.py&#34;,   978行       main()文件&#34; / Users / cck / OneDrive - act / Desk / kivy / .buildozer / android / platform / python-for-android-new-toolchain / pythonforandroid / toolchain.py&#34;,   第975行,主要       ToolchainCL()文件&#34; / Users / cck / OneDrive - act / Desk / kivy / .buildozer / android / platform / python-for-android-new-toolchain / pythonforandroid / toolchain.py&#34;,   第512行,在 init 中       getattr(self,args.subparser_name.replace(&#39; - &#39;,&#39; _&#39;))(args)文件&#34; / Users / cck / OneDrive -   ACT /台/ kivy / .buildozer /安卓/平台/蟒蛇换Android的新工具链/ pythonforandroid / toolchain.py&#34 ;,   第149行,在wrapper_func中       build_dist_from_args(ctx,dist,args)文件&#34; / Users / cck / OneDrive - act / Desk / kivy / .buildozer / android / platform / python-for-android-new-toolchain / pythonforandroid / toolchain.py&#34 ;,   第193行,在build_dist_from_args中       build_recipes(build_order,python_modules,ctx)文件&#34; pythonforandroid / build.py&#34;,第551行,在build_recipes文件中   &#34; pythonforandroid / recipe.py&#34;,第307行,在download_if_necessary中   文件&#34; pythonforandroid / recipe.py&#34;,第353行,在下载文件中   &#34; pythonforandroid / recipe.py&#34;,第151行,在download_file文件中   &#34; /System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/urllib.py" ;,   第245行,检索       fp = self.open(url,data)File&#34; /System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/urllib.py",   第213行,公开       return getattr(self,name)(url)File&#34; /System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/urllib.py",   第457行,在open_https中       return self.http_error(url,fp,errcode,errmsg,headers)File&#34; /System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/urllib.py",   第377行,在http_error中       result =方法(url,fp,errcode,errmsg,headers)文件&#34; /System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/urllib.py",   第671行,在http_error_301中       return self.http_error_302(url,fp,errcode,errmsg,headers,data)文件   &#34; /System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/urllib.py" ;,   第641行,在http_error_302中       data)File&#34; /System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/urllib.py",   第667行,在redirect_internal中       return self.open(newurl)File&#34; /System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/urllib.py",   第213行,公开       return getattr(self,name)(url)File&#34; /System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/urllib.py",   第443行,在open_https中       h.endheaders(data)File&#34; /System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/httplib.py",   第1049行,在终结者中       self._send_output(message_body)File&#34; /System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/httplib.py",   第893行,在_send_output中       self.send(msg)File&#34; /System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/httplib.py",   855行,发送       self.connect()File&#34; /System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/httplib.py",   第1274行,在连接中       server_hostname = server_hostname)File&#34; /System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/ssl.py",   第352行,在wrap_socket中       _context = self)File&#34; /System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/ssl.py",   第579行, init       self.do_handshake()File&#34; /System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/ssl.py",   第808行,在do_handshake中       self._sslobj.do_handshake()IOError:[Errno套接字错误] [SSL:TLSV1_ALERT_PROTOCOL_VERSION] tlsv1警报协议版本   (_ssl.c:590)

     

命令失败:/System/Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python

     

-m pythonforandroid.toolchain create --dist_name = reviseChinese --bootstrap = sdl2 --requirements = kivy --arch armeabi-v7a --copy-libs --color = always --storage-dir = / Users / cck / OneDrive - act / Desk / kivy / .buildozer / android / platform / build

     

     

Buildozer无法执行最后一个命令

     

错误可能隐藏在此错误上方的日志中

     

请阅读完整日志,然后在

之前搜索      

提出了buildozer本身的问题。

     

如果有错误报告,请添加log_level = 2

的完整日志

1 个答案:

答案 0 :(得分:0)

您的构建器似乎无法下载https://python.org/ftp/python/2.7.2/Python-2.7.2.tar.bz2。您可以自己下载此软件包并手动将其放入缓存文件夹或buildozer放置下载文件的位置,以便在尝试下载时,它会看到它已经存在并跳过它。