Android Admob:从Google Play服务SDK中删除资源是否有任何违规行为

时间:2014-08-07 08:48:30

标签: android admob google-play-services

使用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代码或库的来源。

2 个答案:

答案 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与具有同步图标的项目同步 构建并运行项目以查看更改