Android firebase电话身份验证失败,缺少客户端标识符
我正在尝试从digits移动到firebase auth,我已经使用Android studio firebase工具在我的应用程序中配置firebase设置。我正在尝试使用firebase auth ui进行电话验证 我的代码是:Android firebase电话身份验证失败,缺少客户端标识符,android,firebase,firebase-authentication,firebaseui,Android,Firebase,Firebase Authentication,Firebaseui,我正在尝试从digits移动到firebase auth,我已经使用Android studio firebase工具在我的应用程序中配置firebase设置。我正在尝试使用firebase auth ui进行电话验证 我的代码是: authButton.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { sta
authButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
startActivityForResult(
AuthUI.getInstance()
.createSignInIntentBuilder()
.setAvailableProviders(
Arrays.asList(
new AuthUI.IdpConfig.Builder(AuthUI.PHONE_VERIFICATION_PROVIDER).build()
))
.build(),
RC_SIGN_IN);
}
});
现在,当我点击auth按钮时,我得到了电话号码输入界面,我输入了我的电话号码,但当我点击Verify我的电话号码…我得到一个弹出窗口,说发生了一个内部错误[缺少客户端标识符]
根据要求,我的gradle文件:
apply plugin: 'com.android.application'
android {
compileSdkVersion 25
buildToolsVersion '25.0.0'
defaultConfig {
applicationId "com.app.id"
minSdkVersion 16
targetSdkVersion 25
versionCode 258
versionName "1.2.40"
}
buildTypes {
staging {
applicationIdSuffix ".staging"
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
buildConfigField "boolean", "IS_STAGING", "true"
signingConfig signingConfigs.configstaging
debuggable true
}
release {
signingConfig signingConfigs.releaseConfig
}
}
apply plugin: 'io.fabric'
repositories {
maven { url 'https://maven.fabric.io/public' }
}
repositories {
mavenCentral()
maven { url "https://urbanairship.bintray.com/android" }
maven { url "https://oss.sonatype.org/content/repositories/snapshots/" }
}
}
buildscript {
repositories {
maven { url 'https://maven.fabric.io/public' }
}
dependencies {
// The Fabric Gradle plugin uses an open ended version to react
// quickly to Android tooling updates
classpath 'io.fabric.tools:gradle:1.+'
}
}
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
// Urban Airship SDK
// Recommended for in-app messaging
// compile 'com.google.android.gms:play-services-analytics:9.2.0'
// compile('com.digits.sdk.android:digits:1.11.1@aar') {
// transitive = true;
// }
compile('com.crashlytics.sdk.android:crashlytics:2.6.1@aar') {
transitive = true;
}
compile 'info.hoang8f:android-segmented:1.0.6'
compile 'com.urbanairship.android:urbanairship-sdk:8.6.+'
compile 'com.google.android.gms:play-services-gcm:11.0.1'
compile 'com.android.support:cardview-v7:25.3.1'
compile 'com.android.support:multidex:1.0.0'
compile 'com.android.support:appcompat-v7:25.3.1'
compile 'com.android.support:design:25.3.1'
compile 'com.android.volley:volley:1.0.0'
compile 'com.michaelpardo:activeandroid:3.1.0-SNAPSHOT'
compile 'com.google.android.gms:play-services-location:11.0.1'
compile 'com.google.android.gms:play-services-maps:11.0.1'
compile 'com.google.code.gson:gson:2.4'
compile 'net.danlew:android.joda:2.9.9'
compile 'com.android.support:support-v13:25.3.1'
compile 'org.apache.commons:commons-lang3:3.4'
compile 'com.jakewharton:butterknife:8.8.1'
annotationProcessor 'com.jakewharton:butterknife-compiler:8.8.1'
compile 'com.prolificinteractive:material-calendarview:1.4.3'
compile 'com.rollbar:rollbar-android:0.2.0'
compile 'com.google.firebase:firebase-auth:10.0.1'
testCompile 'junit:junit:4.12'
testCompile 'org.robolectric:robolectric:3.4.2'
compile 'com.firebaseui:firebase-ui-auth:2.0.1'
compile 'com.appsee:appsee-android:+'
}
apply plugin: 'com.google.gms.google-services'
我的onActivityResult从未命中。我试着调试这个。
我使用的是实际设备,不是模拟器。我在firebase项目中也添加了SHA1。还有其他人见过这个吗 我终于解决了这个问题,firebase没有记录这样一个常见的问题,这非常令人沮丧 很有可能你正在测试,一切正常,然后你开始用一个白名单上的电话号码进行测试,在这样做的时候,你被出示了CAPTCHA,这让你很恼火,所以你找到了文件化的代码来禁用CAPTCHA。现在,在经过数周的测试后,您返回生产电话号码,却发现此错误,而不是导致此错误的信息。;)
[FIRAuth auth].settings.appVerificationDisabledForTesting=YES代码>
^将此设置回“否”,您就可以开始了 确保您的sha1密钥在googledeveloperconsole和firebase中应该相同console@GeetaGupta我可以在firebase控制台中看到SHA键,用户如何在google开发者控制台中看到SHA?我可以看到服务帐户的列表。在google开发者控制台中,转到Api和服务,然后转到凭据和匹配您的包名和shakey@GeetaGupta它们是一样的。你能把你完整的登录认证码和库和清单放在一起吗