"ui";
importClass(java.io.File);
importPackage(android.text);
importPackage(android.text.style);
var storage = storages.create("悬浮窗信息");ui.layout(<vertical id="main" marginTop='0' padding="10 10 10 30" bg="#ff1e90ff"><text id="ua" marginTop='10'>ua</text><text id="缓存信息">缓存信息</text><text id="cookie信息" singleLine="true" ellipsize="end" >cookie信息</text><horizontal layout_width="wrap_content" weightSum="5" ><button id="切换UA" textSize="{{11}}" layout_weight="1">切换UA</button><button id="清除缓存" textSize="{{11}}" layout_weight="1">清除缓存</button><button id="刷新" textSize="{{11}}" layout_weight="1">刷新</button><button id="上一页" textSize="{{11}}" layout_weight="1">上一页</button><button id="下一页" textSize="{{11}}" layout_weight="1">下一页</button></horizontal><horizontal><frame layout_weight="1"><button id="百度网站">百度网站</button></frame><frame layout_weight="1"><button id="关闭" textColor='#ff0000'>关闭</button></frame><frame layout_weight="1"><button id="UA网站" >UA网站</button></frame></horizontal><webview id="a" h="450" w="350" /></vertical >
);http.__okhttp__.muteClient(new OkHttpClient.Builder().cookieJar(new org.autojs.autojs.network.util.WebkitCookieManagerProxy()))
var cookieManager = android.webkit.CookieManager.getInstance();
ui.a.getSettings().setJavaScriptEnabled(true);
var url = "https://www.baidu.com/"
// var url = "http://www.fynas.com/ua/view"
var webView = ui.a
webView.getSettings().setUserAgentString(随机UA());
setTimeout(显示手机UA, 1000)
ui.a.loadUrl(url);
var CookieStr = cookieManager.getCookie(url);
ui.切换UA.on("click", () => {toastLog('点击了\n切换UA')var webView = ui.awebView.getSettings().setUserAgentString(随机UA());setTimeout(显示手机UA, 1000)
})function 显示手机UA() {threads.start(function () {ui.run(function () {var ua = 获取手机ua()ui.ua.setText('UA: ' + ua)})})
}
setInterval(() => {var ua = 获取手机ua()ui.ua.setText('UA: ' + ua)var 缓存信息 = 当前缓存()ui.缓存信息.setText(缓存信息)var cookie信息 = 当前Cookie()ui.cookie信息.setText(cookie信息)var color = "#ff00ff"markSearch(ui.ua, "UA", color);markSearch(ui.缓存信息, "缓存", color);markSearch(ui.cookie信息, "cookie", color);}, 2000
)function 获取手机ua() {var webView = ui.avar ua = webView.settings.getUserAgentString();return ua
}ui.百度网站.on("click", () => {var url = "http://new.ykidjzqc.cn/JpfUz/mdmbdmjljvqkriCN.htm"ui.a.loadUrl(url);
})ui.UA网站.on("click", () => {var url = "http://www.fynas.com/ua/view"ui.a.loadUrl(url);
})ui.上一页.on("click", () => {var webView = ui.awebView.goBack();
})
ui.下一页.on("click", () => {var webView = ui.awebView.goForward();
})
ui.关闭.on("click", () => {ui.finish()
})ui.清除缓存.on("click", () => {toastLog('点击了\n清除缓存')log('清除缓存前cookie=')log(CookieStr)var webView = ui.a// 不让用js会白屏// webView.getSettings().setJavaScriptEnabled(false);var CookieStr = cookieManager.getCookie(url);cookieManager.removeSessionCookies(null);cookieManager.removeAllCookie();cookieManager.flush();webView.getSettings().setCacheMode(webView.settings.LOAD_NO_CACHE);context.deleteDatabase("WebView.db");context.deleteDatabase("WebViewCache.db");context.getCacheDir().delete();webView.clearCache(true);webView.clearFormData();webView.setWebChromeClient(null);webView.setWebViewClient(null);android.webkit.WebStorage.getInstance().deleteAllData(); //清空WebView的localStoragewebView.clearCache(true);CookieStr = cookieManager.getCookie(url);log('清除缓存后cookie=')log(CookieStr)
})
ui.刷新.on("click", () => {toastLog('点击了\n刷新')ui.run(() => {var webView = ui.awebView.reload()setTimeout(显示手机UA, 1000)});
})function 随机UA() {var uaArr = ["Mozilla/5.0 (iPhone; CPU iPhone OS 8_0 like Mac OS X) AppleWebKit/600.1.4 (KHTML, like Gecko) Mobile/12A365 MicroMessenger/5.4.1 NetType/WIFI","Mozilla/5.0 (Linux; U; Android 2.3.5; zh-cn; U8800 Build/HuaweiU8800) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1","Mozilla/5.0 (Linux; U; Android 2.3.5; zh-cn) AppleWebKit/530.17 (KHTML, like Gecko) FlyFlow/2.2 Version/4.0 Mobile Safari/530.17","Mozilla/5.0 (Linux; U; Android 2.3.5; zh-cn; U8800 Build/HuaweiU8800) UC AppleWebKit/534.31 (KHTML, like Gecko) Mobile Safari/534.31","Mozilla/5.0 (Linux; Android 4.0.3; M031 Build/IML74K) AppleWebKit/535.19 (KHTML, like Gecko) Chrome/18.0.1025.166 Mobile Safari/535.19"]// var uaArr=require('./uaArr.js')var uasLen = uaArr.lengthvar n = 随机数(uasLen)var ua = uaArr[n]return uafunction 随机数(max) {var r = parseInt(max * Math.random())return r}
}function 当前缓存() {var file3 = activity.getCacheDir();var file3Size = getFolderSize(file3)file3Size = conver(file3Size)var 当前缓存路径 = '缓存: ' + file3 + ': ' + file3Sizereturn 当前缓存路径
}
function 当前Cookie() {var CookieStr = cookieManager.getCookie(url);CookieStr = 'cookie: ' + CookieStrreturn CookieStr
}function getFolderSize(path) {var file = new File(path)var size = 0;try {var fileList = file.listFiles();for (var i = 0; i < fileList.length; i++) {if (fileList[i].isDirectory()) {size = size + getFolderSize(fileList[i]);} else {size = size + fileList[i].length();}}} catch (e) {log(e)}return size
}function conver(limit) {var size = "";if (limit < 0.1 * 1024) { //如果小于0.1KB转化成Bsize = limit.toFixed(2) + "B";} else if (limit < 0.1 * 1024 * 1024) { //如果小于0.1MB转化成KBsize = (limit / 1024).toFixed(2) + "KB";} else if (limit < 0.1 * 1024 * 1024 * 1024) { //如果小于0.1GB转化成MBsize = (limit / (1024 * 1024)).toFixed(2) + "MB";} else { //其他转化成GBsize = (limit / (1024 * 1024 * 1024)).toFixed(2) + "GB";}var sizestr = size + "";var len = sizestr.indexOf("\.");var dec = sizestr.substr(len + 1, 2);if (dec == "00") { //当小数点后为00时 去掉小数部分return sizestr.substring(0, len) + sizestr.substr(len + 3, 2);}return sizestr;
}
//删除指定文件夹下所有文件
//param path 文件夹完整绝对路径
function delAllFile(path) {var flag = false;var file = new File(path);if (!file.exists()) {return flag;}if (!file.isDirectory()) {return flag;}var tempList = file.list();var temp = null;for (var i = 0; i < tempList.length; i++) {if (path.endsWith(File.separator)) {temp = new File(path + tempList[i]);} else {temp = new File(path + File.separator + tempList[i]);}if (temp.isFile()) {temp.delete();}if (temp.isDirectory()) {delAllFile(path + "/" + tempList[i]); //先删除文件夹里面的文件files.remove(path + "/" + tempList[i]); //再删除空文件夹flag = true;}}return flag;
}function highlightText(text, start, length, color) {if (!(typeof (text) == 'object' && text.getClass().getName() == 'android.text.SpannableStringBuilder')) {text = new SpannableStringBuilder(text);}text.setSpan(new ForegroundColorSpan(colors.parseColor(color)), start, start + length, Spannable.SPAN_INCLUSIVE_INCLUSIVE);return text;
}function highlightView(view, start, length, color) {view.setText(highlightText(view.text(), start, length, color));
}function markSearch(view, keywords, color) {let textStr = view.text();let text = textStr;let i = -1;while (i < textStr.length - 1) {i = textStr.indexOf(keywords, i + 1);if (i >= 0) {text = highlightText(text, i, keywords.length, color);} else {break;}}view.setText(text);return text;
}

autojs 浏览器源码相关推荐

  1. linux 浏览器源码下载,Android开发:图片浏览器源码

    Android 图片浏览器源码,是你学习Android很好的例子,希望对你的学习有帮助. main.xml android:layout_width="fill_parent" a ...

  2. Java swing实现简单的浏览器源码免费分享

    ​此篇给大家分享一下Java swing写的一款简单的浏览器源码,实现了基本的浏览器功能,但是对最新的前端样式和js兼容比较差,用的内核是IE的比较老的,此外引入了eclipse的三个jar包,因为e ...

  3. java免费浏览器,Java swing实现简单的浏览器源码免费分享

    <p> <span style="color:#666666;font-family:"font-size:16px;background-color:#FFFF ...

  4. 一款非常不错的高仿UC浏览器源码下载

    今天给大家分享一款非常不错的android源码,这是我刚刚在网上找到的源码,高仿UC浏览器源码下载,希望大家能够喜欢. 源码下载: http://code.662p.com/view/1634.htm ...

  5. 谷歌chrome浏览器源码分析

    谷歌chrome浏览器源码分析 2016-01-21 15:24 55人阅读 评论(0) 收藏 举报  分类: C++(52)  转自CSDN 前言: 1.之所以整理此文,有俩个目的:一是为了供自己学 ...

  6. 炫酷星空个人主页动态特效引导页面 浏览器源码 手机自适应引导页HTML

    炫酷星空个人主页动态特效引导页面 浏览器源码 手机自适应引导页HTML 效果: 完整版 链接: https://pan.baidu.com/s/1DbGaiqB5-29uoVbPK0fxCw 提取码: ...

  7. android 浏览器源码分析,从源码出发深入理解 Android Service

    原标题:从源码出发深入理解 Android Service 原文链接: 建议在浏览器上打开,删除了大量代码细节,:) 本文是 Android 系统学习系列文章中的第三章节的内容,介绍了 Android ...

  8. google Chrome 浏览器源码地址地址!

    1. Google Chrome 源码 SVN 地址:http://src.chromium.org/svn.包含有 Chrome.Gears.Webkit.GCC 等源码以及编译依赖工具.Chrom ...

  9. WinForms C# :TabWebBrowser 多页面浏览器源码

    一个多页面浏览器的源码,原始代码地址:http://www.codeproject.com/csharp/MultiTabWebBrowser.asp 作者是:Ronit H 我做了部分修改,以下是界 ...

最新文章

  1. 【2020】清华大学《高级机器学习》课件和专家特邀报告(附pdf下载)
  2. gin获取post参数
  3. PMCAFF | 一个CRM产品大神的产品之路
  4. oracle的获取年月日时间,获取5年前日期
  5. 5.Maven和Eclipse整合(两种方式进行插件的安装),Maven相关设置,Eclipse下创建Maven项目
  6. python把c语言的.h文件转为c++的.cpp和.h文件
  7. adb(4)-应用管理
  8. [推荐] 世界上最健康的作息时间表
  9. const型数据小结
  10. 2020-08-24
  11. Docker容器的重启策略
  12. android view 平滑,Android移动view动画问题(让移动更平滑)
  13. SQLite 事务控制
  14. nodeJS之TCP模块net
  15. Spring Bean生命周期-prepareRefresh(二)
  16. php 百家姓,最新“百家姓”排名
  17. XYNUOJ 第四次比赛 懒省事得小名
  18. iOS APP上线 发布流程
  19. 计算机桌面进入安全模式,win7安全模式无法入桌面怎么办?无法进入桌面解法...
  20. 在美国,男 / 女卫生间(厕所)的正确称呼为什么?请用英语写出答案。

热门文章

  1. python周期函数,Python函数的周期性执行实现方法
  2. C#海康威视人脸设备-创建人脸信息,并同步到数据库2
  3. trumbowyg 超级轻量级文本编辑器使用说明
  4. Delphi Label显示多行文本的换行方法
  5. PLC实验--液体混合装置控制的模拟
  6. CSS基础选择器、字体和文本样式
  7. 计算机仿真思考题,化工计算机仿真思考题.doc
  8. 18第一章 ASP.Net内建对象
  9. 无法将“XXX”项识别为 cmdlet、函数、脚本文件或可运行程序的名称。 对这个问题的解决方法
  10. IDEA连接mysql总是让输入密码解决办法