Cant understand this stack trace
<p>I have a published app and received a stack trace from a crash:</p>

<pre><code>android.view.WindowManager$BadTokenException: Unable to add window -- token   
 android.os.BinderProxy@4051d698 is not valid; is your activity running?
at android.view.ViewRoot.setView(ViewRoot.java:535)
at android.view.WindowManagerImpl.addView(WindowManagerImpl.java:203)
at android.view.WindowManagerImpl.addView(WindowManagerImpl.java:117)
at android.view.Window$LocalWindowManager.addView(Window.java:424)
at android.app.Dialog.show(Dialog.java:241)
at android.app.ProgressDialog.show(ProgressDialog.java:107)
at android.app.ProgressDialog.show(ProgressDialog.java:90)
at com.mytaxicontrol.MyTaxiControlActivity$executeGEO.void onPreExecute()(Unknown Source)
at android.os.AsyncTask.execute(AsyncTask.java:391)
at com.mytaxicontrol.MyTaxiControlActivity$37.void run()(Unknown Source)
at android.app.Activity.runOnUiThread(Activity.java:3743)
at com.mytaxicontrol.MyTaxiControlActivity.void geo()(Unknown Source)
</code></pre>

<p>Looks like a progress Dialog can't be shown. Here's the relevant code:</p>

<pre><code>public void onPreExecute() {
        if(isGeoRunning)return; 

        if (loading == null || !loading.isShowing())
            loading = ProgressDialog.show(co, "",
                    "Retrieving Geolocation...", true);
    }
</code></pre>

<p>Note that co=this and has been initialized in onCreate()
What is my problem?</p>
