Android工作室说"Mainactivity is not declared in AndroidManifest.xml"?

Android Studio says"Mainactivity is not declared in AndroidManifest.xml"?

这是我的清单文件,当我 运行 它说 "Main Activity is not declared in AndroidManifest.xml"

的应用程序时

我试过重建,无效caches/restart,添加

<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:致命异常:main 进程: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(装饰View.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(Choreographer.java:911) 在 android.view.Choreographer.doCallbacks(Choreographer.java:723) 在 android.view.Choreographer.doFrame(Choreographer.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)

.MainActivity 是你的类路径吗?

您需要将整个路径设置为“.myfolder.MainActivity”吗?

此错误的可能性如下。

  1. 您忘记延长 Activity

    class MainActvity extends AppCompatActivity
    
  2. 您使用了错误的软件包名称来注册您的 activity

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

可能有两种情况。

1) 你有你的 MainActivity.java class 但你还没有创造 activity_main.xml 这就是为什么你没有在你的 [=24= 中声明你 Activity ] 清单。

2) 你有 java class 和 xml class 但你没有在 android 中声明你的 activity清单。

注意只有当您忘记在 android 清单中声明您的 activity 时才会出现此问题。

你检查过你的日志错误了吗 java.lang.RuntimeException:Canvas:试图绘制太大(558306000 字节)的位图。在 android.view.DisplayListCanvas.throwIfCannotDraw(DisplayListCanvas.java:229) 在 android.view.RecordingCanvas.drawBitmap(RecordingCanvas.java:97) 在

提示您使用的图片尺寸过大,请尝试缩小图片尺寸,然后重新运行。可能会奏效