在android python应用程序上使用paramiko

2024-06-03 00:58:03 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在使用buildozer编译一个Python应用程序,我可以毫无问题地构建APK。 在要求中,我写了以下内容:

# (list) Application requirements
# comma seperated e.g. requirements = sqlite3,kivy
requirements = sqlite3,kivy,datetime,plyer,paramiko

但不能启动应用程序。如果我在“import paramiko”一行加上注释,应用程序就会启动,但显然不是我的选择。在PC上,paramiko工作正常。 我知道,例如,在需求方面,sqlite3必须先于kivy,对吗?我尝试了很多不同的选项,比如“sqlite3,paramiko,kivy,datetime,plyer”或“sqlite3,kivy,paramiko,datetime,plyer”。我该怎么办?在

版本:

^{pr2}$

第2版:

使用adb logcat | grep python(我可以从终端复制的内容):

    enter code here05-18 10:40:32.601 26849 26864 W linker  : /data/app/com.doatlanticoaopacifico.dap-1/lib/arm/libpython2.7.so: is missing DT_SONAME will use basename as a replacement: "libpython2.7.so"
05-18 10:40:32.625 26849 26864 W linker  : /data/data/com.doatlanticoaopacifico.dap/files/lib/python2.7/lib-dynload/_io.so: is missing DT_SONAME will use basename as a replacement: "_io.so"
05-18 10:40:32.642 26849 26864 W linker  : /data/data/com.doatlanticoaopacifico.dap/files/lib/python2.7/lib-dynload/unicodedata.so: is missing DT_SONAME will use basename as a replacement: "unicodedata.so"
05-18 10:40:32.682 26849 26864 W linker  : /data/data/com.doatlanticoaopacifico.dap/files/lib/python2.7/lib-dynload/_sqlite3.so: is missing DT_SONAME will use basename as a replacement: "_sqlite3.so"
05-18 10:40:32.688 26849 26864 I python  : Starting audio thread
05-18 10:40:32.709 26849 26882 I python  : Initialize Python for Android
05-18 10:40:32.974 26849 26882 I python  : ['/data/user/0/com.doatlanticoaopacifico.dap/files/lib/python2.7/site-packages', '/data/user/0/com.doatlanticoaopacifico.dap/files/lib/site-python']
05-18 10:40:32.974 26849 26882 I python  : Android path ['/data/user/0/com.doatlanticoaopacifico.dap/files/lib/python27.zip', '/data/user/0/com.doatlanticoaopacifico.dap/files/lib/python2.7', '/data/user/0/com.doatlanticoaopacifico.dap/files/lib/python2.7/lib-dynload', '/data/user/0/com.doatlanticoaopacifico.dap/files/lib/python2.7/site-packages', '/storage/emulated/0/com.doatlanticoaopacifico.dap', '/storage/emulated/0/com.doatlanticoaopacifico.dap/_applibs']
05-18 10:40:32.974 26849 26882 I python  : Android kivy bootstrap done. __name__ is __main__
05-18 10:40:32.974 26849 26882 I python  : Run user program, change dir and execute main.py
05-18 10:40:33.119 26849 26882 W linker  : /data/data/com.doatlanticoaopacifico.dap/files/lib/python2.7/lib-dynload/_hashlib.so: is missing DT_SONAME will use basename as a replacement: "_hashlib.so"
05-18 10:40:33.331 26849 26882 I python  : [ERROR             ] Error when copying logo directory
05-18 10:40:33.331 26849 26882 I python  : Traceback (most recent call last):
05-18 10:40:33.331 26849 26882 I python  :   File "/home/awulll/dapapp/.buildozer/android/platform/python-for-android/build/python-install/lib/python2.7/site-packages/kivy/__init__.py", line 301, in <module>
05-18 10:40:33.331 26849 26882 I python  :   File "/home/awulll/dapapp/.buildozer/android/platform/python-for-android/build/python-install/lib/python2.7/shutil.py", line 205, in copytree
05-18 10:40:33.331 26849 26882 I python  : Error: [('/data/user/0/com.doatlanticoaopacifico.dap/files/lib/python2.7/site-packages/kivy/data/logo/kivy-icon-64.png', '/storage/emulated/0/com.doatlanticoaopacifico.dap/.kivy/icon/kivy-icon-64.png', "[Errno 1] Operation not permitted: '/storage/emulated/0/com.doatlanticoaopacifico.dap/.kivy/icon/kivy-icon-64.png'"), ('/data/user/0/com.doatlanticoaopacifico.dap/files/lib/python2.7/site-packages/kivy/data/logo/kivy-icon-512.png', '/storage/emulated/0/com.doatlanticoaopacifico.dap/.kivy/icon/kivy-icon-512.png', "[Errno 1] Operation not permitted: '/storage/emulated/0/com.doatlanticoaopacifico.dap/.kivy/icon/kivy-icon-512.png'"), ('/data/user/0/com.doatlanticoaopacifico.dap/files/lib/python2.7/site-packages/kivy/data/logo/kivy-icon-256.png', '/storage/emulated/0/com.doatlanticoaopacifico.dap/.kivy/icon/kivy-icon-256.png', "[Errno 1] Operation not permitted: '/storage/emulated/0/com.doatlanticoaopacifico.dap/.kivy/icon/kivy-icon-256.png'"), ('/data/user/0/com.doatlanticoaopacifico.dap/files/lib/python2.7/site-packages/kivy/data/logo/kivy-icon-32.png', '/storage/emulated/0/com.doatlanticoaopacifico.dap/.kivy/icon/kivy-icon-32.png', "[Errno 1] Operation not permitted: '/storage/emulated/0/com.doatlanticoaopacifico.dap/.kivy/icon/kivy-icon-32.png'"), ('/data/user/0/com.doatlanticoaopacifico.dap/files/lib/python2.7/site-packages/kivy/data/logo/kivy-icon-24.png', '/storage/emulated/0/com.doatlanticoaopacifico.dap/.kivy/icon/kivy-icon-24.png', "[Errno 1] Operation not permitted: '/storage/emulated/0/com.doatlanticoaopacifico.dap/.kivy/icon/kivy-icon-24.png'"), ('/data/user/0/com.doatlanticoaopacifico.dap/files/lib/python2.7/site-packages/kivy/data/logo/kivy-icon-128.png', '/storage/emulated/0/com.doatlanticoaopacifico.dap/.kivy/icon/kivy-icon-128.png', "[Errno 1] Operation not permitted: '/storage/emulated/0/com.doatlanticoaopacifico.dap/.kivy/icon/kivy-icon-128.png'"), ('/data/user/0/com.doatlanticoaopacifico.dap/files/lib/python2.7/site-packages/kivy/data/logo/kivy-icon-48.png', '/storage/emulated/0/com.doatlanticoaopacifico.dap/.kivy/icon/kivy-icon-48.png', "[Errno 1] Operation not permitted: '/storage/emulated/0/com.doatlanticoaopacifico.dap/.kivy/icon/kivy-icon-48.png'"), ('/data/user/0/com.doatlanticoaopacifico.dap/files/lib/python2.7/site-packages/kivy/data/logo/kivy-icon-16.png', '/storage/emulated/0/com.doatlanticoaopacifico.dap/.kivy/icon/kivy-icon-16.png', "[Errno 1] Operation not permitted: '/storage/emulated/0/com.doatlanticoaopacifico.dap/.kivy/icon/kivy-icon-16.png'"), '/data/user/0/com.doatlanticoaopacifico.dap/files/lib/python2.7/site-packages/kivy/data/logo', '/storage/emulated/0/com.doatlanticoaopacifico.dap/.kivy/icon', "[Errno 1] Operation not permitted: '/storage/emulated/0/com.doatlanticoaopacifico.dap/.kivy/icon'"]
05-18 10:40:33.353 26849 26882 I python  : [WARNING           ] [Config      ] Older configuration version detected (0 instead of 14)
05-18 10:40:33.354 26849 26882 I python  : [WARNING           ] [Config      ] Upgrading configuration in progress.
05-18 10:40:33.372 26849 26882 I python  : [INFO              ] [Logger      ] Record log in /storage/emulated/0/com.doatlanticoaopacifico.dap/.kivy/logs/kivy_16-05-18_0.txt
05-18 10:40:33.373 26849 26882 I python  : [INFO              ] [Kivy        ] v1.9.1
05-18 10:40:33.373 26849 26882 I python  : [INFO              ] [Python      ] v2.7.2 (default, May 17 2016, 21:38:56) 
05-18 10:40:33.373 26849 26882 I python  : [GCC 4.8]
05-18 10:40:33.391 26849 26882 W linker  : /data/data/com.doatlanticoaopacifico.dap/files/lib/python2.7/lib-dynload/_ctypes.so: is missing DT_SONAME will use basename as a replacement: "_ctypes.so"
05-18 10:40:33.436 26849 26882 I python  : [INFO              ] [Factory     ] 179 symbols loaded
05-18 10:40:34.414 26849 26882 I python  :  /data/user/0/com.doatlanticoaopacifico.dap/files/lib/python2.7/site-packages/kivy/core/image/img_pygame.py:13: RuntimeWarning: import cdrom: No module named cdrom
05-18 10:40:34.415 26849 26882 I python  :  (ImportError: No module named cdrom)
05-18 10:40:34.460 26849 26882 I python  : [INFO              ] [Image       ] Providers: img_tex, img_dds, img_gif, img_pygame (img_pil, img_ffpyplayer ignored)
05-18 10:40:35.702 26849 26882 I python  : [INFO              ] [Window      ] Provider: pygame
05-18 10:40:35.718 26849 26882 I python  : [INFO              ] [GL          ] OpenGL version <OpenGL ES 3.0 V@140.0 AU@  (GIT@I14a17c7611)>
05-18 10:40:35.718 26849 26882 I python  : [INFO              ] [GL          ] OpenGL vendor <Qualcomm>
05-18 10:40:35.719 26849 26882 I python  : [INFO              ] [GL          ] OpenGL renderer <Adreno (TM) 306>
05-18 10:40:35.720 26849 26882 I python  : [INFO              ] [GL          ] OpenGL parsed version: 3, 0
05-18 10:40:35.721 26849 26882 I python  : [INFO              ] [GL          ] Texture max size <4096>
05-18 10:40:35.722 26849 26882 I python  : [INFO              ] [GL          ] Texture max units <16>
05-18 10:40:35.791 26849 26882 I python  : [INFO              ] [Shader      ] program: <--From Vertex Shader:
05-18 10:40:35.791 26849 26882 I python  : --From Fragment Shader:
05-18 10:40:35.791 26849 26882 I python  : Link was successful.>
05-18 10:40:36.725 26849 26882 I python  : [INFO              ] [Support     ] Android install hooks
05-18 10:40:36.727 26849 26882 I python  : [INFO              ] [Window      ] virtual keyboard not allowed, single mode, not docked
05-18 10:40:36.746 26849 26882 I python  : [INFO              ] [Text        ] Provider: pygame
05-18 10:40:36.819 26849 26882 W linker  : /data/data/com.doatlanticoaopacifico.dap/files/lib/python2.7/lib-dynload/_ssl.so: is missing DT_SONAME will use basename as a replacement: "_ssl.so"
05-18 10:40:36.953 26849 26882 W linker  : /data/data/com.doatlanticoaopacifico.dap/files/lib/python2.7/site-packages/Crypto/Util/_counter.so: is missing DT_SONAME will use basename as a replacement: "_counter.so"
05-18 10:40:36.960 26849 26882 W linker  : /data/data/com.doatlanticoaopacifico.dap/files/lib/python2.7/site-packages/Crypto/Cipher/_AES.so: is missing DT_SONAME will use basename as a replacement: "_AES.so"
05-18 10:40:36.969 26849 26882 W linker  : /data/data/com.doatlanticoaopacifico.dap/files/lib/python2.7/site-packages/Crypto/Cipher/_DES3.so: is missing DT_SONAME will use basename as a replacement: "_DES3.so"
05-18 10:40:37.005 26849 26882 I python  :  Traceback (most recent call last):
05-18 10:40:37.006 26849 26882 I python  :    File "/home/awulll/dapapp/.buildozer/android/app/main.py", line 12, in <module>
05-18 10:40:37.006 26849 26882 I python  :    File "/home/awulll/dapapp/.buildozer/android/app/rotinas.py", line 11, in <module>
05-18 10:40:37.007 26849 26882 I python  :    File "/home/awulll/dapapp/.buildozer/android/platform/python-for-android/build/python-install/lib/python2.7/site-packages/paramiko/__init__.py", line 30, in <module>
05-18 10:40:37.008 26849 26882 I python  :    File "/home/awulll/dapapp/.buildozer/android/platform/python-for-android/build/python-install/lib/python2.7/site-packages/paramiko/transport.py", line 59, in <module>
05-18 10:40:37.009 26849 26882 I python  :    File "/home/awulll/dapapp/.buildozer/android/platform/python-for-android/build/python-install/lib/python2.7/site-packages/paramiko/ecdsakey.py", line 26, in <module>
05-18 10:40:37.010 26849 26882 I python  :  ImportError: No module named ecdsa
05-18 10:40:37.080 26849 26882 I python  : Python for android ended.
05-18 10:40:37.157 26987 27003 I ActivityManager: Process com.doatlanticoaopacifico.dap:python (pid 26849) has died

Tags: comdatasopnglibpackagessitestorage
1条回答
网友
1楼 · 发布于 2024-06-03 00:58:03

我明白了!在

我增加了ecdsa的要求:

# (list) Application requirements
# comma seperated e.g. requirements = sqlite3,kivy
requirements = sqlite3,kivy,datetime,plyer,ecdsa,paramiko

我不知道这是否有什么不同,但我保留我的权限:

^{pr2}$

谢谢各位!在

相关问题 更多 >