Мое приложение для Android выдает длинную ошибку и не запускается

1

Я получаю сообщение об ошибке при попытке запустить приложение в эмуляторе

Я следую учебному пособию, в котором показано, как создать приложение, подобное WhatsApp, но у меня возникли некоторые проблемы. Всякий раз, когда я пытаюсь запустить приложение в моем эмуляторе, я получаю эту действительно длинную ошибку, которую я не могу решить. Единственное, что я изменил, возможно, имело значение, это имя файла. Это был MainActivity.jk или т. К. Я забыл. Но я изменил его на MainActivity.Java. Но это ошибка, которую я продолжаю получать.

04-19 13: 30: 10.485 3614-3614/? E/AndroidRuntime: FATAL EXCEPTION: main Процесс: com.example.chatster, PID: 3614 java.lang.RuntimeException: Невозможно создать экземпляр действия ComponentInfo {com.example.chatster/com.example.chatster.MainActivity}: java.lang. ClassNotFoundException: не найден класс "com.example.chatster.MainActivity" по пути: DexPathList [[zip файл "/data/app/com.example.chatster-1.apk"],nativeLibraryDirectories=[/data/app- lib/com.example.chatster-1,/vendor/lib,/system/lib]] в android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2121) в android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2245 ) в android.app.ActivityThread.access $ 800 (ActivityThread.java:135) в android.app.ActivityThread $ H.handleMessage(ActivityThread.java:1196) в android.os.Handler.dispatchMessage(Handler.java:102) в android.os.Looper.loop(Looper.java:136) на android.app.ActivityThread.main(ActivityThread.java:5017) на java.lang.reflect.Method.invokeNative (собственный метод) на java.lang.reflect. Method.in voke (Method.java:515) в com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run(ZygoteInit.java:779) в com.android.internal.os.ZygoteInit.main(ZygoteInit.java:595) в dalvik.system.NativeStart.main (собственный метод) Причина: java.lang.ClassNotFoundException: не найден класс "com.example.chatster.MainActivity" на пути: DexPathList [[файл zip "/data/app/com.example.chatster-1.apk "], nativeLibraryDirectories = [/data/app-lib/com.example.chatster-1,/vendor/lib,/system/lib]] в dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java: 56) в java.lang.ClassLoader.loadClass(ClassLoader.java:497) в java.lang.ClassLoader.loadClass(ClassLoader.java:457) в android.app.Instrumentation.newActivity(Instrumentation.java:1061) в Android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2112) в android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2245) в android.app.ActivityThread.access $ 800 (ActivityThread.java:135) в android.app.ActivityThread $ H.handleMess age (ActivityThread.java:1196) в android.os.Handler.dispatchMessage(Handler.java:102) в android.os.Looper.loop(Looper.java:136) в android.app.ActivityThread.main(ActivityThread.java): 5017) на java.lang.reflect.Method.invokeNative (собственный метод) на java.lang.reflect.Method.invoke(Method.java:515) на com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run(ZygoteInit).java: 779) на com.android.internal.os.ZygoteInit.main(ZygoteInit.java:595) на dalvik.system.NativeStart.main (собственный метод)

MainActivity.Java

package com.example.chatster;

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

import java.util.Objects;

public class MainActivity extends AppCompatActivity {

protected Bundle savedInstanceState;

@Override
protected void onCreate(Bundle savedInstanceState)
{
    this.savedInstanceState = savedInstanceState;

    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    Toolbar mToolBar = (Toolbar) findViewById(R.id.Main_page_toolbar);
    setSupportActionBar(mToolBar);
    Objects.requireNonNull(getSupportActionBar()).setTitle("Chatster");
}

}

AndroidManifest.xml

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

<application
        android:allowBackup="true"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        android:roundIcon="@mipmap/ic_launcher_round"
        android:supportsRtl="true"
        android:theme="@style/AppTheme" tools:ignore="AllowBackup,GoogleAppIndexingWarning">
    <activity android:name=".MainActivity">
        <intent-filter>
            <action android:name="android.intent.action.MAIN"/>
            <category android:name="android.intent.category.LAUNCHER"/>
        </intent-filter>
    </activity>
</application>

</manifest>
Теги:
android-studio

2 ответа

0

Отключить мгновенный запуск в Android Studio.

Перейдите в Файл → Настройки/Предпочтения (Mac) → Выполнение и развертывание сборки → Снимите флажок Мгновенный запуск

Затем очистите и перестройте проект.

Изображение 174551

  • 0
    Я думаю, что проблема с самим кодом
  • 0
    Ваш мультидекс включен в true в файле Gradle?
Показать ещё 3 комментария
0

это кажется проблемой в вашем случае. Относительный путь вашей activity в манифесте androidManifest или вы не объявили свою активность в androidManifest

<activity android:name="com.example.chatster.MainActivity"

Пожалуйста, попробуйте удалить эту строку из вашего onCreate()

this.savedInstanceState = savedInstanceState ;

После того, как вы это сделали, пожалуйста, очистите и пересоберите ваш проект и перезапустите вашу андроид студию

Пожалуйста, проверьте эту ссылку для получения дополнительной информации и надеюсь, что вы решите проблему

  • 0
    Извините, я забыл поместить туда свой файл манифеста Android, посмотрите на него сейчас
  • 0
    попробуйте объявить вашу деятельность, как я написал выше с пакетом
Показать ещё 9 комментариев

Ещё вопросы

Сообщество Overcoder
Наверх
Меню