Android WebView请求,保存cookie,判断登录状态
来源:互联网 发布:聚推吧怎样下载软件 编辑:程序博客网 时间:2024/05/29 14:23
TestActivity.java
import org.apache.http.client.CookieStore;import org.apache.http.cookie.Cookie;import org.apache.http.impl.client.BasicCookieStore;import org.apache.http.impl.cookie.BasicClientCookie;import com.ydzy.machine.bean.DataCenter;import net.tsz.afinal.FinalHttp;import net.tsz.afinal.http.AjaxCallBack;import android.graphics.Bitmap;import android.os.Bundle;import android.view.View;import android.view.View.OnClickListener;import android.webkit.CookieManager;import android.webkit.CookieSyncManager;import android.webkit.WebView;import android.webkit.WebViewClient;public class TestActivity extends BaseActivity implements OnClickListener{WebView webView;@Overrideprotected void onCreate(Bundle savedInstanceState) {// TODO Auto-generated method stubsuper.onCreate(savedInstanceState);setContentView(R.layout.test);webView=(WebView) findViewById(R.id.web);webView.getSettings().setJavaScriptEnabled(true);//webView.addJavascriptInterface(this, "data");webView.getSettings().setJavaScriptCanOpenWindowsAutomatically(true);//允许js弹出窗口webView.getSettings().setUseWideViewPort(true);// 设置此属性,可任意比例缩放。webView.loadUrl("http://cangku.card-books.com/app_dev.php/login");webView.setWebViewClient(new WebViewClient(){@Overridepublic boolean shouldOverrideUrlLoading(WebView view, String url) {// TODO Auto-generated method stubview.loadUrl(url);return false;}@Overridepublic void onPageStarted(WebView view, String url, Bitmap favicon) {// TODO Auto-generated method stubsuper.onPageStarted(view, url, favicon);}@Overridepublic void onPageFinished(WebView view, String url) {// TODO Auto-generated method stubsuper.onPageFinished(view, url);//IWLog.d(TAG, "onPageFinished() url is:"+url); /* 将cookie保存起来*/ String c = CookieManager.getInstance().getCookie(url); System.out.println(c+"------c--->"); DataCenter.setCookie(c); CookieSyncManager.getInstance().sync(); }});}@Overridepublic void onClick(View v) {if(v.getId()==R.id.get_bt){System.out.println("--------->");FinalHttp fb=new FinalHttp();CookieStore cookieJar= new BasicCookieStore(); String _cookie = DataCenter.getCookie(); if(_cookie !=null && !_cookie.equals("")){ String[] cookies = _cookie.split(";"); for(int i=0; i< cookies.length; i++){ String[] nvp = cookies[i].split("="); System.out.println("-----nvp:"+nvp[0]+"---->"+nvp[1]); BasicClientCookie c = new BasicClientCookie(nvp[0], nvp[1]); c.setVersion(0); c.setDomain(".card-books.com");//这里是自己的主机地址 cookieJar.addCookie(c); } } // BasicClientCookie c = new BasicClientCookie("PHPSESSID","43ntd1pulgbo9s9ji5rdm3mve3");// cookieJar.addCookie(c);fb.configCookieStore(cookieJar);fb.get("http://cangku.card-books.com/app_dev.php/user/retrieve", new AjaxCallBack<Object>(){@Overridepublic void onStart() {// TODO Auto-generated method stubsuper.onStart();}@Overridepublic void onFailure(Throwable t, int errorNo, String strMsg) {// TODO Auto-generated method stubsuper.onFailure(t, errorNo, strMsg);showToast(TestActivity.this, t.toString()+"--fail->");System.out.println(t.toString()+"--fail->");}@Overridepublic void onSuccess(Object t) {// TODO Auto-generated method stubsuper.onSuccess(t);showToast(TestActivity.this, t.toString()+"--succ->");System.out.println(t.toString()+"--succ->");}});}}}
Sentence.java
public class Sentence{private int id;private String title;public int getId() {return id;}public void setId(int id) {this.id = id;}public String getTitle() {return title;}public void setTitle(String title) {this.title = title;}public Sentence(int id,String title){setId(id);setTitle(title);}}
test.xml
<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" > <Button android:layout_width="match_parent" android:layout_height="wrap_content" android:text="get" android:id="@+id/get_bt" android:onClick="onClick" /> <WebView android:layout_width="match_parent" android:layout_height="match_parent" android:id="@+id/web" /> </LinearLayout>
0 0
- Android WebView请求,保存cookie,判断登录状态
- Android WebView保存Cookie登录
- Android WebView保存Cookie登录
- Android 网页登录 POST 请求 保存 COOKIE
- Android 网页登录 POST 请求 保存 COOKIE
- Android 网页登录 POST 请求 保存 COOKIE
- cookie 保存登录状态
- android webview 保存cookie
- android webview 保存cookie
- android webview cookie保存
- Android 访问WebService登录通过Cookie保存登录状态
- 关于Android使用Xutils的WebView保存Cookie登录
- android WebView登录状态session id 和cookie同步
- Android WebView保存登陆cookie
- Android Cookie共享到WebView避免再次登录(保持登录状态)
- Android Cookie共享到WebView避免再次登录(保持登录状态)
- Android Cookie共享到WebView避免再次登录(保持登录状态)
- Servlet--保存cookie实现保存用户登录状态
- 精通有状态vs无状态(Stateful vs Stateless)—Immutable模式之姐妹篇
- [BZOJ]1103: [POI2007]大都市meg
- linux workqueue 工作原理
- hadoop2.2.0 边角料(三)
- Mac OS X 10.9下搭建java web开发环境之一 开启和配置本机的Apache服务
- Android WebView请求,保存cookie,判断登录状态
- 使用IniEditor读写INI类型配置文件
- 研究生导师的肺腑之言
- C++容器类
- DB2异常处理(摘抄)
- 被遗忘的C结构体打包技术
- 《Linux 性能及调优指南》1.4 硬盘I/O子系统
- activity-alias的使用
- c#基础知识