能登 要

札幌在住のiOSアプリ開発者。SwiftUI により分割されたデバイス間を縦横にやりとりできる考え方に転換しています。

iOSアプリ開発者。2009年のiPhoneアプリ開発開始時期から活動。開発言語のアップデートの中でSwiftUIおよび周辺技術に着目中。

[プレゼン資料] ZIPでくれ - Apple謹製 geocoding/ reverse geocoding

2024年12月13日に行われた札幌iPhone開発勉強会でのプレゼンテーション資料。

地名住所から緯度経度の変換機能、緯度経度から地名住所変換機能とはそれぞれ、geocoding、reverse geocodingと呼ばれる。緯度経度を利用するという使い道よりは郵便番号から住所を求めるの方法に利用されることが多い。

Appleのgeocoding、reverse geocodingについてはAppleから無料で使えるAPIとして提供されているが郵便番号は国ごとにgeocoding、reverse geocoding機能提供するサービス会社とAppleが契約している。契約なのでAppleはこれまでの契約を打ち切って別のgeocoding、reverse geocoding機能提供するサービス会社と契約することもできる。

アプリ開発者にとって問題は契約変更がアナウンスされないため問題が発生した際に対策が取れないことである。

アナウンスされないに何故問題が発生するかというと、geocoding、reverse geocoding機能提供するサービス会社は2社あったとして前者は曖昧なキーワードでも住所を特定されるようなフォローが入っているのに対して一方は厳密な郵便フォーマットしか受け付けないような場合がそれで、後者の場合AppleのAPIはエラーを返さず日本の中心をレスポンスで返すといった結果となる。

これらはAppleのサービス会社との変更が行われた後でわかるものなので対策も後手に回りがちである。

そもそもgeocoding、reverse geocoding自体はお金を払ってでも利用する価値のあるサービスであると思うところだが、Appleのgeocoding、reverse geocoding APIは2010年代前半におけるGoogleのAndroidとの激しい軍拡競争の中で提供されたものと考えればAppleにとってただの経費でしかなく、故にできるだけ安価なサービス会社と契約せざるを得ないのではないだろうか?

本来はサードパーティー製アプリを提供する側がgeocoding、reverse geocoding機能提供するサービス会社と契約しiPhone/Android で一貫性ある結果を提供するのが尤もなアプローチと言える。