169 похожих чатов

Коллеги привет! Я из области web технологий. Столкнулся с задачкой

по android.
Глобально надо понять решается или нет.
Есть apk, который общается с usb устройством.
Хочу увидеть на какие usb интерфейсы какие команды отправляются.
Исходников нет.
Есть те кто пробовал делать нечто подобное?

20 ответов

32 просмотра

Что за интерфейсы?

Gleb Mikhailov
Что за интерфейсы?

Не буду простыню сюда кидать)

Gleb Mikhailov
Прокси типо?

это термины usb протокола

1. В @android_guards могут дать ссылки по теме "как подключить фриду/магикс и повесить хуки на обращение к методам работы usb 2. Вероятно существуют готовые или легко (относительно) собираются на ардуино/пи отладочные платы для юсб для сниффа данных

Гуглить usb sniffing https://stackoverflow.com/questions/18137206/how-do-i-intercept-messages-from-a-usb-device-on-linux/18139655#18139655

Я делал.

UsbManager usbManager = (UsbManager) getSystemService(Context.USB_SERVICE); HashMap<String, UsbDevice> deviceList = usbManager.getDeviceList(); for (Map.Entry<String, UsbDevice> entry : deviceList.entrySet()) { UsbDevice device = entry.getValue(); for (int i = 0; i < device.getInterfaceCount(); i++) { UsbInterface usbInterface = device.getInterface(i); // Process the USB interface as needed // You can retrieve endpoint information, communication protocol, etc. } }

Gleb Mikhailov
UsbManager usbManager = (UsbManager) getSystemServ...

Код есть только в виде апк, а взаимодействующее устройство как я понимаю не второй телефон

Gleb Mikhailov
UsbManager usbManager = (UsbManager) getSystemServ...

Найс из гпт ответ скопирован)))

Gleb Mikhailov
А как иначе

Ну самому)), ну или хотя бы написал гпт чтобы он писал тебе на джаве 17, а не на 8, 2014 года

Gleb Mikhailov
А зачем на 17 джаве?

Сравни два куска кода, один на 8 джаве, другой на минимум хотя бы 10 8: UsbManager usbManager = (UsbManager) getSystemService(Context.USB_SERVICE); HashMap<String, UsbDevice> deviceList = usbManager.getDeviceList(); for (Map.Entry<String, UsbDevice> entry : deviceList.entrySet()) { UsbDevice device = entry.getValue(); for (int i = 0; i < device.getInterfaceCount(); i++) { UsbInterface usbInterface = device.getInterface(i); } } Минимум 10: var usbManager = (UsbManager) getSystemService(Context.USB_SERVICE); var deviceList = usbManager.getDeviceList(); for (var entry : deviceList.entrySet()) { var device = entry.getValue(); for (var i = 0; i < device.getInterfaceCount(); i++) { var usbInterface = device.getInterface(i); } }

Pavel Erokhin
Сравни два куска кода, один на 8 джаве, другой на ...

Да, знаю про этот момент, но все равно - зачем на 17 просить написать?

Похожие вопросы

Обсуждают сегодня

30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Как передать управляющий символ в открытую через CreateProcess консоль? Собсна, есть процедура: procedure TRedirectThread.WriteData(Data: OEMString); var Written: Cardinal;...
Serjone
6
Всем привет! Имеется функция: function IsValidChar(ch: UTF8Char): Boolean; var i: Integer; ValidChars: AnsiString; begin ValidChars := 'abcdefghijklmnopqrstuvwxyzABCDE...
Евгений
44
Карта сайта