我遇到了这个问题:我在三星平板电脑上运行带有firebase的应用,Android 4.3
Google Play Services
version 7.8.99
(应该至少为9)。因此,当我尝试使用FireBase登录时,它会给我一个“无法连接到Google Play服务”。
我的问题是:有没有办法确保应用程序可以在具有最低版本SDK的所有设备上运行,在我的情况下,最低兼容性是4.3。
我使用助手在应用中安装了Firebase,然后检查manual install guide后是否一切都在那里。我也尝试了this post中描述的内容,this post。到目前为止,没有解决我的问题。
我的root级build.gradle:
buildscript {
repositories {
jcenter()
}
dependencies {
classpath 'com.android.tools.build:gradle:2.3.2'
// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
classpath 'com.google.gms:google-services:3.0.0'
}
}
allprojects {
repositories {
jcenter()
}
}
task clean(type: Delete) {
delete rootProject.buildDir
}
我的App Level build.gradle
apply plugin: 'com.android.application'
android {
compileSdkVersion 24
buildToolsVersion "25.0.0"
defaultConfig {
applicationId "xx.xx.xxxxxxxx"
minSdkVersion 18
targetSdkVersion 24
versionCode 1
versionName "1.0"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
debug {
debuggable true
}
}
}
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', {
exclude group: 'com.android.support', module: 'support-annotations'
})
compile 'com.android.support:appcompat-v7:24.2.1'
compile 'com.android.support.constraint:constraint-layout:1.0.2'
compile 'com.roughike:bottom-bar:2.3.1'
compile 'com.android.support:support-v4:24.2.1'
compile 'com.dlazaro66.qrcodereaderview:qrcodereaderview:2.0.2'
compile 'com.github.clans:fab:1.6.4'
testCompile 'junit:junit:4.12'
compile 'com.google.firebase:firebase-core:10.2.6'
compile 'com.google.firebase:firebase-auth:10.2.6'
compile 'com.google.firebase:firebase-database:10.2.6'
compile 'com.google.firebase:firebase-crash:10.2.6'
compile 'com.estimote:sdk:1.0.3:release@aar'
}
apply plugin: 'com.google.gms.google-services'
我能做些什么来确保我可以在每台设备上使用firebase吗?
答案 0 :(得分:3)
您需要检查Google Play服务是否可用,并且该检查的连接结果会告诉您需要执行的操作
switch (GoogleApiAvailability.getInstance().isGooglePlayServicesAvailable(this)){
case ConnectionResult.SERVICE_MISSING:
GoogleApiAvailability.getInstance().getErrorDialog(this,ConnectionResult.SERVICE_MISSING,0).show();
break;
case ConnectionResult.SERVICE_VERSION_UPDATE_REQUIRED:
GoogleApiAvailability.getInstance().getErrorDialog(this,ConnectionResult.SERVICE_VERSION_UPDATE_REQUIRED,0).show();
break;
case ConnectionResult.SERVICE_DISABLED:
GoogleApiAvailability.getInstance().getErrorDialog(this,ConnectionResult.SERVICE_DISABLED,0).show();
break;
}
最新的Google Play服务与4.1及更高版本的所有设备兼容。
没有办法将GPS绑定到特定的Android版本,您必须确保您使用的版本与您需要定位的最小Android API版本兼容。