判断手机是否支持google play服务

 android开发报错

Unable to get provider com.google.firebase.provider.FirebaseInitProvider, classnotfound
或者提示手机不支持google服务或者google map 服务等功能的解决办法:


简介:   

 在针对需要google 服务的软件开发中,国内开发者经常会出现手机不支持google play 服务的提示,不支持Google Play服务是谷歌推出国内市场后经常出现的问题。判断设备是否支持google service 服务是构建谷歌更好应用的一个框架支持,国外的google map, google的一些应用都需要依托于这个google服务,那么我们会连Oncreate方法都进不去,国内的手机,例如小米是不支持google服务的,它作为官方应用程序商店Android的操作系统,允许用户浏览和发展了与下载应用程序的Android SDK, 如何判断设备是否支持google 服务,作为针对开发国内外用户的使用的APP的时候极为重要

方法

如果在build.gradle中加了

compile'com.google.android.gms:play-services:9.6.1'
加入了这一整个 service 是不容易判断的,因为加入这个方法,里面有一个自启动类,会让程序启动,但是我们手机又又不支持google service 服务,我们针对于具体的业务,来对google 的service添加引入,例如我们只需要引入google map api 和 google place api,例如

dependencies {

compile 'com.google.android.gms:play-services-places:9.6.1'
compile 'com.google.android.gms:play-services-maps:9.6.1'
}
而不是
compile 'com.google.android.gms:play-services:9.6.1'

然后在程序中加判断

boolean googleserviceFlag = true;
GoogleApiAvailability googleApiAvailability = GoogleApiAvailability.getInstance();
intresultCode = googleApiAvailability.isGooglePlayServicesAvailable(this);
if(resultCode != ConnectionResult.SUCCESS) {
if(googleApiAvailability.isUserResolvableError(resultCode)) {
googleApiAvailability.getErrorDialog(this, resultCode, 2404).show();
}
googleserviceFlag=false;
}
if(googleserviceFlag==false){
说明不支持google服务
}















你可能感兴趣的:(android开发,google,play,服务,google,map,api,exception,手机,异常,android)