Android Proguard不更改包名称

Android Proguard不更改包名称,android,android-studio,proguard,obfuscation,android-proguard,Android,Android Studio,Proguard,Obfuscation,Android Proguard,我遇到了一个问题,因为proguard没有更改我的包名和类名,我正在使用不同的库GSon、改装、支持v-4、v7、okhttp、glide、facebook、fcm、自定义选项卡、crashlytics、MULTIDEX、jsonwebtoken jjwt和其他,我在build.gradle文件中启用了proguard: buildscript { repositories { maven { url 'https://maven.fabric.io/public' }

我遇到了一个问题,因为proguard没有更改我的包名和类名,我正在使用不同的库GSon、改装、支持v-4、v7、okhttp、glide、facebook、fcm、自定义选项卡、crashlytics、MULTIDEX、jsonwebtoken jjwt和其他,我在build.gradle文件中启用了proguard:

buildscript {
    repositories {
        maven { url 'https://maven.fabric.io/public' }
        maven { url "https://artifactory.9elements.com/artifactory/imgly" }
    }

    dependencies {
        classpath 'io.fabric.tools:gradle:1.+'

//        classpath 'com.android.tools.build:gradle:2.3.1'
//        classpath 'com.mutualmobile.gradle.plugins:dexinfo:0.1.2'
    }
}
apply plugin: 'com.android.application'
apply plugin: 'io.fabric'


//apply plugin: 'com.mutualmobile.gradle.plugins.dexinfo'
android {
//    compileSdkVersion 25
//    buildToolsVersion "25.0.2"
    signingConfigs {
        release {
            keyAlias 'a'
            keyPassword 'a'
            storeFile file('J:/Android Studio Projects/a-android/a_Keystore.jks')
            storePassword 'a'
            v2SigningEnabled false
        }
    }
    compileSdkVersion rootProject.compileSdkVersion
    buildToolsVersion rootProject.buildToolsVersion
    defaultConfig {
        applicationId "com.test.r"

        minSdkVersion rootProject.minSdkVersion
        targetSdkVersion rootProject.targetSdkVersion
//        minSdkVersion 16
//        targetSdkVersion 25
        versionCode 1
        versionName "1.0"
        testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"

        renderscriptTargetApi 23
        renderscriptSupportModeEnabled true
        multiDexEnabled true
        //to remove conflicts of compress library and editor sdk
        ndk {
            abiFilters "armeabi", "armeabi-v7a", "x86", "mips"
        }

    }
    buildTypes {
        buildTypes.each {
            it.resValue 'string', 'facebook_app_id', Facebook_APP_ID
        }
        release {
            minifyEnabled true
            shrinkResources true
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
            debuggable false
            jniDebuggable false
            signingConfig signingConfigs.release
            renderscriptDebuggable false
        }
    }
    dexOptions {
        incremental true
        javaMaxHeapSize "2048M"
        jumboMode = true

    }
    packagingOptions {
        exclude 'META-INF/DEPENDENCIES'
        exclude 'META-INF/NOTICE'
        exclude 'META-INF/LICENSE'
        exclude 'META-INF/LICENSE.txt'
        exclude 'META-INF/NOTICE.txt'
        exclude 'META-INF/ASL2.0'
    }


    lintOptions{
        disable 'MissingTranslation'
    }
}
repositories {
    mavenCentral()
    maven { url 'https://maven.fabric.io/public' }
}
dependencies {
    compile fileTree(include: ['*.jar'], dir: 'libs')
    androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', {
        exclude group: 'com.android.support', module: 'support-annotations'
    })
    compile project(':sdp-android')
    compile files('libs/universal-image-loader-1.9.2-SNAPSHOT-with-sources.jar')
    compile project(':customTab')
    compile project(':gallery')
    compile project(':camera')
    compile project(':cameraVideo')
    compile 'com.android.support:appcompat-v7:25.1.1'
    compile 'com.android.support:design:25.1.1'
    compile 'com.google.code.gson:gson:2.6.2'
    compile 'com.squareup.retrofit2:retrofit:2.1.0'
    compile 'com.squareup.retrofit2:converter-gson:2.1.0'
    compile 'com.squareup.okhttp:okhttp:2.7.2'
    //    compile 'com.github.bumptech.glide:glide:3.5.2'
    compile 'com.android.support:support-v4:25.1.1'
    compile 'com.github.bumptech.glide:glide:3.7.0'
    testCompile 'junit:junit:4.12'
    compile 'com.daasuu:BubbleLayout:1.1.1'
    compile 'de.hdodenhof:circleimageview:2.1.0'
    compile 'com.facebook.android:facebook-android-sdk:4.+'
    compile 'com.google.firebase:firebase-messaging:9.4.0'
    compile 'com.google.android.gms:play-services-maps:9.4.0'
    compile 'com.google.android.gms:play-services-location:9.4.0'
    compile 'io.jsonwebtoken:jjwt:0.7.0'
    //    compile 'com.uniquestudio:parsingplayer:2.0.4'

    // compile 'com.google.android.exoplayer:exoplayer:r2.3.0'

    //    compile 'com.devbrackets.android:exomedia:3.1.1'
    compile 'com.android.support:multidex:1.0.1'
    compile project(':exoMediaPlayer')
    compile('com.crashlytics.sdk.android:crashlytics:2.6.7@aar') {
        transitive = true;
    }
    compile project(':videocompress')
    compile project(':videoPlayer')
    compile project(':videoPlayerLib')
    compile project(':chromeTab')
    compile 'com.android.support:customtabs:25.1.1'
    //    compile 'ly.img.android:photo-editor-sdk:3.1.0'
    compile 'ly.img.android:photo-editor-sdk:4.0.1'
    compile 'com.danikula:videocache:2.7.0'
    compile 'commons-io:commons-io:2.4'
}

apply plugin: 'com.google.gms.google-services'
这是Proguard文件:

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

-dontwarn android.support.v4.**
-keep class android.support.v4.** { *; }
-keep interface android.support.v4.** { *; }



##---------------Begin: proguard configuration for Gson  ----------
# Gson uses generic type information stored in a class file when working with fields. Proguard
# removes such information by default, so configure it to keep all of it.
-keepattributes Signature

# For using GSON @Expose annotation
-keepattributes *Annotation*

# Gson specific classes
-keep class sun.misc.Unsafe { *; }
#-keep class com.google.gson.stream.** { *; }

# Application classes that will be serialized/deserialized over Gson
-keep class com.google.gson.examples.android.model.** { *; }

# Prevent proguard from stripping interface information from TypeAdapterFactory,
# JsonSerializer, JsonDeserializer instances (so they can be used in @JsonAdapter)
-keep class * implements com.google.gson.TypeAdapterFactory
-keep class * implements com.google.gson.JsonSerializer
-keep class * implements com.google.gson.JsonDeserializer

##---------------End: proguard configuration for Gson  ----------



-dontwarn retrofit2.**
-keep class retrofit2.** { *; }
-keepattributes Signature
-keepattributes Exceptions

-keepclasseswithmembers class retrofit2.* {
    @retrofit2.http.* <methods>;
}






# OkHttp
-keepattributes Signature
-keepattributes *Annotation*
-keep class com.squareup.okhttp.** { *; }
-keep interface com.squareup.okhttp.** { *; }
-dontwarn com.squareup.okhttp.**
-dontwarn okio.**

# for Glide
-keep public class * implements com.bumptech.glide.module.GlideModule
-keep public class * extends com.bumptech.glide.AppGlideModule
-keep public enum com.bumptech.glide.load.resource.bitmap.ImageHeaderParser$** {
  **[] $VALUES;
  public *;
}

## Google Play Services 4.3.23 specific rules ##
## https://developer.android.com/google/play-services/setup.html#Proguard ##

-keep class * extends java.util.ListResourceBundle {
    protected Object[][] getContents();
}

-keep public class com.google.android.gms.common.internal.safeparcel.SafeParcelable {
    public static final *** NULL;
}

-keepnames @com.google.android.gms.common.annotation.KeepName class *
-keepclassmembernames class * {
    @com.google.android.gms.common.annotation.KeepName *;
}

-keepnames class * implements android.os.Parcelable {
    public static final ** CREATOR;
}


# end



# Custom Tabs
-dontwarn android.support.customtabs.**
-keep class android.support.customtabs.** { *; }
-keep interface android.support.customtabs.** { *; }


# Render Script
-keep class android.support.v8.renderscript.** { *; }

# Crashlytics
-keep class com.crashlytics.** { *; }
-dontwarn com.crashlytics.**

-keepattributes SourceFile,LineNumberTable
-keepattributes *Annotation*


#
-keep class io.github.memfis19.** { *; }
-dontwarn io.github.memfis19.**



-dontwarn com.googlecode.mp4parser.**

-dontwarn io.jsonwebtoken.impl.**
-dontwarn io.jsonwebtoken.**
-keep class io.jsonwebtoken.** { *; }




-dontwarn com.fasterxml.**
-keep class com.fasterxml.** { *; }

-keepattributes *Annotation*,EnclosingMethod,Signature
-keepnames class com.fasterxml.jackson.** { *; }
 -dontwarn com.fasterxml.jackson.databind.**
 -keepclassmembers public final enum com.fasterxml.jackson.annotate.JsonAutoDetect$Visibility {
 public static final com.fasterxml.jackson.annotate.JsonAutoDetect$Visibility *; }


-keep public class * extends android.app.Activity
-keep public class * extends android.support.v7.app.AppCompatActivity
-keep public class * extends android.app.Application
-keep public class * extends android.support.multidex.MultiDexApplication

-keep class android.support.multidex.**{*;}
-dontwarn android.support.v7**
-keep类android.support.v7.*{*;}
-保留android.support.v7.*{*;}
-dontwarn android.support.v4**
-keep类android.support.v4.*{*;}
-保留android.support.v4.*{*;}
##---------------开始:Gson的proguard配置----------
#Gson在处理字段时使用存储在类文件中的泛型类型信息。前卫
#默认情况下删除此类信息,因此将其配置为保留所有信息。
-保留署名
#用于使用GSON@Expose注释
-keepattributes*注释*
#Gson特定类
-保持类sun.misc.Unsafe{*;}
#-保持类com.google.gson.stream.*{*;}
#将通过Gson进行序列化/反序列化的应用程序类
-保持类com.google.gson.examples.android.model.*{*;}
#防止proguard从TypeAdapterFactory中剥离接口信息,
#JsonSerializer、JsonDeserializer实例(因此可以在@JsonAdapter中使用)
-keep类*实现com.google.gson.TypeAdapterFactory
-keep class*实现com.google.gson.JsonSerializer
-keep类*实现com.google.gson.JsonDeserializer
##---------------结束:Gson的proguard配置----------
-dontwarn 2**
-保持类2.*{*;}
-保留署名
-保留特例
-KeepClassswithMembers 2级改装。*{
@2.http.*;
}
#OkHttp
-保留署名
-keepattributes*注释*
-保持类com.squareup.okhttp.*{*;}
-保持接口com.squareup.okhttp.*{*;}
-dontwarn com.squareup.okhttp**
-唐特沃恩·奥基奥**
#滑翔
-keep public类*实现com.bumptech.glide.module.GlideModule
-保持公共类*扩展com.bumptech.glide.AppGlideModule
-保持公共枚举com.bumptech.glide.load.resource.bitmap.ImageHeaderParser$**{
**[]美元价值;
公众*;
}
##Google Play Services 4.3.23特定规则##
## https://developer.android.com/google/play-services/setup.html#Proguard ##
-keep class*扩展了java.util.ListResourceBundle{
受保护对象[][]getContents();
}
-保持公共类com.google.android.gms.common.internal.safeparcel.SafeParcelable{
公共静态最终***空;
}
-keepnames@com.google.android.gms.common.annotation.KeepName类*
-keepclassmembernames类*{
@com.google.android.gms.common.annotation.KeepName*;
}
-keepnames类*实现android.os.Parcelable{
公共静态最终**创建者;
}
#结束
#自定义选项卡
-dontwarn android.support.customtabs**
-keep class android.support.customtabs.*{*;}
-保留android.support.customtabs.*{*;}
#渲染脚本
-保留类android.support.v8.renderscript.*{*;}
#粗制滥造
-保持类com.crashlytics.*{*;}
-dontwarn com.crashlytics**
-keepattributes源文件,LineNumberTable
-keepattributes*注释*
#
-保持类io.github.memfis19.*{*;}
-dontwarn io.github.memfis19**
-dontwarn com.googlecode.mp4parser**
-dontwarn io.jsonwebtoken.impl**
-dontwarn io.jsonwebtoken**
-保持类io.jsonwebtoken.*{*;}
-dontwarn com.fasterxml**
-保持类com.fasterxml.*{*;}
-keepattributes*注释*、封闭方法、签名
-keepnames类com.fasterxml.jackson.*{*;}
-dontwarn com.fasterxml.jackson.databind**
-keepclassmembers public final enum com.fasterxml.jackson.annotate.jsonautodect$Visibility{
public static final com.fasterxml.jackson.annotate.jsonautodect$Visibility*;}
-keep public class*扩展android.app.Activity
-keep public class*扩展了android.support.v7.app.AppActivity
-keep public class*扩展android.app.Application
-keep public class*扩展了android.support.multidex.multidex应用程序
-keep类android.support.multidex.*{*;}
但我的版本apk不重命名任何模型类、适配器或任何仅重命名类名的成员。就像我的整个代码是用户可见的一样。 谁能想到我做错了

以下是截图:
提前感谢。

Proguard还没有重命名软件包的标准 您可以使用手动创建的Proguard映射文件 喜欢 使用

 -overloadaggressively
-useuniqueclassmembernames


-dontwarn org.apache.http.**



#Crashlytics
-keepattributes *Annotation*
-keepattributes SourceFile,LineNumberTable

#-keep class com.crashlytics.** { *; }
#-dontwarn com.crashlytics.**

#end crashlytics



-dontpreverify
-repackageclasses 'android_spt'
-allowaccessmodification
-optimizations !code/simplification/arithmetic,!field
-keepattributes *Annotation*

-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.view.View {
      public <init>(android.content.Context);
      public <init>(android.content.Context, android.util.AttributeSet);
      public <init>(android.content.Context, android.util.AttributeSet, int);
      public void set*(...);
}

-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);
}

-keepclassmembers class * implements android.os.Parcelable {
    static ** CREATOR;
}

-keepclassmembers class **.R$* {
    public static <fields>;
}

-keepclassmembers class * {
    @android.webkit.JavascriptInterface <methods>;
}
-重载
-使用UniqueClassMemberName
-dontwarn org.apache.http**
#粗制滥造
-keepattributes*注释*
-keepattributes源文件,LineNumberTable
#-保持类com.crashlytics.*{*;}
#-dontwarn com.crashlytics**
#末端碰撞
-不要翻转
-重新打包类“android\u spt”
-允许访问修改
-优化!代码/简化/算术,!领域
-keepattributes*注释*
-keep public class*扩展android.app.Activity
-keep public class*扩展android.app.Application
-keep public class*扩展了android.app.Service
-keep public class*扩展了android.content.BroadcastReceiver
-keep public class*扩展了android.content.ContentProvider
-keep public class*扩展了android.view.view{
public(android.content.Context);
public(android.content.Context、android.util.AttributeSet);
public(android.content.Context,android.util.AttributeSet,int);
公共无效集*(…);
}
-keepclassswithmembers类*{
public(android.content.Context、android.util.AttributeSet);
}
-keepclassswithmembers类*{
public(android.content.Context,android.util.AttributeSet,int);
}
-keepclassmembers类*扩展了android.content.Context{
public void*(android.view.view);
public void*(android.view.MenuItem);
}
-keepclassmembers类*实现android.os.Parcelable{
静态**创建者;
}
-keepclassmembers类**.R$*{
公共静态;
}
-keepclassmembers类*{
@android.webkit.JavascriptInterface;
}