NoClassDefException,从另一个包活动开始 [英] NoClassDefException, starting activity from another package

查看:304
本文介绍了NoClassDefException,从另一个包活动开始的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

这是我第一次使用Eclipse ADT和我有开始从不同的包的新活动的相关问题。我试图启动 com.furgus.cam.CameraActivity com.furgus.swipe.LobbyActivity ,但我不断收到A 的NoClassDefFoundError 从失败正确链接我CameraActivity。我不完全相信什么,我做错了,我在指导的太大必要。


任何及所有帮助将大大AP preciated。谢谢。



AndroidManifest.xml中

 <清单的xmlns:机器人=htt​​p://schemas.android.com/apk/res/android
包=com.furgus
安卓版code =1
机器人:=的versionName1.0><用途-SDK
    安卓的minSdkVersion =14
    机器人:targetSdkVersion =17/><支持屏安卓:调整大小=真
                  机器人:smallScreens =真
                  机器人:normalScreens =真
                  机器人:largeScreens =真
                  机器人:anyDensity =真/><使用许可权的android:NAME =android.permission.INTERNET对/>
<使用许可权的android:NAME =android.permission.CAMERA/>
<使用特征的android:NAME =android.hardware.camera机器人:所需=FALSE/>
<使用特征的android:NAME =android.hardware.camera.autofocus机器人:所需=FALSE/>
<使用特征的android:NAME =android.hardware.camera.front机器人:所需=FALSE/>
<使用特征的android:NAME =android.hardware.camera.front.autofocus机器人:所需=FALSE/><应用
    机器人:allowBackup =真
    机器人:图标=@绘制/ ic_launcher
    机器人:标签=@字符串/ APP_NAME
    机器人:主题=@风格/ AppTheme>
    <服务
        机器人:名字=。swipe.SocketService
        机器人:图标=@绘制/ ic_launcher
        机器人:标签=socket_service>
    < /服务>
    <活动
        机器人:名字=。swipe.LobbyActivity
        机器人:标签=@字符串/ APP_NAME
        机器人:主题=@安卓风格/ Theme.NoTitleBar/>
    <活动
        机器人:cam.CameraActivityNAME =
        机器人:标签=@字符串/ APP_NAME
        机器人:screenOrientation =风景
        机器人:主题=@安卓风格/ Theme.Black.NoTitleBar.Fullscreen/>< /用途>

LobbyActivity.java

 如果(str.equalsIgnoreCase(KEY_START_GAME)){
        意图newIntent =新意图(背景下,CameraActivity.class);
        捆绑额外=新包();
        extras.putString(KEY_USERNAME,用户名);
        extras.putString(KEY_MATCH,匹配);
        extras.putString(KEY_TEAM,队);
        newIntent.putExtras(临时演员);
        startActivity(newIntent);
}

LogCat中

  02-18 13:51:00.909:I / dalvikvm(12358):无法解析LCOM / furgus / CAM / CameraActivity;接口695'Lorg / OpenCV的/安卓/ CameraBridgeViewBase $ CvCameraViewListener2;'
02-18 13:51:00.909:W / dalvikvm(12358):类链接LCOM / furgus / CAM / CameraActivity;'失败
02-18 13:51:00.909:E / dalvikvm(12358):找不到类的com.furgus.cam.CameraActivity,从法com.furgus.swipe.LobbyActivity.updateUI引用
02-18 13:51:00.909:W / dalvikvm(12358):VFY:无法解析常量级565(LCOM / furgus / CAM / CameraActivity;)在LCOM / furgus /滑动/ LobbyActivity;


解决方案

试试这个:

转到项目/属性/ Java构建路径/订单和出口 - 确保有一个在Android的依赖关系的正面和支持库进行检查,如果你使用it.Mark所有的复选框,并单击Apply和清理项目。

希望这有助于。

It's my first time using the Eclipse ADT and I'm having problems starting a new activity from a different package. I'm trying to start com.furgus.cam.CameraActivity from com.furgus.swipe.LobbyActivity but I keep getting a NoClassDefFoundError from failing to link my CameraActivity properly. I'm not exactly sure what I'm doing wrong and am in much need of guidance.

Any and all help would be greatly appreciated. Thanks.


AndroidManifest.xml

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.furgus"
android:versionCode="1"
android:versionName="1.0" >

<uses-sdk
    android:minSdkVersion="14"
    android:targetSdkVersion="17" />

<supports-screens android:resizeable="true"
                  android:smallScreens="true"
                  android:normalScreens="true"
                  android:largeScreens="true"
                  android:anyDensity="true" />

<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.CAMERA"/>
<uses-feature android:name="android.hardware.camera" android:required="false"/>
<uses-feature android:name="android.hardware.camera.autofocus" android:required="false"/>
<uses-feature android:name="android.hardware.camera.front" android:required="false"/>
<uses-feature android:name="android.hardware.camera.front.autofocus" android:required="false"/>

<application
    android:allowBackup="true"
    android:icon="@drawable/ic_launcher"
    android:label="@string/app_name"
    android:theme="@style/AppTheme" >
    <service
        android:name=".swipe.SocketService"
        android:icon="@drawable/ic_launcher"
        android:label="socket_service" >
    </service> 
    <activity
        android:name=".swipe.LobbyActivity"
        android:label="@string/app_name" 
        android:theme="@android:style/Theme.NoTitleBar" />
    <activity
        android:name=".cam.CameraActivity"
        android:label="@string/app_name"
        android:screenOrientation="landscape"
        android:theme="@android:style/Theme.Black.NoTitleBar.Fullscreen" />

</application>

LobbyActivity.java

if (str.equalsIgnoreCase(KEY_START_GAME)) {
        Intent newIntent = new Intent(CONTEXT, CameraActivity.class);
        Bundle extras = new Bundle();
        extras.putString(KEY_USERNAME, username);
        extras.putString(KEY_MATCH, match);
        extras.putString(KEY_TEAM, team);
        newIntent.putExtras(extras);
        startActivity(newIntent);
}

LogCat

02-18 13:51:00.909: I/dalvikvm(12358): Failed resolving Lcom/furgus/cam/CameraActivity; interface 695 'Lorg/opencv/android/CameraBridgeViewBase$CvCameraViewListener2;'
02-18 13:51:00.909: W/dalvikvm(12358): Link of class 'Lcom/furgus/cam/CameraActivity;' failed
02-18 13:51:00.909: E/dalvikvm(12358): Could not find class 'com.furgus.cam.CameraActivity', referenced from method com.furgus.swipe.LobbyActivity.updateUI
02-18 13:51:00.909: W/dalvikvm(12358): VFY: unable to resolve const-class 565 (Lcom/furgus/cam/CameraActivity;) in Lcom/furgus/swipe/LobbyActivity;

解决方案

Try this:

Go to Project/Properties/Java Build Path/Order and Export -- Make sure there's a check in front of Android Dependencies and the support library, if you use it.Mark all checkboxes and Click on Apply and clean the project.

Hope this helps.

这篇关于NoClassDefException,从另一个包活动开始的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆