【问题标题】:How to set a cookie for GeckoView?如何为 GeckoView 设置 cookie?
【发布时间】:2019-05-01 20:35:30
【问题描述】:

我有一个 Android WebView 代码,我在其中设置了 cookie 值。但是,同样的操作在 Mozilla GeckoView 中不起作用。

使用 WebView 的工作示例:

public void onViewCreated(View view, @Nullable Bundle savedInstanceState) {
    super.onViewCreated(view, savedInstanceState);

    webView = view.findViewById(R.id.webView);
    webView.getSettings().setJavaScriptEnabled(true);

    final CookieSyncManager cookieSyncManager = CookieSyncManager.createInstance(getContext());
    final CookieManager cookieManager = CookieManager.getInstance();
    cookieManager.setAcceptCookie(true);

    cookieManager.setCookie(url, "sessionid=123; path=/");
    cookieSyncManager.sync();

    webView.loadUrl("https://example.com");
}

GeckoView 示例:

public void onViewCreated(View view, @Nullable Bundle savedInstanceState) {
    super.onViewCreated(view, savedInstanceState);

    webView = view.findViewById(R.id.webView); // GeckoView
    GeckoSession geckoSession = new GeckoSession();
    geckoSession.getSettings().setAllowJavascript(true);

    GeckoRuntimeSettings.Builder builder = new GeckoRuntimeSettings.Builder()
            .javaScriptEnabled(true);

    GeckoRuntime geckoRuntime = GeckoRuntime.create(Objects.requireNonNull(getContext()), builder.build());
    webView.setSession(geckoSession, geckoRuntime);

    final CookieSyncManager cookieSyncManager = CookieSyncManager.createInstance(getContext());
    final CookieManager cookieManager = CookieManager.getInstance();
    cookieManager.setAcceptCookie(true);

    cookieManager.setCookie(url, "sessionid=123; path=/");
    cookieSyncManager.sync();

    geckoSession.loadUri("https://example.com");
}

我没有收到任何错误,但 cookie 值不会影响加载的页面。

【问题讨论】:

标签: android gecko geckoview


【解决方案1】:

GeckoView 目前不支持设置/获取 cookie(2019 年 10 月)。你可以关注/投票这个错误来实现它:https://bugzilla.mozilla.org/show_bug.cgi?id=1035417

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-01-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-09-24
    • 1970-01-01
    相关资源
    最近更新 更多