我有一些python代码,这些代码在很大程度上依赖于numpy/scipy和scikit-learn。将其在Android设备上运行的最佳方法是什么?我已经阅读了几种使Python代码在Android上运行的方法,主要是Pygame和Kivy,但我不确定这将如何与Numpy和Scikit-Learn相互作用。
或最好考虑让Android应用程序将数据发送到Python正在运行的某些服务器?
从它的声音中,我建议您制作一台简单的django服务器,免费托管在pythonanywhere.com
如果您不知道Django只需通过基本教程即可。逐步遵循它,您将在短短几个小时内成为一组。遵循教程并使用pythonanywhere同时实现示例。
一旦您舒适,只需将Android应用程序可以将get请求发送并以JSON或REST格式发送所需信息的URL。
https://docs.djangoproject.com/en/1.8/intro/tutorial01/
http://pythonanywhere.com/
如果手机上的numpy和scipy之类的代码,如果其背后有大量计算,也不会很快。最好在服务器上运行计算并在Android应用程序上检索它。
您可以作为GET请求的一部分发送参数。配置Django应用程序的urls.py接收这些参数,然后将其传递给Views.py您执行脚本以对其进行操作,然后发送回响应。
取决于您的需求....
使用烧瓶/django在服务器上的Python允许您为Android(或任何)设备构建HTTP UI甚至API接口。
Qpython是一种在Android上运行Python的绝妙方式,但可能不会应对整个Scipy,因此取决于Qpython团队已经跨越了哪些图书馆。虽然这是一个很棒的工具,而且无论如何都值得一看。
IMHO在运行服务器端学习一些烧瓶比使用Kivy更容易,更灵活。