`
iaiai
  • 浏览: 2203851 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

android webview里设置cookie

 
阅读更多
我们在android中访问网络经常会用到Apache的HttpClient,用此类去访问网络获取数据,

但是在写android界面的时候又时不时的会用到一些WebView组件,这时候访问一个以经登录的页面的时候cookie设置就有个问题

在HttpClient中保存下来的Cookie怎么设置到WebView组件里,让WebView也保持住Cookie状态,也就是登录状态呢?

CookieSyncManager和CookieManager就是做这种事的,下面来看代码里怎么设置Cookie让WebView也保持登录状态:

	/**
	 * 同步一下cookie
	 */
	public static void synCookies(Context context, String url) {
		CookieSyncManager.createInstance(context);
		CookieManager cookieManager = CookieManager.getInstance();
		cookieManager.setAcceptCookie(true);
		cookieManager.removeSessionCookie();//移除
		cookieManager.setCookie(url, cookies);//cookies是在HttpClient中获得的cookie
		CookieSyncManager.getInstance().sync();
	}

在android里面在调用webView.loadUrl(url)之前一句调用此方法就可以给WebView设置Cookie

注:这里一定要注意一点,在调用设置Cookie之后不能再设置
webView.getSettings().setBuiltInZoomControls(true);
webView.getSettings().setJavaScriptEnabled(true);

这类属性,否则设置Cookie无效。
分享到:
评论
1 楼 yehoubin 2013-06-03  
你好。我用你的方法好像不行。。。

相关推荐

    android cookie获取和设置,webView的cookie的同步

    ### Android Cookie 获取与设置以及 WebView 的 Cookie 同步 在 Android 开发中,Cookie 的管理和同步对于维护用户会话状态至关重要。特别是在使用 HttpClient 发起网络请求时,保持客户端与服务器端 Session 的...

    解决Android webview设置cookie和cookie丢失的问题

    解决Android webview设置cookie和cookie丢失的问题 Android webview是一个非常常用的技术,然而在使用中经常会遇到cookie丢失的问题,导致登陆失败等情况。今天,我们将探索解决Android webview设置cookie和cookie...

    原生登录cookie保持提供webview使用

    2. **设置WebView Cookie Manager**:Android 4.0及以上版本提供了`CookieManager`类,用于管理WebView的cookie。首先,你需要初始化`CookieManager`,启用第三方cookie支持,并清空旧的cookie存储。 ```java ...

    实例详解Android Webview拦截ajax请求

    Android Webview 拦截 Ajax 请求的详细讲解 Android Webview 提供了页面加载及资源请求的钩子,但是对于 H5 的 Ajax 请求并没有提供干涉的接口。这意味着我们不能在 Webview 中干涉 JavaScript 发起的 HTTP 请求,...

    android webview 因iframe+target=“_blank “ 导致的页面无法正常打开或获取不到调整url

    这可能涉及到对WebView的配置进行调试,如启用JavaScript支持,设置User-Agent,处理Cookie,以及处理混合内容等。 总的来说,处理`iframe + target="_blank"`在Android WebView中的问题需要对WebView的工作原理有...

    Android代码-Android-X5WebView基本封装

    Android-X5WebView基本封装和使用 通过OkHttp拦截器、自定义CookieJar有效完成客户端与H5端的Cookie同步管理 监听WebView的加载进度 滚动条的设置(隐藏或者显示,内侧显示还是外侧显示) 优化X5WebView的预加载问题...

    webview 设置cookie 拍照上传图片

    在Webview加载页面前,我们可以将这个cookie设置到Webview,这样再次加载页面时,Webview就会带着cookie请求,服务器识别到session后,就能保持用户的登录状态。 3. **拍照和选择相册图片上传** Android提供了`...

    android原生登录 +webview 记住登录状态

    在进行APP+H5混合开发的时候...这种情况在Android开发中比较常见,因为Android不会自动同步cookie到WebView。做iOS开发则不用担心这个问题,因为iOS内部已经实现了cookie同步.本文就是一个小的事例,从登录到同步cookie

    Android利用 webview 查看阅读pdf资料( 优化)

    6. **Webview配置**:调整Webview的其他设置,如设置JavaScript允许执行,禁用第三方Cookie,根据需要调整缩放等。 ```java webView.getSettings().setAllowFileAccess(true); webView.getSettings()....

    webview与服务器共享cookie操作

    3. **设置cookie**:一旦获取到cookie,我们需要将其设置到WebView中。在Android中,可以使用`WebSettings`的`setHttpCookieEnabled`方法开启cookie支持,然后通过`addHeader`或`setCookie`方法设置cookie。在iOS中...

    Android WebView 新浪微博自动登陆

    总之,实现Android WebView的新浪微博自动登录涉及WebView的初始化、JavaScript注入、Cookie管理以及登录状态的持久化。这个过程需要对Android开发、网络请求、以及可能的安全问题有深入理解。通过以上步骤,你可以...

    Andriod中WebView加载登录界面获取Cookie信息并同步保存,使第二次不用登录也可查看个人信息。

    Android使用WebView加载登录的html界面,则通过登录成功获取Cookie并同步,可以是下一次不用登录也可以查看到个人信息,注:如果初始化加载登录,可通过缓存Cookie信息来验证是否要加载登录界面。Cookie信息包含了你...

    Android Webview重定向问题解决方法

    在Android应用开发中,WebView是一个常用的组件,它允许我们在原生应用中内嵌网页内容。然而,当涉及到URL重定向时,可能会出现一些棘手的问题。这篇文章将详细讲解如何解决Android WebView的重定向问题。 首先,...

    Android_WebView安全攻防指南2020.pdf

    在Android应用程序开发中,WebView是不可或缺的一部分,它允许在应用内部加载和显示网页内容。然而,WebView也成为了安全问题的重灾区,因为它可能被攻击者利用来实施各种攻击。以下是一份详细的Android WebView安全...

    Android webView

    在Android开发中,WebView是一个非常重要的组件,它允许我们在应用程序内部加载和显示网页内容,而无需离开应用。WebView是Android SDK中的一个类,它继承自View,并实现了WebViewClient和WebChromeClient接口,使得...

    Android_WebView、Webkit内核深入讲解

    Android WebView 与 WebKit 内核深入讲解 Android WebView 是 Android 平台上的一种基于 WebKit 内核的浏览器控件,可以用来在移动应用程序中显示网页内容。WebKit 是一个开源的浏览器网页排版引擎,包含 WebCore ...

    android + h5 混合开发 webview 版 小实例 + 数据交互 + 界面交互+ js调用java +java 调用js

    在Android应用中,我们首先需要实例化WebView并将其添加到布局中,然后设置WebView的一些基本属性,例如启用JavaScript支持: ```java WebView webView = findViewById(R.id.web_view); webView.getSettings()....

Global site tag (gtag.js) - Google Analytics