无论如何,重新打开网站时是否可以在浏览器中重新加载网站

时间:2019-06-08 14:24:22

标签: android browser android-webview

所以我的基本目标是在android studio中创建一个浏览器,并且我将默认网址设为google.com,并且还有一个搜索栏可用于输入任何网址。我要做的是,每当用户关闭应用程序时,下次关闭应用程序时,它都应重新加载上一个站点。例如,如果用户搜索Facebook.com并关闭该应用程序,则下次打开该应用程序时,应重新加载Facebook.com,而不是Google.com的首页

1 个答案:

答案 0 :(得分:0)

您可以每次手动保存webview的状态,然后使用SharedPreferences将其恢复。 保存退出前访问的最后一个URL用户,您可以这样:

@Override
protected void onPause() {
    super.onPause();
    SharedPreferences prefs = context.getSharedPreferences(context.getPackageName(), Activity.MODE_PRIVATE);
    Editor mEditor = prefs.edit();
    mEditor.put("lastUrlVisited", mWebView.getUrl());
    mEditor.commit();
}

要获取数据,可以将以下行添加到onCreate()方法中:

SharedPreferences prefs = context.getSharedPreferences(context.getPackageName(), Activity.MODE_PRIVATE);
String tmpURL = prefs.getString("lastUrlVisited", "");
if(!tmpURL.equals("")) {
    mWebView.loadUrl(tmpURL);
}

或者根据您的需要,可以在每次活动恢复时在onResume()方法中执行此操作:

@Override
protected void onResume() {
    super.onResume();
    SharedPreferences prefs = context.getSharedPreferences(context.getPackageName(), Activity.MODE_PRIVATE);
    String tmpURL = prefs.getString("lastUrlVisited", "");
    if(!tmpURL.equals("")) {
        mWebView.loadUrl(tmpURL);
    }
}