简体   繁体   English

ProGuard,出现错误

[英]ProGuard, I am getting errors

So this is my first time with proguard, I tried a couple of things, read about it on the internet but I am stuck here and I could use some help 所以这是我第一次与Proguard合作,我尝试了几件事,在互联网上阅读了一下内容,但是我被困在这里,可以寻求帮助

I have jars in my libs folder 我的libs文件夹中有jars

Here is the proguard appname.txt file: 这是proguard appname.txt文件:

 -keep public class * extends android.app.Activity
-keep public class * extends android.app.Application
-keep public class * extends android.app.Service
-keep public class * extends android.content.BroadcastReceiver
-keep public class * extends android.content.ContentProvider
-keep public class * extends android.preference.Preference
-keep public class * extends org.cmc.music.clean.NameRectifier.*
-keep public class * extends org.cmc.music.clean.NameRectifier
-keep public class * org.cmc.music.myid3.ID3v2DataMapping
-keep public class * org.cmc.music.myid3.ID3v2DataMapping.*
-keep public class org.cmc.music.*
-keep public class com.android.vending.billing.IInAppBillingService
-keep public class * extends android.view.View {
    public <init>(android.content.Context);
    public <init>(android.content.Context, android.util.AttributeSet);
    public <init>(android.content.Context, android.util.AttributeSet, int);
}
-keepclasseswithmembers class * {
    public <init>(android.content.Context, android.util.AttributeSet);
}
-keepclasseswithmembers class * {
    public <init>(android.content.Context, android.util.AttributeSet, int);
}
-keepclassmembers class * extends android.content.Context {
    public void *(android.view.View);
    public void *(android.view.MenuItem);
}
-libraryjars libs/android-support-v4.jar
-libraryjars libs/MyID3_for_Android.jar
-libraryjars libs/stackblur.jar

Here is the properties file: 这是属性文件:

# This file is automatically generated by Android Tools.
# Do not modify this file -- YOUR CHANGES WILL BE ERASED!
#
# This file must be checked in Version Control Systems.
#
# To customize properties used by the Ant build system edit
# "ant.properties", and override values to adapt the script to your
# project structure.
#
# To enable ProGuard to shrink and obfuscate your code, uncomment this (available properties: sdk.dir, user.home):
proguard.config=${sdk.dir}/tools/proguard/proguard-android.txt:proguard-PlayMee.txt

# Project target.
target=android-19
android.library.reference.1=../../Workspace-mine/libproject/google-play-services_lib

Logcat: logcat的:

  [2014-07-07 14:07:48 - PlayMee] Proguard returned with error code 1. See console
[2014-07-07 14:07:48 - PlayMee] proguard.ParseException: Expecting opening '{' at 'org.cmc.music.myid3.ID3v2DataMapping' in line 9 of file 'D:\android\Workspace\PlayMee\proguard-PlayMee.txt',
[2014-07-07 14:07:48 - PlayMee]   included from argument number 4
[2014-07-07 14:07:48 - PlayMee]     at proguard.ConfigurationParser.parseClassSpecificationArguments(ConfigurationParser.java:678)
[2014-07-07 14:07:48 - PlayMee]     at proguard.ConfigurationParser.parseKeepClassSpecificationArguments(ConfigurationParser.java:490)
[2014-07-07 14:07:48 - PlayMee]     at proguard.ConfigurationParser.parse(ConfigurationParser.java:138)
[2014-07-07 14:07:48 - PlayMee]     at proguard.ProGuard.main(ProGuard.java:484)

If you are directly using jar org.cmc.music.myid3.ID3v2DataMapping classes, In the progaurd-config file line -keep public class * org.cmc.music.myid3.ID3v2DataMapping remove * from that and change it to -keep public class org.cmc.music.myid3.ID3v2DataMapping If you are extending the classes from org.cmc.music.myid3.ID3v2DataMapping then change the same line to -keep public class * extends org.cmc.music.myid3.ID3v2DataMapping 如果您直接使用jar org.cmc.music.myid3.ID3v2DataMapping类,则在progaurd-config文件行中-keep public class * org.cmc.music.myid3.ID3v2DataMapping删除*并将其更改为-keep public class org.cmc.music.myid3.ID3v2DataMapping如果要从org.cmc.music.myid3.ID3v2DataMapping扩展类, org.cmc.music.myid3.ID3v2DataMapping同一行更改为org.cmc.music.myid3.ID3v2DataMapping -keep public class * extends org.cmc.music.myid3.ID3v2DataMapping

You have to repeat the same step for next line as well. 您还必须对下一行重复相同的步骤。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM