谷歌应用商店服务丢失。

3

我对Firebase还不熟悉,正在使用官方文档为我的应用程序创建注册活动,但是当我点击注册按钮时,出现了以下错误:

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.

我也参考了Google的文档,但由于Firebase用户数量较少,我没有得到我的答案。我还查看了这两个链接:Link1Link2的答案,但它们都不能解决我的问题。

我在项目中有google-service.json文件,已经应用了所有Firebase项目所需的依赖项,并更新了Android Studio。

我该怎么办呢?

注意:我的Firebase身份验证面板启用了电子邮件/密码功能。

以下是我的代码:

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 

请分享您的Gradle构建文件。 - ErstwhileIII
2个回答

5
GooglePlayServicesUtil: Google Play services is missing. 

看起来您正在使用没有安装 Google Play 服务的设备。
如果要在使用 Google Play 服务 SDK 时测试您的应用程序,则必须使用以下其中之一:

  • 运行 Android 2.3 或更高版本并包含 Google Play Store 的兼容 Android 设备。
  • 基于 Android 4.2.2 或更高版本的 Google API 平台运行 AVD 的 Android 模拟器。

更多信息请参见此处


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]]

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接