如何用 Eclipse 混淆 Android 库项目?
Posted
技术标签:
【中文标题】如何用 Eclipse 混淆 Android 库项目?【英文标题】:How to obfuscate Android library project with Eclipse? 【发布时间】:2013-07-24 23:29:48 【问题描述】:您好,我为我的 android 应用程序用 Java 开发了一个小型库。我想为那个库做混淆。我使用的是安卓版本 4.1.2。首先,根据 Google 的 Android 文档,我的项目根目录中没有 proguard.cfg
文件。取而代之的是proguard-project.txt
。我将proguard.config=proguard-project.txt
添加到我的project-properties
文件中。
在此配置之后,我尝试导出此库项目并尝试对该项目进行混淆。它显示错误可以生成 .apk 文件,因为它是库项目。
然后我尝试了另一种导出选项。而不是常规的export android application
,我使用general -> archive file
并尝试导出它并生成jar 文件,但我检查了jar 内部并且没有完成编码。这意味着任何人都可以提取和检查我的图书馆中的课程和内容。但主要是它在我的项目中生成 proguard 文件夹,并在其中生成 dump mapping seeds usage.text
文件。
所以我需要帮助来对我的 Android 库进行适当的 ProGuard 混淆。难道我做错了什么。我必须在 proguard-project.txt
中添加什么样的配置才能正确编码我的代码?
【问题讨论】:
proguard 不会混淆库项目 感谢 pankaj 重播。那么如何在android中混淆库项目。需要帮助谢谢。 嘿,实际上我没有解决方案。所以我帮不了你。希望你能从另一个 SO 那里得到答案 感谢 pankaj 重播。 【参考方案1】:实际上,您可以混淆库项目,但不能直接混淆!您只能通过导出使用该库的整个应用程序项目来做到这一点。
考虑到这一点,您可以在图书馆项目的root folder 处设置不同的proguard.cfg
。
希望这会有所帮助。
【讨论】:
以上是关于如何用 Eclipse 混淆 Android 库项目?的主要内容,如果未能解决你的问题,请参考以下文章
导出已签名、混淆的 Android 应用程序时,如何在 Eclipse 中设置 ProGuard?