1.Webviewにはgoback
メソッドがあります。これをクリックするとウェブ状態を保存できます。webviewでリロードURLを最後に保存する方法
2.私のレイアウトはLinearlayoutであり、2つのボタンの上にwebviewがあります。
すべてのボタンはURLと一致します。また、私は、私は2番目のボタンをクリックした後、第二の形式に
を持っていない私は、最初のURLのフォームにいくつかの情報を書いた最初のURLの形式は
onKeyDown
方法でwebView.goBack()
を追加します 次に、最初のボタンをクリックしますが、URLはreload.butです。 をクリックするとフォーム情報が保存されます。 戻るボタンをクリックすると最後のフォーム情報を保存するようなフォーム情報を保存したい
前回フォーム情報を保存したいのですが、その方法は?
mWebView.getSettings().setCacheMode(WebSettings.LOAD_DEFAULT); // WebSettings.LOAD_CACHE_ELSE_NETWORK
をもアプリのキャッシュのパスの指定で保存する:
mWebView.getSettings().setAppCachePath(mContext.getCacheDir().getPath());
を、私に結果を伝える
私のコードはここに
private void checkone(String url) {
if (!Netutils.isNetworkAvalible(MyApplication.mcontext)) {
fl.removeAllViews();
webView.loadUrl(url);
webView.setVisibility(View.GONE);
webView.removeAllViews();
fl.setVisibility(View.VISIBLE);
fl.addView(mErrorView);
} else {
handler.postDelayed(new Runnable() {
@Override
public void run() {
fl.setVisibility(View.GONE);
webView.setVisibility(View.VISIBLE);
fl.removeAllViews();
}
},1000);
Map extraHeaders = new HashMap();
extraHeaders.put("Referer", "www.emiaoqian.com");
webView.loadUrl(url, extraHeaders);
settings = webView.getSettings();
settings.setBuiltInZoomControls(true);
settings.setUseWideViewPort(true);
settings.setJavaScriptEnabled(true);
settings.setSaveFormData(true);
settings.setCacheMode(WebSettings.LOAD_DEFAULT);
settings.setAppCachePath(MyApplication.mcontext.getCacheDir().getPath());
webView.setWebChromeClient(new ChomeClient(this) {
@Override
public void onProgressChanged(WebView view, int newProgress) {
currentProgress = pg1.getProgress();
if (newProgress >= 100 && !isAnimStart) {
isAnimStart = true;
pg1.setProgress(newProgress);
startDismissAnimation(pg1.getProgress());
} else {
startProgressAnimation(newProgress);
}
}
@Override
public void onReceivedTitle(WebView view, String title) {
super.onReceivedTitle(view, title);
if (title.contains("404")) {
showErrorPage();
}
}
});
settings.setAllowFileAccess(true);
settings.setAllowContentAccess(true);
settings.setDomStorageEnabled(true);
String ua = webView.getSettings().getUserAgentString();
webView.getSettings().setUserAgentString(ua.replace("Android", "emiaoqian"));
webView.setWebViewClient(new WebViewClient() {
@Override
public void onPageStarted(WebView view, String url, Bitmap favicon) {
pg1.setVisibility(View.VISIBLE);
pg1.setAlpha(1.0f);
}
@Override
public void onReceivedSslError(WebView view, SslErrorHandler handler, SslError error) {
handler.proceed();
}
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
if (url.startsWith("weixin://wap/pay?")) {
Intent intent = new Intent();
intent.setAction(Intent.ACTION_VIEW);
intent.setData(Uri.parse(url));
//startActivityForResult(intent,233);
startActivity(intent);
return true;
}
return super.shouldOverrideUrlLoading(view, url);
}
@Override
public void onPageFinished(WebView view, String url) {
if (Build.VERSION.SDK_INT < Build.VERSION_CODES.LOLLIPOP) {
CookieSyncManager.getInstance().sync();
} else {
CookieManager.getInstance().flush();
}
if (!(url.equals(Constants.LOGIN)) && !(url.equals(Constants.LOGINOUT))) {
if (homeTb != null && supportActionBar != null) {
supportActionBar.setDisplayHomeAsUpEnabled(false);
supportActionBar.setDisplayShowHomeEnabled(false);
homeTb.setTitle("");
}
radiogroup.setVisibility(View.VISIBLE);
nouserl.setVisibility(View.VISIBLE);
} else if (url.equals(Constants.LOGIN) || url.equals(Constants.LOGINOUT)) {
inittoolbar2();
radiogroup.setVisibility(View.GONE);
nouserl.setVisibility(View.GONE);
}
if (url.startsWith("https://wx.tenpay.com")) {
String newurl = url.substring(url.length() - 12, url.length());
LogUtil.e("--", newurl);
}
}
@Override
public void onReceivedError(WebView view, int errorCode, String description, String failingUrl) {
showErrorPage();
}
@Override
public void onReceivedError(WebView view, WebResourceRequest request, WebResourceError error) {
showErrorPage();
}
});
fixDirPath();
// webParentView = (LinearLayout) webView.getParent();
}
}
あなたは既にその質問をしています。新しい質問を作成する前に質問に答えてください。 https://stackoverflow.com/questions/46290821/how-to-save-forms-info-last-time-in-webview – Steven