admob广告后如何减小应用程序大小?
Posted
技术标签:
【中文标题】admob广告后如何减小应用程序大小?【英文标题】:how to reduce app size increased after admob ads? 【发布时间】:2014-09-18 15:27:03 【问题描述】:在我的项目中添加 google-play-services 之前,它的大小只有 900kb,而在添加播放服务库之后,它现在是 4.01MB。它是可怕的。对于 3MB 的 900kb 应用广告来说太多了。
尽快帮助我。我的应用程序现在完成了。
我尝试阅读有关 proguard 的内容,但无法理解。有人请给我一步一步的教程来减少应用程序的大小。
【问题讨论】:
【参考方案1】:您无需编辑 google-play-services.jar 文件。使用 proguard 只保留需要的类文件。
在您的模块目录(例如 app/)中创建 proguard.txt 文件,并在该文件中写入以下行:
-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 文件并构建和运行您的应用。现在看看您的应用程序大小的差异。
【讨论】:
【参考方案2】:如果您不是在 Google Play 之外分发您的应用,您可以查看精简版的 Google Mobile Ads SDK
https://developers.google.com/admob/android/lite-sdk
【讨论】:
【参考方案3】:看看这个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')
在manifest中你需要指定版本
<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>
【讨论】:
【参考方案4】:从 6.5 版开始,您可以有选择地将 Google Play 服务 API 编译到您的应用中。
我测试过。真的行。我们必须这样做以减小 APK 大小。 :)
你使用 Android Studio 吗?我不知道如何在 Eclipse 上执行此操作。
检查这个document。
【讨论】:
以上是关于admob广告后如何减小应用程序大小?的主要内容,如果未能解决你的问题,请参考以下文章