Kontrol statis untuk pengambilan layar bersama selama proses makro saat ini.
Sintaks
ScreenCapture
Kelas ini tidak dapat dibuat langsung.
Parameter
Tidak ada
Nilai yang dikembalikan
—
Perilaku / efek samping
Kontrol statis untuk pengambilan layar bersama selama proses makro saat ini. Cache otomatis biasanya menggunakan kembali frame hingga 100 ms untuk mengurangi beban pengambilan gambar. Untuk pengenalan berulang yang membutuhkan frame terbaru yang tersedia, gunakan auto_cache_off(); ini menambah beban pemrosesan dan penggunaan baterai, tanpa menjamin eksekusi lebih cepat atau piksel yang baru dirender. cache_on() menyematkan frame secara terpisah dan diprioritaskan di atas pengaturan cache otomatis.
Eksekusi
Menunggu selesai: Tidak
Keamanan akses bersamaan: Dijalankan berurutan
Eksekusi paralel: Bersyarat
Kontrol cache memperbarui kebijakan bersama tanpa menunggu frame atau durasi yang ditentukan. Capture berikutnya memakai kebijakan itu. Perubahan memengaruhi semua alur dalam Run; kontrol ini tidak meminta izin capture.
Contoh
# Pakai ulang satu frame tangkapan untuk beberapa pemeriksaan layar
ScreenCapture.cache_on()
color = Color.get(Point(500, 900))
hit = Region.full_screen().find("enemy", timeout=0)
ScreenCapture.cache_off()
# Utamakan frame terbaru yang tersedia untuk pengenalan singkat
ScreenCapture.auto_cache_off(duration_ms=1000)
hit = Region.full_screen().find("enemy", timeout=800, rate=30)
# Nonaktifkan tanpa batas waktu, lalu aktifkan kembali cache otomatis
ScreenCapture.auto_cache_off()
hit = Region.full_screen().find("enemy", timeout=2000, rate=30)
ScreenCapture.auto_cache_on()
Kesalahan / batasan
Tidak ada batasan tambahan yang didokumentasikan; ikuti kontrak parameter dan perilaku di atas.
Sematkan frame tangkapan layar nyata berikutnya dan gunakan kembali hingga ScreenCapture.cache_off() dipanggil.
Sintaks
ScreenCapture.cache_on()
Parameter
Tidak ada
Nilai yang dikembalikan
None — Tidak ada nilai kembalian.
Perilaku / efek samping
Sematkan frame tangkapan layar nyata berikutnya dan gunakan kembali hingga ScreenCapture.cache_off() dipanggil. Jika belum ada buffer baru dalam antrean, frame valid terbaru dari pembaca tangkapan saat ini akan disematkan sebagai gantinya. Fungsi ini tidak meminta izin tangkapan layar.
Eksekusi
Menunggu selesai: Tidak
Keamanan akses bersamaan: Dijalankan berurutan
Eksekusi paralel: Bersyarat
Kontrol cache memperbarui kebijakan bersama tanpa menunggu frame atau durasi yang ditentukan. Capture berikutnya memakai kebijakan itu. Perubahan memengaruhi semua alur dalam Run; kontrol ini tidak meminta izin capture.
Contoh
# Sematkan satu frame bersama untuk dua proses pengenalan
ScreenCapture.cache_on()
region = Region(100, 200, 300, 400)
first = region.find("start", 0)
second = region.find("confirm", 0)
ScreenCapture.cache_off()
print(first.found, second.found)
Kesalahan / batasan
Tidak ada batasan tambahan yang didokumentasikan; ikuti kontrak parameter dan perilaku di atas.
Lepaskan frame tangkapan layar yang disematkan tanpa mengubah pengaturan cache otomatis.
Sintaks
ScreenCapture.cache_off()
Parameter
Tidak ada
Nilai yang dikembalikan
None — Tidak ada nilai kembalian.
Perilaku / efek samping
Lepaskan frame tangkapan layar yang disematkan tanpa mengubah pengaturan cache otomatis. Frame yang masih baru tetap dapat digunakan kembali jika cache otomatis aktif. Panggil juga auto_cache_off() jika pengenalan membutuhkan frame terbaru yang tersedia.
Eksekusi
Menunggu selesai: Tidak
Keamanan akses bersamaan: Dijalankan berurutan
Eksekusi paralel: Bersyarat
Kontrol cache memperbarui kebijakan bersama tanpa menunggu frame atau durasi yang ditentukan. Capture berikutnya memakai kebijakan itu. Perubahan memengaruhi semua alur dalam Run; kontrol ini tidak meminta izin capture.
Contoh
# Lepas penyematan manual sebelum pemindaian berikutnya
ScreenCapture.cache_off()
region = Region(100, 200, 300, 400)
print(region.find("start", 0).found)
Kesalahan / batasan
Tidak ada batasan tambahan yang didokumentasikan; ikuti kontrak parameter dan perilaku di atas.
Nonaktifkan penggunaan ulang frame yang disengaja oleh cache otomatis selama duration_ms milidetik sejak pemanggilan ini, atau hingga auto_cache_on() dipanggil atau proses makro berakhir jika argumen dihilangkan atau None.
Sintaks
ScreenCapture.auto_cache_off(duration_ms=None)
Parameter
Nama
Deskripsi
duration_msNumber | None
Milidetik berupa bilangan bulat positif (100 dan 100.0 sama-sama valid), atau None untuk tanpa batas waktu selama proses makro ini. Nilai nol, negatif, pecahan, string, boolean, dan nilai yang melampaui batas ditolak.
Opsional · Posisi atau nama
Default:None
Nilai yang dikembalikan
None — Tidak ada nilai kembalian.
Perilaku / efek samping
Nonaktifkan penggunaan ulang frame yang disengaja oleh cache otomatis selama duration_ms milidetik sejak pemanggilan ini, atau hingga auto_cache_on() dipanggil atau proses makro berakhir jika argumen dihilangkan atau None. Pemanggilan ulang mengganti durasi sebelumnya. Berlaku untuk pengambilan bitmap, frame mentah, TFLite, dan piksel bersama; penggunaan ulang berdasarkan TTL dilewati, tetapi pengambilan frame tetap dibatasi waktunya dan tidak dapat memaksa Android merender piksel baru. Tidak melepaskan sematan cache_on(), meminta izin tangkapan layar, atau menunggu durasi berakhir.
Eksekusi
Menunggu selesai: Tidak
Keamanan akses bersamaan: Dijalankan berurutan
Eksekusi paralel: Bersyarat
Kontrol cache memperbarui kebijakan bersama tanpa menunggu frame atau durasi yang ditentukan. Capture berikutnya memakai kebijakan itu. Perubahan memengaruhi semua alur dalam Run; kontrol ini tidak meminta izin capture.
Aktifkan kembali cache frame otomatis normal segera dan batalkan penonaktifan yang berjangka maupun tanpa batas waktu.
Sintaks
ScreenCapture.auto_cache_on()
Parameter
Tidak ada
Nilai yang dikembalikan
None — Tidak ada nilai kembalian.
Perilaku / efek samping
Aktifkan kembali cache frame otomatis normal segera dan batalkan penonaktifan yang berjangka maupun tanpa batas waktu. Tidak melepaskan sematan cache_on(), meminta izin tangkapan layar, atau menunggu. Cache otomatis juga dipulihkan saat proses makro berakhir.
Eksekusi
Menunggu selesai: Tidak
Keamanan akses bersamaan: Dijalankan berurutan
Eksekusi paralel: Bersyarat
Kontrol cache memperbarui kebijakan bersama tanpa menunggu frame atau durasi yang ditentukan. Capture berikutnya memakai kebijakan itu. Perubahan memengaruhi semua alur dalam Run; kontrol ini tidak meminta izin capture.
Contoh
# Pulihkan penggunaan ulang frame otomatis seperti biasa
ScreenCapture.auto_cache_on()
region = Region(100, 200, 300, 400)
print(region.find("start", 0).found)
Kesalahan / batasan
Tidak ada batasan tambahan yang didokumentasikan; ikuti kontrak parameter dan perilaku di atas.