Password problem for saving password in Webview

I have a WebView inside DialogFragment showing the login page, after the user has entered the username and password, I will be prompted to save his password, but if the user rotates the phone at this moment, WebView , the request will be hidden for the user and thus not able to re-enter / re-write data as WebView off these functions, and in this particular case, when DialogFragment survives when changing the configuration, the user has won can not send data, even if I changed configuration again, and another n oblema is that the internal operating system is not restored more until I reconstruct all, for example, I'll leave WebView , and when I re-create it, the keyboard does not appear to change the configuration.

The crash log is as follows:

 12-24 08:36:21.694: E/WindowManager(21235): Activity com.example.twitterlibraryservice.MainActivity has leaked window com.android.internal.policy.impl.PhoneWindow$DecorView@45aef418 that was originally added here 12-24 08:36:21.694: E/WindowManager(21235): android.view.WindowLeaked: Activity com.example.twitterlibraryservice.MainActivity has leaked window com.android.internal.policy.impl.PhoneWindow$DecorView@45aef418 that was originally added here 12-24 08:36:21.694: E/WindowManager(21235): at android.view.ViewRoot.<init>(ViewRoot.java:255) 12-24 08:36:21.694: E/WindowManager(21235): at android.view.WindowManagerImpl.addView(WindowManagerImpl.java:148) 12-24 08:36:21.694: E/WindowManager(21235): at android.view.WindowManagerImpl.addView(WindowManagerImpl.java:91) 12-24 08:36:21.694: E/WindowManager(21235): at android.view.Window$LocalWindowManager.addView(Window.java:424) 12-24 08:36:21.694: E/WindowManager(21235): at android.app.Dialog.show(Dialog.java:241) 12-24 08:36:21.694: E/WindowManager(21235): at android.app.AlertDialog$Builder.show(AlertDialog.java:802) 12-24 08:36:21.694: E/WindowManager(21235): at android.webkit.WebView.onSavePassword(WebView.java:1065) 12-24 08:36:21.694: E/WindowManager(21235): at android.webkit.CallbackProxy.handleMessage(CallbackProxy.java:431) 12-24 08:36:21.694: E/WindowManager(21235): at android.os.Handler.dispatchMessage(Handler.java:99) 12-24 08:36:21.694: E/WindowManager(21235): at android.os.Looper.loop(Looper.java:143) 12-24 08:36:21.694: E/WindowManager(21235): at android.app.ActivityThread.main(ActivityThread.java:4717) 12-24 08:36:21.694: E/WindowManager(21235): at java.lang.reflect.Method.invokeNative(Native Method) 12-24 08:36:21.694: E/WindowManager(21235): at java.lang.reflect.Method.invoke(Method.java:521) 12-24 08:36:21.694: E/WindowManager(21235): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:860) 12-24 08:36:21.694: E/WindowManager(21235): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:618) 12-24 08:36:21.694: E/WindowManager(21235): at dalvik.system.NativeStart.main(Native Method) 

EDIT Fixed a WebView keyboard WebView with focus request after creating it.

 mWebView.requestFocus(); 
+4
source share
1 answer

I think your Activiy is not handling orientation changes. Therefore, the Android OS kills your activity and creates a new one with a new orientation.

You can try to call the dimiss method of your DialogFragment in onPause your activity.

This will probably fix the leak, but the behavior will probably not be what you expect.

0
source

All Articles