So überwachen Sie die URL-Basis in WebView
Ich möchte also in der Lage sein, die URL zu überwachen, die meine WebView-Anwendung lädt. Das wichtigste Ziel ist es, das WebView auf einer bestimmten Website zu halten oder zumindest zu erkennen, wann der Benutzer die URL der Website verlässt.
Beispiel. Wenn ich die Basis-URL von www.google.com habe und der Nutzer auf Bilder klickt, erhält er "http://www.google.com/imghp"Es hat jedoch immer noch die Basis-URL von www.google.com. Sie können also überwachen, wann die Basis-URL nicht mehr www.google.com ist, z eine andere Website komplett.
Der Zweck ist, dass ich dem Benutzer einen Dialog oder Toast anzeigen möchte, um ihn zu informieren, dass er die Website verlässt, für die diese WebView-App erstellt wurde.
Jeder Code, Ideen oder Vorschläge wäre sehr dankbar.
Beispielcode
@Override
public void onLoadResource(WebView view, String url)
{
if (url.equals("http://www.google.com"))
{
//do your own thing here
view.loadUrl(url);
}
else
{
AlertDialog.Builder localBuilder2 = new AlertDialog.Builder(Webview_Main.this);
localBuilder2.setTitle("Hey Wait!");
localBuilder2.setMessage("You currently are about to leave the website\n\nIf you want to stay inside this website, Please click the Go Back button below");
localBuilder2.setIcon(R.drawable.ic_launcher);
localBuilder2.setPositiveButton("Go Back",
new DialogInterface.OnClickListener() {
public void onClick(
DialogInterface paramDialogInterface,
int paramInt) {
web.goBack();
}
});
localBuilder2.setNegativeButton("Continue",
new DialogInterface.OnClickListener() {
public void onClick(
DialogInterface paramDialogInterface,
int paramInt) {
}
});
localBuilder2.show();
};
super.onLoadResource(view, url);
}
Dieser obige Code funktioniert jedoch nicht, sondern zeigt immer wieder den Warnungsdialog an, da die URL möglicherweise anders ist.