2012-04-04 4 views
0

Android에서 "호스트를 알 수없는 서버 : 80"오류가 발생했습니다. 가상 머신의 Android Emulator에서 서버의 WCF Rest 서비스에 액세스하려고합니다. 이 시나리오가 지원됩니까? BTW, 서비스의 도움말 페이지에 액세스 할 수 있으므로 서비스가 작동 중임을 알고 있습니다. 그리고 그 가상 머신에서 액세스 할 수 있습니다.Android "호스트 알 수 없음"오류

도움을 주시면 감사하겠습니다. 내 개발 환경은 최신 Eclipse 버전을 사용하는 Windows 7 64 BIT입니다. 이 서비스는 Win 2008 R2 시스템에 있습니다.

+0

Q : 정확히 몇 개의 호스트가 있습니까? Win7 개발 PC와 Win2008 서버가 있습니다. 그리고 당신의 안드로이드 에뮬레이터. 에뮬레이터가 Win7 PC에서 직접 실행되고 있습니까? 아니면 믹스에 다른 VM이 있습니까? – paulsm4

+0

Q : 안드로이드 에뮬레이터의 웹 브라우저에서 Win2008 서버를 볼 수 있습니까? (이것은 "안드로이드 에뮬레이터가 Windows 서버를"핑 "할 수 있습니까?) – paulsm4

+0

Q : WCF 끝점 주소를로 설정하면 작동합니까? 서버의 IP 주소 (서버 이름 대신) – paulsm4

답변

1

내 생각 엔 호스트 이름을 잘못 구성했기 때문입니다.

오류 메시지에 따르면 호스트 이름이나 IP 주소로 ": 80"을 제공 한 것처럼 보입니다. 플랫폼이 해당 문자열을 DNS 이름으로 생각하고 DNS 조회를 시도 했으므로 조회가 실패하여 "알 수없는 호스트"진단이 발생합니다.

이것이 문제인 경우 몇 가지 관찰 사항이 있습니다.

  • 당신은 정적 구성 파일 (또는 무엇이든) (당신이 그들을 알고있는 경우), 당신은 그것의 호스트 이름 또는 IP 주소를 사용하거나 루프백의 IP 주소에서 "이 장치"를 참조하려는 경우 인터페이스는 "127.0.0.1"일 가능성이 큽니다. 빈 문자열은 아마 작동하지 않습니다.

  • 호스트 문자열 확인을하기 전에 구문 분석하지 않는 한 포트 번호 (예 : "80")는 호스트 이름/IP 주소에 포함되면 안됩니다.

+0

"이름 확인"(예 : DNS)이 가장 가능성있는 원인입니다. 그래서 OP가 자신의 서버 호스트 (또는 "핑")를 검색 할 수 있는지 물었습니다. 하지만 VM (Android 에뮬레이터 이외의 VM *)을 실행중인 경우 네트워킹이 문제가 될 수 있습니다. IMHO ... – paulsm4

+0

@ paulsm4 - 오류 메시지의 큰 덩어리가 빨간색 청어가 아니라고 가정합니다. –

+0

@ paulsm4 나는 실제로 공급하지 않았다 : 80; 그것은 그것을 추론했다.나는 단지 http : // /myservicevirtualdirectory로 언급하고있다. 나는 IP에 대해서도 시도 할 것이다. –

0

이 오류의 잠재적 원인은 인터넷 권한을 포함하거나 적절한 위치에 두지 않은 경우입니다. 당신이 응용 프로그램 태그의 외부, 당신의 manifest.xml에 다음했는지 확인하십시오 :

<uses-permission android:name="android.permission.INTERNET"/> 
+0

해당 권한 집합이 있습니다. 나는 응용 프로그램 태그 바깥에 있는지 확인해 보겠습니다. –

+0

이것은 내 파일 순서입니다 : <사용 권한 android : 이름 = "android.permission. 인터넷 "/> <사용 권한 android : name ="android.permission.READ_PHONE_STATE "/> –

+0

바로 사용 가능합니다. 사용 권한이 문제의 원인입니다. – elevine

관련 문제