Ich möchte eine statische Webseiten in einem Webview laden, damit ich es eine Website verwenden kann. aber die Anker-Links oder Redirects funktioniert nicht, wenn ich auf einen Link klicke, wird es nicht in der Webansicht geladen, aber es wird von einer anderen HTML-Viewer-App mit 404-Fehler geöffnet. Also möchte ich einfach jede URL in die Webansicht laden.laden statische Seiten in android webview
Aktivität:
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.webkit.WebView;
public class MainActivity extends AppCompatActivity {
WebView wb;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
wb = (WebView) findViewById(R.id.webview);
wb.getSettings().setJavaScriptEnabled(true);
wb.loadUrl("file:///android_asset/index.html");
}
}
index.html:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=edge"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<link rel="stylesheet" type="text/css" href="file:///android_asset/style.css"/>
<title></title>
</head>
<body>
<div class="container">
<div class="row">
<label for="username">USERNAME</label>
<input type="text" id="username" class="text-input"/>
</div>
<div class="row">
<label for="password">PASSWORD</label>
<input type="password" id="password" class="text-input"/>
</div>
<div class="row" id="error"></div>
<div class="row">
<button id="login" class="submit">LOGIN</button>
</div>
<a href="file:///android_asset/nearby.html">Next Page</a>
</div>
<script type="text/javascript" src="jquery-2.1.1.js"></script>
<script type="text/javascript">
$(document).ready(function(){
var errors = 0;
$('#login').click(function(e){
if(validate() === 0){
if($('#username').val() === 'user' && $('#password').val() === 'pass'){
window.location.href = 'file:///android_asset/nearby.html';
} else{
$('#error').html('username or password is incorrect !').show();
}
}
});
function validate(){
checkInput($('#username'));
checkInput($('#password'));
console.log(errors);
return errors;
};
function checkInput(element){
if(element.val() === ''){
element.css('border','2px solid #ff0000');
errors++;
} else{
element.css('border','none');
if(errors > 0)
errors = errors - 1;
}
};
});
</script>
</body>
</html>
sollte beispielsweise die Seite nearby.html
Seite umgeleitet werden, wenn der Benutzer die richtigen Werte von Benutzername und Passwort eingegeben, aber wie ich sagte vorher, die angeforderte Seite wird von einer anderen App mit einem 404 Fehler geöffnet.