내 응용 프로그램에서 webview를 사용하고 있습니다. Webview는 응용 프로그램 컨텍스트를 사용하여 만들어집니다. 앱은 내가이 질문은 이미 여러 번 요청을받은 것을 잘 알고있는 선택 상자webview에서 선택 상자를 클릭하면 응용 프로그램이 다운 됨
04-10 14:19:14.502: E/AndroidRuntime(12628): Uncaught handler: thread main exiting due to uncaught exception
04-10 14:19:14.542: E/AndroidRuntime(12628): android.view.WindowManager$BadTokenException: Unable to add window -- token null is not for an application
04-10 14:19:14.542: E/AndroidRuntime(12628): at android.view.ViewRoot.setView(ViewRoot.java:476)
04-10 14:19:14.542: E/AndroidRuntime(12628): at android.view.WindowManagerImpl.addView(WindowManagerImpl.java:177)
04-10 14:19:14.542: E/AndroidRuntime(12628): at android.view.WindowManagerImpl.addView(WindowManagerImpl.java:91)
04-10 14:19:14.542: E/AndroidRuntime(12628): at android.app.Dialog.show(Dialog.java:239)
04-10 14:19:14.542: E/AndroidRuntime(12628): at android.webkit.WebView$InvokeListBox.run(WebView.java:9509)
04-10 14:19:14.542: E/AndroidRuntime(12628): at android.os.Handler.handleCallback(Handler.java:609)
04-10 14:19:14.542: E/AndroidRuntime(12628): at android.os.Handler.dispatchMessage(Handler.java:92)
04-10 14:19:14.542: E/AndroidRuntime(12628): at android.os.Looper.loop(Looper.java:123)
04-10 14:19:14.542: E/AndroidRuntime(12628): at android.app.ActivityThread.main(ActivityThread.java:4595)
04-10 14:19:14.542: E/AndroidRuntime(12628): at java.lang.reflect.Method.invokeNative(Native Method)
04-10 14:19:14.542: E/AndroidRuntime(12628): at java.lang.reflect.Method.invoke(Method.java:521)
04-10 14:19:14.542: E/AndroidRuntime(12628): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:860)
04-10 14:19:14.542: E/AndroidRuntime(12628): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:618)
04-10 14:19:14.542: E/AndroidRuntime(12628): at dalvik.system.NativeStart.main(Native Method)
을 클릭에 충돌,하지만 난 어떤 작업 해결책을 찾기 위해 아직입니다. 활동 컨텍스트를 사용할 경우이 문제가 해결되지만 다른 고려 사항 때문에 응용 프로그램 컨텍스트를 사용해야합니다. 다른 경고 및 대화 상자의 경우 webchromeclient에서 onJsAlert()를 재정 의하여 처리했지만 웹 뷰에서이를 가로 채고 자신의 선택자 대화 상자를 만드는 방법을 찾을 수 없습니다.
모든 종류의 제안/도움을 많이 주시면 감사하겠습니다. 난 당신이 이러한 경우에 extends Activity
를 사용하고자하는
class MyWebView extends WebView
{
MyWebView(Context context)
{
super(context.getApplicationContext());
setWebChromeClient(myWebChromeClient);
setWebViewClient(myWebViewClient);
}
}
연장 된 내용은 Activity 또는 WebView입니까? – Bhavin
자사의 webview. 그것은 다른 activity.I에서 런타임에서 webview를 만드는 오전 (나는 그것에 대한 레이아웃을 사용하지 않고있다) 응용 프로그램 컨텍스트를 사용하여 – androgeek
당신이 그런 상황을 알고 있다면, 당신은 시도하고 있기 때문에 당신이 Application보다는 Activity 문맥을 사용해야한다. 활동이어야하는 UI 컨텍스트없이 일부 UI 작업을 수행 할 수 있습니다. –