Look at these pieces of code:
Custom views and window attributes on Android
Problem
When I click 'Home button', exception
is thrown: Activity
has leaked window... from this line:
localWindowManager.addView(colourView, layoutParams);
Question(s)
Do you know what can cause it?
Problem doesn't occur, when I close application with back button.
Exception/Error Logs
W/InputManagerService( 96): Starting input on non-focused client com.android.internal.view.IInputMethodClient$Stub$Proxy@40908148 (uid=10056 pid=1368)
D/CordovaActivity( 1368): CordovaActivity.onDestroy()
D/CordovaWebView( 1368): >>> loadUrlNow()
E/WindowManager( 1368): Activity com.phonegap.helloworld.HelloWorld has leaked window pl.edu.uj.tcs.student.xxx.Display$Layer@40589368 that was originally added here
E/WindowManager( 1368): android.view.WindowLeaked: Activity com.phonegap.helloworld.HelloWorld has leaked window pl.edu.uj.tcs.student.xxx.Display$Layer@40589368 that was originally added here
E/WindowManager( 1368): at android.view.ViewRoot.<init>(ViewRoot.java:258)
E/WindowManager( 1368): at android.view.WindowManagerImpl.addView(WindowManagerImpl.java:148)
E/WindowManager( 1368): at android.view.WindowManagerImpl.addView(WindowManagerImpl.java:91)
E/WindowManager( 1368): at android.view.Window$LocalWindowManager.addView(Window.java:424)
E/WindowManager( 1368): at pl.edu.uj.tcs.student.xxx.Display.setColorsViews(Display.java:181)
E/WindowManager( 1368): at pl.edu.uj.tcs.student.xxx.Display$3.run(Display.java:139)
E/WindowManager( 1368): at android.os.Handler.handleCallback(Handler.java:587)
E/WindowManager( 1368): at android.os.Handler.dispatchMessage(Handler.java:92)
E/WindowManager( 1368): at android.os.Looper.loop(Looper.java:130)
E/WindowManager( 1368): at android.app.ActivityThread.main(ActivityThread.java:3683)
E/WindowManager( 1368): at java.lang.reflect.Method.invokeNative(NativeMethod)
E/WindowManager( 1368): at java.lang.reflect.Method.invoke(Method.java:507)
E/WindowManager( 1368): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:839)
E/WindowManager( 1368): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:597)
E/WindowManager( 1368): at dalvik.system.NativeStart.main(Native Method)
D/CordovaActivity( 1368): onMessage(onPageStarted,about:blank)
D/CordovaWebViewClient( 1368): onPageFinished(about:blank)
D/CordovaActivity( 1368): onMessage(onPageFinished,about:blank)
D/CordovaActivity( 1368): onMessage(exit,null)
I/power ( 96): *** set_screen_state 0
EDIT:
How can I add something to onPause(), onStop() etc. functions in Cordova Activity?
EDIT 2:
Why is that a problem? Because all I create is class that extends CordovaPlugin and small auxilary classes. That's all. I'm not able (I suppose) to modify Activity class body. All I can do is get reference to it by calling cordova.getActivity()
function.