2011-11-05 4 views
0

Android 스크립팅 레이어 서버에 연결할 수 없습니다. 내가 명령을 실행할 때 나는 다음과 같은 오류가 발생합니다 :SL4A 서버에 연결할 수 없습니다.

> >>> a = android.Android() Traceback (most recent call last): File "<stdin>", line 1, in <module> File "android.py", line 34, in 
> __init__ 
>  self.conn = socket.create_connection(addr) File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/socket.py", 
> line 553, in create_connection 
>  for res in getaddrinfo(host, port, 0, SOCK_STREAM): socket.gaierror: [Errno 8] nodename nor servname provided, or not 
> known 

내가 찍은 단계 : 1. 설치 ADB 전달합니다. 2. Android.py 파일을 통역사에 제공했습니다. 3. 개인 서버를 시작하고 장치를 컴퓨터에 연결합니다.

무엇이 잘못 될 수 있습니까?

답변

3

"AP_PORT"환경 변수를 내 보냈습니까?

전달할 포트로 설정해야합니다.

$ adb forward tcp:9999 tcp:{SL4A port} 

당신은 다음과 같이 파이썬 인터프리터를 입력하기 전에 AP_PORT을 설정해야합니다 :이 같은 전달 포트를 설정하면 예를 들어

,

$ export AP_PORT=9999 

을 내가 스크립트를 가질 수 최대 환경을 설정하고 여기에 파이썬 인터프리터 시작합니다

https://github.com/georgegoh/Android-Scripting/blob/master/py4a_start.sh

우분투에서만 테스트하고 사용 했으므로 YMMV.

+0

'export AP_PORT = 9999'를 잊어 버렸습니다.이 파일을 .bash_profile에 추가하고 새 쉘에서 시작하는 것이 나머지 작업을 수행 할 것이라고 생각했습니다. 그리고 Mac OS 10.6.8에서도 스크립트가 제대로 작동합니다. :) – fixxxer

+0

쿠분투 13.04에서 스크립트를 사용해 보았습니다. 그러나 '가져 오기 안드로이드'를 사용할 수 없습니다. 이유가 무엇입니까? 감사. – qed

0

환경 : Linux의 pydev 플러그인 및 Android 개발 기능이있는 Eclipse.

George Goh의 솔루션을 수행 한 후에도 동일한 문제가 발생하는 경우 Eclipse의 인터프리터 설정을 사용하여 값이 AP_PORT=9999 인 환경 변수를 전달하십시오.

관련 문제