A dependência da biblioteca aumenta o tamanho do APK?

Eu tenho várias bibliotecas no meu projeto, como

dependencies {
    compile files('libs/universalloaderlibrary.jar')
    compile fileTree(dir: 'libs', include: ['*.jar'])
    compile 'com.android.support:appcompat-v7:22.2.1'
    compile 'com.android.support:design:22.2.1'
    compile 'com.android.support:recyclerview-v7:22.2.1'
    compile 'com.android.support:cardview-v7:22.2.1'
    compile 'de.hdodenhof:circleimageview:1.3.0'
    compile 'com.jakewharton:butterknife:7.0.1'
    //noinspection GradleCompatible
    compile 'com.google.android.gms:play-services-gcm:7.3.0'
    compile 'com.github.castorflex.smoothprogressbar:library:1.1.0'
    compile 'com.google.code.gson:gson:2.2.4'
    compile 'com.loopj.android:android-async-http:1.4.8'
    compile 'com.android.support:multidex:1.0.1'
}

e outras bibliotecas. Eles aumentam muito o tamanho do aplicativo. Eu tenho mais de 25 bibliotecas no meu projeto. No momento, o tamanho do APK é 11 MB e eu tenho que adicionar mais funcionalidades. Qual seria a razão?

Eu tenho algumas perguntas sobre isso.

O que leva mais memória?

Módulo adicionado no projeto.Arquivo adicionado como arquivo JAR.Dependência Gradle nós adicionamos comocompile 'com.android.support:appcompat-v7:22.2.1'.

Eu li isso ativandoProguard , configuraçãominifyEnabled true pode reduzir o tamanho do aplicativo.

buildTypes {
        release {
            minifyEnabled true
            shrinkResources true
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
}

Como eles funcionam por trás da imagem?

Devemos evitar o uso de várias bibliotecas no projeto?

Muitas perguntas estão em minha mente para reduzir o tamanho do APK. Qualquer tipo de sugestão e ajuda seria apreciável. Desde já, obrigado.

questionAnswers(2)

yourAnswerToTheQuestion