排除第三方图书馆,它的课程&使用Eclipse IDE的ProGuard子类

时间:2016-01-28 19:31:09

标签: java android eclipse obfuscation android-proguard

当我尝试在ProGuard中排除第三方库时出现以下错误。

正在编译,如果我添加" -dontwarn com.ak.systemservice.core.security.FuncManager"在proguard-project.txt中, 但是在尝试运行时遇到崩溃。

基本上我不想混淆" com.ak.systemservice。 core.security.FuncManager"在jar或整个jar中的类,并希望使用" com.ak.systemservice。 core.security.FuncManager"在我的活动中。提前谢谢。

以下是错误:

  

[2016-01-26 17:00:27 - MyApp] Proguard返回错误代码1.请参阅控制台

     

[2016-01-26 17:00:27 - MyApp]警告:com.ak.systemservice.core.security.FuncManager:找不到引用类android.os.ServiceManager

     

[2016-01-26 17:00:27 - MyApp]警告:com.ak.systemservice.core.security.FuncManager:找不到引用类android.os.ServiceManager

     

[2016-01-26 17:00:27 - MyApp]警告:com.ak.systemservice.core.security.FuncManager:找不到引用类android.security.FuncService $ Stub

     

[2016-01-26 17:00:27 - MyApp]警告:com.ak.systemservice.core.security.FuncManager:找不到引用类android.security.FuncService $ Stub

     

[2016-01-26 17:00:27 - MyApp]警告:com.ak.systemservice.core.security.FuncManager:找不到引用类android.security.FuncService

     

[2016-01-26 17:00:27 - MyApp]警告:com.ak.systemservice.core.security.FuncManager:找不到引用类android.security.FuncService

     

[2016-01-26 17:00:27 - MyApp]警告:com.ak.systemservice.core.security.FuncManager:找不到引用的类com.ak.systemservice.core.security.FuncManager $ 1

     

[2016-01-26 17:00:27 - MyApp]警告:com.ak.systemservice.core.security.FuncManager:找不到引用的类com.ak.systemservice.core.security.FuncManager $ 1

     

[2016-01-26 17:00:27 - MyApp]警告:com.ak.systemservice.core.security.FuncManager:找不到引用类android.security.FuncService

     

[2016-01-26 17:00:27 - MyApp]警告:com.ak.systemservice.core.security.FuncManager:找不到引用类android.security.FuncService

     

[2016-01-26 17:00:27 - MyApp]警告:com.ak.systemservice.core.security.FuncManager:找不到引用类android.security.FuncService

     

[2016-01-26 17:00:27 - MyApp]警告:com.ak.systemservice.core.security.FuncManager:找不到引用类android.security.FuncService

     

[2016-01-26 17:00:27 - MyApp]警告:com.ak.systemservice.core.security.FuncManager:找不到引用类android.security.FuncService

     

[2016-01-26 17:00:27 - MyApp]警告:com.ak.systemservice.core.security.FuncManager:找不到引用类android.security.FuncService

     

[2016-01-26 17:00:27 - MyApp]警告:com.ak.systemservice.core.security.FuncManager:找不到引用类android.security.FuncService

     

[2016-01-26 17:00:27 - MyApp]警告:com.ak.systemservice.core.security.FuncManager:找不到引用类android.security.FuncService

2 个答案:

答案 0 :(得分:0)

您可以通过避免此类缩小来解决此问题。将其添加到您的proguard文件

-keep class com.ak.** { *; }
-keep interface com.ak.** { *; }
-keep enum com.ak.** { *; }

或者你也可以保持个别课程。像这样,

-keep class com.ak.systemservice.core.security.FuncManager

答案 1 :(得分:0)

还没有!谢谢你的跟进!在进行此步骤之前,获取JNI本机回调错误,应用程序崩溃了!不知何故,proguard正在剥离JNI方法名称并导致崩溃。如何确保ProGuard不会剥离JNI?如何使特定的JNI回调方法远离ProGuard?

谢谢,