Android(安卓)WebView请求,保存cookie,判断登录状态
16lz
2021-01-26
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
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"?>
更多相关文章
- webview导入H5小游戏
- Android----imageView实现图片的旋转和缩放
- data
- 用Android(安卓)写休闲拼图游戏(一)
- android手势缩放
- Android中属性动画2----ObjectAnimator监听的使用
- Android添加自己的属性
- Android(安卓)控件布局常用属性
- android 图片放大于缩小