Android:Magento 2电子商务网站无法在Android Webview中运行

Android:Magento 2电子商务网站无法在Android Webview中运行,android,webview,magento2,Android,Webview,Magento2,当我试图在androidWebView中加载Magento 2网站时,我收到以下错误消息: “无法发送cookie。cookie的最大数量为。” 超过。” 这个错误的原因是什么。?我怎样才能解决这个问题。? 谁能帮帮我吗 Android代码 WebView webView=(WebView) findViewById(R.id.disp); webView.getSettings().setJavaScriptEnabled(true); webView.getS

当我试图在android
WebView
中加载Magento 2网站时,我收到以下错误消息:

“无法发送cookie。cookie的最大数量为。” 超过。”

这个错误的原因是什么。?我怎样才能解决这个问题。? 谁能帮帮我吗

Android代码

WebView webView=(WebView) findViewById(R.id.disp);
        webView.getSettings().setJavaScriptEnabled(true);
        webView.getSettings().setLoadsImagesAutomatically(true);
        webView.getSettings().setLoadWithOverviewMode(true);
        webView.getSettings().setAppCacheEnabled(false);
        webView.getSettings().setAllowContentAccess(true);
        webView.getSettings().setAllowFileAccess(true);
        webView.setWebViewClient(new MyViewClient());
        try {
            webView.loadUrl("https://sweetroomksa.com/");
        }catch (Exception e){


        }

创建自定义WebViewClient类,然后尝试加载WebView url,如下所示:

WebViewClientImpl.java MainActivity.java 上述代码在我的设备中工作正常。

希望上面的答案能对您有所帮助。

您找到这个@sadia Qamar的答案了吗?请尝试清除cookies并重新加载页面。有一个如何做的例子that@VictorB清除cookie已解决错误,但它会造成一个主要影响,即如果我已经是登录用户,然后我返回并再次访问应用程序,它将清除会话并始终提示我再次登录。如果您仅在webview未使用时清除Cookie,该怎么办?同时尝试增加Magento中Cookie的最大数量,如使用相同代码中所述,但不幸的是,仍然会给我错误。
public class WebViewClientImpl extends WebViewClient {

    private Activity activity = null;

    public WebViewClientImpl(Activity activity) {
        this.activity = activity;
    }

    @Override
    public boolean shouldOverrideUrlLoading(WebView webView, String url) {
        if(url.indexOf("/sweetroomksa.com/") > -1 )
            return false;
        Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse(url));
        activity.startActivity(intent);
        return true;
    }
}
public class MainActivity extends AppCompatActivity {

    WebView webView;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        webView = (WebView) findViewById(R.id.webView);
        WebSettings webSettings = webView.getSettings();
        webSettings.setJavaScriptEnabled(true);

        WebViewClientImpl webViewClient = new WebViewClientImpl(this);
        webView.setWebViewClient(webViewClient);

        webView.loadUrl("https://sweetroomksa.com/");
    }
    @Override
    public boolean onKeyDown(int keyCode, KeyEvent event) {
        if ((keyCode == KeyEvent.KEYCODE_BACK) && this.webView.canGoBack()) {
            this.webView.goBack();
            return true;
        }

        return super.onKeyDown(keyCode, event);
    }
}