Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/macos/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Kivy:AsyncImage和Urllib不会在Android上打开任何url_Android_Python_Kivy - Fatal编程技术网

Kivy:AsyncImage和Urllib不会在Android上打开任何url

Kivy:AsyncImage和Urllib不会在Android上打开任何url,android,python,kivy,Android,Python,Kivy,最近,我开始在我的电脑上使用我已经用kivy编写的一些程序来瞄准android,但在我的手机上构建和安装之后,我发现urllib似乎不接受我提供给它的任何url,尽管它在我的电脑上运行得很好。此外,任何使用urllib连接到internet的kivy小部件都会以完全相同的方式失败 下面是一些示例代码: from kivy.app import App from kivy.uix.image import AsyncImage class TestApp(App): def build(

最近,我开始在我的电脑上使用我已经用kivy编写的一些程序来瞄准android,但在我的手机上构建和安装之后,我发现urllib似乎不接受我提供给它的任何url,尽管它在我的电脑上运行得很好。此外,任何使用urllib连接到internet的kivy小部件都会以完全相同的方式失败

下面是一些示例代码:

from kivy.app import App
from kivy.uix.image import AsyncImage

class TestApp(App):
    def build(self):
        return AsyncImage(source="http://kivy.org/logos/kivy-logo-black-64.png")

TestApp().run()
当应用程序运行时,会在logcat中显示:

11-07 15:50:10.400  3741  4686 I python  : [INFO   ] [GL          ] 
Using the "OpenGL ES 2" graphics system
11-07 15:50:10.400  3741  4686 I python  : [INFO   ] [GL          ] 
Backend used <gl>
11-07 15:50:10.410  3741  4686 I python  : [INFO   ] [GL          ] 
OpenGL version <b'OpenGL ES 3.1 V@140.0 (GIT@Ifd751822f5)'>
11-07 15:50:10.410  3741  4686 I python  : [INFO   ] [GL          ] 
OpenGL vendor <b'Qualcomm'>
11-07 15:50:10.410  3741  4686 I python  : [INFO   ] [GL          ] 
OpenGL renderer <b'Adreno (TM) 420'>
11-07 15:50:10.410  3741  4686 I python  : [INFO   ] [GL          ] 
OpenGL parsed version: 3, 1
11-07 15:50:10.410  3741  4686 I python  : [INFO   ] [GL          ] 
Texture max size <16384>
11-07 15:50:10.410  3741  4686 I python  : [INFO   ] [GL          ] 
Texture max units <16>
11-07 15:50:10.470  3741  4686 I python  : [INFO   ] [Window      ] 
auto add sdl2 input provider
11-07 15:50:10.470  3741  4686 I python  : [INFO   ] [Window      ] 
virtual keyboard not allowed, single mode, not docked
11-07 15:50:10.550  3741  4686 I python  : [INFO   ] [Loader      ] 
using a thread pool of 2 workers
11-07 15:50:10.720  3741  4686 I python  : [WARNING] [Base        ] 
Unknown <android> provider
11-07 15:50:10.720  3741  4686 I python  : [INFO   ] [Base        ] Start application main loop
11-07 15:50:10.740  3741  4686 I python  : [ERROR  ] [Base        ] Failed to import "android" module. Could not remove android presplash.
11-07 15:50:12.130  3741  4943 I python  : [ERROR  ] [Loader      ] Failed to load image <http://kivy.org/logos/kivy-logo-black-64.png>
11-07 15:50:12.130  3741  4943 I python  : Traceback (most recent call last):
11-07 15:50:12.130  3741  4943 I python  :   File "/data/user/0/org.lgt.lgt/files/app/crystax_python/site-packages/kivy/loader.py", line 317, in _load_urllib
11-07 15:50:12.130  3741  4943 I python  :     fd = urllib_request.urlopen(filename)
11-07 15:50:12.130  3741  4943 I python  :   File "/data/user/0/org.lgt.lgt/files/app/crystax_python/stdlib.zip/urllib/request.py", line 162, in urlopen
11-07 15:50:12.130  3741  4943 I python  :     return opener.open(url, data, timeout)
11-07 15:50:12.130  3741  4943 I python  :   File "/data/user/0/org.lgt.lgt/files/app/crystax_python/stdlib.zip/urllib/request.py", line 471, in open
11-07 15:50:12.130  3741  4943 I python  :     response = meth(req, response)
11-07 15:50:12.130  3741  4943 I python  :   File "/data/user/0/org.lgt.lgt/files/app/crystax_python/stdlib.zip/urllib/request.py", line 581, in http_response
11-07 15:50:12.130  3741  4943 I python  :     'http', request, response, code, msg, hdrs)
11-07 15:50:12.130  3741  4943 I python  :   File "/data/user/0/org.lgt.lgt/files/app/crystax_python/stdlib.zip/urllib/request.py", line 503, in error
11-07 15:50:12.130  3741  4943 I python  :     result = self._call_chain(*args)
11-07 15:50:12.130  3741  4943 I python  :   File "/data/user/0/org.lgt.lgt/files/app/crystax_python/stdlib.zip/urllib/request.py", line 443, in _call_chain
11-07 15:50:12.130  3741  4943 I python  :     result = func(*args)
11-07 15:50:12.130  3741  4943 I python  :   File "/data/user/0/org.lgt.lgt/files/app/crystax_python/stdlib.zip/urllib/request.py", line 686, in http_error_302
11-07 15:50:12.130  3741  4943 I python  :     return self.parent.open(new, timeout=req.timeout)
11-07 15:50:12.130  3741  4943 I python  :   File "/data/user/0/org.lgt.lgt/files/app/crystax_python/stdlib.zip/urllib/request.py", line 465, in open
11-07 15:50:12.130  3741  4943 I python  :     response = self._open(req, data)
11-07 15:50:12.130  3741  4943 I python  :   File "/data/user/0/org.lgt.lgt/files/app/crystax_python/stdlib.zip/urllib/request.py", line 488, in _open
11-07 15:50:12.130  3741  4943 I python  :     'unknown_open', req)
11-07 15:50:12.130  3741  4943 I python  :   File "/data/user/0/org.lgt.lgt/files/app/crystax_python/stdlib.zip/urllib/request.py", line 443, in _call_chain
11-07 15:50:12.130  3741  4943 I python  :     result = func(*args)
11-07 15:50:12.130  3741  4943 I python  :   File "/data/user/0/org.lgt.lgt/files/app/crystax_python/stdlib.zip/urllib/request.py", line 1310, in unknown_open
11-07 15:50:12.130  3741  4943 I python  :     raise URLError('unknown url type: %s' % type)
11-07 15:50:12.130  3741  4943 I python  : urllib.error.URLError: <urlopen error unknown url type: https>
11-07 15:50:10.400 3741 4686 I python:[INFO][GL]
使用“OpenGL ES 2”图形系统
11-07 15:50:10.400 3741 4686 I python:[信息][GL]
后端使用
11-07 15:50:10.410 3741 4686 I python:[信息][GL]
OpenGL版本
11-07 15:50:10.410 3741 4686 I python:[信息][GL]
OpenGL供应商
11-07 15:50:10.410 3741 4686 I python:[信息][GL]
OpenGL渲染器
11-07 15:50:10.410 3741 4686 I python:[信息][GL]
OpenGL解析版本:3,1
11-07 15:50:10.410 3741 4686 I python:[信息][GL]
纹理最大大小
11-07 15:50:10.410 3741 4686 I python:[信息][GL]
纹理最大单位
11-07 15:50:10.470 3741 4686 I python:[信息][窗口]
自动添加sdl2输入提供程序
11-07 15:50:10.470 3741 4686 I python:[信息][窗口]
不允许使用虚拟键盘,单模,未对接
11-07 15:50:10.550 3741 4686 I python:[信息][加载程序]
使用2个工作线程池
11-07 15:50:10.720 3741 4686 I python:[警告][基础]
未知

您试图加载的Url(
http://kivy.org/logos/kivy-logo-black-64.png
)使用
https
协议在url上重定向(只需将其加载到浏览器中即可查看)

要在Android上加载带有
https
的URL,您应该使用OpenSSL支持构建apk

在Python2上,可以通过在buildozer的需求中添加
openssl
来实现


我不确定它是否能与python3crystax一起工作,我希望你已经这样做了,但为了完整起见,你是否在你的android清单中包含了互联网权限?是的,我有互联网权限,我会发布我的buildozer规范。我不知道这是否有帮助,但我从一个访问https url的kivy应用程序构建了一个android。这是我的需求声明:
requirements=openssl,hostpython2,kivy
谢谢,我可能不得不移植到python2了well@user3751069我想唯一可能的方法就是使用Python2。当然,你也可以在中创建问题。谢谢,我会试试的