使用旧版Google Play服务进行编译是否安全?

时间:2015-04-06 20:26:31

标签: android android-studio google-play-services

我喜欢尽可能保持图书馆的最新状态,但是在一年前我开始的项目中,我在Eclipse上使用Google Play Service for Froyo。我最近开始使用Android Studio,当然现在有很多破损的代码,因为我最初使用的是最新版本的Google Play服务。

为了解决这个问题,我基本上为Froyo Eclipse项目导入了旧的Google Play服务,并将其作为我引用的Android Studio中的模块。我不一定需要图书馆的新功能,它是有效的。这是我的问题:这样做是否安全?我不想让它在更新的设备上咬我。

1 个答案:

答案 0 :(得分:2)

所有较新版本的Google Play服务(该应用)都向后兼容所有以前版本的SDK,这意味着即使Google Play服务在每台设备上都得到更新,使用旧SDK编译的代码也会继续有效。

请注意,“支持Froyo的Google Play服务”实际上只是支持Froyo的最后一个版本的Google Play服务 - 3.2.65Google Play services 4.0取消了对Froyo的支持)。如果您使用的是Gradle,您仍然可以在build.gradle文件中引用它,而无需将其作为模块导入:

dependencies {
  compile 'com.google.android.gms:play-services:3.2.65'

}

您可以查看{android-sdk}/extras/google/m2repository/com/google/android/gms/play-services目录,通过Gradle查看完整的Google Play服务版本列表,该目录目前列出了以下版本:3.1.363.1.59,{{1 }},3.2.253.2.654.0.304.1.324.2.424.3.234.4.525.0.896.1.116.1.716.5.87

您应该强烈考虑逐步解决每个版本修复问题,因为每个版本都有相当多的修复程序。特别是,Google Play services 6.5提供selectively include APIs的功能,因此您的应用程序仅包含您实际使用的API。