Java 安卓网络视图应用赢得';I don’我不填表格

Java 安卓网络视图应用赢得';I don’我不填表格,java,android,webview,Java,Android,Webview,嗨,我一直在搜索,但找不到任何有帮助的东西 我正在为我们现有的网站创建一个android应用程序。网站本身会加载,但用户可以登录的主表单不会加载。有人知道这是怎么发生的吗? 该网站是 p、 这是我第一次制作android应用程序,如果这是一个显而易见的解决方案,我会感到非常抱歉 ProgressBar progressBar; WebView webView; @Override protected void onCreate(Bundle savedInstanceState) {

嗨,我一直在搜索,但找不到任何有帮助的东西

我正在为我们现有的网站创建一个android应用程序。网站本身会加载,但用户可以登录的主表单不会加载。有人知道这是怎么发生的吗? 该网站是

p、 这是我第一次制作android应用程序,如果这是一个显而易见的解决方案,我会感到非常抱歉

ProgressBar progressBar;


WebView webView;

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

    progressBar = (ProgressBar) findViewById(R.id.progressBar);

    webView = (WebView) findViewById(R.id.webView);

    if (savedInstanceState != null) {
        webView.restoreState(savedInstanceState);
    }
    else{
        webView.getSettings() .setJavaScriptEnabled(true);
        webView.getSettings() .setSupportZoom(false);
        webView.getSettings() .setBuiltInZoomControls(false);
        webView.getSettings() .setLoadWithOverviewMode(true);
        webView.getSettings() .setUseWideViewPort(true);
        webView.setScrollBarStyle(View.SCROLLBARS_INSIDE_OVERLAY);
        webView.setWebViewClient(new ourViewClient());
        webView.Settings.AllowContentAccess = true;

        webView.setWebChromeClient(new WebChromeClient(){
            public void onProgressChanged (WebView view, int progress){
                progressBar.setProgress(progress);
                if(progress < 100 && progressBar.getVisibility() == ProgressBar.GONE){
                    progressBar.setVisibility(ProgressBar.VISIBLE);
                }if(progress == 100){
                    progressBar.setVisibility(ProgressBar.GONE);
                }

                }
            }
        );}

        String data = getIntent() .getDataString();

        if(Intent.ACTION_VIEW.equals(getIntent() .getAction())){
            webView.loadUrl(data);
        }else{
            webView.loadUrl("https://one2ten-system.parseapp.com/v2");
        }

    }

public class ourViewClient extends WebViewClient {
    @Override
    public boolean shouldOverrideUrlLoading(WebView v, String url) {
        if (url.contains("one2ten-system.parseapp.com/v2")) {
            v.loadUrl(url);
            CookieManager.getInstance().setAcceptCookie(true);
        } else {
            Uri uri = Uri.parse(url);
            startActivity(Intent.createChooser(new Intent(Intent.ACTION_VIEW, uri), "Choose browser"));
        }
        return true;
    }

    @Override
    public void onPageFinished(WebView view, String url) {
        super.onPageFinished(view, url);
    }

}

    @Override
    public void onBackPressed() {
        if(webView.canGoBack()) {
            webView.goBack();
        } else {
            super.onBackPressed();
        }
    }

    @Override
public void onSaveInstanceState(Bundle outState){
    super.onSaveInstanceState(outState);
    webView.saveState(outState);
}
ProgressBar-ProgressBar;
网络视图;
@凌驾
创建时受保护的void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
progressBar=(progressBar)findViewById(R.id.progressBar);
webView=(webView)findviewbyd(R.id.webView);
如果(savedInstanceState!=null){
webView.restoreState(savedInstanceState);
}
否则{
webView.getSettings().setJavaScriptEnabled(true);
webView.getSettings().setSupportZoom(false);
webView.getSettings().SetBuilTinZoomControl(false);
webView.getSettings().setLoadWithOverview模式(true);
webView.getSettings().setUseWideViewPort(true);
webView.setScrollBarStyle(视图.滚动条\u内部\u覆盖);
setWebViewClient(新的ourViewClient());
webView.Settings.AllowContentAccess=true;
setWebView.WebChromeClient(新WebChromeClient(){
public void onProgressChanged(WebView视图,int-progress){
progressBar.setProgress(进度);
如果(进度<100&&progressBar.getVisibility()==progressBar.GONE){
progressBar.setVisibility(progressBar.VISIBLE);
}如果(进度==100){
progressBar.setVisibility(progressBar.GONE);
}
}
}
);}
字符串数据=getIntent().getDataString();
if(Intent.ACTION_VIEW.equals(getIntent().getAction())){
loadUrl(数据);
}否则{
webView.loadUrl(“https://one2ten-system.parseapp.com/v2");
}
}
公共类ourViewClient扩展了WebViewClient{
@凌驾
公共布尔值shouldOverrideUrlLoading(WebView v,字符串url){
if(url.contains(“one2ten system.parseapp.com/v2”)){
v、 加载url(url);
CookieManager.getInstance().setAcceptCookie(true);
}否则{
Uri=Uri.parse(url);
startActivity(Intent.createChooser(新Intent(Intent.ACTION_视图,uri),“选择浏览器”);
}
返回true;
}
@凌驾
公共void onPageFinished(WebView视图,字符串url){
super.onPageFinished(视图、url);
}
}
@凌驾
public void onBackPressed(){
if(webView.canGoBack()){
webView.goBack();
}否则{
super.onBackPressed();
}
}
@凌驾
SaveInstanceState上的公共无效(束超出状态){
super.onSaveInstanceState(超出状态);
webView.saveState(超出状态);
}

}

我发现了问题所在,忘记添加以下行:webView.getSettings().setDomStorageEnabled(true)

这使浏览器能够存储表单中的用户数据,例如,由于您登录到一个登录页面,因此浏览器需要这些数据

如果我的答案不完整,请让我知道!
谢谢

至少需要一些Android代码,您是如何将表单加载到
WebView
中的?您是否设置了webviewclient/webchromeclient?您在webView中启用JS了吗?对不起,我已经添加了mainActivity文件,但我已启用js@VladMatvienko对不起,我忘了提你那家伙的