【问题标题】:How to find Google Play Services version from the constants?如何从常量中找到 Google Play 服务版本?
【发布时间】:2016-09-10 00:32:05
【问题描述】:

我刚收到一封来自 Google 的电子邮件,说他们正在弃用 AdMob 6.4.1 版,我需要升级库才能在应用程序中使用广告:

...we are deprecating versions 6.4.1 and lower of the Android Google Mobile Ads SDK on September 15th, 2016.
In order to ensure that your ads continue to serve after September 15th, 2016, please upgrade to Google Mobile Ads SDK 7.0.0 or higher...

问题是我丢失了整个项目(源代码)和证书,我想知道我的 AdMob 的版本。这是我从逆向工程中得到的:

public static final int GOOGLE_PLAY_SERVICES_VERSION_CODE = 6587000;

这是常量值:android:value="@integer/google_play_services_version"

这是 Google Play 服务版本还是 Admob 版本? 6587000 代表什么版本(6.5.8)?与 Google Play 服务发行说明相比,我在 Internet 上找不到任何内容。

【问题讨论】:

    标签: android admob


    【解决方案1】:

    Admob 独立 SDK 的最新版本是 6.4.1。之后,所有新版本都附带 Play Services。我找不到它是由哪个版本引入的,但据我所知,它是与 Play Services 8 一起使用的。

    但是 android:value="@integer/google_play_services_version" 是 Play Services 13 自带的。所以如果你的应用有 integer/google_play_services_version 那么它使用的是新版本的 Admob,所以你不会对折旧有任何问题。

    还请考虑一下 Google 的这个旧注释; “2014 年 8 月 1 日,Play 商店将停止接受使用独立 Google AdMob SDK 的新应用或更新应用。SDK 不使用广告 ID,因此在该日期将不符合 Google Play 广告政策。”

    6.4.1 版没有广告 ID。因此,如果您在 2014 年 8 月 1 日之后更新了您的应用,那么您的应用将拥有更新版本的 Admob。

    【讨论】:

    • 两个令人困惑的android发行说明(ios版本正确)developers.google.com/mobile-ads-sdk/rel-notesgoogleadsdeveloper.blogspot.com/2013/04/…
    • @ParaSara ,是的,太混乱了,Play Services 版本代码和名称不同,最新版本名称是 9.2.0 代码是 31。我通常使用代码来识别 Play Services 更新,因为这是我从 Android SDK Manager 下载时所知道的。他们应该在这个页面上包含版本代码developers.google.com/mobile-ads-sdk/rel-notes
    • 我联系了他们。播放服务版本无法决定广告 sdk 版本
    • 是的,我认为你很安全,我联系了他们,他们仍然感到困惑:(
    • Admob 集成到 Play Services 后,旧(独立)版本的 Admob 和新的 Play Services 都不容易使用。因为它给出了冲突错误。所以我猜,只有极少数程序员同时使用旧的 Admob 和 Play 服务,他们知道自己在做什么。现在,您可以轻松地从 Play Services 中删除 Admob(或任何其他包),但使用 Eclipse ADT 并不容易。
    【解决方案2】:

    是的,例如播放服务版本 4.1.00 的代码为 4100000,版本 6.5.87 的代码为 6587000。但您无法决定广告 sdk 版本(尤其是对于 android)。在邮件中,他们提到了广告 sdk 版本。您可以查看 android herehere 的一些令人困惑的版本历史

    如果您的应用是在 2014 年 8 月 1 日之后发布的。您不必担心这封电子邮件。

    google play 服务从 sdk 4.0 开始引入release_notes

    请注意,如果您的应用具有 integer/google_play_services_version,那么这并不意味着您正在使用新版本的 Admob(在 6.4.1 之后在广告中引入 gps 模块)。

    【讨论】:

    • 如果我的应用在 2014 年 6 月 1 日发布并且仍在展示广告,该怎么办。你知道这是否意味着我没有什么可担心的吗?
    • 如果您在您的应用中使用旧的广告 SDK(6.4.1 及更低版本),他们可能会在 9 月之后停止广告。
    【解决方案3】:

    来自 Admob 的电子邮件让我非常困惑。

    这是我在 Admob 开发者论坛上找到的 Admob 团队的回复。希望这有助于进一步澄清

    ****"嗨若苏埃, 在与团队其他成员交谈后,您得到的关于 SDK 需要高于 v6.4.1 的说明指的是 2014 年 2 月弃用的旧版独立移动广告 SDK,它有自己的版本控制系统。这种弃用根本不涉及使用 Google Play 服务。这意味着即使您使用的是 2013 年 10 月发布的 Google Play 服务 4.0,您仍然可以。 武洲 移动广告 SDK 团队"****

    最后一行很清楚,如果您的 google_play_services_version > 4 ,则无需立即更新,但最好升级到最新版本的播放服务库

    2016 年 9 月 9 日更新了来自 Admob 的链接以进一步澄清-https://firebase.google.com/docs/admob/android-legacy-release-notes

    【讨论】:

      猜你喜欢
      • 2016-09-29
      • 2013-09-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-12-25
      相关资源
      最近更新 更多