Android WebView Set Cookie失败(sessionCookie)

时间:2014-01-20 12:27:20

标签: android cookies webview

我想设置会话Coockie

我在WebView中设置cookie时遇到问题。这是代码:

public View onCreateView(LayoutInflater inflater, ViewGroup parent, Bundle savedInstanceState){
    View v = inflater.inflate(R.layout.fragment_web, parent, false);

    String co = GlobalSession.SESSION_ID; //m4mg2aleunei8fad1lvn8h6n67
    String co_name = GlobalSession.COOKIE_NAME; //PHPSESSID

    //set and load web View

    CookieSyncManager cookieSyncManager = CookieSyncManager.createInstance(getActivity());
    CookieManager cookieManager = CookieManager.getInstance();
    cookieManager.setAcceptCookie(true);
    cookieManager.removeSessionCookie();
    cookieManager.setCookie("192.168.70.103", GlobalSession.SESSION_ID);
    cookieSyncManager.sync();



    WebView mView = new WebView(getActivity());
    mView = (WebView) v.findViewById(R.id.web_view);
    mView.getSettings().setJavaScriptEnabled(true);
    mView.setWebViewClient(new myWebViewClient());
    mView.loadUrl("http://192.168.70.103/test.php");

    return v;
}

在上一步中,我发送用户名并传递给服务器,服务器使用SESSSION_ID和COOKIE_NAME等参数回复我...

在test.php中的

我验证用户是否被挂起......好吧,不是,所以我假设设置cookie失败了。 如何正确设置cookie是我的问题。

1 个答案:

答案 0 :(得分:1)

您正在错误地设置Cookie。 使用以下语法:

cookieManager.setCookie("192.168.70.103", String.format("%s=%s", 
                  GlobalSession.COOKIE_NAME, GlobalSession.SESSION_ID));