Udacity의 Developing Android Apps 공부하시는 분들께 한가지 주의사항을 알려드립니다. Lesson 2부터 여러분의 App이 openweathermap.org에서 날씨 정보를 받아오게 되는데 갑자기 잘 안될겁니다. 로그를 남기시면 'Invalid API Key'라는 메시지를 확인할 수 있는데... 이게 불과 몇일 전에 생긴 이슈입니다. 전과 달리 API를 호출할때 API Key를 넣도록 변경되었습니다. API Key는 openweathermap.org에 로그인하시고 개인정보에서 확인하실 수 있구요. Uri를 빌드하실때 쿼리 끝에 APPID를 붙여주시면 됩니다.
 
 final String FORECAST_BASE_URL =  "http://api.openweathermap.org/data/2.5/forecast/daily?";
final String QUERY_PARAM = "q";
final String FORMAT_PARAM = "mode";
final String UNITS_PARAM = "units";
final String DAYS_PARAM = "cnt";
final String APPID_PARAM = "APPID";
 
Uri builtUri = Uri.parse(FORECAST_BASE_URL).buildUpon()
                    .appendQueryParameter(QUERY_PARAM, locationQuery)
                    .appendQueryParameter(FORMAT_PARAM, format)
                    .appendQueryParameter(UNITS_PARAM, units)
                    .appendQueryParameter(DAYS_PARAM, Integer.toString(numDays))
                    .appendQueryParameter(APPID_PARAM, "여러분의 API Key")
                    .build();
 
URL url = new URL("builtUri.toString();


관련된 쓰레드는 아래에서 확인하세요.
 
https://discussions.udacity.com/t/lesson-2-got-a-invalid-api-key-from-openweathermap/34488/2