2017-04-14 57 views
48

我在我的Android應用中使用Google Play服務,因此我的依賴項在我的build.gradle中。如何禁止「避免使用捆綁版Google Play服務SDK」警告?

compile 'com.google.android.gms:play-services:10.2.1' 

但Android Studio顯示警告:Avoid using bundled version of Google Play services SDK

Android warning

這是什麼意思的警告?我應該如何避免它?我搜索了很多,沒有找到相關的信息。

+1

這是因爲播放服務具有很多包含在它裏面的依賴..看看這裏.. https://開頭開發商。 google.com/android/guides/setup ..選擇您想要使用的任何依賴關係,而不是全部使用它們。 – ZeroOne

+0

@ZeroOne酷。謝謝你快速的回覆。你能否爲這個問題添加一個答案,以便我能接受它? –

+1

我沒有意識到這一點。當我瀏覽一些教程時,並沒有意識到運行Gradle時這是多麼糟糕。我很高興在項目早期發現這一點。 –

回答

95

在谷歌之前的6.5 Play服務的版本,你必須的API的整個包編譯到您的應用程序。在某些情況下,這樣做會使得應用程序中的方法數量(包括框架API,庫方法和自己的代碼)在65,536的限制之下變得更加困難。 從6.5版,你可以選擇,而不是谷歌編譯使用遊戲服務可能會導致DEX問題和重Play應用程式服務API爲您的應用程序

內部編譯com.google.android.gms:play-services:11.6.0都包含依賴的很多..見下文..。只有選擇哪個要你真的要看到:)

Google Play services API Description in build.gradle 

Google+     com.google.android.gms:play-services-plus:11.6.0 
Google Account Login  com.google.android.gms:play-services-auth:11.6.0 
Google Actions, 
Base Client Library  com.google.android.gms:play-services-base:11.6.0 
Google Address API  com.google.android.gms:play-services-identity:11.6.0 
Google Analytics   com.google.android.gms:play-services-analytics:11.6.0 
Google Awareness   com.google.android.gms:play-services-awareness:11.6.0 
Google Cast    com.google.android.gms:play-services-cast:11.6.0 
Google Cloud Messaging com.google.android.gms:play-services-gcm:11.6.0 
Google Drive    com.google.android.gms:play-services-drive:11.6.0 
Google Fit    com.google.android.gms:play-services-fitness:11.6.0 
Google Location and 
Activity Recognition  com.google.android.gms:play-services-location:11.6.0 
Google Maps    com.google.android.gms:play-services-maps:11.6.0 
Google Mobile Ads  com.google.android.gms:play-services-ads:11.6.0 
Google Places   com.google.android.gms:play-services-places:11.6.0 
Mobile Vision   com.google.android.gms:play-services-vision:11.6.0 
Google Nearby   com.google.android.gms:play-services-nearby:11.6.0 
Google Panorama Viewer com.google.android.gms:play-services-panorama:11.6.0 
Google Play Game   com.google.android.gms:play-services-games:11.6.0 
SafetyNet    com.google.android.gms:play-services-safetynet:11.6.0 
Android Pay    com.google.android.gms:play-services-wallet:11.6.0 
Android Wear    com.google.android.gms:play-services-wearable:11.6.0 

火力地堡

Firebase API    Description in build.gradle 

Analytics    com.google.firebase:firebase-core:11.6.2 
Realtime Database  com.google.firebase:firebase-database:11.6.2  
Cloud Firestore   com.google.firebase:firebase-firestore:11.6.2 
Storage     com.google.firebase:firebase-storage:11.6.2 
Crash Reporting   com.google.firebase:firebase-crash:11.6.2 
Authentication   com.google.firebase:firebase-auth:11.6.2  
Cloud Messaging   com.google.firebase:firebase-messaging:11.6.2 
Remote Config   com.google.firebase:firebase-config:11.6.2 
Invites and 
Dynamic Links   com.google.firebase:firebase-invites:11.6.2 
AdMob     com.google.firebase:firebase-ads:11.6.2 
App Indexing    com.google.firebase:firebase-appindexing:11.6.2 
Performance Monitoring com.google.firebase:firebase-perf:11.6.2 
+0

Google雲消息傳遞已折舊。請使用Firebase按摩。 –

7

Google Play服務包含許多單獨的API。 您可以訪問您需要的任何一個,而不是訪問包含它們全部的包。這是更好的方法。見表1號Here