我想用python创建一个应用程序,但我需要它包含正确运行所需的一切。我看过这篇关于通过和市场销售应用程序的能力的帖子,但那里没有最终答案。
目前我能找到的最好的解决方案是在这个pdf章节(来自 Pro SL4A Apress 书),但似乎即使我创建了一个.apk
文件,安装该应用程序的用户也必须在他的 Android 设备上安装 SL4A。
有没有办法将 SL4A 合并到.apk
文件中,或者更好的是,只合并需要的东西?
据我所知,以这种方式创建的 APK 不包含 SL4A 提供的脚本解释器。根据您发布的 PDF,它应该在安装 APK 时要求安装 SL4A 和相关的脚本解释器。
这个问题现在已经很老了,但是对于可能来到这里的任何其他用户,现在可以将 Python 解释器嵌入到 APK 包中。查看这个项目的说明和方法。
因此,通过本书中描述的方法编译 APK 时实际发生的情况与您所描述的有点不同。实际发生的是,安装 APK 文件后,它会检查用户是否安装了Python ,而不是 SL4A。如果用户没有安装 Python,它将提示下载,类似于某些应用程序提示安装 BusyBox 以使用某些命令的方式。这意味着用户不需要有脚本环境,甚至不需要知道 python 是什么。
至于将第 3 方模块/库编译到您的 APK 中,当您在 Eclipse 中编译时,它会指向计算机上包含 python 的文件夹,然后从那里编译。这意味着为了将额外的模块或库添加到 APK 中,您需要做的就是确保它们包含在 Eclipse 在编译 APK 时查找的文件夹中。默认情况下,我认为这是您的本机 Python 文件夹,但我不是 100% 确定,所以如果我错了,请有人纠正我。
希望这可以帮助!