WeatherKitの利用開始
WeatherKitは、まったく新しいApple Weatherサービス と連携して、Appやサービスに有益な気象データを幅広く提供することで、ユーザーが最新情報を確認し、身を守り、備えるのをサポートすることができます。このページでは、WeatherKitの利用要件、使い始めるためのツール、Dark Skyの気象サービスからの移行方法を紹介します。
WeatherKitは、まったく新しいApple Weatherサービス と連携して、Appやサービスに有益な気象データを幅広く提供することで、ユーザーが最新情報を確認し、身を守り、備えるのをサポートすることができます。このページでは、WeatherKitの利用要件、使い始めるためのツール、Dark Skyの気象サービスからの移行方法を紹介します。
WeatherKitへのアクセス権はApple Developer Programに含まれています。このプログラムでは、Appの開発と配信に必要なすべてのツール、リソース、サポートが提供されており、ベータ版ソフトウェア、Appサービス、テストツール、Appアナリティクスなども用意されています。
WeatherKitの利用には、iOS 16、 iPadOS 16、 macOS 13、 tvOS 16、watchOS 9が必要です。Webサイトやその他のプラットフォームについては、REST APIを使用できます。
WeatherKitでは、1つのApple Developer Programメンバーシップにつき、APIを毎月最大500,000回呼び出すことができます。APIの呼び出しが追加で必要な場合は、Apple Developer ProgramメンバーシップのAccount Holder(アカウントホルダー)がApple Developer Appの「アカウント」タブでサブスクリプションに登録することができます。サブスクリプションプランの価格は米ドル、または現地通貨(利用可能な場合)で設定されています。
Account Holderは、サブスクリプションをいつでもアップグレードまたはダウングレードできます。サブスクリプションをアップグレードまたはダウングレードすると、以下のように処理されます。
未使用のAPI呼び出しを翌月に持ち越すことはできないことにご注意ください。
App、Web App、WebサイトでWeatherKitを使用する際は、気象データのアトリビューションに関するAppleのガイドラインと要件に従う必要があります。詳細については、アトリビューションの要件に関する以下のセクションを参照してください。
WeatherKit向けのSwift APIを利用するには、Xcode 14、 iOS 16、 iPadOS 16、 macOS 13、 tvOS 16、watchOS 9が必要です。その他のプラットフォームやWebサイトについては、REST APIを使用できます。
WeatherKitを実装するには、まず「Certificates, Identifiers & Profiles(証明書、ID、プロファイル)」でIDと鍵を設定する必要があります。
App、Web App、WebサイトにAppleの気象データを表示する場合(以下に示す、気象警報や付加価値サービス/付加価値製品以外の場合)は、Apple Weatherの商標(Weather)と、その他のデータソースへの法的リンクを明示する必要があります。
付加価値サービスまたは付加価値製品とは、デベロッパが開発したデータ、製品、サービスのうち、Appleの気象データに由来し、そのデータを変換することによって、ユーザーまたはその他のサードパーティが元のAppleの気象データを特定、アクセス、リバースエンジニアリングできないようにしたり、その他の方法で解明もしくは使用したりできないようにしたものを意味します。付加価値サービスまたは付加価値製品を提供する場合、デベロッパは、データソースがWeatherであることと、Appleが提供するデータを変換して利用しているという注記を明示することに同意するものとします。
Dark Skyの気象サービスのサポートは2023年3月31日に終了します。WeatherKitに移行して、App、Web App、Webサイト、サービスで引き続き気象データにアクセスするには、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までお問い合わせください。ご不明な点について、Apple Developer Supportが電話またはEメールでお答えします。