android studio中使用x5 webview來讀寫cookies的問題


本人新手,剛接觸AS也沒有多久,記錄下兩個問題.

1. 怎么在android studio中寫入cookies

把寫入cookies的動作放在了主界面的onCreate事件中了,看了騰訊的說明,說是要放在X5初始化完成以后,在這里應該已經初始化完成了.

         String url="http://wx.xxxxxxx.com.cn";
        com.tencent.smtt.sdk.CookieSyncManager.createInstance(this);
        com.tencent.smtt.sdk.CookieManager cm=com.tencent.smtt.sdk.CookieManager.getInstance();
        cm.setAcceptCookie(true);
        cm.setCookie(url,"uid=134xxxxxxxx");
        cm.setCookie(url,"pwd=wwwwwxxxxx");
        if (Build.VERSION.SDK_INT < 21) {
            com.tencent.smtt.sdk.CookieSyncManager.getInstance().sync();
        } else {
            com.tencent.smtt.sdk. CookieManager.getInstance().flush();
        }

然后在使用了X5 webview中的fargment中在頁面加載完成時,也能讀取到cookies的信息

            public void onPageFinished(WebView view, String url) {
                com.tencent.smtt.sdk.CookieManager cookieManager = com.tencent.smtt.sdk.CookieManager.getInstance();
                String CookieStr = cookieManager.getCookie(url);
                Log.e("uid", "Cookies = " + CookieStr);
                super.onPageFinished(view, url);
            }

雖然代碼很亂,但是基本上能用了

 

2. 怎么在asp.net的頁面中把cookies讀取出來的問題

發現讀取由app客戶端生成的cookies和網頁端生成兩者還是有區別的,主要是app客戶端生成的cookies有一堆cookies組成,讀取不方便,我笨也不知怎么組裝一個有名稱的cookies出來,只好把cookie都讀一次,能讀取到我設置的值,就認為它是可以用的,就像下邊,有好辦法的給回復一下.

Public Function ReadCookie() As String
        Dim username As String = ""
        Dim pass As String = ""
        For i = 0 To Request.Cookies.Count - 1
            Select Case Request.Cookies(i).Name
                Case "uid"
                    username = Request.Cookies(i).Values(0)
                Case "pwd"
                    pass = Request.Cookies(i).Values(0)
            End Select
        Next

        username = username & "--" & pass
        Return username
  End Function

這樣就讀取到了, 放在自己的網頁中使用了.

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM