Я разрабатываю приложение, и одна из функций, которые я хочу включить, — это возможность получать местоположение пользователей и преобразовывать его в значение WOEID, а затем получать данные о погоде из RSS-канала Yahoo Weather. Вот документация, в которой указано требование для значения WOEID: http://developer.yahoo.com/weather/ а>
Получить WOEID в Android
Ответы (1)
Вы можете получить WOEID, используя Yahoo! API PlaceFinder. Сначала вам нужно запросить ключ API, затем вы можете отправить свой запрос следующим образом:
http://where.yahooapis.com/geocode?q=[search query]&appid=[yourappidhere]
Вы получите это в ответ:
<ResultSet xmlns:ns1="http://www.yahooapis.com/v1/base.rng" version="2.0" xml:lang="en-US">
<Error>0</Error>
<ErrorMessage>No error</ErrorMessage>
<Locale>en-US</Locale>
<Found>1</Found>
<Quality>85</Quality>
<Result>
<quality>85</quality>
<latitude>38.898708</latitude>
<longitude>-77.036369</longitude>
<offsetlat>38.89719</offsetlat>
<offsetlon>-77.036537</offsetlon>
<radius>400</radius>
<name/>
<line1>1600 Pennsylvania Ave NW</line1>
<line2>Washington, DC 20500-0005</line2>
<line3/>
<line4>United States</line4>
<house>1600</house>
<street>Pennsylvania Ave NW</street>
<xstreet/>
<unittype/>
<unit/>
<postal>20500-0005</postal>
<neighborhood/>
<city>Washington</city>
<county>District of Columbia</county>
<state>District of Columbia</state>
<country>United States</country>
<countrycode>US</countrycode>
<statecode>DC</statecode>
<countycode>DC</countycode>
<uzip>20500</uzip>
<hash>4216F67AA1A143E9</hash>
<woeid>12766118</woeid> // This is what you need
<woetype>11</woetype>
</Result>
</ResultSet>
Вы можете проанализировать ответ для тега <woeid>
.
Редактировать:
Если у вас есть EditText и вы хотите получить погоду на основе города, который вы получили из его ввода, вам придется сделать это:
String searchQuery = Uri.encode(myEditText.getText().toString());
Теперь у вас будет поисковый запрос. Так, например, если пользователь вводит:
Гамбург, Германия
то это преобразует его в:
Гамбург_Германия
person
Ahmad
schedule
14.01.2013
Это XML-ответ, вы можете проанализировать его с помощью анализатора XML (DOM, SAX или pullparser).
- person Ahmad; 15.01.2013
Что входит в [поисковый запрос]?
- person Buneme Kyakilika; 17.01.2013