iPhone de demostración automática


QQ 282397369
puso el módulo de secuencia de comandos para hacer un poco de forma, lo que significa que tendrá que practicar en efecto mirada.
casa de la familia para tomar ventaja de la ocasión no volver al trabajo, combinado con la experiencia y las necesidades, tirar la siguiente demostración del teléfono de Apple, el objetivo es, sin duda a hacer efecto automático.
Tardó 20 días, previsto inicialmente.

la demanda preliminar

De búsqueda de Internet un poco, el negocio de telefonía móvil de Apple un poco de la eficiencia de demostración, de este a oeste cepillo, cepillo de 20-30 por día. Sin embargo, el consumo de hombre por encima de los ingresos mensuales de 1.000 yuanes, realmente vale la pena.
Pero en casa, ponen uno o dos teléfonos móviles, las redes y las cuentas están fácilmente disponibles, ingresos extra es también una de mil yuanes al mes es buena.
Así, seca abierta. Dos teléfonos móviles a participar dos no-jailbreak [máquina], equipado con tarjetas de teléfono ... [preparaciones de mantenimiento instaladas omitidas 1000 palabras]

pensamiento

Hoy en día, primero simplemente bajo la idea, y luego la aplicación detallada de seguimiento. Hablando idea debe ser muy simple: Obtener la imagen de teléfono, y análisis de imágenes, y varias plataformas de demostración con un guión que decís vosotros seco sobre seco.
De IOS desconocida, que fue programado en la aplicación de PC. Los salarios razón original no son altos aquí, solamente la programación desde PC.

Obtener una imagen de teléfono

Muchas maneras, el uso directo de los teléfonos móviles de reflejo. En la misma LAN, servicio de espejo de la PC a la intemperie, lo que iTools, maestro, AirServer, AirPlay ..., todo está bien.
Aquí Insertar imagen Descripción
La imagen de la computadora, como la carne en el tajo, para exprimir una ronda a otra, encontrar la manera de partido. Directamente hacerse cargo, como lo hacía antes.
Aquí Insertar imagen Descripción

plataforma guión

Temprano parecía como si hay cientos de plataformas, que implementaría un guión plataforma de ver algún día el estado de ánimo.
La tarea principal plataforma de guión es para identificar la imagen, ya sea una página a identificar, definir varios tipos de página. Para el desarrollo empresarial, la expansión se puede añadir en cualquier momento

	pptFlash = 0           		-- Flash页面
	pptHome = 1           		-- 起始页面
	pptList_ToGet = 2   	   	-- 待抢单任务列表页面
	pptList_Gotten = 3			-- 已接单任务列表页面
	pptDetail_ToDownload = 4   	-- 待下载任务详情页面
	pptDetail_ToRun = 5     	-- 待运行任务详情页面
	pptDetail_ToAward = 6    	-- 待领奖任务详情页面
	pptDetail_Awarded = 7    	-- 领奖完毕任务详情页面
	pptDetail_ToDownload2 = 8	-- 待下载任务详情页面2
	pptPlatform_Unknown = 9		-- 本平台内未知页面
	pptMainScreen = 10			-- 主屏幕
	pptAppStore = 11			-- AppStore页面
	pptUnknown = -1

reconocimiento de la página

No más que el reconocimiento de reconocimiento de imágenes, reconocimiento de caracteres de dos tipos. Un poco más arriba ordenado, para hacer dos funciones API para la escritura:
IsVisible, IsVisibleMat, respectivamente, para determinar si hay un texto objetivo y las imágenes.
LUA realmente bueno, en realidad le puede devolver múltiples valores. Por lo tanto, si existe, en el camino hacia la posición central de los objetivos de rentabilidad.
En el lado C ++, las condiciones tienen que pensar, lo más importante es la facilidad de uso. El texto puede ser añadido a la posición límite, y la imagen también puede añadir el modo de procesamiento en segundo plano.

UnicodeString subMatContent = THelper::GetLuaParamAt(params, paramIndex++);
TPoint resultPos(-1, -1);
if(subMatContent.Pos(L"<<")) {
	TPositionOption option;
	option.ReadFromString(subMatContent);
	CvRects allRects;
	if(option.Color.x < 0) {
		cv::Mat mat = srcMat.clone();
		if(mat.channels() != 1) {
			mat = CvHelper::ToMat_GRAY(srcMat);
			threshold(mat, mat, 0x7F, 0xFF, cv::THRESH_BINARY);
		}
		allRects = CvHelper::GetAllDomain(mat, option);
	}
	else
		allRects = CvHelper::UIParse_GetEdit(srcMat, option);
	int size = allRects.size();
	UnicodeString indexText = THelper::GetLuaParamAt(params, paramIndex++, L"0").Trim().LowerCase();
	int index = indexText.ToInt();
	if(index < 0)
		index += size;
	if(IS_IN_RANGE(index, 0, size - 1)) {
		CvRect r = allRects[index];
		resultPos = TPoint(r.x + r.width / 2, r.y + r.height / 2);
	}
} else if(THelper::String::IsStartWith(subMatContent.LowerCase(), L"icon")) {
	UnicodeString iconName = THelper::String::GetStringAt(subMatContent, L"=", 1).Trim();
	cv::Mat iconMat = lua->ParseMat(iconName);
	cv::Mat whiteBkMat = GetWhiteBackgroundMat(srcMat);
	cv::Mat maskMat = CvHelper::BuildTransMaskMat(whiteBkMat, clWhite, 5);
	bitwise_not(maskMat, maskMat);
	CvRects rects = GetIconRects(maskMat, iconMat.cols, iconMat.rows);
	CBW_ITERATOR(CvRects, rects) {
		cv::Mat dstMat = CvHelper::CopySubMat(whiteBkMat, *it);
		if(CvHelper::IsSameIcons(dstMat, iconMat, false, true, 0.90, false, 3, false, false)) {
			resultPos = TPoint(it->x + it->width / 2, it->y + it->height / 2);
			break;
		}
	}
} else {
	UnicodeString fileName = lua->ParseFileName(subMatContent, !FILE_MUST_EXISTED);
	cv::Mat subMat;
	if(FileExists(fileName))
		subMat = CvHelper::MatFromFile(fileName);
	else
		subMat = lua->ParseMat(subMatContent);
	if(!subMat.empty())
		resultPos = CvHelper::GetSubMatPos(srcMat, subMat);
}
lua->AddReturnValue(resultPos, L"目标位置");

Así que al escribir la escritura LUA, llame a la simple y cruda manera:

if    (ios:IsVisible("早起打卡")) then return ios:SetPage(pptHome)																					
elseif(ios:IsVisibleMat("Color << 0x9BE000, 5", "width << 640, 10 << height << 100, 10") and 
	   ios:IsVisible("收徒赚钱", "y << 160, 20")) then return ios:SetPage(pptHome_Invite)														
elseif(ios:IsVisible("试玩任务", "xCenter << 20 << y << 155, 20") and
       ios:IsVisible("当前试玩", "x << 30, 20")) then return ios:SetPage(pptList_ToGet)	
end														

Frase puede reconocer una página.
Aquí Insertar imagen Descripción

procesamiento de la operación

Puesto que hay dos maneras de identificar, la correspondencia a su vez permitirá dos modos de funcionamiento:
el Click, ClickMat, haga clic en cada texto de destino individual a la imagen de destino, similar a

if    (currentPageType == pptHome) then ios:ClickMat("Color, 0x58C6FF, 10", "width << 325, 10 << height << 220, 10")	
elseif(currentPageType == pptDetail_Awarded) then ios:Click("我知道了")	
elseif(currentPageType == pptDetail_ToAward) then ios:Click("领取", "xCenter << 10 << Color << 0x0065FF, 30") 
elseif(currentPageType == pptDetail_ToRun) then ios:Click("打开应用", "xCenter << 10 << Color << 0x0065FF, 30") 
end

De esta manera, poner la lógica de negocio despojado a cabo, cómo los cambios finales interfaz de la plataforma, pueden hacer frente a la secuencia de comandos.

Los resultados se presentan

En combinación con el trabajo previo, esto puede formar un informe imagen, enviada directamente a la QQ, por lo que incluso en el exterior, recibió un mensaje de este tipo es pequeño fresco QQ.
Aquí Insertar imagen Descripción
Aquí Insertar imagen Descripción

posdata

Otros aspectos de la automatización, en comparación con las secuencias de comandos automatizadas, para ser más simple, nada más que la integración de cada función. Esto no va a ir
a través de una pequeña demanda, encontrar el script de reconocimiento de imágenes [+] combinada, no se puede resolver muchos problemas.
Hacer un asunto tan trivial, los resultados de las herramientas comunes para uso personal también se realizan muestras tempranas de varios efectos básicos de procesamiento de análisis de imágenes puede mostrar visualmente. Por supuesto, la mayor parte de la LUA o entorno de desarrollo integrado para una prueba. Por lo tanto, es bastante la pena. [Reconocimiento de imágenes y la sensación +] convierten en su propio guión en una dirección. Después hay dinero, también puede participar en tiempo parcial o algo así.
de primera mano la práctica de Apple, no seguimiento script para hacer Android, PC y similares, sino que también hace estallar hacia fuera y ver lo chispas.

Otra: Este artículo es meramente entretener. Si existe una demanda de reconocimiento de imágenes [+] aspectos de la escritura, la bienvenida a tirar hacia arriba.

Liberadas nueve artículos originales · ganado elogios 2 · Vistas 545

Supongo que te gusta

Origin blog.csdn.net/drgraph/article/details/104953105
Recomendado
Clasificación