Android pyqtdeploy:添加外部模块
是否有人具有Android pyqtdeploy:添加外部模块,android,python,pyqt,pycrypto,pyqtdeploy,Android,Python,Pyqt,Pycrypto,Pyqtdeploy,是否有人具有pyqtdeploy和添加外部模块的经验?我目前正在使用pyqtdeploy(1.2版)和pyqt5.5.1来编写一个可以部署到Android设备上的应用程序。在没有任何外部模块的情况下,使用pyqtdeploy进行冻结效果非常好。但是,我不确定如何将外部模块(不是纯Python模块)添加到我的应用程序中 特别是,我想添加外部模块pycrypto。因此,我下载了pycryptosourcecode,用Android工具链(来自Android NDK)编译,现在我有了一堆*.py和*.
pyqtdeploy
和添加外部模块的经验?我目前正在使用pyqtdeploy
(1.2版)和pyqt5.5.1
来编写一个可以部署到Android设备上的应用程序。在没有任何外部模块的情况下,使用pyqtdeploy
进行冻结效果非常好。但是,我不确定如何将外部模块(不是纯Python模块)添加到我的应用程序中
特别是,我想添加外部模块pycrypto
。因此,我下载了pycrypto
sourcecode,用Android工具链(来自Android NDK)编译,现在我有了一堆*.py和*.so文件。如何将它们添加到我的应用程序中
我最初的尝试是将*.py和*.so文件(基本上是整个pycrypto模块)添加到pyqtdeploy的“其他包”选项卡中。
但是现在,当我在我的应用程序中导入与pycrypto相关的东西时(来自Crypto.Cipher import AES
),我得到以下错误消息:
文件::/Crypto/Cipher/_AES.py”,引导程序中的第20行__
TypeError:“非类型”对象不可调用
抛出错误的_AES.py文件如下所示:
def __bootstrap__():
global __bootstrap__, __loader__, __file__
import sys, pkgutil, imp
__file__ = pkgutil.get_data(__name__,'_AES.cpython-34m.so')
__loader__ = None; del __bootstrap__, __loader__
imp.load_dynamic(__name__,__file__)
__bootstrap__()
起初,我认为*.so文件名是错误的,因此,我得到了非类型错误,所以我将_AES.py中的文件名改为其他类似“test.so”的内容。令人惊讶的是,现在我收到了一条与以前不同的错误消息:
文件“:/pkgutil.py”第629行,在get_数据中
ImportError:qrcimporter:打开文件时出错:/Crypto/Cipher/test。因此
好的,那么文件名应该很好,对吗?但为什么我会收到“NoneType”错误消息?我做错了什么?这是实现这一目标的正确方法吗
非常感谢您的帮助。我很确定,我离让这件事开始工作只有一小步了,但我不知道我做错了什么
谢谢 你把它弄好了吗?我不能建立我的应用程序,我可以建立演示应用程序…你得到这个工作吗?我不能建立我的应用程序,我可以建立演示应用程序。。。