当我打开ProGuard时,为什么我不能从Eclipse导出apk文件?

时间:2015-03-12 21:23:51

标签: android proguard

  

[2015-03-13 02:48:07 - ScoresOnGo] Proguard返回错误代码1.查看控制台
  [2015-03-13 02:48:07 - ScoresOnGo]警告:com.google.android.gms.cast.TextTrackStyle:无法找到引用类android.view.accessibility.CaptioningManager
  [2015-03-13 02:48:07 - ScoresOnGo]警告:com.google.android.gms.cast.TextTrackStyle:无法找到引用的类android.view.accessibility.CaptioningManager $ CaptionStyle
  [2015-03-13 02:48:07 - ScoresOnGo]警告:com.google.android.gms.cast.TextTrackStyle:无法找到引用的类android.view.accessibility.CaptioningManager $ CaptionStyle
  [2015-03-13 02:48:07 - ScoresOnGo]警告:com.google.android.gms.cast.TextTrackStyle:无法找到引用的类android.view.accessibility.CaptioningManager $ CaptionStyle
  [2015-03-13 02:48:07 - ScoresOnGo]警告:com.google.android.gms.cast.TextTrackStyle:无法找到引用的类android.view.accessibility.CaptioningManager $ CaptionStyle
  [2015-03-13 02:48:07 - ScoresOnGo]警告:com.google.android.gms.cast.TextTrackStyle:无法找到引用的类android.view.accessibility.CaptioningManager $ CaptionStyle
  [2015-03-13 02:48:07 - ScoresOnGo]警告:com.google.android.gms.cast.TextTrackStyle:无法找到引用类android.view.accessibility.CaptioningManager
  [2015-03-13 02:48:07 - ScoresOnGo]警告:com.google.android.gms.cast.TextTrackStyle:无法找到引用类android.view.accessibility.CaptioningManager
  [2015-03-13 02:48:07 - ScoresOnGo]警告:com.google.android.gms.cast.TextTrackStyle:无法找到引用的类android.view.accessibility.CaptioningManager $ CaptionStyle
  [2015-03-13 02:48:07 - ScoresOnGo]警告:com.google.android.gms.fitness.service.FitnessSensorService $ a:找不到引用类android.app.AppOpsManager
  [2015-03-13 02:48:07 - ScoresOnGo]警告:com.google.android.gms.fitness.service.FitnessSensorService $ a:找不到引用类android.app.AppOpsManager
  [2015-03-13 02:48:07 - ScoresOnGo]警告:com.google.android.gms.internal.af:无法找到引用的方法' boolean isAttachedToWindow()'在类android.view.View中   [2015-03-13 02:48:07 - ScoresOnGo]警告:com.google.android.gms.internal.an $ 2:无法找到引用的方法' void evaluateJavascript(java.lang.String, android.webkit.ValueCallback)'在类android.webkit.WebView中   [2015-03-13 02:48:07 - ScoresOnGo]警告:com.google.android.gms.internal.gu:无法找到引用的方法' void evaluateJavascript(java.lang.String,android .webkit.ValueCallback)'在类android.webkit.WebView中   [2015-03-13 02:48:07 - ScoresOnGo]您应该检查是否需要指定其他程序罐。
  [2015-03-13 02:48:07 - ScoresOnGo]警告:有11个未解决的类或接口引用。
  [2015-03-13 02:48:07 - ScoresOnGo]您可能需要指定其他库罐(使用' -libraryjars')。   [2015-03-13 02:48:07 - ScoresOnGo]警告:有3个未解决的程序类成员引用。
  [2015-03-13 02:48:07 - ScoresOnGo]您的输入类似乎不一致   [2015-03-13 02:48:07 - ScoresOnGo]您可能需要重新编译它们并再试一次   [2015-03-13 02:48:07 - ScoresOnGo]或者,您可能需要指定选项
  [2015-03-13 02:48:07 - ScoresOnGo]' -dontskipnonpubliclibraryclassmembers'。
  [2015-03-13 02:48:07 - ScoresOnGo] java.io.IOException:请先纠正上述警告。
  [2015-03-13 02:48:07 - ScoresOnGo]在proguard.Initializer.execute(Initializer.java:321)
  [2015-03-13 02:48:07 - ScoresOnGo]在proguard.ProGuard.initialize(ProGuard.java:211)
  [2015-03-13 02:48:07 - ScoresOnGo]在proguard.ProGuard.execute(ProGuard.java:86)
  [2015-03-13 02:48:07 - ScoresOnGo]在proguard.ProGuard.main(ProGuard.java:492)

2 个答案:

答案 0 :(得分:1)

默认情况下,为了构建项目,proguard不需要警告。

如果您没有使用引用的类,则可以在proguard-rules文件中使用-dontwarn <classname>标志。

如果你只是想试试运气,你也可以使用-ignorewarnings标志来忽略所有警告并继续构建。

请参阅: http://proguard.sourceforge.net/manual/troubleshooting.html

答案 1 :(得分:-1)

我从来没有成功地从Eclipse导出apk来打开proguard。由于proguard只保护代码,而不是资产,我禁用它,并在C ++中使用我的算法。当我收到崩溃报告时,这个复杂的堆栈跟踪。

出于这些原因,我更喜欢Java。我强烈建议在Android Studio中编写和迁移所有Java项目。转向计划毫不费力。但正如我所说的那样,它只是你帮助保护的算法,而且无论如何,大多数算法解除都是由Java框架完成的,比如C ++或NDK。

无法使用proguard导出的可能原因是导入无法正常工作的模块,并且不值得修复以进行工作。如果您没有导入第三方模块,那么您需要指示proguard不要混淆其他方法无法找到的类。我的开发比我发布的更多,所以我建议您使用手册以获得准确的语法。只是分享我的经验。