当我使用proguard.cfg导出android项目时,所有被引用的.jar文件也被混淆。如何从混淆中排除某些.jar?如何通过Proguard(Android项目)从混淆中排除外部.jar?
23
A
回答
24
如果您不想编辑Ant脚本,您可以为proguard.cfg添加-keep选项以用于这些外部jar中的类。例如:
-keep class othercode.** { *; }
或被含有否定符正则表达式:
-keep class !mycode.** { *; }
标准Ant脚本仍然会合并所有引用的罐子在单输出罐子虽然。
6
在你的配置文件中,将你的jar设置为库罐而不是输入罐。这使他们不受影响。
-libjars <path/to/jars>
+0
我没有设置输入或库罐。这由平台ant脚本完成。编辑该文件是我试图避免的。 – alex2k8 2010-12-17 23:39:51
1
使用ProGuard Maven插件我那样做
<inclusion>
<groupId>foo.bar</groupId>
<artifactId>foo-bar</artifactId>
<library>true</library>
<filter>!META-INF/**</filter>
</inclusion>
的
<library>true></library>
导致外部罐子合并成混淆后的最终罐子。但这可能会导致Manifest被覆盖。我还没有想出如何避免这种最好的方式。
相关问题
- 1. 如何排除从ProGuard的混淆
- 2. 如何在Android Studio中从Proguard中排除外部库jar?
- 3. 多jar项目的Proguard混淆处理
- 4. Android Proguard跳过外部jar
- 5. 如何在ProGuard中混淆库jar?
- 6. Proguard的混淆JAR文件
- 7. 在eclipse中如何使用proguard混淆android项目?
- 8. 如何关闭除混淆之外的所有Android ProGuard功能?
- 9. 的Android库项目,以混淆的JAR
- 10. 排除方法到Proguard混淆
- 11. Cordova android 5.1.1 APK混淆与proguard混淆
- 12. Proguard:在Android中排除库项目
- 13. 为什么我们必须从ProGuard混淆中排除库?
- 14. Android proguard不会混淆类
- 15. Android ProGuard混淆特定类
- 16. 如何混淆使用ProGuard
- 17. ProGuard的混淆
- 18. 与proguard混淆
- 19. 如何使Proguard在jar文件中混淆罐子
- 20. 从babel混淆排除webresources?
- 21. Android项目未能导出apk后,proguard混淆
- 22. 如何使用ProGuard工具来混淆我的项目?
- 23. 混淆Android库项目
- 24. 混淆Android库项目/ apklib
- 25. Proguard的混淆工程Android Studio中
- 26. 从Android库项目生成混淆库
- 27. 摇篮过程中排除从Android Studio中的外部JAR包生成过程
- 28. 使用proguard的Android混淆应用程序保持jar库
- 29. Android - Proguard混淆无法找到android类
- 30. 使用proguard混淆
我也这样做(但使用keepclasseswithmembers类和保持接口)它在我的情况或多或少罚款,因为单独的.jar文件有不同的包名... – alex2k8 2010-12-22 22:55:48
也认为它保留的名称,代码仍然似乎被处理和混淆。 – alex2k8 2010-12-27 00:03:40
@Eric请在android工作室回复,在'proguard-project.txt'或'proguard-rules.pro'中添加这些行吗? – 2016-06-06 09:16:32