【发布时间】:2014-10-22 21:00:36
【问题描述】:
当我将 Proguard 与 Parse Push 一起使用时出现以下错误:
[2014-08-28 14:09:35 - PicturePlay] Proguard 返回错误代码 1。请参阅控制台 [2014-08-28 14:09:35 - PicturePlay] proguard.ParseException:在参数号 5 中的“-include”之前需要关键字“class”、>“interface”或“enum” [2014-08-28 14:09:35 - 图片播放]
在 proguard.ConfigurationParser.readNextWord(ConfigurationParser.java:1133) [2014-08-28 14:09:35 - 图片播放]
在 proguard.ConfigurationParser.parseClassSpecificationArguments(ConfigurationParser.java:514) [2014-08-28 14:09:35 - 图片播放]
在 proguard.ConfigurationParser.parse(ConfigurationParser.java:151) [2014-08-28 14:09:35 - 图片播放]
在 proguard.ProGuard.main(ProGuard.java:484)
我在 proguard-properties.txt 中使用的 Proguard 配置是:
-dontwarn com.parse.**
-keep class com.parse.** { *; }
-libraryjars\libs\Parse-1.5.0.jar
-keepattributes 注释
-保持公共类 * 扩展 android.app.Activity
-保持公共类 * 扩展 android.app.Application
-保持公共类 * 扩展 android.app.Service
-保持公共类 * 扩展 android.content.BroadcastReceiver
-保持公共类 * 扩展 android.content.ContentProvider
-保持公共类 * 扩展 android.preference.Preference
-保持公共类 com.android.vending.billing.IInAppBillingService
-保持公共类 * 扩展 android.view.View { 公共(android.content.Context); 公共(android.content.Context,android.util.AttributeSet); 公共(android.content.Context,android.util.AttributeSet,int); }
-keepclasseswithmembers class * { 公共(android.content.Context,android.util.AttributeSet); }
-keepclasseswithmembers class * { 公共(android.content.Context,android.util.AttributeSet,int); }
-keepclassmembers 类 * 扩展 android.content.Context { 公共无效*(android.view.View); 公共无效*(android.view.MenuItem); }
-keepclassmembers 类 * 扩展 android.app.Activity { 公共无效*(android.view.View); }
-为什么要保留
我需要什么来消除 Proguard 中的 Parse 错误?
【问题讨论】:
-
看起来你有一个“PicturePlay.java”,其中有一些你没有明确告诉 proguard 绕过的语法。
-
有一些我想要混淆的 Parse ID,所以我不认为我想在这些行中完全绕过 Parse。有什么建议吗?
-
不必绕过整个班级。它可能已被标记为“条目”pt、回调或某些特殊接口。必须阅读..
-
读到哪里?我发布了所有我知道的输出。
标签: android parse-platform proguard