Google Play服务缺失

时间:2016-05-24 18:08:20

标签: android android-studio firebase firebase-authentication

我是firebase的新手,我正在使用Official Documentation为我的应用做注册活动但是当我点击我的注册按钮进行注册时出现了这个错误

Failed to load module descriptor class: Didn't find class "com.google.android.gms.dynamite.descriptors.com.google.firebase.auth.ModuleDescriptor" on path: DexPathList[[zip file "/data/app/com.example.farrukh.firebaseaccount-1/base.apk"],nativeLibraryDirectories=[/data/app/com.example.farrukh.firebaseaccount-1/lib/x86_64, /vendor/lib64, /system/lib64]]

W/GooglePlayServicesUtil: Google Play services is missing.

我也是指谷歌,但由于firebase的用户数量很少,我没有得到答案,我也看了这两个Link1 Link2的答案,但它不会#&解决我的问题。

我在我的项目中有google-service.json我应用了firebase项目所需的所有依赖项并更新了android studio。

我该怎么办?

注意:我的firebase Auth Panel

中启用了电子邮件/密码

这是我的代码

public class MainActivity extends AppCompatActivity {

    private FirebaseAuth mAuth;

    private String mUserName, mUserEmail, mPassword;
    private EditText mEmail, mPass;
    Button signup;

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

        mAuth = FirebaseAuth.getInstance();
        signup = (Button) findViewById(R.id.button);
        mEmail = (EditText) findViewById(R.id.editText);
        mPass = (EditText) findViewById(R.id.editText2);


        signup.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {

                mUserEmail = mEmail.getText().toString();
                mPassword = mPass.getText().toString();
                mAuth.createUserWithEmailAndPassword(mUserEmail,mPassword).addOnCompleteListener(new OnCompleteListener<AuthResult>() {
                    @Override
                    public void onComplete(@NonNull Task<AuthResult> task) {
                        Toast.makeText(getApplicationContext(),"Success",Toast.LENGTH_LONG).show();



                        if (!task.isSuccessful()) {

                            Toast.makeText(getApplicationContext(), "Authentication failed.",
                                    Toast.LENGTH_SHORT).show();
                        }
                    }
                });
            }
        });


    }// End OnCreate


}// End Activity 

2 个答案:

答案 0 :(得分:5)

GooglePlayServicesUtil: Google Play services is missing. 

您似乎在使用没有Google Play服务的设备 要在使用Google Play服务SDK时测试您的应用,您必须使用以下任一项:

  • 运行Android 2.3或更高版本且包含Google Play商店的兼容Android设备。
  • 带有AVD的Android模拟器,可运行基于Android 4.2.2或更高版本的 Google API 平台。

更多信息here

答案 1 :(得分:3)

得到答案,我刚刚卸载了HAXM并重新安装它解决了问题,我的应用程序成功将用户注册到我的身份验证面板中。 但仍然得到这一行

Failed to load module descriptor class: Didn't find class "com.google.android.gms.dynamite.descriptors.com.google.firebase.auth.ModuleDescriptor" on path: DexPathList[[zip file "/data/app/com.example.farrukh.firebaseaccount-1/base.apk"],nativeLibraryDirectories=[/data/app/com.example.farrukh.firebaseaccount-1/lib/x86_64, /vendor/lib64, /system/lib64]]