Чтение и сохранение файлов cookie, созданных в WebView - PullRequest
2 голосов
/ 28 марта 2012

У меня есть приложение для Android, которое в основном использует WebView для всех взаимодействий ..

Как я могу получить доступ (прочитать) файлы cookie, которые созданы в WebView (если кто-то входит в систему) и чем их хранить где-то, может бытьв SharedPreferences, чтобы потом я мог их использовать.

Например ... при выходе из приложения ... я могу сказать: "Спасибо Mr.XYZ, вы действительно хотите выйти"

Здесьмой код ...

package com.example.hellowebview;

import android.app.Activity;
import android.app.AlertDialog;
import android.content.DialogInterface;
import android.os.Bundle;
import android.webkit.CookieSyncManager;
import android.webkit.WebView;
import android.webkit.WebViewClient;

public class HelloWebView extends Activity {
WebView webview;

private class HelloWebViewClient extends WebViewClient {
    @Override
    public boolean shouldOverrideUrlLoading(WebView view, String url) {
        view.loadUrl(url);
        return true;
    }

    public void onPageFinished(WebView view, String url) {
        CookieSyncManager.getInstance().sync();
    }

}

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    setContentView(R.layout.main);

    webview = (WebView) findViewById(R.id.webview);
    webview.setWebViewClient(new HelloWebViewClient(

    ));

    webview.getSettings().setJavaScriptEnabled(true);
    webview.loadUrl("http://www.mysite.com/mobile");
}

public void onBackPressed() {
    AlertDialog.Builder builder = new AlertDialog.Builder(this);
    builder.setMessage("Thank <<Name Cookie value from Webview >>>,do u really want to quit?")
            .setCancelable(false)
            .setPositiveButton("Yes",
                    new DialogInterface.OnClickListener() {
                        public void onClick(DialogInterface dialog, int id) {
                            finish();
                        }
                    })
            .setNegativeButton("No", new DialogInterface.OnClickListener() {
                public void onClick(DialogInterface dialog, int id) {
                    dialog.cancel();
                }
            });
    AlertDialog alert = builder.create();
    alert.show();
}

}

1 Ответ

1 голос
/ 28 марта 2012

Для работы с файлами cookie WebView вы можете использовать CookieManager, для которого есть несколько методов получения и установки.

http://developer.android.com/reference/android/webkit/CookieManager.html

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...