2012-06-07 169 views
0

我的应用程序,主要基于OpenCV的样品(样品2摄像机)链接的OpenCV 2.4.0。无故障工作一个月左右后,我突然患上了可怕的"Dalvik error 1"问题。当通常的修复没有工作,我决定从头开始建立一个新的项目具有相同的源文件,希望可以解决这个问题...新建的Android应用程序构建,但是,推出崩溃

那么它建立,但在启动崩溃。这里的控制台内容:

06-07 14:01:01.383: D/dalvikvm(20915): Trying to load lib /data/data/barry.opencvdemo/lib/libopencv_java.so 0x4051c988 
06-07 14:01:02.204: D/dalvikvm(20915): Added shared lib /data/data/barry.opencvdemo/lib/libopencv_java.so 0x4051c988 
06-07 14:01:02.354: D/AndroidRuntime(20915): Shutting down VM 
06-07 14:01:02.354: W/dalvikvm(20915): threadid=1: thread exiting with uncaught exception (group=0x4001d5a0) 
06-07 14:01:02.374: E/AndroidRuntime(20915): FATAL EXCEPTION: main 
06-07 14:01:02.374: E/AndroidRuntime(20915): java.lang.RuntimeException: Unable to start activity ComponentInfo{barry.opencvdemo/barry.opencvdemo.Sample2NativeCamera}: java.lang.NullPointerException 
06-07 14:01:02.374: E/AndroidRuntime(20915): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1872) 
06-07 14:01:02.374: E/AndroidRuntime(20915): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1893) 
06-07 14:01:02.374: E/AndroidRuntime(20915): at android.app.ActivityThread.access$1500(ActivityThread.java:135) 
06-07 14:01:02.374: E/AndroidRuntime(20915): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1054) 
06-07 14:01:02.374: E/AndroidRuntime(20915): at android.os.Handler.dispatchMessage(Handler.java:99) 
06-07 14:01:02.374: E/AndroidRuntime(20915): at android.os.Looper.loop(Looper.java:150) 
06-07 14:01:02.374: E/AndroidRuntime(20915): at android.app.ActivityThread.main(ActivityThread.java:4385) 
06-07 14:01:02.374: E/AndroidRuntime(20915): at java.lang.reflect.Method.invokeNative(Native Method) 
06-07 14:01:02.374: E/AndroidRuntime(20915): at java.lang.reflect.Method.invoke(Method.java:507) 
06-07 14:01:02.374: E/AndroidRuntime(20915): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:849) 
06-07 14:01:02.374: E/AndroidRuntime(20915): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:607) 
06-07 14:01:02.374: E/AndroidRuntime(20915): at dalvik.system.NativeStart.main(Native Method) 
06-07 14:01:02.374: E/AndroidRuntime(20915): Caused by: java.lang.NullPointerException 
06-07 14:01:02.374: E/AndroidRuntime(20915): at barry.opencvdemo.Sample2NativeCamera.onCreate(Sample2NativeCamera.java:47) 
06-07 14:01:02.374: E/AndroidRuntime(20915): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1072) 
06-07 14:01:02.374: E/AndroidRuntime(20915): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1836) 
06-07 14:01:02.374: E/AndroidRuntime(20915): ... 11 more 

一切似乎是在正确的地方,并与正确的名称,但有些不工作。以上是否足以让某人指出我明显丢失的东西,或者是否应该发布一些源代码?代码本身工作......这是关于构建或我担心的链接的设置。

当神做点什么整个Dalvik的错误1业务我个人会很高兴。

非常感谢您的任何建议。

+0

请发布代码它崩溃! – Thkru

+0

请在这里提供Sample2NativeCamera.java代码 –

+2

在onCreate中的代码周围放置一个try catch块,并在catch中放置一个断点。你会发现异常。从异常日志中看起来您正在使用尚未初始化的对象/变量。 – Asdfg

回答

0

try catch block周围的代码onCreate将断点设置在catch。你会发现异常。从异常日志中看起来您正在使用尚未初始化的对象/变量。

0

这发生在你的应用程序遇到错误时,不知道该如何回应。正如之前所说的,你可以用try/catch块来包围代码的一部分。

此外:06-07 14:01:02.374: E/AndroidRuntime(20915): java.lang.RuntimeException: Unable to start activity ComponentInfo{barry.opencvdemo/barry.opencvdemo.Sample2NativeCamera}: java.lang.NullPointerException

这是解决你的问题的线索。 NullPointerException意味着一个类正在等待某个对象在某个地方,但是却得到了一个空值。

您可以尝试围绕你的代码与它的try/catch的一部分,或者只是把一些的System.out.println()四周,看看运行停止工作的位置。

希望这会有所帮助!