繁体   English   中英

找不到类异常Android

[英]Class Not found Exception Android

我正在尝试学习android编程,并且正在创建一个以启动屏幕开头并在此之后加载菜单类的应用。 问题是我得到这个异常

06-04 10:59:37.166: E/AndroidRuntime(926): Caused by: java.lang.ClassNotFoundException: Didn't find class "com.em.example1.MENU" on path: /data/app/com.em.example1-1.apk

我了解异常的状态,但不了解为什么会发生这种情况。 在我的启动画面类中,我像这样加载Menu活动

protected void onCreate(Bundle savedInstanceState) {
    // TODO Auto-generated method stub
    super.onCreate(savedInstanceState);
    setContentView(R.layout.splash);
    Thread timer = new Thread() {
        public void run() {
            try {
                sleep(5000);
            } catch (InterruptedException e) {
                e.printStackTrace();
            } finally {
                Intent mainApp = new Intent("com.em.example1.MENU");
                startActivity(mainApp);

            }
        }
    };
    timer.start();

并在清单文件中定义菜单类,如下所示

    <activity
        android:name="com.em.example1.MENU"
        android:label="@string/app_name" >
        <intent-filter>
            <action android:name="com.em.example1.MENU" />

            <category android:name="android.intent.category.DEFAULT" />
        </intent-filter>
    </activity>

当我通过两个按钮和一个标签加载主要活动时,一切正常。 但是,当我更改它时(在我的启动屏幕活动中),这样它将加载菜单活动,但始终会出现此错误。

提前致谢

右键单击项目的goto属性。 Java构建路径。 选择订单导出标签。 确保已选择“ Android私有库”。 如果已引用库项目。 对库项目也要这样做。 清洁并建造。

也许你应该使用这个:

Intent mainApp = new Intent(this,com.em.example1.MENU.class);
startActivity(mainApp);

您可以使用此代码,我进行了一些更改。 可能对你有帮助

protected void onCreate(Bundle savedInstanceState) {
    // TODO Auto-generated method stub
    super.onCreate(savedInstanceState);
    setContentView(R.layout.splash);
    Thread timer = new Thread() {
        public void run() {
            try {
                sleep(5000);
            } catch (InterruptedException e) {
                e.printStackTrace();
            } finally {
                MENU.this.runOnUiThread(new Runnable() {

                    @Override
                    public void run() {
                        Intent mainApp = new Intent(MENU.this,com.em.example1.MENU.class);
                        MENU.this.startActivity(mainApp);
                    }
                });


            }
        }
    };
timer.start();

您列出的清单中清单中的f是什么? 您在寻找的是看到应用程序包名称是什么。

尝试更改清单文件中的这一行。

<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>

并且尝试这个东西

尝试转到“ Project -> Properties -> Java Build Path -> Order & Export并确保已为您的项目以及您正在使用的所有其他库项目检查了Android私有库。 之后清理所有项目 ,看看会发生什么。

事实证明,这个错误太简单了,无法实现……我在Android Manifest中将菜单Menu一词大写,而不仅是动作名称。 感谢您尝试帮助我大家

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM