在adob广告之后如何减少应用尺寸?

时间:2014-07-27 06:06:21

标签: android admob google-play-services proguard

在将google-play-services添加到我的项目之前,它的大小只是 900kb ,在添加了游戏服务的lib之后,现在 4.01MB 。它是可怕的。对于300k的3MB应用广告太多了。

尽快帮助我。我的应用程序现已完成。

我试过阅读 proguard 但无法理解。有人请给我一步一步的教程,以减少应用程序的大小。

4 个答案:

答案 0 :(得分:2)

您无需编辑google-play-services.jar文件。使用proguard只保留所需的类文件。

在模块目录中创建proguard.txt文件(例如app /)并在该文件中写下以下行:

-keep public class com.google.android.gms.ads.** {
    public *;
}

-keep public class com.google.ads.** {
    public *;
}

-dontwarn com.google.android.gms.**

现在在模块的build.gradle文件中写下以下行(例如app / build.gradle):

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

同步您的gradle文件和构建&运行你的应用程序现在看看你的应用程序的大小差异。

答案 1 :(得分:1)

如果您不是在 Google Play 之外分发您的应用,您可以查看精简版的 Google 移动广告 SDK

https://developers.google.com/admob/android/lite-sdk

答案 2 :(得分:0)

看看这个suggestion

Google Play服务库位于

SDK_PATH\extras\google\google_play_services\libproject\google-play-services_lib\libs

编辑jar后,将其放入应用程序的libs文件夹中。

在build.gradle中添加依赖项

dependencies {
    compile files('libs/google-play-services.jar')
}

在清单中,您需要指定版本

<meta-data android:name="com.google.android.gms.version" 
      android:value="#####" />

版本号可以在上面指出的文件夹中的清单文件中找到

示例:

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
     android:versionCode="5089000" 
     android:versionName="5.0.89-000" package="com.google.android.gms">
    <uses-sdk android:minSdkVersion="9"/>
    <application/>
</manifest>

答案 3 :(得分:0)

  

从版本6.5开始,您可以选择性地将Google Play服务API编译到您的应用中。

我测试了。真的行。我们必须这样做以减少APK大小。 :)

您是否使用Android Studio?我不知道如何在Eclipse上执行此操作。

选中document