单击android phonegap应用程序中的后退按钮时强制关闭

时间:2012-05-21 06:07:26

标签: javascript android cordova back-button

我使用html,css,javascript和创建了android phonegap应用程序     jquery。当我点击后退按钮时,我的应用程序被强行关闭。我的错误     logcat如下:

ERROR/AndroidRuntime(23383): FATAL EXCEPTION: main
    ERROR/AndroidRuntime(23383): android.view.WindowManager
    $BadTokenException: Unable to add window -- token
    android.os.BinderProxy@48c59828 is not valid; is your activity
    running?
    at android.view.ViewRoot.setView(ViewRoot.java:505)
    at android.view.WindowManagerImpl.addView(WindowManagerImpl.java:207)
    at android.view.WindowManagerImpl.addView(WindowManagerImpl.java:121)
    at android.view.Window$LocalWindowManager.addView(Window.java:424)
    at android.app.Dialog.show(Dialog.java:259)
    at android.app.AlertDialog$Builder.show(AlertDialog.java:802)
    at com.phonegap.DroidGap$GapClient.onJsAlert(DroidGap.java:983)
    at android.webkit.CallbackProxy.handleMessage(CallbackProxy.java:531)
    at android.os.Handler.dispatchMessage(Handler.java:99)
    at android.os.Looper.loop(Looper.java:123)
    at android.app.ActivityThread.main(ActivityThread.java:4632)
    at java.lang.reflect.Method.invokeNative(Native Method)
    at java.lang.reflect.Method.invoke(Method.java:521)
    at com.android.internal.os.ZygoteInit
    $MethodAndArgsCaller.run(ZygoteInit.java:871)
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:629)
    at dalvik.system.NativeStart.main(Native Method)
    ERROR/(1364): Dumpstate > /data/log/dumpstate_app_error

请在我错的地方指导我。谢谢。

3 个答案:

答案 0 :(得分:0)

android.os.BinderProxy@48c59828 is not valid; is your activity
running?

当某些close/finish正在运行时,当您尝试ProgressDialog活动时,通常会发生此错误。因此,您在解除Progress Dialog之前尝试finish() Activity。您应首先尝试关闭ProgressDialog,然后完成活动。

答案 1 :(得分:0)

在显示该对话框之前检查活动是否完成。

if (!isFinishing()) {
    showDialog(MY_DIALOG);
}

当后台线程尝试在UI线程退出时显示对话框时发生崩溃。

答案 2 :(得分:0)

$ BadTokenException:

由于上下文问题导致此类错误。 在代码中传递适当的上下文,