I have initialized progressDialog with Activity's context as suggested and still app crashes a lot with "BadTokenException error".
Error log:
02-14 21:20:40.318: E/AndroidRuntime(17548): FATAL EXCEPTION: main
02-14 21:20:40.318: E/AndroidRuntime(17548): Process: com.xyz.abx.app, PID: 17548
02-14 21:20:40.318: E/AndroidRuntime(17548): android.view.WindowManager$BadTokenException: Unable to add window -- token android.os.BinderProxy@1494d8e8 is not valid; is your activity running?
02-14 21:20:40.318: E/AndroidRuntime(17548): at android.view.ViewRootImpl.setView(ViewRootImpl.java:562)
02-14 21:20:40.318: E/AndroidRuntime(17548): at android.view.WindowManagerGlobal.addView(WindowManagerGlobal.java:272)
02-14 21:20:40.318: E/AndroidRuntime(17548): at android.view.WindowManagerImpl.addView(WindowManagerImpl.java:69)
02-14 21:20:40.318: E/AndroidRuntime(17548): at android.app.Dialog.show(Dialog.java:298)
02-14 21:20:40.318: E/AndroidRuntime(17548): at com.payumoney.appower.app.PaymentWebView$2.onPageStarted(PaymentWebView.java:86)
02-14 21:20:40.318: E/AndroidRuntime(17548): at com.android.webview.chromium.WebViewContentsClientAdapter.onPageStarted(WebViewContentsClientAdapter.java:484)
02-14 21:20:40.318: E/AndroidRuntime(17548): at com.android.org.chromium.android_webview.AwContentsClientCallbackHelper$MyHandler.handleMessage(AwContentsClientCallbackHelper.java:107)
02-14 21:20:40.318: E/AndroidRuntime(17548): at android.os.Handler.dispatchMessage(Handler.java:102)
02-14 21:20:40.318: E/AndroidRuntime(17548): at android.os.Looper.loop(Looper.java:135)
02-14 21:20:40.318: E/AndroidRuntime(17548): at android.app.ActivityThread.main(ActivityThread.java:5221)
02-14 21:20:40.318: E/AndroidRuntime(17548): at java.lang.reflect.Method.invoke(Native Method)
02-14 21:20:40.318: E/AndroidRuntime(17548): at java.lang.reflect.Method.invoke(Method.java:372)
02-14 21:20:40.318: E/AndroidRuntime(17548): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:899)
02-14 21:20:40.318: E/AndroidRuntime(17548): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:694)
Crash occurs here:
@Override
public void onPageStarted(WebView view, String url, Bitmap favicon)
{
super.onPageStarted(view,url,favicon);
if (!progress.isShowing()&PaymentWebView.class!=null) {
progress.show();
}
}
and initializationin the oncreate:
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_payment_web_view);
progress = new ProgressDialog(this);
progress.setMessage("Please wait");
mWebview = (WebView)findViewById(R.id.paymentWebView);
mWebview.getSettings().setJavaScriptEnabled(true);
imm = (InputMethodManager)this.getSystemService(Context.INPUT_METHOD_SERVICE);
Bundle extras = getIntent().getExtras();
mWebview.getSettings().setJavaScriptEnabled(true);
mWebview.getSettings().setDomStorageEnabled(true);
`
I have also used Activity.this and getapplicationcontext without any result. Please suggest what might be crashing with badtokenexception on progressdialog when context is ok.enter code here