0

我最近刚刚开始使用 kivy 进行开发以进行测试并构建第一个 .apk ,所以我想到了一个问题。

main.py 包含源代码,如果我想分发我的 apk,我可能不想“可读”......所以当我为 google play 创建 .apk 时,有没有办法编码或隐藏我的主代码商店或作为普通的 linux 应用程序?

多谢你们!

4

1 回答 1

6

.py 没有发送到 apk 中,只有 .pyo(Python 字节码,优化版本,无文档字符串)。尽管如此,字节码还是可以颠倒过来的。

您可以使用Cython生成应用程序的 C (.pyx -> .c -> .so)。main.py 所能做的就是:

from myencodedlib import run
run()

你会有一个 myencodedlib.pyx ,其中包含你想要编译成二进制 C 的所有东西。(附带说明,python-for-android 需要一个配方来编译 python 扩展。查看 recipes/ 目录以了解它是如何为别人做的。)

最后一点,.so 对于更高级的黑客来说仍然是可反编译的。但是你会有一堆 cpython 调用,带有生成的变量名称。理解它需要几个小时。:)

于 2012-09-02T09:49:01.573 回答