Android Studio:代码已完成,但是每次我尝试运行时应用程序崩溃

用户名

我制作了一个允许用户登录的应用程序,但是每次我尝试运行时,我的应用程序总是崩溃。

AndroidManifest.xml

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.example.mertino11.ourapplication">

    <uses-permission android:name="android.permission.INTERNET" />

    <application
        android:name=".FireApp"
        android:allowBackup="true"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        android:supportsRtl="true">
        <activity
            android:name=".MainActivity"
            android:theme="@style/AppTheme">
            <intent-filter>
                <action android:name="android.intent.action.MAIN"/>
                <category android:name="android.intent.category.LAUNCHER"/>
            </intent-filter>
        </activity>
    </application>
    </manifest>

activity_account.xml(成功登录的用户的XML)

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:id="@+id/activity_account"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    tools:context="com.example.mertino11.ourapplication.AccountActivity">

    <EditText
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:inputType="textPersonName"
        android:text="Account Page"
        android:ems="10"
        android:id="@+id/editText"
        android:textSize="22sp"
        android:layout_centerVertical="true"
        android:layout_centerHorizontal="true"
        android:textStyle="normal|bold"
        android:textAlignment="center" />
</RelativeLayout>

activity_main.xml(登录页面)

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    android:baselineAligned="false">

    <EditText
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:inputType="textEmailAddress"
        android:ems="10"
        android:id="@+id/emailField"
        android:hint="Email"
        android:paddingTop="20dp" />

    <EditText
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:inputType="textPassword"
        android:ems="10"
        android:id="@+id/passwordField"
        android:hint="Password"
        android:fontFamily="sans-serif"
        android:paddingTop="20dp" />

    <Button
        android:text="Login"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:id="@+id/loginBtn"
        android:paddingTop="20dp" />
</LinearLayout>

Java->类:AccountActivity(用户成功登录时的页面)

package com.example.mertino11.ourapplication;

import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;

public class AccountActivity extends AppCompatActivity {

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

Java->类:FireApp(我认为Firebase设置)

package com.example.mertino11.ourapplication;

import android.app.Application;

import com.firebase.client.Firebase;

/**
 * Created by Mertino11 on 10-Dec-16.
 */

public class FireApp extends Application {

    @Override
    public void  onCreate() {
        super.onCreate();

        Firebase.setAndroidContext(this);
    }
}

Java->类:主要活动(使用帐户进行后端日志记录)

package com.example.mertino11.ourapplication;


import android.content.Intent;
import android.os.Bundle;
import android.support.annotation.NonNull;
import android.support.v7.app.AppCompatActivity;
import android.text.TextUtils;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;

import com.google.android.gms.tasks.OnCompleteListener;
import com.google.android.gms.tasks.Task;
import com.google.firebase.auth.AuthResult;
import com.google.firebase.auth.FirebaseAuth;

public class MainActivity extends AppCompatActivity {

    private EditText mEmailField;
    private EditText mPasswordField;

    private Button mLoginBtn;

    private FirebaseAuth mAuth;

    private FirebaseAuth.AuthStateListener mAuthListener;

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

        mAuth = FirebaseAuth.getInstance();

        mEmailField = (EditText) findViewById(R.id.emailField);
        mPasswordField = (EditText) findViewById(R.id.passwordField);

        mLoginBtn = (Button) findViewById(R.id.loginBtn);

        mAuthListener = new FirebaseAuth.AuthStateListener() {
            @Override
            public void onAuthStateChanged(@NonNull FirebaseAuth firebaseAuth) {

                if(firebaseAuth.getCurrentUser() != null) {

                    startActivity(new Intent(MainActivity.this, AccountActivity.class));

                }
            }
        };

        mLoginBtn.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {

                startSignIn();

            }
        });
    }

    @Override
    protected void onStart() {
        super.onStart();

        mAuth.addAuthStateListener(mAuthListener);
    }

    private void startSignIn() {

        String email = mEmailField.getText().toString();
        String password = mPasswordField.getText().toString();

        if(TextUtils.isEmpty(email) || TextUtils.isEmpty(password)) {

            Toast.makeText(MainActivity.this, "Fields are empty!", Toast.LENGTH_LONG).show();

        } else {
            mAuth.signInWithEmailAndPassword(email, password).addOnCompleteListener(new OnCompleteListener<AuthResult>() {
                @Override
                public void onComplete(@NonNull Task<AuthResult> task) {

                    if(!task.isSuccessful()){

                        Toast.makeText(MainActivity.this, "Sign In Problem!", Toast.LENGTH_LONG).show();
                    }
                }
            });
        }



    }
}

运行时出现错误信息:

 --------- beginning of crash
E/AndroidRuntime: FATAL EXCEPTION: main
                  Process: com.example.mertino11.ourapplication, PID: 3060
                  android.content.ActivityNotFoundException: Unable to find explicit activity class {com.example.mertino11.ourapplication/com.example.mertino11.ourapplication.AccountActivity}; have you declared this activity in your AndroidManifest.xml?
                      at android.app.Instrumentation.checkStartActivityResult(Instrumentation.java:1805)
                      at android.app.Instrumentation.execStartActivity(Instrumentation.java:1523)
                      at android.app.Activity.startActivityForResult(Activity.java:4224)
                      at android.support.v4.app.BaseFragmentActivityJB.startActivityForResult(BaseFragmentActivityJB.java:48)
                      at android.support.v4.app.FragmentActivity.startActivityForResult(FragmentActivity.java:75)
                      at android.app.Activity.startActivityForResult(Activity.java:4183)
                      at android.support.v4.app.FragmentActivity.startActivityForResult(FragmentActivity.java:856)
                      at android.app.Activity.startActivity(Activity.java:4507)
                      at android.app.Activity.startActivity(Activity.java:4475)
                      at com.example.mertino11.ourapplication.MainActivity$1.onAuthStateChanged(MainActivity.java:48)
                      at com.google.firebase.auth.FirebaseAuth$1.run(Unknown Source)
                      at android.os.Handler.handleCallback(Handler.java:751)
                      at android.os.Handler.dispatchMessage(Handler.java:95)
                      at android.os.Looper.loop(Looper.java:154)
                      at android.app.ActivityThread.main(ActivityThread.java:6077)
                      at java.lang.reflect.Method.invoke(Native Method)
                      at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:865)
                      at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:755)
Application terminated.

错误的屏幕截图:

http://i66.tinypic.com/51btrp.png

该应用程序的场景:

  • 创建帐户Firebase Google(手动)
  • 打开应用程序->看到登录页面
  • 使用Firebase的帐户详细信息登录
  • 转到AccountActivity页面

注意:我是AndroidStudio的业余/初学者。

用户名

该错误是不言自明的。

您错过了AccounActivity在清单上添加...

<application
    android:name=".FireApp"
    android:allowBackup="true"
    android:icon="@mipmap/ic_launcher"
    android:label="@string/app_name"
    android:supportsRtl="true">
    <activity
        android:name=".MainActivity"
        android:theme="@style/AppTheme">
        <intent-filter>
            <action android:name="android.intent.action.MAIN"/>
            <category android:name="android.intent.category.LAUNCHER"/>
        </intent-filter>
    </activity>
    <activity
        android:name=".AccountActivity"
        android:theme="@style/AppTheme" />
</application>

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Android Studio-每次运行时重新安装应用程序

来自分类Dev

安装后运行时,Android应用程序崩溃

来自分类Dev

android studio 中的 LogCat 错误,运行时应用程序崩溃

来自分类Dev

尝试在模拟器上运行时,应用崩溃了[Android Studio]

来自分类Dev

尝试在模拟器上运行时,应用崩溃了[Android Studio]

来自分类Dev

尝试运行应用程序时(在Mac上)android studio不会显示设备

来自分类Dev

Android /尝试运行我的第一个应用程序-致命错误

来自分类Dev

在Android 4.4(NoClassDefFoundError)中开始运行时,应用程序崩溃

来自分类Dev

更新到Android 3.6工作室后,在运行时应用程序崩溃

来自分类Dev

首次在Android 4.4上运行时,应用程序崩溃

来自分类Dev

如果我的应用程序在Android Wear上运行,如何确定(在运行时)?

来自分类Dev

当我在模拟器上运行时,我的Android应用程序意外停止

来自分类Dev

当我的应用程序运行时,为什么在Android Studio Logcat中看到“没有可调试的应用程序”?

来自分类Dev

从Android Studio运行时出现“此版本的应用程序未配置为计费”错误

来自分类Dev

在Android Studio下运行时Flutter应用程序冻结

来自分类Dev

zxing运行时异常到Android应用程序

来自分类Dev

系统应用程序的Android运行时权限

来自分类Dev

Blackberry-Android应用程序运行时错误

来自分类Dev

zxing运行时异常到Android应用程序

来自分类Dev

android:如何确保我的应用程序在后台运行时不会暂停

来自分类Dev

android:如何确保我的应用程序在后台运行时不会暂停

来自分类Dev

Android在每次运行时保存日志以获取崩溃报告

来自分类Dev

Android Studio:应用程序在我的智能手机上运行后崩溃

来自分类Dev

我的Android绘图应用程序在本机代码中崩溃

来自分类Dev

我的应用程序在Android Studio中不断崩溃

来自分类Dev

我的应用程序在Android Studio中不断崩溃

来自分类Dev

试图插入onclicklistener,当应用程序在模拟器中运行时,它停止了。Android Studio

来自分类Dev

Android:我们可以在应用程序运行时创建带有字符串的位图吗?

来自分类Dev

尝试运行应用时出现Android Studio错误

Related 相关文章

  1. 1

    Android Studio-每次运行时重新安装应用程序

  2. 2

    安装后运行时,Android应用程序崩溃

  3. 3

    android studio 中的 LogCat 错误,运行时应用程序崩溃

  4. 4

    尝试在模拟器上运行时,应用崩溃了[Android Studio]

  5. 5

    尝试在模拟器上运行时,应用崩溃了[Android Studio]

  6. 6

    尝试运行应用程序时(在Mac上)android studio不会显示设备

  7. 7

    Android /尝试运行我的第一个应用程序-致命错误

  8. 8

    在Android 4.4(NoClassDefFoundError)中开始运行时,应用程序崩溃

  9. 9

    更新到Android 3.6工作室后,在运行时应用程序崩溃

  10. 10

    首次在Android 4.4上运行时,应用程序崩溃

  11. 11

    如果我的应用程序在Android Wear上运行,如何确定(在运行时)?

  12. 12

    当我在模拟器上运行时,我的Android应用程序意外停止

  13. 13

    当我的应用程序运行时,为什么在Android Studio Logcat中看到“没有可调试的应用程序”?

  14. 14

    从Android Studio运行时出现“此版本的应用程序未配置为计费”错误

  15. 15

    在Android Studio下运行时Flutter应用程序冻结

  16. 16

    zxing运行时异常到Android应用程序

  17. 17

    系统应用程序的Android运行时权限

  18. 18

    Blackberry-Android应用程序运行时错误

  19. 19

    zxing运行时异常到Android应用程序

  20. 20

    android:如何确保我的应用程序在后台运行时不会暂停

  21. 21

    android:如何确保我的应用程序在后台运行时不会暂停

  22. 22

    Android在每次运行时保存日志以获取崩溃报告

  23. 23

    Android Studio:应用程序在我的智能手机上运行后崩溃

  24. 24

    我的Android绘图应用程序在本机代码中崩溃

  25. 25

    我的应用程序在Android Studio中不断崩溃

  26. 26

    我的应用程序在Android Studio中不断崩溃

  27. 27

    试图插入onclicklistener,当应用程序在模拟器中运行时,它停止了。Android Studio

  28. 28

    Android:我们可以在应用程序运行时创建带有字符串的位图吗?

  29. 29

    尝试运行应用时出现Android Studio错误

热门标签

归档