| | |
| | | /** |
| | | * 读取IEC包中的res文件夹某个文件资源,并变成android的Bitmap对象返回 |
| | | * @param path res文件夹中的资源文件路径 |
| | | * @return Bitmap 图像对象或者null |
| | | * @return {null|Bitmap} 图像对象或者null |
| | | */ |
| | | UIWrapper.prototype.resResAsBitmap = function (path) { |
| | | if (uiWrapper == null) { |
| | |
| | | /** |
| | | * 读取IEC包中的res文件夹某个文件资源,并变成android的Drawable对象返回 |
| | | * @param path res文件夹中的资源文件路径 |
| | | * @return Drawable 图像对象或者null |
| | | * @return {null|Drawable} 图像对象或者null |
| | | */ |
| | | UIWrapper.prototype.resResAsDrawable = function (path) { |
| | | if (uiWrapper == null) { |
| | |
| | | /** |
| | | * 调试日志打印 |
| | | * @param msg 打印的消息 |
| | | * @return {null} |
| | | */ |
| | | UIWrapper.prototype.logd = function (msg) { |
| | | if (uiWrapper == null) { |
| | |
| | | * 创建一个布局并设置到当前的页面中 |
| | | * @param name tab标签的名称 |
| | | * @param content 可以是layout文件夹中的文件名称,也可以直接是xml文件的内容 |
| | | * @return 布尔型 true代表成功, false代表失败 |
| | | * @return {boolean} true代表成功, false代表失败 |
| | | */ |
| | | UIWrapper.prototype.layout = function (name, content) { |
| | | if (uiWrapper == null) { |
| | |
| | | /** |
| | | * 解析布局并返回 |
| | | * @param content 可以是layout文件夹中的文件名称,也可以直接是xml文件的内容 |
| | | * @return View android的View对象,解析有问题就是null |
| | | * @return {null|View} android的View对象,解析有问题就是null |
| | | */ |
| | | UIWrapper.prototype.parseView = function (content) { |
| | | if (uiWrapper == null) { |
| | |
| | | /** |
| | | * 通过tag查找到一个视图 |
| | | * @param tag 标签值 |
| | | * @return View android原生的View对象 |
| | | * @return {null|View} android原生的View对象 |
| | | */ |
| | | UIWrapper.prototype.findViewByTag = function (tag) { |
| | | if (uiWrapper == null) { |
| | |
| | | * @param view 要设置事件的视图,可以是事件的tag值 |
| | | * @param eventType 时间类型: click:点击,checkedChange:单选和多选按钮的选中状态改变事件,itemClick:列表的项目点击,itemSelected:列表的项目选中 |
| | | * @param eventCallback 事件回调函数 |
| | | * @return 布尔型 true代表设置成功, false代表设置失败 |
| | | * @return {boolean} true代表设置成功, false代表设置失败 |
| | | */ |
| | | UIWrapper.prototype.setEvent = function (view, eventType, eventCallback) { |
| | | if (uiWrapper == null || view == null) { |
| | |
| | | * 存储数据到存储区中,脚本可以使用 |
| | | * @param key 键 |
| | | * @param value 值 |
| | | * @return 布尔型 true成功 false失败 |
| | | * @return {boolean} true成功 false失败 |
| | | */ |
| | | UIWrapper.prototype.putShareData = function (key, value) { |
| | | return uiWrapper.putShareData2(key, value); |
| | |
| | | /** |
| | | * 从存储区获取在UI模块存储的数据 |
| | | * @param key 键 |
| | | * @return 存储的数据 |
| | | * @return {null|*} 存储的数据 |
| | | */ |
| | | UIWrapper.prototype.getShareData = function (key) { |
| | | return uiWrapper.getShareData2(key); |
| | |
| | | |
| | | /** |
| | | * 清理所有存储区的数据 |
| | | * @return true 或者 false |
| | | * @return {boolean} true 或者 false |
| | | */ |
| | | UIWrapper.prototype.clearAllShareData = function () { |
| | | return uiWrapper.clearAllShareData(); |
| | | } |
| | | /** |
| | | * 将所有的tag转换成UI的对象直接调用 |
| | | * @return {null} |
| | | */ |
| | | UIWrapper.prototype.resetUIVar = function () { |
| | | if (this.getActivity() == null) { |
| | |
| | | |
| | | /** |
| | | * 取得当前的activity对象 |
| | | * @return Activity 对象或者null |
| | | * @return {null|Activity} 对象或者null |
| | | */ |
| | | UIWrapper.prototype.getActivity = function () { |
| | | if (uiWrapper == null) { |
| | |
| | | } |
| | | return uiWrapper.getActivity(); |
| | | }; |
| | | /** |
| | | * |
| | | * @return {null|Context} |
| | | */ |
| | | UIWrapper.prototype.getContext = function () { |
| | | if (uiWrapper == null) { |
| | | return null; |
| | |
| | | }; |
| | | /** |
| | | * 取得当前的Handler对象 |
| | | * @return Handler 对象或者null |
| | | * @return {null|Handler} 对象或者null |
| | | */ |
| | | UIWrapper.prototype.getHandler = function () { |
| | | if (uiWrapper == null) { |
| | |
| | | |
| | | /** |
| | | * 取得当前的根视图对象,因为有可能是多标签的页面,返回的有可能是个集合 |
| | | * @return View 对象列表 |
| | | * @return {null|View[]} 对象列表 |
| | | */ |
| | | UIWrapper.prototype.getRootView = function () { |
| | | if (uiWrapper == null) { |
| | |
| | | |
| | | /** |
| | | * 启动脚本 |
| | | * @return 布尔型 true代表成功 false代表失败 |
| | | * @return {boolean} true代表成功 false代表失败 |
| | | */ |
| | | UIWrapper.prototype.start = function () { |
| | | if (uiWrapper == null) { |
| | |
| | | |
| | | /** |
| | | * 是否有浮窗权限 |
| | | * @return 布尔型 true代表有权限 false代表无权限 |
| | | * @return {boolean} true代表有权限 false代表无权限 |
| | | */ |
| | | UIWrapper.prototype.hasFloatViewPermission = function () { |
| | | if (uiWrapper == null) { |
| | |
| | | * 异步请求浮窗权限 |
| | | * @param timeout 超时时间 |
| | | * @param callback 回调函数 |
| | | * @return 布尔型 true代表有权限 false代表无权限 |
| | | * @return {boolean} true代表有权限 false代表无权限 |
| | | */ |
| | | UIWrapper.prototype.requestFloatViewPermissionAsync = function (timeout, callback) { |
| | | if (uiWrapper == null) { |
| | |
| | | }; |
| | | /** |
| | | * 取得所有UI配置 |
| | | * @return JSON字符串 |
| | | * @return {null|string} JSON字符串 |
| | | */ |
| | | UIWrapper.prototype.getConfigJSON = function () { |
| | | if (uiWrapper == null) { |
| | |
| | | /** |
| | | * 取得单个UI配置项 |
| | | * @param key 配置的key |
| | | * @return 字符串 |
| | | * @return {null|string} 字符串 |
| | | */ |
| | | UIWrapper.prototype.getConfig = function (key) { |
| | | if (uiWrapper == null) { |
| | |
| | | }; |
| | | /** |
| | | * 打开EC的系统设置 |
| | | * @return 布尔型 true代表成功 false代表失败 |
| | | * @return {boolean} true代表成功 false代表失败 |
| | | */ |
| | | UIWrapper.prototype.openECSystemSetting = function () { |
| | | if (uiWrapper == null) { |
| | |
| | | * 保存UI参数值 |
| | | * @param key UI的key |
| | | * @param value UI的值 |
| | | * @return 布尔型 true代表成功 false代表失败 |
| | | * @return {boolean} true代表成功 false代表失败 |
| | | */ |
| | | UIWrapper.prototype.saveConfig = function (key, value) { |
| | | if (uiWrapper == null) { |
| | |
| | | }; |
| | | /** |
| | | * 移出所有保存的UI参数值 |
| | | * @return 布尔型 true代表成功 false代表失败 |
| | | * @return {boolean} true代表成功 false代表失败 |
| | | */ |
| | | UIWrapper.prototype.removeAllUIConfig = function () { |
| | | if (uiWrapper == null) { |
| | |
| | | |
| | | /** |
| | | * 根据设置的tag,保存所有配置 |
| | | * @return 布尔型 true 保存成功,false 保存失败 |
| | | * @return {boolean} true 保存成功,false 保存失败 |
| | | */ |
| | | UIWrapper.prototype.saveAllConfig = function () { |
| | | if (uiWrapper == null) { |
| | |
| | | * 设置视图的值 |
| | | * @param tagOrView 视图的tag或者视图对象 |
| | | * @param value 值,字符串或者是布尔型 |
| | | * @return 布尔型 true代表成功 false代表失败 |
| | | * @return {boolean} true代表成功 false代表失败 |
| | | */ |
| | | UIWrapper.prototype.setViewValue = function (tagOrView, value) { |
| | | if (uiWrapper == null) { |
| | |
| | | /** |
| | | * 取得视图的值 |
| | | * @param tagOrView 视图的tag或者视图对象 |
| | | * @return 字符串或者布尔型 |
| | | * @return {null|boolean|string|number|*} 字符串或者布尔型 |
| | | */ |
| | | UIWrapper.prototype.getViewValue = function (tagOrView) { |
| | | if (uiWrapper == null) { |
| | |
| | | |
| | | /** |
| | | * 是否是无障碍运行模式 |
| | | * @return 布尔型 true 是 false 否 |
| | | * @return {boolean} true 是 false 否 |
| | | */ |
| | | UIWrapper.prototype.isAccMode = function () { |
| | | if (uiWrapper == null) { |
| | |
| | | }; |
| | | /** |
| | | * 是否是代理运行模式 |
| | | * @return 布尔型 true 是 false 否 |
| | | * @return {boolean} true 是 false 否 |
| | | */ |
| | | UIWrapper.prototype.isAgentMode = function () { |
| | | if (uiWrapper == null) { |
| | |
| | | }; |
| | | /** |
| | | * 自动化服务是否正常 |
| | | * @return 布尔型 true 是 false 否 |
| | | * @return {boolean} true 是 false 否 |
| | | */ |
| | | UIWrapper.prototype.isServiceOk = function () { |
| | | if (uiWrapper == null) { |
| | |
| | | /** |
| | | * 设置运行模式 |
| | | * @param mode 1 代表是代理模式 2 代表无障碍模式 |
| | | * @return 布尔型 true 是 false 否 |
| | | * @return {boolean} true 是 false 否 |
| | | */ |
| | | UIWrapper.prototype.setRunningMode = function (mode) { |
| | | if (uiWrapper == null) { |
| | |
| | | * log_float_window : 日志悬浮窗展示 值有 是,否 两种 |
| | | * ctrl_float_window : 启停控制悬浮窗展示 值有 是,否 两种 |
| | | * |
| | | * @return 布尔型 true 是 false 否 |
| | | * @return {boolean} true 是 false 否 |
| | | */ |
| | | UIWrapper.prototype.setECSystemConfig = function (params) { |
| | | if (uiWrapper == null) { |
| | |
| | | |
| | | /** |
| | | * 启动环境 |
| | | * @return 布尔型 true代表启动成功,false代表启动失败 |
| | | * @return {boolean} true代表启动成功,false代表启动失败 |
| | | */ |
| | | UIWrapper.prototype.startEnv = function () { |
| | | if (uiWrapper == null) { |
| | |
| | | |
| | | |
| | | /** |
| | | * 设置代理模式下获取节点方式 |
| | | * 该方法仅对代理模式生效 |
| | | * 该方法在启动代理服务之前调用,使用2和3 可以减少检测的特征 |
| | | * 1的方式会出现 ruru检测出 AccessibilityManager.isEnabled,2和其他的方式不会出现 |
| | | * 1的方式节点能力交强,2节点功能较弱,0和3 就没有节点功能 |
| | | * @param support 1 类似无障碍一样的方式, 2 shell dump的的方式,3或者0 不开启节点服务 |
| | | * @return {boolean} true |
| | | */ |
| | | UIWrapper.prototype.setAgentSupportNode = function (support) { |
| | | if (uiWrapper == null) { |
| | | return null; |
| | | } |
| | | return uiWrapper.setAgentSupportNode(support+""); |
| | | }; |
| | | |
| | | |
| | | /** |
| | | * 开启一个定时任务 |
| | | * @param tag |
| | | * @param execTime 定时时间格式: 2020-04-17 19:20:00,或者直接是秒数字,例如 3,代表3秒后 |
| | | * @param cancelBeforeRunning 是否取消之前的任务 |
| | | * @return 整型 jobid |
| | | * @return {number} jobid |
| | | */ |
| | | UIWrapper.prototype.startJob = function (tag, execTime, cancelBeforeRunning) { |
| | | if (uiWrapper == null) { |
| | |
| | | }; |
| | | /** |
| | | * 取消所有的定时任务 |
| | | * @return 布尔型 true代表成功,false代表失败 |
| | | * @return {boolean} true代表成功,false代表失败 |
| | | */ |
| | | UIWrapper.prototype.cancelAllJob = function () { |
| | | if (uiWrapper == null) { |
| | |
| | | /** |
| | | * 取消指定标签的任务 |
| | | * @param tag 标签 |
| | | * @return 布尔型 true代表成功,false代表失败 |
| | | * @return {boolean} true代表成功,false代表失败 |
| | | */ |
| | | UIWrapper.prototype.cancelJob = function (tag) { |
| | | if (uiWrapper == null) { |
| | |
| | | }; |
| | | /** |
| | | * 获取所有定时任务TAG |
| | | * @return JSON字符串 |
| | | * @return {null|string} JSON字符串 |
| | | */ |
| | | UIWrapper.prototype.getAllJobTag = function () { |
| | | if (uiWrapper == null) { |
| | |
| | | }; |
| | | /** |
| | | * 停止当前运行的测试任务 |
| | | * @return 布尔型 true代表成功,false代表失败 |
| | | * @return {boolean} true代表成功,false代表失败 |
| | | */ |
| | | UIWrapper.prototype.stopTask = function () { |
| | | if (uiWrapper == null) { |
| | |
| | | }; |
| | | /** |
| | | * 显示日志浮窗 |
| | | * @return 布尔型 true代表成功,false代表失败 |
| | | * @return {boolean} true代表成功,false代表失败 |
| | | */ |
| | | UIWrapper.prototype.showLogWindow = function () { |
| | | if (uiWrapper == null) { |
| | |
| | | |
| | | /** |
| | | * 关闭日志浮窗 |
| | | * @return 布尔型 true代表成功,false代表失败 |
| | | * @return {boolean} true代表成功,false代表失败 |
| | | */ |
| | | UIWrapper.prototype.closeLogWindow = function () { |
| | | if (uiWrapper == null) { |
| | |
| | | * @param height 按钮的高度,单位是dp,系统按钮是36 |
| | | * @param index 按钮的加入索引,-1代表往后添加,0代表的是加入到第一位 |
| | | * @param onClickListener 按钮的点击回调 |
| | | * @return 布尔型 true代表成功,false代表失败 |
| | | * @return {boolean} true代表成功,false代表失败 |
| | | */ |
| | | UIWrapper.prototype.addCtrlView = function (tag, icon, width, height, index, onClickListener) { |
| | | if (uiWrapper == null) { |
| | |
| | | * @param tag 按钮的标签 |
| | | * @param icon 按钮的图标路径,工程中的res/文件下的图片,例如填写 res/a.png |
| | | * @param onClickListener 按钮的点击回调 |
| | | * @return 布尔型 true代表成功,false代表失败 |
| | | * @return {boolean} true代表成功,false代表失败 |
| | | */ |
| | | UIWrapper.prototype.updateCtrlView = function (tag, icon, onClickListener) { |
| | | if (uiWrapper == null) { |
| | |
| | | /** |
| | | * 删除启停浮窗按钮 |
| | | * @param tag 按钮的标签,默认都有main_page_ctrl: 主页,log_window_ctrl:日志窗口控制,script_status_ctrl:脚本启停,log_close_ctrl: 日志框关闭 |
| | | * @return 布尔型 true代表成功,false代表失败 |
| | | * @return {boolean} true代表成功,false代表失败 |
| | | */ |
| | | UIWrapper.prototype.removeCtrlView = function (tag) { |
| | | if (uiWrapper == null) { |
| | |
| | | |
| | | /** |
| | | * 删除所有启停浮窗按钮 |
| | | * @return 布尔型 true代表成功,false代表失败 |
| | | * @return {boolean} true代表成功,false代表失败 |
| | | */ |
| | | UIWrapper.prototype.removeAllCtrlView = function () { |
| | | if (uiWrapper == null) { |
| | |
| | | }; |
| | | /** |
| | | * 重置启停浮窗按钮 |
| | | * @return 布尔型 true代表成功,false代表失败 |
| | | * @return {boolean} true代表成功,false代表失败 |
| | | */ |
| | | UIWrapper.prototype.resetDefaultCtrlView = function () { |
| | | if (uiWrapper == null) { |
| | |
| | | |
| | | /** |
| | | * 显示启停浮窗 |
| | | * @return 布尔型 true代表成功,false代表失败 |
| | | * @return {boolean} true代表成功,false代表失败 |
| | | */ |
| | | UIWrapper.prototype.showCtrlWindow = function () { |
| | | if (uiWrapper == null) { |
| | |
| | | }; |
| | | /** |
| | | * 关闭启停浮窗 |
| | | * @return 布尔型 true代表成功,false代表失败 |
| | | * @return {boolean} true代表成功,false代表失败 |
| | | */ |
| | | UIWrapper.prototype.closeCtrlWindow = function () { |
| | | if (uiWrapper == null) { |
| | |
| | | * @param map 例如{"action":""},key的固定只有 |
| | | * action, |
| | | * uri,pkg,className,flag,其他的都是参数了 |
| | | * @return 布尔型 true 代表成功,false 代表失败 |
| | | * @return {boolean} true 代表成功,false 代表失败 |
| | | */ |
| | | UIWrapper.prototype.openActivity = function (map) { |
| | | if (uiWrapper == null) { |
| | |
| | | * @param okBtnCallback 点击确认按钮的回调 |
| | | * @param cancelBtnCallback 点击取消按钮的回调 |
| | | * @param dismissListener 对话框消失的回调 |
| | | * @return 布尔型 true 代表成功,false 代表失败 |
| | | * @return {boolean} true 代表成功,false 代表失败 |
| | | */ |
| | | UIWrapper.prototype.alert = function (map, okBtnCallback, cancelBtnCallback, dismissListener) { |
| | | if (uiWrapper == null) { |
| | |
| | | * @param okBtnCallback 点击确认按钮的回调 |
| | | * @param cancelBtnCallback 点击取消按钮的回调 |
| | | * @param dismissListener 对话框消失的回调 |
| | | * @return 布尔型 true 代表成功,false 代表失败 |
| | | * @return {boolean} true 代表成功,false 代表失败 |
| | | */ |
| | | UIWrapper.prototype.inputDialog = function (map, okBtnCallback, cancelBtnCallback, dismissListener) { |
| | | if (uiWrapper == null) { |
| | |
| | | * @param view 原生的视图 |
| | | * @param onViewBind 视图绑定时候回调函数 |
| | | * @param dismissListener 对话框消失的回调 |
| | | * @return 布尔型 true 代表成功,false 代表失败 |
| | | * @return {boolean} true 代表成功,false 代表失败 |
| | | */ |
| | | UIWrapper.prototype.customDialog = function (params, view, onViewBind, dismissListener) { |
| | | if (uiWrapper == null) { |
| | |
| | | * 向网页中注入一个JS函数,H5可以调用该函数,以实现脚本和HTML的互通扩展 |
| | | * @param funcName 注入的函数名称 |
| | | * @param callback 回调 |
| | | * @return 布尔型 true 代表成功,false 代表失败 |
| | | * @return {boolean} true 代表成功,false 代表失败 |
| | | */ |
| | | UIWrapper.prototype.registeH5Function = function (funcName, callback) { |
| | | if (uiWrapper == null) { |
| | |
| | | /** |
| | | * 取消向网页中注入一个JS函数 |
| | | * @param funcName 注入的函数名称 |
| | | * @return 布尔型 true 代表成功,false 代表失败 |
| | | * @return {boolean} true 代表成功,false 代表失败 |
| | | */ |
| | | UIWrapper.prototype.unregisteH5Function = function (funcName) { |
| | | if (uiWrapper == null) { |
| | |
| | | /** |
| | | * 设置加载网页的webview组件组件类型,默认是X5浏览器 |
| | | * @param type 1:系统自带的webview, 2:X5浏览器 |
| | | * @return 布尔型 true 代表成功,false 代表失败 |
| | | * @return {boolean} true 代表成功,false 代表失败 |
| | | */ |
| | | UIWrapper.prototype.setWebViewType = function (type) { |
| | | if (uiWrapper == null) { |
| | |
| | | |
| | | /** |
| | | * 脚本是否正在运行 |
| | | * @return 布尔型 true 代表成功,false 代表失败 |
| | | * @return {boolean} true 代表成功,false 代表失败 |
| | | */ |
| | | UIWrapper.prototype.isScriptRunning = function () { |
| | | if (uiWrapper == null) { |