2

I have a little issues with an GLSurfaceView, when I start my Activity I make the GLSurfaceView invisible with this line of code:

glSurface.setVisibility(View.INVISIBLE);

During this time I start an AsyncTask which downloads an Image from network, at this time, if I press the back button I meet this Exception:

java.lang.NullPointerException
E/AndroidRuntime( 1847):    at android.opengl.GLSurfaceView.onDetachedFromWindow(GLSurfaceView.java:530)
E/AndroidRuntime( 1847):    at android.view.View.dispatchDetachedFromWindow(View.java:6033)
E/AndroidRuntime( 1847):    at android.view.ViewGroup.dispatchDetachedFromWindow(ViewGroup.java:1156)
E/AndroidRuntime( 1847):    at android.view.ViewGroup.dispatchDetachedFromWindow(ViewGroup.java:1156)
E/AndroidRuntime( 1847):    at android.view.ViewGroup.dispatchDetachedFromWindow(ViewGroup.java:1156)
E/AndroidRuntime( 1847):    at android.view.ViewGroup.dispatchDetachedFromWindow(ViewGroup.java:1156)
E/AndroidRuntime( 1847):    at android.view.ViewRoot.dispatchDetachedFromWindow(ViewRoot.java:1630)
E/AndroidRuntime( 1847):    at android.view.ViewRoot.doDie(ViewRoot.java:2671)
E/AndroidRuntime( 1847):    at android.view.ViewRoot.die(ViewRoot.java:2641)
E/AndroidRuntime( 1847):    at android.view.WindowManagerImpl.removeViewImmediate(WindowManagerImpl.java:218)
E/AndroidRuntime( 1847):    at android.view.Window$LocalWindowManager.removeViewImmediate(Window.java:436)
E/AndroidRuntime( 1847):    at android.app.ActivityThread.handleDestroyActivity(ActivityThread.java:3684)
E/AndroidRuntime( 1847):    at android.app.ActivityThread.access$2900(ActivityThread.java:125)
E/AndroidRuntime( 1847):    at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2066)
E/AndroidRuntime( 1847):    at android.os.Handler.dispatchMessage(Handler.java:99)
E/AndroidRuntime( 1847):    at android.os.Looper.loop(Looper.java:123)
E/AndroidRuntime( 1847):    at android.app.ActivityThread.main(ActivityThread.java:4627)
E/AndroidRuntime( 1847):    at java.lang.reflect.Method.invokeNative(Native Method)
E/AndroidRuntime( 1847):    at java.lang.reflect.Method.invoke(Method.java:521)
E/AndroidRuntime( 1847):    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:868)
E/AndroidRuntime( 1847):    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626)
E/AndroidR

What's wrong?

pedr0
  • 2,941
  • 6
  • 32
  • 46

1 Answers1

2

It could be that you haven't set the renderer.

From the android reference:

 onDetachedFromWindow ()... Must not be called before a renderer has been set.

So, if you set the renderer (even if you aren't rendering anything yet), this might avoid the issue.

levis501
  • 4,117
  • 23
  • 25