2016-03-28 26 views
5

Tôi đã phát triển một ứng dụng trong studio android. Nó hoạt động tốt trong phiên bản gỡ lỗi nhưng khi tôi cố gắng tạo ra một phiên bản phát hành với proguard, hàng trăm cảnh báo xuất hiện và tôi không thể loại bỏ chúng bằng cách sử dụng tùy chọn -keep.các vấn đề về bảo vệ trong studio android

build.gradle tôi là

apply plugin: 'com.android.application' 
apply plugin: 'maven' 
apply plugin: 'com.google.gms.google-services' 


android { 
    compileSdkVersion 23 
    buildToolsVersion "23.0.2" 

    defaultConfig { 
     applicationId "com.ruben.xradar" 
     minSdkVersion 19 
     targetSdkVersion 23 
     versionCode 22 
     versionName "0.22" 
     multiDexEnabled true 
    } 

    dexOptions { 
     javaMaxHeapSize "4g" 
    } 
    packagingOptions { 
     exclude 'META-INF/NOTICE.txt' 
     exclude 'META-INF/LICENSE.txt' 
    } 

    buildTypes { 
     release { 
      //Esto es para oscurecer y minificar el código 
      minifyEnabled true 
      proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' 
     } 
     debug { 
      debuggable false 
     } 
    } 
} 

dependencies { 
    compile(project(path: ':backend', configuration: 'android-endpoints')) { 
     exclude group: 'com.google.guava' 
    } 
    compile fileTree(dir: 'libs', include: ['*.jar']) 
    compile('joda-time:joda-time:2.8.2') {} 

    //para el doble slider 
    compile 'com.appyvet:materialrangebar:1.3' 
    //para logearse usando la cuenta de redes sociales 
    compile files('src/libs/socialauth-4.12.jar') 
    compile 'commons-io:commons-io:2.4' 
    //google cloud messaging 
    compile 'com.google.android.gms:play-services:8.3.0' 
    compile 'com.google.android.gms:play-services-ads:8.3.0' 
    compile 'com.google.android.gms:play-services-analytics:8.3.0' 
    compile 'com.google.android.gms:play-services-identity:8.3.0' 
    compile 'com.google.android.gms:play-services-gcm:8.3.0' 
    compile 'com.google.android.gms:play-services-auth:8.3.0' 
    //para hacer el stepper del registro 
    compile 'ivb.com.materialstepper:material-stepper:0.0.2' 
    //para poder usar material design en versiones pre-lollipop 
    compile 'com.android.support:appcompat-v7:23.2.0' 
    compile 'com.android.support:cardview-v7:23.2.0' 
    compile 'com.android.support:recyclerview-v7:23.2.0' 
    compile 'com.android.support:palette-v7:23.2.0' 
    compile 'com.android.support:support-v4:23.2.0' 
    compile 'com.android.support:design:23.2.0' 
    compile 'com.android.support:multidex:1.0.1' 

    //esto es para los díalogos de cambiar las fotos 
    compile 'com.kingfisherphuoc:quick-action-dialog-fragment:1.1' 
    //para animar el recyclerview 
    compile 'jp.wasabeef:recyclerview-animators:1.3.0' 
    //para usar iconos de fuentes, svg's como iconos y así no tener que   crear carpetas hdpi,mdpi,xhdpi, etc 
    compile 'com.mikepenz:iconics-core:[email protected]' 
    compile 'com.mikepenz:google-material-typeface:[email protected]' 

    //para hacer imageviews redondos 
    compile 'de.hdodenhof:circleimageview:2.0.0' 
} 

và cuối cùng là thông điệp wargings Proguard là:.

Warning:com.google.api.client.googleapis.testing.TestUtils: can't find referenced class com.google.common.base.Splitter 
Warning:com.google.api.client.googleapis.testing.TestUtils: can't find referenced class com.google.common.collect.Lists 
Warning:com.google.api.client.googleapis.testing.TestUtils: can't find referenced class com.google.common.base.Splitter 
Warning:com.google.api.client.googleapis.testing.TestUtils: can't find referenced class com.google.common.collect.Lists 
Warning:jp.wasabeef.recyclerview.animators.BaseItemAnimator: can't find referenced method 'void dispatchMoveFinished(android.support.v7.widget.RecyclerView$ViewHolder)' in program class jp.wasabeef.recyclerview.animators.BaseItemAnimator 
Warning:jp.wasabeef.recyclerview.animators.BaseItemAnimator: can't find referenced method 'void dispatchChangeFinished(android.support.v7.widget.RecyclerView$ViewHolder,boolean)' in program class jp.wasabeef.recyclerview.animators.BaseItemAnimator 
Warning:jp.wasabeef.recyclerview.animators.BaseItemAnimator: can't find referenced method 'void dispatchRemoveFinished(android.support.v7.widget.RecyclerView$ViewHolder)' in program class jp.wasabeef.recyclerview.animators.BaseItemAnimator 
Warning:jp.wasabeef.recyclerview.animators.BaseItemAnimator: can't find referenced method 'void dispatchAddFinished(android.support.v7.widget.RecyclerView$ViewHolder)' in program class jp.wasabeef.recyclerview.animators.BaseItemAnimator 
Warning:jp.wasabeef.recyclerview.animators.BaseItemAnimator$4: can't find referenced method 'void dispatchMoveStarting(android.support.v7.widget.RecyclerView$ViewHolder)' in program class jp.wasabeef.recyclerview.animators.BaseItemAnimator 
Warning:jp.wasabeef.recyclerview.animators.BaseItemAnimator$4: can't find referenced method 'void dispatchMoveFinished(android.support.v7.widget.RecyclerView$ViewHolder)' in program class jp.wasabeef.recyclerview.animators.BaseItemAnimator 
Warning:jp.wasabeef.recyclerview.animators.BaseItemAnimator$5: can't find referenced method 'void dispatchChangeStarting(android.support.v7.widget.RecyclerView$ViewHolder,boolean)' in program class jp.wasabeef.recyclerview.animators.BaseItemAnimator 
Warning:jp.wasabeef.recyclerview.animators.BaseItemAnimator$5: can't find referenced method 'void dispatchChangeFinished(android.support.v7.widget.RecyclerView$ViewHolder,boolean)' in program class jp.wasabeef.recyclerview.animators.BaseItemAnimator 
Warning:jp.wasabeef.recyclerview.animators.BaseItemAnimator$6: can't find referenced method 'void dispatchChangeStarting(android.support.v7.widget.RecyclerView$ViewHolder,boolean)' in program class jp.wasabeef.recyclerview.animators.BaseItemAnimator 
Warning:jp.wasabeef.recyclerview.animators.BaseItemAnimator$6: can't find referenced method 'void dispatchChangeFinished(android.support.v7.widget.RecyclerView$ViewHolder,boolean)' in program class jp.wasabeef.recyclerview.animators.BaseItemAnimator 
Warning:jp.wasabeef.recyclerview.animators.BaseItemAnimator$DefaultAddVpaListener: can't find referenced method 'void dispatchAddStarting(android.support.v7.widget.RecyclerView$ViewHolder)' in program class jp.wasabeef.recyclerview.animators.BaseItemAnimator 
Warning:jp.wasabeef.recyclerview.animators.BaseItemAnimator$DefaultAddVpaListener: can't find referenced method 'void dispatchAddFinished(android.support.v7.widget.RecyclerView$ViewHolder)' in program class jp.wasabeef.recyclerview.animators.BaseItemAnimator 
Warning:jp.wasabeef.recyclerview.animators.BaseItemAnimator$DefaultRemoveVpaListener: can't find referenced method 'void dispatchRemoveStarting(android.support.v7.widget.RecyclerView$ViewHolder)' in program class jp.wasabeef.recyclerview.animators.BaseItemAnimator 
Warning:jp.wasabeef.recyclerview.animators.BaseItemAnimator$DefaultRemoveVpaListener: can't find referenced method 'void dispatchRemoveFinished(android.support.v7.widget.RecyclerView$ViewHolder)' in program class jp.wasabeef.recyclerview.animators.BaseItemAnimator 
Warning:org.brickred.socialauth.provider.OpenIdImpl: can't find referenced class org.openid4java.consumer.ConsumerManager 
Warning:org.brickred.socialauth.provider.OpenIdImpl: can't find referenced class org.openid4java.message.ax.FetchRequest 
Warning:org.brickred.socialauth.provider.OpenIdImpl: can't find referenced class org.openid4java.message.AuthRequest 
Warning:org.brickred.socialauth.provider.OpenIdImpl: can't find referenced class org.openid4java.OpenIDException 
Warning:org.brickred.socialauth.provider.OpenIdImpl: can't find referenced class org.openid4java.message.ParameterList 
Warning:org.brickred.socialauth.provider.OpenIdImpl: can't find referenced class org.openid4java.consumer.ConsumerManager 
Warning:org.brickred.socialauth.provider.OpenIdImpl: can't find referenced class org.openid4java.consumer.VerificationResult 
Warning:org.brickred.socialauth.provider.OpenIdImpl: can't find referenced class org.openid4java.discovery.Identifier 
Warning:org.brickred.socialauth.provider.OpenIdImpl: can't find referenced class org.openid4java.consumer.VerificationResult 
Warning:org.brickred.socialauth.provider.OpenIdImpl: can't find referenced class org.openid4java.message.AuthSuccess 
Warning:org.brickred.socialauth.provider.OpenIdImpl: can't find referenced class org.openid4java.message.ax.FetchResponse 
Warning:org.brickred.socialauth.provider.OpenIdImpl: can't find referenced class org.openid4java.consumer.ConsumerException 
Warning:org.brickred.socialauth.provider.OpenIdImpl: can't find referenced class org.openid4java.OpenIDException 
Warning:org.brickred.socialauth.provider.OpenIdImpl: can't find referenced class org.openid4java.message.ParameterList 
Warning:org.brickred.socialauth.provider.OpenIdImpl: can't find referenced class org.openid4java.consumer.VerificationResult 
Warning:org.brickred.socialauth.provider.OpenIdImpl: can't find referenced class org.openid4java.discovery.Identifier 
Warning:org.brickred.socialauth.provider.OpenIdImpl: can't find referenced class org.openid4java.message.AuthSuccess 
Warning:org.brickred.socialauth.provider.OpenIdImpl: can't find referenced class org.openid4java.message.ax.FetchResponse 
Warning:org.brickred.socialauth.provider.OpenIdImpl: can't find referenced class org.openid4java.message.ax.FetchRequest 
Warning:org.brickred.socialauth.provider.OpenIdImpl: can't find referenced class org.openid4java.message.AuthRequest 
Warning:org.brickred.socialauth.provider.OpenIdImpl: can't find referenced class org.openid4java.consumer.VerificationResult 
Warning:org.brickred.socialauth.provider.OpenIdImpl: can't find referenced class org.openid4java.discovery.Identifier 
Warning:org.brickred.socialauth.provider.OpenIdImpl: can't find referenced class org.openid4java.consumer.ConsumerManager 
Warning:org.brickred.socialauth.provider.OpenIdImpl: can't find referenced class org.openid4java.discovery.DiscoveryInformation 
Warning:org.brickred.socialauth.provider.OpenIdImpl: can't find referenced class org.openid4java.message.AuthRequest 
Warning:org.brickred.socialauth.provider.OpenIdImpl: can't find referenced class org.openid4java.message.ax.FetchRequest 
Warning:org.brickred.socialauth.provider.OpenIdImpl: can't find referenced class org.openid4java.OpenIDException 
Warning:org.brickred.socialauth.provider.OpenIdImpl: can't find referenced class org.openid4java.message.ax.FetchResponse 
Warning:org.brickred.socialauth.provider.OpenIdImpl: can't find referenced class org.openid4java.message.AuthSuccess 
Warning:org.brickred.socialauth.provider.OpenIdImpl: can't find referenced class org.openid4java.message.ParameterList 
Warning:org.brickred.socialauth.provider.OpenIdImpl: can't find referenced class org.openid4java.consumer.VerificationResult 
Warning:org.brickred.socialauth.provider.OpenIdImpl: can't find referenced class org.openid4java.discovery.Identifier 
Warning:org.brickred.socialauth.provider.OpenIdImpl: can't find referenced class org.openid4java.OpenIDException 
Warning:org.brickred.socialauth.util.SocialAuthUtil: can't find referenced class javax.servlet.http.HttpServletRequest 
Warning:org.joda.time.DateMidnight: can't find referenced class org.joda.convert.FromString 
Warning:org.joda.time.DateTime: can't find referenced class org.joda.convert.FromString 
Warning:org.joda.time.DateTimeZone: can't find referenced class org.joda.convert.FromString 
Warning:org.joda.time.DateTimeZone: can't find referenced class org.joda.convert.ToString 
Warning:org.joda.time.Days: can't find referenced class org.joda.convert.FromString 
Warning:org.joda.time.Days: can't find referenced class org.joda.convert.ToString 
Warning:org.joda.time.Duration: can't find referenced class org.joda.convert.FromString 
Warning:org.joda.time.Hours: can't find referenced class org.joda.convert.FromString 
Warning:org.joda.time.Hours: can't find referenced class org.joda.convert.ToString 
Warning:org.joda.time.Instant: can't find referenced class org.joda.convert.FromString 
Warning:org.joda.time.LocalDate: can't find referenced class org.joda.convert.FromString 
Warning:org.joda.time.LocalDate: can't find referenced class org.joda.convert.ToString 
Warning:org.joda.time.LocalDateTime: can't find referenced class org.joda.convert.FromString 
Warning:org.joda.time.LocalDateTime: can't find referenced class org.joda.convert.ToString 
Warning:org.joda.time.LocalTime: can't find referenced class org.joda.convert.FromString 
Warning:org.joda.time.LocalTime: can't find referenced class org.joda.convert.ToString 
Warning:org.joda.time.Minutes: can't find referenced class org.joda.convert.FromString 
Warning:org.joda.time.Minutes: can't find referenced class org.joda.convert.ToString 
Warning:org.joda.time.MonthDay: can't find referenced class org.joda.convert.FromString 
Warning:org.joda.time.MonthDay: can't find referenced class org.joda.convert.ToString 
Warning:org.joda.time.Months: can't find referenced class org.joda.convert.FromString 
Warning:org.joda.time.Months: can't find referenced class org.joda.convert.ToString 
Warning:org.joda.time.MutableDateTime: can't find referenced class org.joda.convert.FromString 
Warning:org.joda.time.MutablePeriod: can't find referenced class org.joda.convert.FromString 
Warning:org.joda.time.Period: can't find referenced class org.joda.convert.FromString 
Warning:org.joda.time.Seconds: can't find referenced class org.joda.convert.FromString 
Warning:org.joda.time.Seconds: can't find referenced class org.joda.convert.ToString 
Warning:org.joda.time.Weeks: can't find referenced class org.joda.convert.FromString 
Warning:org.joda.time.Weeks: can't find referenced class org.joda.convert.ToString 
Warning:org.joda.time.YearMonth: can't find referenced class org.joda.convert.FromString 
Warning:org.joda.time.YearMonth: can't find referenced class org.joda.convert.ToString 
Warning:org.joda.time.Years: can't find referenced class org.joda.convert.FromString 
Warning:org.joda.time.Years: can't find referenced class org.joda.convert.ToString 
Warning:org.joda.time.base.AbstractDateTime: can't find referenced class org.joda.convert.ToString 
Warning:org.joda.time.base.AbstractDuration: can't find referenced class org.joda.convert.ToString 
Warning:org.joda.time.base.AbstractInstant: can't find referenced class org.joda.convert.ToString 
Warning:org.joda.time.base.AbstractPeriod: can't find referenced class org.joda.convert.ToString 
Note: android.support.v4.media.IMediaBrowserServiceCallbacksAdapterApi21: can't find dynamically referenced class android.service.media.IMediaBrowserServiceCallbacks 
Note: android.support.v4.media.IMediaBrowserServiceCallbacksAdapterApi21: can't find dynamically referenced class android.content.pm.ParceledListSlice 
Note: android.support.v4.media.IMediaBrowserServiceCallbacksAdapterApi21$Stub: can't find dynamically referenced class android.service.media.IMediaBrowserServiceCallbacks$Stub 
Note: android.support.v4.media.ParceledListSliceAdapterApi21: can't find dynamically referenced class android.content.pm.ParceledListSlice 
Note: android.support.v4.text.ICUCompatApi23: can't find dynamically referenced class libcore.icu.ICU 
Note: android.support.v4.text.ICUCompatIcs: can't find dynamically referenced class libcore.icu.ICU 
Note: android.support.v7.widget.DrawableUtils: can't find dynamically referenced class android.graphics.Insets 
Note: com.google.android.gms.internal.zzlf: can't find dynamically referenced class com.facebook.Session 
Note: com.google.android.gms.internal.zzlf: can't find dynamically referenced class com.facebook.FacebookSdk 
Note: com.google.android.gms.internal.zzlf: can't find dynamically referenced class com.facebook.Session 
Note: com.google.android.gms.internal.zzlf: can't find dynamically referenced class com.facebook.CallbackManager$Factory 
Note: com.google.android.gms.internal.zzlf: can't find dynamically referenced class com.facebook.login.LoginManager 
Note: com.google.android.gms.internal.zzlf: can't find dynamically referenced class com.facebook.CallbackManager 
Note: com.google.android.gms.internal.zzlf: can't find dynamically referenced class com.facebook.FacebookCallback 
Note: com.google.android.gms.internal.zzlf: can't find dynamically referenced class com.facebook.FacebookSdk 
Note: com.google.android.gms.internal.zzlf: can't find dynamically referenced class com.facebook.login.LoginManager 
Note: com.google.android.gms.internal.zzlf: can't find dynamically referenced class com.facebook.Session 
Note: com.google.android.gms.internal.zzlf: can't find dynamically referenced class com.facebook.login.LoginManager 
Note: com.google.android.gms.internal.zzlf: can't find dynamically referenced class com.facebook.Session$OpenRequest 
Note: com.google.android.gms.internal.zzlf: can't find dynamically referenced class com.facebook.Session 
Note: com.google.android.gms.internal.zzlf: can't find dynamically referenced class com.facebook.Session$StatusCallback 
Note: com.google.android.gms.internal.zzlf: can't find dynamically referenced class com.facebook.FacebookCallback 
Note: com.google.android.gms.internal.zzlf: can't find dynamically referenced class com.facebook.Session 
Note: com.google.android.gms.internal.zzlf: can't find dynamically referenced class com.facebook.Session$StatusCallback 
Note: com.google.android.gms.internal.zzlf$1: can't find dynamically referenced class com.facebook.login.LoginResult 
Note: com.google.android.gms.internal.zzlf$1: can't find dynamically referenced class com.facebook.FacebookException 
Note: com.google.android.gms.internal.zzlf$1: can't find dynamically referenced class com.facebook.AccessToken 
Note: com.google.android.gms.internal.zzlf$2: can't find dynamically referenced class com.facebook.SessionState 
Note: com.google.android.gms.maps.internal.zzy: can't find dynamically referenced class com.google.android.gms.maps.internal.CreatorImpl 
Note: com.google.api.client.util.IOUtils: can't find dynamically referenced class java.nio.file.Files 
Note: com.google.api.client.util.IOUtils: can't find dynamically referenced class java.nio.file.Path 
Note: com.mikepenz.iconics.Iconics calls '(com.mikepenz.iconics.typeface.ITypeface)Class.forName(variable).newInstance()' 
Note: org.joda.time.DateTimeZone calls '(org.joda.time.tz.Provider)Class.forName(variable).newInstance()' 
Note: org.joda.time.DateTimeZone calls '(org.joda.time.tz.NameProvider)Class.forName(variable).newInstance()' 
Note: android.support.v4.app.NotificationCompatJellybean accesses a declared field 'icon' dynamically 
     Maybe this is program field 'android.support.design.R$attr { int icon; }' 
     Maybe this is program field 'android.support.design.R$id { int icon; }' 
     Maybe this is program field 'android.support.v4.app.NotificationCompat$Action { int icon; }' 
     Maybe this is program field 'android.support.v7.appcompat.R$attr { int icon; }' 
     Maybe this is program field 'android.support.v7.appcompat.R$id { int icon; }' 
     Maybe this is program field 'android.support.v7.mediarouter.R$attr { int icon; }' 
     Maybe this is program field 'android.support.v7.mediarouter.R$id { int icon; }' 
     Maybe this is program field 'com.kingfisherphuoc.quickactiondialog.R$attr { int icon; }' 
     Maybe this is program field 'com.kingfisherphuoc.quickactiondialog.R$id { int icon; }' 
     Maybe this is program field 'com.mikepenz.google_material_typeface_library.R$attr { int icon; }' 
     Maybe this is program field 'com.mikepenz.google_material_typeface_library.R$id { int icon; }' 
     Maybe this is program field 'com.mikepenz.iconics.core.R$attr { int icon; }' 
     Maybe this is program field 'com.mikepenz.iconics.core.R$id { int icon; }' 
     Maybe this is program field 'com.mikepenz.iconics.utils.StyleContainer { java.lang.String icon; }' 
     Maybe this is program field 'com.ruben.xradar.R$attr { int icon; }' 
     Maybe this is program field 'com.ruben.xradar.R$id { int icon; }' 
     Maybe this is program field 'ivb.com.materialstepper.R$attr { int icon; }' 
     Maybe this is program field 'ivb.com.materialstepper.R$id { int icon; }' 
     Maybe this is program field 'jp.wasabeef.recyclerview.R$attr { int icon; }' 
     Maybe this is program field 'jp.wasabeef.recyclerview.R$id { int icon; }' 
     Maybe this is program field 'org.brickred.socialauth.android.SocialAuthDialog { android.graphics.drawable.Drawable icon; }' 
     Maybe this is library field 'android.R$attr { int icon; }' 
     Maybe this is library field 'android.R$id { int icon; }' 
     Maybe this is library field 'android.app.LauncherActivity$ListItem { android.graphics.drawable.Drawable icon; }' 
     Maybe this is library field 'android.app.Notification { int icon; }' 
     Maybe this is library field 'android.app.Notification$Action { int icon; }' 
     Maybe this is library field 'android.appwidget.AppWidgetProviderInfo { int icon; }' 
     Maybe this is library field 'android.content.pm.PackageItemInfo { int icon; }' 
     Maybe this is library field 'android.content.pm.ResolveInfo { int icon; }' 
     Maybe this is library field 'android.inputmethodservice.Keyboard$Key { android.graphics.drawable.Drawable icon; }' 
     Maybe this is library field 'android.speech.tts.TextToSpeech$EngineInfo { int icon; }' 
Note: android.support.v4.app.NotificationCompatJellybean accesses a declared field 'title' dynamically 
     Maybe this is program field 'android.support.design.R$attr { int title; }' 
     Maybe this is program field 'android.support.design.R$id { int title; }' 
     Maybe this is program field 'android.support.v4.app.NotificationCompat$Action { java.lang.CharSequence title; }' 
     Maybe this is program field 'android.support.v7.appcompat.R$attr { int title; }' 
     Maybe this is program field 'android.support.v7.appcompat.R$id { int title; }' 
     Maybe this is program field 'android.support.v7.mediarouter.R$attr { int title; }' 
     Maybe this is program field 'android.support.v7.mediarouter.R$id { int title; }' 
     Maybe this is program field 'com.google.android.gms.games.internal.player.PlayerColumnNames { java.lang.String title; }' 
     Maybe this is program field 'com.google.android.gms.vision.barcode.Barcode$ContactInfo { java.lang.String title; }' 
     Maybe this is program field 'com.google.android.gms.vision.barcode.Barcode$UrlBookmark { java.lang.String title; }' 
     Maybe this is program field 'com.google.api.client.util.PemReader$Section { java.lang.String title; }' 
     Maybe this is program field 'com.kingfisherphuoc.quickactiondialog.R$attr { int title; }' 
     Maybe this is program field 'com.kingfisherphuoc.quickactiondialog.R$id { int title; }' 
     Maybe this is program field 'com.mikepenz.google_material_typeface_library.R$attr { int title; }' 
     Maybe this is program field 'com.mikepenz.google_material_typeface_library.R$id { int title; }' 
     Maybe this is program field 'com.mikepenz.iconics.core.R$attr { int title; }' 
     Maybe this is program field 'com.mikepenz.iconics.core.R$id { int title; }' 
     Maybe this is program field 'com.ruben.xradar.R$attr { int title; }' 
     Maybe this is program field 'com.ruben.xradar.R$id { int title; }' 
     Maybe this is program field 'ivb.com.materialstepper.R$attr { int title; }' 
     Maybe this is program field 'ivb.com.materialstepper.R$id { int title; }' 
     Maybe this is program field 'jp.wasabeef.recyclerview.R$attr { int title; }' 
     Maybe this is program field 'jp.wasabeef.recyclerview.R$id { int title; }' 
     Maybe this is program field 'org.brickred.socialauth.Photo { java.lang.String title; }' 
     Maybe this is program field 'org.brickred.socialauth.Position { java.lang.String title; }' 
     Maybe this is library field 'android.R$attr { int title; }' 
     Maybe this is library field 'android.R$id { int title; }' 
     Maybe this is library field 'android.app.Notification$Action { java.lang.CharSequence title; }' 
     Maybe this is library field 'android.preference.PreferenceActivity$Header { java.lang.CharSequence title; }' 
Note: android.support.v4.app.NotificationCompatJellybean accesses a declared field 'actionIntent' dynamically 
     Maybe this is program field 'android.support.v4.app.NotificationCompat$Action { android.app.PendingIntent actionIntent; }' 
     Maybe this is library field 'android.app.Notification$Action { android.app.PendingIntent actionIntent; }' 
Note: com.google.api.client.googleapis.auth.oauth2.DefaultCredentialProvider accesses a field 'environment' dynamically 

etc, etc... 

Tôi không biết tại sao, ví dụ, thêm -keep lớp jp.wasabeef * * {*;} không làm giảm các cảnh báo liên quan đến jp.wasabeef.

Có ai có thể giúp tôi không?

+0

Để tắt các cảnh báo, bạn có thể sử dụng '-dontwarn'. – Lachezar

+0

thử sử dụng này .... -keep org.brickred class. ** {*; } -dontwarn org.brickred. ** – shanraisshan

+0

@Lucho: Tôi không muốn làm im lặng các cảnh báo vì sau đó, Ứng dụng của tôi không hoạt động tốt. Tôi muốn giữ nó khỏi bị quấy rầy. Dù sao cũng cảm ơn bạn. –

Trả lời

6

bạn cần xử lý từng thư viện bạn đã nhập (trong app.gradle) bằng cách sử dụng quy tắc bảo vệ.

proguard-rules.pro

#For JodaTime 
#https://stackoverflow.com/questions/14025487/proguard-didnt-compile-with-joda-time-used-in-windows 
-dontwarn org.joda.convert.FromString 
-dontwarn org.joda.convert.ToString 

# support-v4 
#https://stackoverflow.com/questions/18978706/obfuscate-android-support-v7-widget-gridlayout-issue 
-dontwarn android.support.v4.** 
-keep class android.support.v4.app.** { *; } 
-keep interface android.support.v4.app.** { *; } 
-keep class android.support.v4.** { *; } 


# support-v7 
-dontwarn android.support.v7.** 
-keep class android.support.v7.internal.** { *; } 
-keep interface android.support.v7.internal.** { *; } 
-keep class android.support.v7.** { *; } 

# support design 
#@link http://stackoverflow.com/a/31028536 
-dontwarn android.support.design.** 
-keep class android.support.design.** { *; } 
-keep interface android.support.design.** { *; } 
-keep public class android.support.design.R$* { *; } 

#error : Note: the configuration refers to the unknown class 'com.google.vending.licensing.ILicensingService' 
#solution : @link http://stackoverflow.com/a/14463528 
-dontnote com.google.vending.licensing.ILicensingService 
-dontnote **ILicensingService 

#social auth 
-keep class org.brickred.** { ; } 
-dontwarn org.brickred.* 

#similarly handle other libraries you added 
+0

Cảm ơn @Shanrais. Câu trả lời của bạn rõ ràng và đã giúp tôi. –

1

Bạn cần loại trừ các mã thư viện được thêm bên ngoài này khỏi bị làm xáo trộn. Vì vậy, bạn cần phải tìm tương thích -dontwarn.

Đối Joda add:. ** - dontwarn org.joda.convert ****

nếu bạn đang sử dụng bất kỳ POJO sau đó bạn cũng cần phải loại trừ chúng sử dụng:

-keepclassmembers class yourpackage. {< trường>; } **

+0

Xin chào @Chintan. dontwarn không loại trừ, nhưng tránh cảnh báo bạn về một vấn đề. Tôi đã đặt tất cả dontwarn tôi cần thiết và bây giờ các ứng dụng được tạo ra nhưng nó không hoạt động. Tôi cần phải loại trừ các thư viện nhưng tôi không biết tùy chọn bảo trì dường như không hoạt động. –

+0

thử "-keep" cho các lớp bạn cần. và một lần nữa nếu bạn đang sử dụng POJO thì bạn không được giữ cho chúng bị làm xáo trộn. Dưới đây là một số chi tiết dữ liệu -keepattributes Chữ ký # Để sử dụng GSON @Expose chú thích -keepattributes * Chú * # lớp cụ thể Gson lớp -keep sun.misc.Unsafe {*; } # Lớp ứng dụng sẽ được tuần tự hóa/deserialized trên Gson -keep lớp com.google.gson.examples.android.model.** {*; } để sửa lỗi protobuf thử: -keep class com.google.protobuf. ** {*; } –

Các vấn đề liên quan