Android Webview сохранить учетные данные пользователя и автологин - PullRequest
0 голосов
/ 21 сентября 2019

Привет, я создаю приложение для просмотра веб-страниц, используя веб-страницу с PHP-интерфейсом.Сценарий: пользователь открывает приложение и входит в систему со своими учетными данными, и в следующий раз, когда пользователь открывает приложение, пользователь должен получить автоматический вход в веб-приложение через веб-приложение для Android

Заранее спасибо.

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

        swipe = (SwipeRefreshLayout) findViewById(R.id.swipe);
        swipe.setOnRefreshListener(new SwipeRefreshLayout.OnRefreshListener() {
            @Override
            public void onRefresh() {
                LoadWeb(mWebView.getUrl());
            }
        });

        LoadWeb("https://codefeed.in/test_school_erp/end_user");

    }


    public void LoadWeb(String UrlToLoad)
    {
        mWebView = (WebView) findViewById(R.id.activity_main_webview);
        WebSettings webSettings = mWebView.getSettings();

        webSettings.setJavaScriptEnabled(true);
        mWebView.setWebChromeClient(new WebChromeClient());
        mWebView.loadUrl(UrlToLoad);

        swipe.setRefreshing(true);
        mWebView.setWebViewClient(new MyAppWebViewClient(){
            public void onReceivedError(WebView view,int errorCode,String description,String failingUrl)
            {
                mWebView.loadUrl("file:///android_asset/no_internet.html");
            }

            @Override
            public void onPageFinished(WebView view, String url)
            {
                swipe.setRefreshing(false);
                //Is the url the login-page? // used for creating autologin
                if (url.equals ("https://codefeed.in/test_school_erp/end_user") == true) {
                    SharedPreferences prefs = getPreferences(MODE_PRIVATE);
                    String usr= prefs.getString("usr", null);
                    String pwd= prefs.getString("pwd", null);
                    if (usr== null || pwd == null) {
                        //we  have no values - leave input fields blank
                        return;
                    }
          view.loadUrl("javascript:fillValues("+usr+","+pwd+");");

                }

            }

            public boolean shouldOverrideUrlLoading(WebView view, String url) {
                view.loadUrl(url);
                return true;
            }
        });

        mWebView.addJavascriptInterface(new JavaScriptInterface(), "Android");// used for creating autologin
    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...