|
|
@@ -23,9 +23,19 @@ def get_current_screen():
|
|
|
return current_screen
|
|
|
|
|
|
|
|
|
-def capture_current_screen():
|
|
|
- global current_screen
|
|
|
- current_screen = device.screencap()
|
|
|
+def capture_current_screen(timeout=5): # Timeout in seconds
|
|
|
+ def target():
|
|
|
+ global current_screen
|
|
|
+ current_screen = device.screencap()
|
|
|
+
|
|
|
+ capture_thread = threading.Thread(target=target)
|
|
|
+ capture_thread.start()
|
|
|
+ capture_thread.join(timeout)
|
|
|
+
|
|
|
+ if capture_thread.is_alive():
|
|
|
+ print("Screen capture timed out")
|
|
|
+ # Handle the timeout situation, e.g., by retrying or aborting
|
|
|
+ capture_thread.join()
|
|
|
|
|
|
return current_screen
|
|
|
|