Giới thiệu Script Runtime V2
CogniTab Runtime V2 cung cấp môi trường script Python mạnh mẽ, hỗ trợ tự động hóa thao tác cảm ứng, nhận diện hình ảnh, phát hiện màu sắc và tương tác màn hình trên Android.
Ví dụ khởi đầu nhanh
Kịch bản tự động hóa kết hợp điểm chạm, nhận diện hình ảnh theo vùng (Region) và thao tác vuốt màn hình:
# Khởi tạo tọa độ và thực hiện thao tác chạm cơ bản
target = Point(540, 960)
click(target)
wait(400)
# Tìm kiếm hình ảnh nút bấm trong vùng màn hình (Region)
search = Region(100, 200, 400, 600)
match = search.find("start_btn", timeout=3000)
if match.found:
click(match)
wait(250)
else:
# Vuốt màn hình lên nếu chưa tìm thấy mục tiêu
swipe([SwipePoint(Point(500, 1200), speed="NORMAL"), SwipePoint(Point(500, 400))])Best Practice: Tìm kiếm nhiều hình ảnh với ScreenCapture
Khi cần tìm kiếm nhiều hình ảnh (hoặc màu sắc) cùng lúc trong cùng một khung hình, mỗi lệnh find() thông thường sẽ phải chụp lại màn hình. Hãy dùng ScreenCapture.cache_on() để ghim khung hình hiện tại và tìm kiếm nhiều mục tiêu tức thì mà không lãng phí tài nguyên chụp lại. Luôn nhớ gọi ScreenCapture.cache_off() khi muốn nhận diện theo thời gian thực:
# 1. Ghim khung hình hiện tại để tối ưu tìm kiếm nhiều ảnh
ScreenCapture.cache_on()
area = Region(100, 200, 400, 600)
hit_a = area.find("btn_confirm", timeout=0)
hit_b = area.find("btn_cancel", timeout=0)
hit_c = area.find("icon_close", timeout=0)
# 2. Nhớ tắt cache khi muốn tiếp tục nhận diện theo thời gian thực
ScreenCapture.cache_off()
if hit_a.found:
click(hit_a)
elif hit_b.found:
click(hit_b)Cú pháp Python cơ bản trong Script
1. Khai báo biến
Lưu số, chuỗi, bool và giá trị rỗng bằng cú pháp tương thích Python chuẩn.
# Khai báo biến cơ bản
count = 3
title = "Farm run"
enabled = True
nothing = None2. Khai báo hàm bằng def
Dùng def + return để tách logic tái sử dụng; có thể gọi hàm trước hoặc sau dòng def trong cùng script.
def add(a, b):
return a + b
def cell(index):
return index // 9, index % 9
result = add(2, 3)
row, col = cell(10)3. Biến global và hàm lồng nhau
Dùng từ khóa global để cập nhật biến toàn cục trong hàm; hàm lồng hàm tự động nhận diện phạm vi cha.
counter = 0
def increment():
global counter
counter += 1
return counter4. Điều kiện và vòng lặp
Điều khiển luồng kịch bản bằng if/elif/else, vòng lặp while, và vòng lặp for với range.
energy = 3
if energy > 0:
click(Point(500, 900))
for step in range(3):
wait(200)5. Các lớp dựng sẵn cốt lõi
Tương tác linh hoạt với màn hình và thao tác qua Point, Region, Template, Touch, Color, ScreenCapture.
target = Point(500, 900)
search_area = Region(100, 200, 300, 400)
click(target)
match = search_area.find("enemy", 2500)
if match.found:
click(match)6. Comprehension cho bộ sưu tập
Cú pháp ngắn gọn tạo list, dict, set bằng mệnh đề for/if tiện lợi.
numbers = [1, 2, 3, 4, 5]
evens = [x for x in numbers if x % 2 == 0]
squares = {x: x * x for x in numbers}Khám phá danh mục API
Tra cứu đầy đủ tài liệu chi tiết cho các lớp, lớp chỉ đọc, bộ sưu tập và các hàm thao tác cảm ứng.