HttpClient 사용시 "target host must not be null or set in parameters" Exception 발생하는 문제

2013. 6. 12. 10:17안드로이드 개발

Android 2.x의 SDK를 사용하여 개발했을 때에 문제가 없던 이미지 다운로드용 소스 코드를 Android 3.0 SDK 프로젝트에서 사용하면 "target host must not be null or set in parameters"이라는 Exception이 발생하면서 서버의 이미지 파일을 다운로드하지 못하는 문제가 발생하였다. 단말기가 Android 3.2 버전이라고 하더라도 2.x SDK로 빌드된 어플은 정상 동작을 하였다.


처음에는 URL 인코딩 문제인 줄 알았으나 역시 동일한 현상이 발생하였고, 웹 서핑을 해보니 URL에 "http://"를 붙이지 않아서 발생하는 문제라고 하는데 이미 붙여서 호출을 하고 있던 상황이었다. 별다른 레퍼런스를 찾지 못한 관계로 최근에 적용하여 사용했던 다른 방법의 이미지 파일 다운로드 코드로 대체하니 정상 동작이 되었다. 해당 소스 코드는 야후 날씨 OpenAPI를 사용할 때, 날씨 상태에 따른 이미지 파일을 다운로드할 때 기존 방법으로는 이미지 다운로드가 되지 않아서 사용한 방법이었다. (AsyncTask에서 상속받은 클래스를 이용하여 백그라운드로 이미지 파일을 다운받아서 ImageView 세팅한다)


http://android-developers.blogspot.kr/2010/07/multithreading-for-performance.html