首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Android : Magento 2电子商务网站无法在android Webview中运行

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

Stack Overflow用户
提问于 2016-12-01 12:12:45
回答 1查看 852关注 0票数 5

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

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

造成这个错误的原因是什么?我怎样才能解决这个问题?有人能帮我吗?

Android代码

代码语言:javascript
复制
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){


        }
EN

回答 1

Stack Overflow用户

发布于 2017-08-24 07:46:42

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

WebViewClientImpl.java

代码语言:javascript
复制
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;
    }
}

MainActivity.java

代码语言:javascript
复制
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);
    }
}

上面的代码在我的设备中工作得很好。

希望上面的答案对你有帮助。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40910378

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档