使用Admob SDK,我的apk尺寸 680KB 。使用google play services SDK
替换Admob SDK时, 1.3MB 。(使用 Proguard )
由Android app size increased after adding admob ads using google-play-services_lib中的 @daniel 建议(第二步)
2,如果您只使用广告,请从res文件夹中删除未使用的资源。
google-play-services_lib \ res文件夹中的许多资源都没用 你,你可以删除它。比如值-af,值-am,....你是什么 需要保持颜色,可绘制,可绘制-hdpi 和值 文件夹中。
我从 google-play-services_lib 中移除了资源,例如values-af, values-am, ....
并保持颜色,drawable,drawable-hdpi 和值 folder.Then我的apk大小 890KB
我还没有在制作中使用它,而且我不知道这是否可能违反 Google Play服务TOS 。但这是我发现在添加Google Play服务后缩小应用尺寸的唯一方法。
我只想使用 Admob广告服务,所以以这种方式编辑google play services SDK
以减少apk尺寸是否可以,我的解决方案是否会违反Google Play服务TOS < /强>
我害怕这个Admob Account Disabled After Implementation : Publisher Guide
9不要修改Adunit
您对广告的修改有限,请确保您 没有改变Admob的原生功能(Google Play商店服务) SDK。发布商不能共享Google SDK代码或库的来源。
答案 0 :(得分:2)
这是你的应用程序。您可以选择要包含的内容。
据我所知,无需发运整个Google Play服务库。既然你可以使用Proguard来减少它,那真的不可能。
答案 1 :(得分:2)
您可以使用android studio中的proguard从Google Play服务库中删除不必要的包。
我的应用程序也只有大约2 Mb。当我为AdMob集成包含Google Play服务库时,它变成了6 Mb。所以我做了以下步骤来保持大小。
在您的项目模块文件夹中添加名为&#39; proguard.txt&#39;的文件。并使用以下代码
# Keep all public mobile ads classes.
# Keep all public mobile ads classes.
-keep public class com.google.android.gms.ads.** {
*;
}
# For mediation
-keepattributes *Annotation*
-keep public class com.google.ads.** {
*;
}
如果你想在构建模式中,也可以在\ tools \ proguard中复制它。
按如下方式配置build.gradle
buildTypes {
debug {
runProguard true
proguardFiles getDefaultProguardFile('proguard.txt'), 'proguard-rules.pro'
}
release{
runProguard true
proguardFiles getDefaultProguardFile('proguard.txt'), 'proguard-rules.pro'
}
}
现在将gradle与具有同步图标的项目同步 构建并运行项目以查看更改