gpt4 book ai didi

java - 如何防止 Android Webview 中特定 URL 的 GOBACK 按钮?

转载 作者:行者123 更新时间:2023-11-29 05:12:51 25 4
gpt4 key购买 nike

我有一个网络应用程序可以在我的 Android WebView 上正常运行。

这是我的 Android 应用程序启动器代码:

public class MainActivity extends Activity {

WebView webView;

private String urlAddress = "http://www.YourDomainName.com/TheLoginPage";
private String loadingTxt = "Loading";

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

Toast loadingMsg = Toast.makeText(this,
loadingTxt, Toast.LENGTH_SHORT);
loadingMsg.show();

webView = (WebView) findViewById(R.id.webview);
webView.getSettings().setJavaScriptEnabled(true);
webView.loadUrl(urlAddress);
webView.setWebViewClient(new myWebViewClient());
webView.setInitialScale(1);
webView.getSettings().setUseWideViewPort(true);
}

@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if (event.getAction() == KeyEvent.ACTION_DOWN) {
switch (keyCode) {
case KeyEvent.KEYCODE_BACK:
if (webView.canGoBack()) {
webView.goBack();
}
return true;
}
}
return super.onKeyDown(keyCode, event);
}

一切正常。

我的问题:WebView 中的默认起始页是 Web 应用程序登录页。成功登录过程后,我想阻止(内置)GO BACK 按钮返回默认起始页面(登录页面),因为我已成功登录?

注意:我仍然会使用GO BACK按钮返回网络应用程序的其余部分,或者如果我再次注销。

最佳答案

我是这样解决的,我添加了 if equals 语句来比较登录过程后页面的 URL 与 WebView URL,如果它们相同则不允许返回,并且一条消息“您已登录”,这样我就可以防止返回。这是代码,它对我有用:

@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if (event.getAction() == KeyEvent.ACTION_DOWN) {
switch (keyCode) {
case KeyEvent.KEYCODE_BACK:
String url = new String("http://www.YourDomainName.com/PageAfterSuccessfulLogin");
String webUrl = new String(webView.getUrl());

if (url.equals(webUrl)) {
Toast.makeText(this, "You are logged in",
Toast.LENGTH_SHORT).show();
} else {
if (webView.canGoBack()) {
Toast.makeText(this, "Back",
Toast.LENGTH_SHORT).show();
webView.goBack();
}
}
return true;
}
}
return super.onKeyDown(keyCode, event);
}

关于java - 如何防止 Android Webview 中特定 URL 的 GOBACK 按钮?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27738506/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com