Как установить куки для GeckoView?

У меня есть код 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 не влияет на загруженную страницу.


person Raisongran    schedule 01.05.2019    source источник
comment
Заявка на открытие задачи: bugzilla.mozilla.org/show_bug.cgi?format=default&id= 1035417   -  person Morrison Chang    schedule 02.05.2019


Ответы (1)


На данный момент GeckoView не поддерживает установку/получение файлов cookie (октябрь 2019 г.). Вы можете подписаться на эту ошибку или проголосовать за ее реализацию: https://bugzilla.mozilla.org/show_bug.cgi?id=1035417

person Agi Sferro    schedule 04.10.2019