Для реализации программы, которая сканирует сеть на наличие устройства с приложением launcher-release.apk, и при этом не генерирует QR-код, можно воспользоваться протоколом UDP или TCP для обнаружения устройств. Предположим, что ваше приложение запускается на Android и имеет возможность отвечать на запросы. При этом программа будет отправлять запрос, а затем ждать ответ от устройств в сети.
Ниже приведен пример:
import socket
import numpy as np
import cv2
import base64
import pyautogui
for i in range(1, 255):
ip = f"{ip_prefix}{i}"
sock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
sock.settimeout(timeout)
try:
# Отправка запроса на обнаружение
sock.sendto(b'PING', (ip, port))
response, addr = sock.recvfrom(1024)
if response == b'PONG': # Ожидаем, что устройство вернет 'PONG'
devices.append(addr[0])
except socket.timeout:
continue
finally:
sock.close()
return devices
def main():
port = 12345 # Порт, на который будете отправлять запросы
devices = scan_network(port)
if devices:
print("Найденные устройства:", devices)
# Здесь можно добавить логику для подключения к найденным устройствам
for device in devices:
# Пример отправки скриншота
retval, buffer = cv2.imencode('.jpg', cv2.resize(cv2.cvtColor(np.array(pyautogui.screenshot()), cv2.COLOR_RGB2BGR), (1920, 1080)), [int(cv2.IMWRITE_JPEG_QUALITY), 90])
connection_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
connection_socket.connect((device, port))
connection_socket.send(base64.b64encode(buffer))
connection_socket.close()
else:
print("Устройства не найдены.")
Для реализации программы, которая сканирует сеть на наличие устройства с приложением launcher-release.apk, и при этом не генерирует QR-код, можно воспользоваться протоколом UDP или TCP для обнаружения устройств. Предположим, что ваше приложение запускается на Android и имеет возможность отвечать на запросы. При этом программа будет отправлять запрос, а затем ждать ответ от устройств в сети.
Ниже приведен пример: import socket import numpy as np import cv2 import base64 import pyautogui
Функция для сканирования сети
def scan_network(port, timeout=1): ip_prefix = '.'.join(socket.gethostbyname(socket.gethostname()).split('.')[:-1]) + '.' devices = []
def main(): port = 12345 # Порт, на который будете отправлять запросы devices = scan_network(port)
if name == "main": main()