Android WebView Set Login Status to True after Successful Login -
i’m using shared preferences store user data , set login status in web view app ecommerce website. user can either login via login url or @ checkout page. issue i’m facing can’t set login status “true” after user logged in can retrieve username keeps showing "false".
edit: after posting question able find part of solution login url set status true carturl isn't working. defined isredirected = true; , set condition right status.
i'm reposting code after edit:
public boolean shouldoverrideurlloading(webview view, string url) { log.e(tag, "should override url loading" + url); view.loadurl(url); isredirected = true; return true; } public void onpagefinished(webview view, string url) { //webview.setclickable(true);menubtn.setclickable(true);cartimg.setclickable(true);logoimg.setclickable(true); log.e(tag, "on page finished" + url); log.e(tag, "is logged in==" + isloggedin); isredirected = true; string isloggedin = "false"; if(url.equals(constants.accounturl) && isredirected && isloggedin.equals("false")) { log.e(tag, "reload"); //webview.loadurl(constants.accountediturl); sharedpreferences pref = getapplicationcontext().getsharedpreferences("login", mode_private); sharedpreferences.editor editor = pref.edit(); editor.putstring("islogedin", "true"); editor.commit(); setwelcome(); toast toast = toast.maketext(mainactivity.this, "you have signed in", toast.length_long); toast.setgravity(gravity.center, 0, 0); toast.show(); }; if(url.equals(constants.carturl) && isredirected && isloggedin.equals("false")) { log.e(tag, "cart login"); //webview.loadurl(constants.accountediturl); sharedpreferences pref = getapplicationcontext().getsharedpreferences("login", mode_private); sharedpreferences.editor editor = pref.edit(); editor.putstring("islogedin", "true"); editor.commit(); setwelcome(); toast toast = toast.maketext(mainactivity.this, "you have signed in", toast.length_long); toast.setgravity(gravity.center, 0, 0); toast.show(); }; //if(url.equals(constants.logouturl) && isloggedin.equals("true")) { if(url.equals(constants.logouturl)) { log.e(tag, "logging out-----------------"); sharedpreferences pref = getapplicationcontext().getsharedpreferences("login", mode_private); sharedpreferences.editor editor = pref.edit(); editor.putstring("islogedin", "false"); //editor.clear(); editor.commit(); setwelcome(); toast toast = toast.maketext(mainactivity.this, "you have logged out", toast.length_long); toast.setgravity(gravity.center, 0, 0); toast.show(); //return; } if(isloggedin.equals("true")) { log.e(tag, "in name-----------------"); mainview.addjavascriptinterface(new myjavascriptinterface(), "calltoanandroidfunction"); //string getnamejs = "(document.getelementbyid('input-firstname').value);"; string getnamejs = "(document.getelementbyid('app_customer_name').innerhtml);"; mainview.loadurl("javascript: window.calltoanandroidfunction.getusername" + getnamejs); } your highly appreciated, thank in advanced.
do mean string variable isloggedin false? mention assigning value variable isloggedin.
Comments
Post a Comment