2016-12-26 4 views
0

firebaseУ меня есть много красных линий для аутентификации Firebase

Я добавил Firebase на моем приложение проекта, и я пытаюсь добавить проверку подлинности в мое приложение, но мне кажется, что это не работает хорошо.

У меня там много красных линий, и я не понимаю, какие проблемы возникли. Поможете ли вы мне решить эту проблему? Спасибо.

+0

Доли коды и build.gradle (модуль App) –

+0

Вы должны добавить BaseActivity в код или вы должны заменить BaseActivity с AppCompactActivity – Shane

ответ

0

Вот решение, добавьте это в build.gradle (модуль App)

dependencies { 
compile 'com.google.firebase:firebase-auth:10.0.1' 
..... 
} 

Проблема решена.

0

Это мой код

apply plugin: 'com.android.application' 

android { 
compileSdkVersion 25 
buildToolsVersion "25.0.2" 
defaultConfig { 
    applicationId "com.example.kse.jackieapp" 
    minSdkVersion 23 
    targetSdkVersion 25 
    versionCode 1 
    versionName "1.0" 
    testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner" 
} 
buildTypes { 
    release { 
     minifyEnabled false 
     proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' 
    } 
} 
} 

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:25.1.0' 
compile 'com.android.support:design:25.1.0' 
compile 'com.google.firebase:firebase-auth:10.0.1' 
compile 'com.google.firebase:firebase-core:10.0.1' 
testCompile 'junit:junit:4.12' 
} 

apply plugin: 'com.google.gms.google-services' 
0

Я думаю, что вы не добавили BaseActivity в вашем проекте. Выполните следующие шаги

  1. Добавить BaseActivity
  2. ИЛИ заменить BaseActivity с AppCompactActivity
  3. Добавить это в build.gradle (App Module) - компиляции «com.google.firebase: firebase-авторизации: 10.0.1 '

Вот полный демо - попытаться сравнить проецировании с этим Firebase demo

Позвольте мне знать, если есть проблема.

+0

я добавил базовую активность, но были больше проблем. Я загружу снимок экрана. –

+0

«Загрузка» в моей baseactivity не может быть скомпилирована. –

+0

Опубликовать журнал ошибок ... – Shane

0

Просмотреть все звездочки.

@Override 
public void onActivityResult(int requestCode, int resultCode, Intent data) { 
    super.onActivityResult(requestCode, resultCode, data); 

    // Result returned from launching the Intent from GoogleSignInApi.getSignInIntent(...); 
    if (requestCode == RC_SIGN_IN) { 
     **GoogleSignInResult** result = **Auth**.GoogleSignInApi.getSignInResultFromIntent(data); 
     if (result.**isSuccess**()) { 
      // Google Sign In was successful, authenticate with Firebase 
      GoogleSignInAccount account = result.**getSignInAccount**(); 
      firebaseAuthWithGoogle(account); 
     } else { 
      // Google Sign In failed, update UI appropriately 
      // [START_EXCLUDE] 
      updateUI(null); 
      // [END_EXCLUDE] 
     } 
    } 
} 

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.**activity_google**); 

private void firebaseAuthWithGoogle(GoogleSignInAccount acct) { 
    Log.d(TAG, "firebaseAuthWithGoogle:" + acct.getId()); 
    // [START_EXCLUDE silent] 
    showProgressDialog(); 
    // [END_EXCLUDE] 

    AuthCredential credential = GoogleAuthProvider.getCredential(acct.getIdToken(), null); 
    mAuth.signInWithCredential(credential) 
      .addOnCompleteListener(this, new OnCompleteListener<AuthResult>() { 
       @Override 
       public void onComplete(@NonNull Task<AuthResult> task) { 
        Log.d(TAG, "signInWithCredential:onComplete:" + task.isSuccessful()); 

        // If sign in fails, display a message to the user. If sign in succeeds 
        // the auth state listener will be notified and logic to handle the 
        // signed in user can be handled in the listener. 
        if (!task.isSuccessful()) { 
         Log.w(TAG, "signInWithCredential", task.getException()); 
         Toast.makeText(**GoogleSignInActivity**.this, "Authentication failed.", 
           Toast.LENGTH_SHORT).show(); 
        } 
        // [START_EXCLUDE] 
        hideProgressDialog(); 
        // [END_EXCLUDE] 
       } 
      }); 
} 

private void updateUI(FirebaseUser user) { 
    hideProgressDialog(); 
    if (user != null) { 
     mStatusTextView.setText(getString(R.string.**google_status_fmt**, user.getEmail())); 
     mDetailTextView.setText(getString(R.string.**firebase_status_fmt**, user.getUid())); 

     findViewById(R.id.sign_in_button).setVisibility(View.GONE); 
     findViewById(R.id.sign_out_and_disconnect).setVisibility(View.VISIBLE); 
    } else { 
     mStatusTextView.setText(R.string.**signed_out**); 
     mDetailTextView.setText(null); 

     findViewById(R.id.sign_in_button).setVisibility(View.VISIBLE); 
     findViewById(R.id.sign_out_and_disconnect).setVisibility(View.GONE); 
    } 
} 
Смежные вопросы