代码拉取完成,页面将自动刷新
--[[
version: 1.0.1
author:lancy
date:2017年11月26日
PS:
需要配置config.lua中模拟精灵悬浮按钮的位置
需要引用 触动精灵扩展库 sz.so
]]
require("config")
require("Fun")
czero={};
czero.PACKAGE_NAME="com.hms.jingling"; -- 模拟精灵包名
local POS_RANDOM_BTN_X,POS_RANDOM_BTN_Y=255,537; -- 随机按钮
local POS_SAVE_BTN_X,POS_SAVE_BTN_Y=720,531; -- 写入按钮
local POS_STATUS_BG_X,POS_STATUS_BG_Y=540,150; -- 写入按钮
local COLOR_NORMAL=0x1a94bc; -- 其实状态颜色 蓝色
local COLOR_WRITED=0x1abc89; -- 写入状态颜色 绿色
local TIMEOUT_STARTUP=4;
local isMocked=0;
--[[
检查模拟精灵是否运行,如果未运行则启动
--]]
local function checkAndRun()
-- 检查模拟精灵是否运行
local isRunFlag = Fun.app.isRunning(czero.PACKAGE_NAME);
while (isRunFlag==0) do
-- 启动模拟精灵
local isStartUp=Fun.app.run(czero.PACKAGE_NAME);
if isStartUp == 0 then
local color=0;
while color ~= COLOR_NORMAL do --如果应用处于前台则继续
Fun.sleep(100);
color = Fun.getColor(POS_STATUS_BG_X, POS_STATUS_BG_Y); --获取(100,100)的颜色值,赋值给color变量
end
Fun.toast("模拟精灵启动成功");
else
Fun.toast("模拟精灵启动失败");
end
Fun.sleep(300)
-- 检查模拟精灵是否运行
isRunFlag = Fun.app.isRunning(czero.PACKAGE_NAME); --判断应用是否启动
end
-- 检查模拟精灵是否处于前台
local isFront = Fun.app.isFront(czero.PACKAGE_NAME);
while (isFront==0) do
local canuse=0;
while (canuse==0) do --如果应用处于前台则继续
if (not(isColor( 999, 1506, 0x1a94bc, 85))) then
Fun.app.clean(czero.PACKAGE_NAME);
Fun.app.run(czero.PACKAGE_NAME);
end
while (not(isColor( 999, 1506, 0x1a94bc, 85))) do
Fun.sleep(1000);
end
Fun.click(config.app_mn.float_x,config.app_mn.float_y); --点击悬浮
Fun.sleep(500);
local color = Fun.getColor(POS_STATUS_BG_X,POS_STATUS_BG_Y); --获取(100,100)的颜色值,赋值给color变量
if(color==COLOR_NORMAL or color==COLOR_WRITED) then
canuse=1;
end
end
Fun.sleep(500);
isFront = Fun.app.isFront(czero.PACKAGE_NAME); --判断应用是否启动
end
return true;
end
local producer = coroutine.create( function ()
while (true) do
local result=false;
if(checkAndRun()) then
Fun.click(POS_RANDOM_BTN_X,POS_RANDOM_BTN_Y); --点击随机
Fun.sleep(1000);
Fun.click(POS_SAVE_BTN_X,POS_SAVE_BTN_Y); --点击写入
while (true) do
local color = Fun.getColor(POS_STATUS_BG_X,POS_STATUS_BG_Y);
if(color==COLOR_WRITED) then
break;
end
end
Fun.click(config.app_mn.float_x,config.app_mn.float_y); --点击悬浮
result=true;
else
result=false;
end
coroutine.yield(result)
end
end)
--[[
模拟设备信息
--]]
function czero.mock()
local status, value = coroutine.resume(producer);
return value
end
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。