WeatherKit 시작하기
완전히 새로워진 Apple 날씨 서비스와 함께 WeatherKit은 앱과 서비스에서 사용자가 최신 정보를 확인하고 안전하게 미리 대비하는 데 도움이 되는 여러 가지 유용한 기상 데이터를 제공합니다. 현재 WeatherKit은 베타 버전이며 Apple Developer Program 회원에게만 제공됩니다. 요구 사항, 시작하는 데 필요한 도구 및 Dark Sky 날씨 서비스에서 전환하는 방법에 대해 알아보십시오.
완전히 새로워진 Apple 날씨 서비스와 함께 WeatherKit은 앱과 서비스에서 사용자가 최신 정보를 확인하고 안전하게 미리 대비하는 데 도움이 되는 여러 가지 유용한 기상 데이터를 제공합니다. 현재 WeatherKit은 베타 버전이며 Apple Developer Program 회원에게만 제공됩니다. 요구 사항, 시작하는 데 필요한 도구 및 Dark Sky 날씨 서비스에서 전환하는 방법에 대해 알아보십시오.
WeatherKit 베타 버전의 사용 권한은 Apple Developer Program에 포함되어 있습니다. 또한, 회원에게는 베타 소프트웨어, 앱 서비스, 테스팅 도구, 앱 분석 등에 대한 사용 권한을 포함하여 앱을 개발하고 배포하는 데 필요한 모든 도구, 리소스 및 지원을 제공합니다.
WeatherKit을 사용하려면 iOS 16, iPadOS 16, macOS 13, tvOS 16 또는 watchOS 9이 필요합니다. 웹 사이트 및 기타 플랫폼에서는 REST API를 사용할 수 있습니다.
WeatherKit 베타 버전에서는 Apple Developer Program 멤버십별로 매달 50만 API 호출 건수를 제공합니다. WeatherKit의 정식 버전이 출시되면 계속해서 멤버십에서 매달 50만 건의 API 호출이 제공됩니다. API 호출 건수가 추가로 필요할 경우 월 단위 구독 요금제를 구입할 수 있습니다.
자세한 구독 신청 방법은 올여름에 다시 확인해주시기 바랍니다.
앱, 웹 앱 또는 웹 사이트에서 WeatherKit을 사용할 경우 Apple 기상 데이터를 어트리뷰션하려면 지침 및 요구 사항을 준수해야 합니다. 자세한 내용은 아래의 어트리뷰션 요구 사항 섹션을 확인하시기 바랍니다.
WeatherKit용 Swift API를 사용하려면 Xcode 14, iOS 16, iPadOS 16, macOS 13, tvOS 16 및 watchOS 9의 베타 버전이 필요합니다. 기타 플랫폼 및 웹 사이트에서는 REST API를 사용할 수 있습니다. 최신 베타 버전을 다운로드하고 이러한 리소스를 사용하여 앱에 WeatherKit을 구현해 보십시오.
WeatherKit을 구현하기 전에 Certificates, Identifiers & Profiles(인증서, 식별자 및 프로파일)를 사용하여 식별자와 키를 설정해야 합니다.
앱, 웹 앱 또는 웹 사이트에 Apple 날씨 데이터를 표시하는 경우(아래 설명된 바와 같이, 기상 경보, 부가가치 서비스 또는 제품 제외) Apple 날씨 상표(Weather)를 분명하게 표시해야 하며 기타 데이터 소스로 연결되는 법적 링크도 표시해야 합니다.
부가가치 서비스 또는 제품이란 Apple 날씨 데이터에서 파생되었으며 사용자나 다른 제3자가 원래 Apple 날씨 데이터를 검색, 접근, 리버스 엔지니어링 또는 기타 방법으로 확인하거나 사용할 수 없도록 변환한 데이터, 제품 및/또는 서비스를 의미합니다. 부가가치 서비스 또는 제품을 표시하면 데이터의 출처가 Weather에 귀속되어 있음에 동의하는 것이며, Apple에서 제공한 데이터가 수정되었다는 공지도 함께 표시해야 합니다.
2023년 3월 31일부로 Dark Sky 날씨 서비스에 대한 지원이 종료됩니다. WeatherKit으로 전화하여 앱, 웹 앱, 웹 사이트, 서비스에서 계속해서 날씨 데이터를 사용하려면 Apple Developer Program에 가입해야 하며, 특별 고려 사항을 검토하고 필드를 적절한 이름으로 매핑해야 합니다.
비영리 단체, 인가 교육 기관 또는 정부 기관인 경우 Apple Developer Program 멤버십 회비 면제를 적용받을 수 있습니다.
| Dark Sky 필드 | REST | Swift |
|---|---|---|
| 응답 형식 | ||
| latitude | metadata.latitude | metadata.latitude |
| longitude | metadata.longitude | metadata.longitude |
| exclude | None | None |
| extend=hourly | None | None |
| lang=[language] | metadata.language | None |
| units=[units] | metadata.units | None |
| timezone | None | None |
| currently | currentWeather | currentWeather |
| minutely | forecastNextHour | minuteForecast |
| hourly | forecastHourly | hourlyForecast |
| daily | forecastDaily | dailyForecast |
| alerts | weatherAlerts | weatherAlerts |
| flags | metadata (on each object) | metadata (on each object) |
| 데이터 포인트 대상체 | ||
| apparentTemperature | temperatureApparent | apparentTemperature |
| apparentTemperatureHigh | None | None |
| apparentTemperatureHighTime | None | None |
| apparentTemperatureLow | None | None |
| apparentTemperatureLowTime | None | None |
| apparentTemperatureMax | None | None |
| apparentTemperatureMaxTime | None | None |
| apparentTemperatureMin | None | None |
| apparentTemperatureMinTime | None | None |
| cloudCover | cloudCover | cloudCover |
| dewPoint | temperatureDewPoint | dewpoint |
| humidity | humidity | humidity |
| icon | conditionCode | condition / symbolName |
| moonPhase | moonPhase (daily only) | dailyForecast.moon.phase |
| nearestStormBearing | None | None |
| nearestStormDistance | None | None |
| ozone | None | None |
| precipAccumulation | precipitationAmount | precipitationAmount |
| precipIntensity | precipitationIntensity | precipitationIntensity |
| precipIntensityError | None | None |
| precipIntensityMax | None | None |
| precipIntensityMaxTime | None | None |
| precipProbability | precipitationChance | precipitationChance |
| precipType | precipitationType | precipitation |
| pressure | pressure | pressure |
| summary | None | minuteForecast.summary |
| sunriseTime | sunrise, sunriseAstronomical, sunriseCivil, sunriseNautical | sun.sunrise |
| sunsetTime | sunset, sunsetAstronomical, sunsetCivil, sunsetNautical | sun.sunset |
| temperature | temperature | temperature |
| temperatureHigh | None | None |
| temperatureHighTime | None | None |
| temperatureLow | None | None |
| temperatureLowTime | None | None |
| temperatureMax | temperatureMax | highTemperature |
| temperatureMaxTime | None | None |
| temperatureMin | temperatureMin | lowTemperature |
| temperatureMinTime | None | None |
| time | dailyStart, hourlyStart, forecastStart, startTime | date |
| uvIndex | uvIndex | uvIndex |
| uvIndexTime | None | None |
| visibility | visibility | visibility |
| windBearing | windDirection | wind.direction |
| windGust | windGust | wind.gust |
| windGustTime | None | None |
| windSpeed | windSpeed | wind.speed |
| 데이터 블록 대상체 | ||
| data | dataSets | None |
| summary | None | None |
| icon | conditionCode | condition / symbolName |
| 경보 배열 | ||
| description | messages | summary |
| expires | expireTime | metadata.expirationDate |
| regions | areaId/areaName | region |
| severity | severity | severity |
| time | issuedTime | metadata.date |
| title | description | summary |
| uri | detailsUrl | detailsURL |
| 플레그 대상체 | ||
| nearest-station | None | None |
| sources | source | weatherService.attribution |
| units | units | None |
| 응답 헤더 | ||
| Cache-Control | Cache-Control | None |
| Expires deprecated | None | None |
| X-Forecast-API-Calls | None | None |
| X-Response-Time | None | None |
질문을 포스팅하고 동료 개발자 및 Apple 엔지니어와 기술 정보를 나누어 보십시오.
버그 리포트를 제출하고 API 및 개발자 도구에 대한 개선 사항을 요청해 보십시오.
질문이 있으신가요? Apple Developer Support에서 도움을 받을 수 있습니다. 핸드폰이나 이메일을 통해서 가이드를 받아보십시오.