title: Android auth firebase error: Local module descriptor class for com.google.firebase.auth not found
body: <ul>
  <li>I'm trying to build an app with login/register capabilities through Firebase. I'm working on it with a partner (he's on Linux, I'm on Mac), and he's able to get the authentication working but for some reason I am not. We have all the same code, SDK tools checked in the SDK manager, running the same version of everything. </li>
  <li><p>Here's the gradle file:</p>
  
  <pre><code>
  compile 'com.android.support:appcompat-v7:25.3.0'
  compile 'com.android.support.constraint:constraint-layout:1.0.2'
  compile 'com.google.firebase:firebase-auth:10.2.1'
  compile 'com.android.support:design:25.3.0'
  testCompile 'junit:junit:4.12' 
  </code></pre></li>
  <li><p>And the code:</p></li>
  </ul>
  
  <pre><code>
  
      public class RegisterActivity extends AppCompatActivity {
      private FirebaseAuth mAuth;
      private FirebaseAuth.AuthStateListener mAuthListener;
  
      private EditText mUsernameField;
      private EditText mPasswordField;
      private EditText mConfirmPasswordField;
  
      private Button mRegisterButton;
  
      @Override
      protected void onCreate(Bundle savedInstanceState) {
          super.onCreate(savedInstanceState);
          setContentView(R.layout.activity_register);
          Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
          setSupportActionBar(toolbar);
  
          mUsernameField = (EditText) findViewById(R.id.enterUsername);
          mPasswordField = (EditText) findViewById(R.id.enterPassword);
          mConfirmPasswordField = (EditText) findViewById(R.id.confirmPassword);
          mRegisterButton = (Button) findViewById(R.id.confirmRegistration);
  
          mRegisterButton.setOnClickListener(new View.OnClickListener() {
              @Override
              public void onClick(View v) {
                  createAccount(mUsernameField.getText().toString(), mPasswordField.getText().toString());
              }
          });
          mAuth = FirebaseAuth.getInstance();
  
          mAuthListener = new FirebaseAuth.AuthStateListener() {
              @Override
              public void onAuthStateChanged(@NonNull FirebaseAuth firebaseAuth) {
                  FirebaseUser user = firebaseAuth.getCurrentUser();
                  if (user != null) {
                      // User is signed in
                      Log.d("account", "onAuthStateChanged:signed_in:" + user.getUid());
                  } else {
                      // User is signed out
                      Log.d("account", "onAuthStateChanged:signed_out");
                  }
                  // ...
              }
          };
      }
  
      @Override
      public void onStart() {
          super.onStart();
          mAuth.addAuthStateListener(mAuthListener);
      }
  
      @Override
      public void onStop() {
          super.onStop();
          if (mAuthListener != null) {
              mAuth.removeAuthStateListener(mAuthListener);
          }
      }
  
      private void createAccount(String email, String password) {
          Log.d("account", "createAccount:" + email);
          if (!validateForm()) {
              return;
          }
  
          // [START create_user_with_email]
          mAuth.createUserWithEmailAndPassword(email, password)
                  .addOnCompleteListener(this, new OnCompleteListener() {
                      @Override
                      public void onComplete(@NonNull Task task) {
                          Log.d("account", "createUserWithEmail: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()) {
                              Toast.makeText(RegisterActivity.this, R.string.register_failed,
                                      Toast.LENGTH_SHORT).show();
                          }
  
                          else {
                              Intent intent = new Intent(RegisterActivity.this, MainActivity.class);
                              RegisterActivity.this.startActivity(intent);
                              finish();
                          }
                      }
                  });
          // [END create_user_with_email]
      }
  
      private boolean validateForm() {
          boolean valid = true;
  
          String email = mUsernameField.getText().toString();
          if (TextUtils.isEmpty(email)) {
              mUsernameField.setError("Required.");
              valid = false;
          } else {
              mUsernameField.setError(null);
          }
  
          String password = mPasswordField.getText().toString();
          if (TextUtils.isEmpty(password)) {
              mPasswordField.setError("Required.");
              valid = false;
          } else {
              mPasswordField.setError(null);
          }
  
          String confirmPassword = mConfirmPasswordField.getText().toString();
          if (TextUtils.isEmpty(confirmPassword)) {
              mConfirmPasswordField.setError("Required.");
              valid = false;
          } else {
              mConfirmPasswordField.setError(null);
          }
  
          if(!confirmPassword.equals(password)) {
              mConfirmPasswordField.setError("Passwords must be the same.");
              valid = false;
          }
  
          return valid;
      }
  
  }
  
   </code></pre>
  
  <ul>
  <li>And finally the error:</li>
  </ul>
  
  <p><pre>W/DynamiteModule: Local module descriptor class for com.google.firebase.auth not found.
  W/GooglePlayServicesUtil: Google Play Store is missing.
  I/art: Background partial concurrent mark sweep GC freed 5866(313KB) AllocSpace objects, 1(14KB) LOS objects, 39% free, 2MB/4MB, paused 5.176ms total 27.761ms
  D/account: createUserWithEmail:onComplete:false </pre></p>
  
  <ul>
  <li>Pretty much everything was taken textbook from the Firebase website. Please help, we've been stuck on this for hours, and none of the other similar questions have helped.</li>
  </ul>