Android - запуск Monkeyrunner через Wi-Fi на реальном устройстве - PullRequest
1 голос
/ 02 мая 2011

У меня есть сервер сборки, и я хотел бы запустить скрипт monkeyrunner на многих устройствах одновременно, как только сборка будет готова.

Я нашел здесь способ подключения к устройствам черезtcp

, поэтому я подключился к устройству и успешно запустил "adb monkey", "adb shell ls", ...

при запуске monkeyrunner я получаю ошибки - это можетНе подключайтесь.

Вот еще один парень, который ищет решение

Это ошибка в Monkeyrunner?есть ли обходной путь?

есть ли другой инструмент, который я могу использовать?

1 Ответ

3 голосов
/ 07 октября 2011

Проблема из-за команды для создания переадресации порта не для устройства, подключенного по TCP. Если вы ищете в "sdk \ ddms \ libs \ ddmlib \ src \ com \ android \ ddmlib \ AdbHelper.java"

    public static void createForward(InetSocketAddress adbSockAddr, Device device, int localPort,
        int remotePort) throws TimeoutException, AdbCommandRejectedException, IOException {

    SocketChannel adbChan = null;
    try {
        adbChan = SocketChannel.open(adbSockAddr);
        adbChan.configureBlocking(false);

        byte[] request = formAdbRequest(String.format(
                "host-serial:%1$s:forward:tcp:%2$d;tcp:%3$d", //$NON-NLS-1$
                device.getSerialNumber(), localPort, remotePort));

        write(adbChan, request);

Это нормально для меня, изменив команду adb на

byte[] request = formAdbRequest(String.format(
                   "host:forward:tcp:%1$d;tcp:%2$d",localPort, remotePort));

Чем нужно перестроить ddmlib.jar

...