2012-08-07 5 views
3

우리는 adb 클라이언트가 여러 Android 기기에 연결되는 테스트 스위트를 보유하고 있습니다. 테스트 스위트는 이러한 연결 요청, 장치 상태 가져 오기 및 응용 프로그램 실행을 요구합니다.adb 서버를 응답하지 않게 만드는 방법은 무엇입니까?

adb 서버가 중단되는 시나리오를 시뮬레이트하고 싶습니다. "adb kill-server"를 실행하려고 시도했지만 클라이언트의 모든 adb 요청은 adb 서버를 시작합니다. 012badb 서버가 adb 클라이언트 요청을 수신하는 것을 막을 수 있습니까?

물론 adb 서비스를 컴파일하고 코드 자체를 변경하는 데는 많은 시간이 걸립니다. 하지만이 작업을 수행하는 쉬운 방법은 없습니까?

+1

adb 서버에서 사용하는 포트를 차단 하시겠습니까? –

답변

2

아직 연결이 필요합니까 (명령에 응답하지 않음) 또는 연결을 완전히 중지해도됩니까? adb kill-server을 시도 했으므로 연결을 죽이는 것과 같은 소리가 나을 것입니다.

그런 경우 네트워크 포트에서 수신 대기하도록 adb 서버를 설정하지 않고 TCP/IP 모드에서 장치에 연결하는 방법은 어떻습니까? 나는. 예 :

adb tcpip 12345 
+1

실제로 adb이 응답하지 않는 상태를 재현 할 수 있는지 궁금합니다. 몇 가지 시나리오에서 유용 할 수 있으므로 (adb 맨 위에 도구를 작성하고 adb 상태를 확인해야한다고 가정). –

2

또 다른 제안은 실제로 장치에서 adb 인터페이스를 완전히 비활성화하는 것입니다. 이것이 adb 서버를 멈추거나 멈출 수는 없지만 원하는 결과, 즉 adb 클라이언트에 대한 연결을 얻지는 못합니다. 이 작업을 수행 할 수 방법은

  • adb shell
  • su
  • echo 1 > /sys/class/android_usb/f_adb/on

이 하나가 내가 가지고있는 HTC의 생생한에 할 수있는 것입니다 뿌리 장치에 할 것입니다 손에. 다른 장치의 경우 경로가 다를 수 있지만 모두 유사해야합니다. 재부팅하면 전화기가 다시 작동하기 시작합니다.

관련 문제