2015-04-06 44 views
2

我喜歡儘可能保持圖書館的最新狀態,但是在一年前我開始使用Eclipse的項目中,並且正在使用Google Play Service for Froyo。我最近開始使用Android Studio,當然現在有很多破損的代碼,因爲我最初使用的是最新版本的Google Play服務。使用舊版Google Play服務編譯安全嗎?

爲了解決這個問題,我基本上爲Froyo Eclipse項目導入了舊的Google Play服務,並將其作爲Android Studio中的一個模塊引用。我不一定需要libarary的新功能,它正在工作。這是我的問題:這樣做是否安全?我不希望這會讓我在新設備上受到傷害。

回答

3

所有新版本的Google Play服務(應用)都向後兼容SDK的所有先前版本,這意味着即使在每臺設備上更新Google Play服務後,使用舊版SDK編譯的代碼也將繼續有效。

請注意,'Google Play Services for Froyo'實際上是Google Play服務的最後一個版本,它支持Froyo - 3.2.65(它是Google Play services 4.0,它放棄了對Froyo的支持)。如果您使用的搖籃,你仍然可以參考,在您的build.gradle文件,而不需要導入它作爲一個模塊:

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

}

你可以看到谷歌的完整列表播放服務版本通過搖籃通過查看{android-sdk}/extras/google/m2repository/com/google/android/gms/play-services目錄,目前列出了以下版本:3.1.363.1.593.2.253.2.654.0.304.1.324.2.424.3.234.4.525.0.896.1.116.1.716.5.877.0.0

您應該強烈考慮逐步解決每個版本修復問題,因爲每個版本都有相當多的修復程序。特別是,Google Play services 6.5提供了selectively include APIs的功能,因此您的應用程序只包含您實際使用的API。

+0

我將不得不嘗試把版本放在我的build.gradle文件中。對不起,我是Gradle和Android Studio的新手,並不知道我可以做到這一點。 – jzapata

+0

沒問題! Eclipse從未真正明確表示過Google Play服務有不同版本 - 它只是支持Froyo和最新版本的最新版本。 Gradle讓你能夠精確選擇你需要的版本,並且從此開始工作(更新你的SDK不會改變你的依賴) - 讓你控制何時移動到新版本。 – ianhanniballake

+0

我不得不說這是可悲的不真實的。我將「com.google.android.gms:play-services:7.5.0」更新爲「com.google.android.gms:play-services:9.4.0」,我的模擬器停止支持該應用。爲了確保與仿真器向後兼容,必須扭轉這種情況,所有真實的設備似乎都很好,但它們會隨時更新。 – HopefullyHelpful

相關問題