Open Seo-4d696b75 opened 1 year ago
🌤️ APIから天気予報を取得して画面に表示します
[!NOTE] Required(先に完了させましょう) 32 [!IMPORTANT] 天気予報をAPIから取得する実装は作成済みコードを利用できます ご自身で実装する余裕がない場合は活用してください
[!NOTE]
[!IMPORTANT] 天気予報をAPIから取得する実装は作成済みコードを利用できます ご自身で実装する余裕がない場合は活用してください
これまで学んできた知識を活用して天気予報を表示しましょう
OpenWeatherMapの5 day weather forecastを利用します。指定した地点の向こう5日間の天気情報を3時間ごとに取得できます。API keyの取得、地点の指定、レスポンスの表記方法の指定などは以前の課題 #22 を参照してください。
APIから天気予報を取得する実装は作成済みコードを利用できます
template/api-weather-forecastブランチをmainまたは作業ブランチにmergeしてください
template/api-weather-forecast
OpenWeatherMapから取得したAPI keyを記載したapi/apikey.propertiesファイルを追加します (ファイルは.gitignoreに指定されているのでGitHub上に公開されません)
api/apikey.properties
api_key="your_api_key"
特にパラメータを指定しなければapi/apikey.propertiesで指定したAPI keyを利用します
val weather = YumemiWeather()
YumemiWeather
suspend fun fetchJsonForecastAsync(json: String) : String
WeatherRequest
ForecastResponse
ForecastPoint
🌤️ APIから天気予報を取得して画面に表示します
課題内容
これまで学んできた知識を活用して天気予報を表示しましょう
利用するAPI
OpenWeatherMapの5 day weather forecastを利用します。指定した地点の向こう5日間の天気情報を3時間ごとに取得できます。API keyの取得、地点の指定、レスポンスの表記方法の指定などは以前の課題 #22 を参照してください。
動作イメージ
参考資料
作成済みのコードを利用する
APIから天気予報を取得する実装は作成済みコードを利用できます
template/api-weather-forecast
ブランチをmainまたは作業ブランチにmergeしてくださいAPI keyの指定
OpenWeatherMapから取得したAPI keyを記載した
api/apikey.properties
ファイルを追加します(ファイルは.gitignoreに指定されているのでGitHub上に公開されません)
API Serviceの初期化
特にパラメータを指定しなければ
api/apikey.properties
で指定したAPI keyを利用します利用する関数
YumemiWeather
都市ID一覧
|都市名|id|country| |:-:|:-:|:-:| |札幌|2128295|JP| |釧路|2129376|JP| |仙台|2111149|JP| |新潟|1855431|JP| |東京|1850144|JP| |名古屋|1856057|JP| |金沢|1860243|JP| |大阪|1853909|JP| |広島|1862415|JP| |高知|1859146|JP| |福岡|1863967|JP| |鹿児島|1860827|JP| |那覇|1856035|JP| |New York|5128581|US| |London|2643743|GB|Request
WeatherRequest
Response
ForecastResponse
ForecastPoint