【问题标题】:Unable to resume activity - Runtime exception无法恢复活动 - 运行时异常
【发布时间】:2015-01-29 08:20:24
【问题描述】:
     @Override
            public void onResume()
            {
                super.onResume();
                OpenCVLoader.initAsync(OpenCVLoader.OPENCV_VERSION_2_4_7, this, mLoaderCallback);
            }

            public void onDestroy() {
                super.onDestroy();

            }

        private BaseLoaderCallback  mLoaderCallback = new BaseLoaderCallback(this) {
                @Override
                public void onManagerConnected(int status) {
                    switch (status) {
                        case LoaderCallbackInterface.SUCCESS:
                        {

                            Log.i(TAG, "OpenCV loaded successfully...................");
                        }
  } 
                    default:
                    {
                        super.onManagerConnected(status);
                    } break;
                }
            }
        };

这是我的日志

0java.lang.RuntimeException:无法恢复活动 {com.example.lowfreq/com.example.lowfreq.Sample}: android.view.WindowManager$BadTokenException: 无法添加窗口 -- 令牌 android.os.BinderProxy@41b9aca8 无效;是你的活动 跑步? 1 在 android.app.ActivityThread.performResumeActivity(ActivityThread.java:2814) 2 在 android.app.ActivityThread.handleResumeActivity(ActivityThread.java:2843) 3 在 android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2278) 4 在 android.app.ActivityThread.access$800(ActivityThread.java:138) 5 在 android.app.ActivityThread$H.handleMessage(ActivityThread.java:1236) 6 在 android.os.Handler.dispatchMessage(Handler.java:102) 7 在 android.os.Looper.loop(Looper.java:149) 8 在 android.app.ActivityThread.main(ActivityThread.java:5045) 9 在 java.lang.reflect.Method.invokeNative(Native Method) 10 在 java.lang.reflect.Method.invoke(Method.java:515) 11 在 com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:786) 12 在 com.android.internal.os.ZygoteInit.main(ZygoteInit.java:602) 13 at dalvik.system.NativeStart.main(Native Method) 14Caused by: android.view.WindowManager$BadTokenException: 无法添加窗口 -- 令牌 android.os.BinderProxy@41b9aca8 无效;是你的活动 跑步? 15 在 android.view.ViewRootImpl.setView(ViewRootImpl.java:561) 16 在 android.view.WindowManagerGlobal.addView(WindowManagerGlobal.java:259) 17 在 android.view.WindowManagerImpl.addView(WindowManagerImpl.java:69) 18 在 android.app.Dialog.show(Dialog.java:287) 19 在 org.opencv.android.BaseLoaderCallback.onPackageInstall(BaseLoaderCallback.java:110) 20 在 org.opencv.android.AsyncServiceHelper.InstallService(AsyncServiceHelper.java:116) 21 在 org.opencv.android.AsyncServiceHelper.initOpenCV(AsyncServiceHelper.java:32) 22 在 org.opencv.android.OpenCVLoader.initAsync(OpenCVLoader.java:60) 23 at com.example.lowfreq.Sample.onResume(Sample.java:189) 24 at android.app.Instrumentation.callActivityOnResume(Instrumentation.java:1194) 25 在 android.app.Activity.performResume(Activity.java:5315) 26 在 android.app.ActivityThread.performResumeActivity(ActivityThread.java:2804)

OPEN CV的初始化方式是否有错误?

【问题讨论】:

    标签: android opencv


    【解决方案1】:

    尝试在OpenCVLoader.initAsync(..) 中使用getApplicationContext() 而不是this

    原因:Should I use getApplicationContext or Activity.this in a long running AsyncTask

    【讨论】:

    • 试过了,还是一样的异常
    • super.onManagerConnected(status) 在 switch case 之前调用,而不是在默认情况下调用它。
    猜你喜欢
    • 2016-05-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-19
    • 1970-01-01
    • 2015-01-31
    • 1970-01-01
    相关资源
    最近更新 更多