如果在webview应用程序到达特定页面时如何在java中编写代码,它应该使用android后退按钮退出应用程序?

时间:2015-11-17 09:02:34

标签: java android webview android-webview

我正在尝试在webview到达特定页面时在java中编写代码,例如索引它应该退出应用程序,但直到现在我都失败了。

这是我的代码: -

 @Override
public void onBackPressed() {
    if (mWebView.canGoBack()) {
        mWebView.goBack();
    } else {
        String url = "file:///android_asset/www/index.html" ;
        if (url.startsWith("file:///android_asset/www/index.html")) {
            new AlertDialog.Builder(this)
                    .setIcon(android.R.drawable.ic_dialog_alert)
                    .setTitle("Exit!")
                    .setMessage("Are you sure you want to close?")
                    .setPositiveButton("Yes", new DialogInterface.OnClickListener() {
                        @Override
                        public void onClick(DialogInterface dialog, int which) {
                            finish();
                        }

                    })
                    .setNegativeButton("No", null)
                    .show();

        }


    }
}

更新: - 问题已解决

这就是我所做的: -

    @Override
public void onBackPressed() {
        String url = mWebView.getUrl();;
        if (url.equals("file:///android_asset/www/index.html")) {
            new AlertDialog.Builder(this)
                    .setIcon(android.R.drawable.ic_dialog_alert)
                    .setTitle("Exit!")
                    .setMessage("Are you sure you want to close?")
                    .setPositiveButton("Yes", new DialogInterface.OnClickListener() {
                        @Override
                        public void onClick(DialogInterface dialog, int which) {
                            finish();
                        }

                    })
                    .setNegativeButton("No", null)
                    .show();

        }
    else {
            mWebView.goBack();
    }
}

希望它将来会帮助某人

1 个答案:

答案 0 :(得分:0)

你已经用完了。 finish()只完成当前活动,而不是所有活动。

因此,您必须完成应用程序的所有先前活动,因为当您从此活动完成时,它将退出应用程序。

否则,您没有退出应用程序的进程。请记住,exit()在android中不起作用。