下载、破解并重新上传 APK 文件到 Google Play。可能吗?

Download, hack, and reupload APK file to Google Play. Is it possible?

我在 Unity3D 中开发了我的第一个 Android 应用程序并将其上传到 Google Play。我刚刚意识到:有从 Google Play 下载 apk 文件的服务。有解压缩 apk 文件并从中获取所有源文件的服务。可能吗?

开发者如何保护他的应用程序不被这种方式克隆? (我正在使用 Unity 3d,所以我不能使用 ProGuard)或者我在 Unity 3d 中开发有什么不同吗? (如果是在 Unity 中制作的解压源可能更难理解)但是,Google Play 如何保护应用程序免受黑客攻击源代码?

绝大部分情况下是完全有可能的。只需获取您的 APK,将其重命名为 .zip,您就可以访问其中的内容。浏览文件夹将向您显示(假定您使用的是 Unity)大量 Unity 资产文件。通过检查,从中检索内容是相当微不足道的。

遍历文件夹结构,直到找到 Assembly-CSharp.dll 并将其解压缩。将它转储到 ILSpy 之类的东西中,您会发现您的源代码不仅易于反编译,而且几乎所有命名都得到保留,甚至不会以任何方式进行混淆。

为您提供示例,这是我的代码的一部分

这是我刚才使用 ILSpy 从我构建的 APK 中检索到的内容

细微差别,但不会让您感到困惑。

总而言之,默认情况下没有太多保护。有很多方法可以应用混淆,但我自己没有这方面的经验,所以不能真正评论实际用途。

底线是,如果有人真的想花精力提取您创建的内容,他们可以达到一定程度。所以如果你想保护你的工作,你必须在别处找到解决方案。