Android Studio говорит: «Активность не объявлена ​​в AndroidManifest.xml»? - PullRequest
0 голосов
/ 14 марта 2019

Это мой файл манифеста, когда я запускаю приложение, оно говорит: «Основная активность не объявлена ​​в AndroidManifest.xml»

Я пытался перестроить, сделать недействительными кэши / перезапустить, добавив

<activity
    android:name=".MainActivity"
    android:label="@string/app_name"  to my manifest

также многое другое из других ответов на stockoverflow, но не решило мою проблему. Помогите мне, пожалуйста. Я сделал apk вчера, пока он не работал нормально, но сегодня, когда я открыл его, он показал эту ошибку.

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

        <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">
            <activity android:name=".pprath">
            </activity>
            <activity android:name=".mpurn" />
            <activity android:name=".mprath" />
            <activity android:name=".Prambhik" />
            <activity android:name=".Exams" />



            <activity android:name=".Kalyan"/>
            <activity android:name=".Thats" />
            <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>

вот MainActivity.java

package com.keval.raagbhandaar;

import android.content.Intent;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;

public class MainActivity extends AppCompatActivity {


    private Button button4;

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


        button4 = (Button) findViewById(R.id.button4);
        button4.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                openActivityexam();


            }

            public void openActivityexam() {
                Intent intent = new Intent(MainActivity.this, Exams.class);
                startActivity(intent);
            }


        });
    }}

LogCat

2019-03-14 17: 02: 33.492 5363-5363 / com.keval.raagbhandaar E / AndroidRuntime: ИСКЛЮЧИТЕЛЬНОЕ ИСКЛЮЧЕНИЕ: основное Процесс: com.keval.raagbhandaar, PID: 5363 java.lang.RuntimeException: Canvas: попытка нарисовать слишком большое (558306000 байт) растровое изображение. на android.view.DisplayListCanvas.throwIfCannotDraw (DisplayListCanvas.java:229) на android.view.RecordingCanvas.drawBitmap (RecordingCanvas.java:97) на android.graphics.drawable.BitmapDrawable.draw (BitmapDrawable.java:529) на android.view.View.getDrawableRenderNode (View.java:19450) на android.view.View.drawBackground (View.java:19386) на android.view.View.draw (View.java:19183) на android.view.View.updateDisplayListIfDirty (View.java:18142) на android.view.View.draw (View.java:18920) на android.view.ViewGroup.drawChild (ViewGroup.java:4236) на android.view.ViewGroup.dispatchDraw (ViewGroup.java:4022) на android.view.View.updateDisplayListIfDirty (View.java:18133) на android.view.View.draw (View.java:18920) на android.view.ViewGroup.drawChild (ViewGroup.java:4236) на android.view.ViewGroup.dispatchDraw (ViewGroup.java:4022) на android.view.View.updateDisplayListIfDirty (View.java:18133) на android.view.View.draw (View.java:18920) на android.view.ViewGroup.drawChild (ViewGroup.java:4236) на android.view.ViewGroup.dispatchDraw (ViewGroup.java:4022) на android.view.View.updateDisplayListIfDirty (View.java:18133) на android.view.View.draw (View.java:18920) на android.view.ViewGroup.drawChild (ViewGroup.java:4236) на android.view.ViewGroup.dispatchDraw (ViewGroup.java:4022) на android.view.View.updateDisplayListIfDirty (View.java:18133) на android.view.View.draw (View.java:18920) на android.view.ViewGroup.drawChild (ViewGroup.java:4236) на android.view.ViewGroup.dispatchDraw (ViewGroup.java:4022) на android.view.View.draw (View.java:19195) на com.android.internal.policy.DecorView.draw (DecorView.java:788) на android.view.View.updateDisplayListIfDirty (View.java:18142) на android.view.ThreadedRenderer.updateViewTreeDisplayList (ThreadedRenderer.java:669) на android.view.ThreadedRenderer.updateRootDisplayList (ThreadedRenderer.java:675) на android.view.ThreadedRenderer.draw (ThreadedRenderer.java:783) на android.view.ViewRootImpl.draw (ViewRootImpl.java:2992) на android.view.ViewRootImpl.performDraw (ViewRootImpl.java:2806) на android.view.ViewRootImpl.performTraversals (ViewRootImpl.java:2359) на android.view.ViewRootImpl.doTraversal (ViewRootImpl.java:1392) на android.view.ViewRootImpl $ TraversalRunnable.run (ViewRootImpl.java:6752) на android.view.Choreographer $ CallbackRecord.run (Хореограф.java:911) на android.view.Choreographer.doCallbacks (Choreographer.java:723) на android.view.Choreographer.doFrame (Хореограф.java:658) на android.view.Choreographer $ FrameDisplayEventReceiver.run (Choreographer.java:897) на android.os.Handler.handleCallback (Handler.java:790) на android.os.Handler.dispatchMessage (Handler.java:99) на android.os.Looper.loop (Looper.java:164) на android.app.ActivityThread.main (ActivityThread.java:6494) в java.lang.reflect.Method.invoke (родной метод) в com.android.internal.os.RuntimeInit $ MethodAndArgsCaller.run (RuntimeInit.java:438)на com.android.internal.os.ZygoteInit.main (ZygoteInit.java:807)

Ответы [ 4 ]

2 голосов
/ 14 марта 2019

Может быть два сценария.

1) у вас есть класс MainActivity.java, но вы не создали activity_main.xml, поэтому вы не объявили свою активность в манифесте Android.

2) У вас есть и класс java, и класс xml, но вы не объявили свою активность в манифесте Android.

ПРИМЕЧАНИЕ : Эта проблема возникает, только если вы забыли объявить свою активность в манифесте Android.

1 голос
/ 14 марта 2019

Следующие возможности для этой ошибки.

  1. Вы забыли продлить действие

    class MainActvity extends AppCompatActivity
    
  2. Вы используете неправильное имя пакета для регистрации своей активности

         <activity
            android:name="com.keval.raagbhandaar.MainActivity">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
    

Согласно названию вашего пакета:

MainActivity.java

package com.keval.raagbhandaar;

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

public class MainActivity extends AppCompatActivity {

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

AndroidManifest.xml

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

    <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">
        <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>
0 голосов
/ 14 марта 2019

Вы проверили свою ошибку в журнале java.lang.RuntimeException: Холст: попытка нарисовать слишком большое (558306000 байт) растровое изображение.на android.view.DisplayListCanvas.throwIfCannotDraw (DisplayListCanvas.java:229) на android.view.RecordingCanvas.drawBitmap (RecordingCanvas.java:97) на

Это говорит о том, что изображение, которое вы используете, имеет большой размер, пожалуйста, попробуйтеуменьшить размер изображения и запустить снова.Может быть, это будет работать

0 голосов
/ 14 марта 2019

.MainActivity ваш классный путь?

Вам необходимо задать полный путь, например, ".myfolder.MainActivity"?

...