webview 模拟登陆
来源:互联网 发布:c语言迷宫最短路径 编辑:程序博客网 时间:2024/06/03 23:01
好像网上很多这个资料,不过全一点的还是stackoverflow上的一个回答,可能不同后台的实际情况也有点不同,权当作是做一个笔记好了:
private class CookieTask extends AsyncTask<Boolean, Boolean, Boolean>{@Overrideprotected void onPreExecute(){CookieSyncManager.createInstance(Activity.this);CookieSyncManager.getInstance().startSync();}@Overrideprotected Boolean doInBackground(Boolean... params) {try{String cookie = doGetCookie();}catch(Exception e){return false;}if(cookie != null && cookie.length() > 0){android.webkit.CookieManager cookieManager = android.webkit.CookieManager.getInstance();cookieManager.setAcceptCookie(true);cookieManager.setCookie(getDefaultURL(), cookie);CookieSyncManager.getInstance().sync();}else{return false;}return true;}private String doGetCookie() throws Exception{StringBuilder builder = new StringBuilder();builder.append("n=").append("account");builder.append("&p=").append("password");byte[] data = builder.toString().getBytes("UTF-8");URL url=new URL(urlstr);HttpURLConnection connection = (HttpURLConnection) url.openConnection();try{connection.setDoOutput(true);connection.setRequestProperty("Content-Type", "application/x-www-form-urlencoded");connection.setRequestProperty("Content-Length", Integer.toString(data.length));connection.setRequestMethod("POST");connection.setInstanceFollowRedirects(false); OutputStream os = connection.getOutputStream();os.write(data);os.close();int aRstCode=connection.getResponseCode();if (aRstCode == HttpURLConnection.HTTP_OK){cookie = connection.getHeaderField("Set-Cookie");}}catch(Exception e){throw e;}finally{if(connection != null){connection.disconnect();}}return cookie;}@Overrideprotected void onPostExecute(Boolean isSccuess){super.onPostExecute(isSccuess);if(isSccuess){mWebView.loadUrl(getDefaultURL());}}}@Overrideprotected void onDestroy(){CookieSyncManager.createInstance(Activity.this); android.webkit.CookieManager cookieManager = android.webkit.CookieManager.getInstance(); cookieManager.removeAllCookie();CookieSyncManager.getInstance().sync();}
0 0
- webview 模拟登陆
- webView模拟登陆
- 模拟登陆
- 模拟登陆
- 模拟登陆
- 模拟登陆
- 模拟登陆
- 模拟登陆
- 实现WebView的免登陆
- Android WebView保存登陆cookie
- 模拟登陆os
- 模拟网站登陆
- SNOOPY 实现模拟登陆
- flex模拟登陆验证
- curl模拟登陆
- java如何模拟 登陆
- 用webbrowser模拟登陆
- java模拟登陆
- JAVA使用apache http组件发送POST请求
- Xmanager远程连接Linux服务器图形界面--DZY
- php异步http请求
- 基于jQury的UI框架 easyUI
- 手把手教你写Linux I2C设备驱动 tvp5158
- webview 模拟登陆
- easyUI 数据表格-datagrid
- 欢迎使用CSDN-markdown编辑器
- iOS开发7-分页栏与选取器
- 25. Remove Element
- 关于在Ubuntu下安装Java
- hdu 1863(prim&kruskal)
- 基于皮尔森相关系数的协同过滤算法
- DIRECTORY_SEPARATOR