@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 at 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 at java.lang.reflect.Method.invokeNative(Native Method)10 at java . lang.reflect.Method.invoke(Method.java:515)11 at com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run(ZygoteInit.java:786)12 at com.android.internal.os.ZygoteInit.main( ZygoteInit.java:602)13 at dalvik.system.NativeStart.main(Native Method)14引用者:android.view.WindowManager $ BadTokenException:无法添加窗口 - 令牌android.os.BinderProxy@41b9aca8无效;你的活动在运行吗? 15,在android.view.WindowManager全局 . 事件视图中的android.view.ViewRootImpl.setView(ViewRootImpl.java:561)16,android.view.WindowManagerImpl.addView(WindowManagerImpl.java:69)18 at android.app.Dialog.show(Dialog.java:287)19 org.opencv.android.BaseLoaderCallback.onPackageInstall(BaseLoaderCallback.java:110)20 at org.opencv.android.AsyncServiceHelper.InstallService(AsyncServiceHelper.java:116) 21 org.opencv.android.AsyncServiceHelper.initOpenCV(AsyncServiceHelper.java:32)22 at org.opencv.android.OpenCVLoader.initAsync(OpenCVLoader.java:60)23 at com.example.lowfreq.Sample.onResume(Sample . java:189)24在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的初始化方式是否有任何错误?
1 回答
尝试在
OpenCVLoader.initAsync(..)
中使用getApplicationContext()
而不是this
.原因:Should I use getApplicationContext or Activity.this in a long running AsyncTask