2017-01-12 3 views
0


Я хочу запустить команды adb из python, и для этого я нашел собственную библиотеку Google, но он не работает.
https://github.com/google/python-adb

This Is я использовал код: (Это из примера)
Использование ADB из Python

import os.path as op 

from adb import adb_commands 
from adb import sign_m2crypto 

signer = sign_m2crypto.M2CryptoSigner(
    op.expanduser('~/.android/adbkey')) 

device = adb_commands.AdbCommands.ConnectDevice(rsa_keys=[signer]) 

Это ошибка, я получаю:

Traceback (most recent call last): 
    File "/home/elichai2/PycharmProjects/Test/python_adb.py", line 9, in <module> 
    device = adb_commands.AdbCommands.ConnectDevice(rsa_keys=[signer]) 
    File "/usr/local/lib/python2.7/dist-packages/adb/adb_commands.py", line 76, in ConnectDevice 
    return cls.Connect(handle, **kwargs) 
    File "/usr/local/lib/python2.7/dist-packages/adb/adb_commands.py", line 99, in Connect 
    device_state = cls.protocol_handler.Connect(usb, banner=banner, **kwargs) 
    File "/usr/local/lib/python2.7/dist-packages/adb/adb_protocol.py", line 277, in Connect 
    cmd, arg0, arg1, banner = cls.Read(usb, ['CNXN', 'AUTH']) 
    File "/usr/local/lib/python2.7/dist-packages/adb/adb_protocol.py", line 235, in Read 
    actual_checksum = cls.CalculateChecksum(data) 
    File "/usr/local/lib/python2.7/dist-packages/adb/adb_protocol.py", line 187, in CalculateChecksum 
    return sum(map(ord, data)) & 0xFFFFFFFF 
TypeError: ord() expected string of length 1, but int found 

Любые идеи?

+0

То же здесь ... Я только что создал вопрос на GitHub странице: https://github.com/google/python-adb –

ответ

1

Вы можете попробовать AndroidViewClient/culebra's adbclient.py, который является клиентом ADB, реализованным в python.

Это simple example о том, как использовать AdbClient самостоятельно, без AndroidViewClient.

+0

мне придется использовать весь свой проект, потому что они получили много внутренних зависимостей (и они зависят от большего количества файлов внутри проекта) – elichai2

+0

's/their/your /' - Diego является автором 'AVC' –