1

In my app I am having webview to load web pages Now I want to automatically login to the website loaded in the webview eg:Facebook.Help me to solve this.I am using Android Studio to develop app. This is my code.

public class MainActivity extends AppCompatActivity {
EditText url;
Button go;
WebView webView;
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    webView=(WebView)findViewById(R.id.wv);
    url=(EditText)findViewById(R.id.urlEdit);
    go=(Button)findViewById(R.id.goBut);
    webview.setWebViewClient(new WebViewClient());
    webView.getSettings().setJavaScriptEnabled(true);
    go.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {
            theWebsite=url.getText().toString();
            webView.loadUrl(theWebsite);
        }
    });
Dinesh S
  • 139
  • 2
  • 13

2 Answers2

2

step 1) first of all enable javascript in your webview

step 2) on onPageFinished using javascript autofill username and password field and generate click on login button

wv.loadUrl("javascript:document.getElementsByName('Username').value = 'abc'");
wv.loadUrl("javascript:document.getElementsByName('Pass').value = 'xyz'");
wv.loadUrl("javascript:document.forms['Login'].submit()");
0

This explanation helped me. Fill form in WebView with Javascript

view.evaluateJavascript(js, new ValueCallback<String>() {
                @Override
                public void onReceiveValue(String s) {
                }

instead of

view.loadUrl(js);

which is the answer I found everywhere else.

jerry
  • 1