iPhone/iPadアプリを開発しているN-SHUの雑記ノート。開発に関することもあればプライベートな内容も^^
<< February 2018 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 >>
<< 指でなぞって距離測定できるiPhoneアプリ | main | 標高が表示できるiPhoneアプリ(登山、津波対策などに使える?) >>
Google Maps APIやSDK for iOSの費用 (利用規約/無料/有料/金額)
Capricious TeamのNanshuです。

幾つか地図に関連するiOSアプリをリリースしてきたが、地図をiOS純正のマップ(MapKit)ではなく、Google Mapsを使っている。
これは単純に、今日時点(2014年6月)では、純正のマップよりもGoogle Mapsの方が使い易く情報が正確と思っているからだ。

さて、iPhoneやiPadでGoogle Mapsを使ったアプリの作り方は、Google社のホームページより「Google Maps SDK for iOS」をダウンロードすることから始まる。

以下が、ダウンロード先のアドレスである。

Google Maps SDK for iOS
https://developers.google.com/maps/documentation/ios/?hl=ja

なんと、無料で提供されている。トラフィック量で課金が発生することも想定していたが、課金もない。

但し、利用規約に従い利用しよう。
例えば、powered by Google のロゴの表示や、オープンソースライセンスで利用規約の表記が必要だったりする。

ライセンスの表記は、
[GMSServices openSourceLicenseInfo]
というメソッドを呼ぶことで、表示する
利用規約の情報の取得が可能である。

さて、Google Maps SDK for iOSの利用は本日時点では無料と書いたが、開発を進める上でアプリの利用者数によっては、費用を考えなければならないこともある。

それは、場所の検索など、Google社が用意しているMap用のWebAPIを利用する場合だ。

例えば、私たちが開発している「Assist Maps」の場合、使って頂いたら分かると思うが場所の検索機能がある。

これは「Google Places API」を利用している。
さて、このAPIの利用が曲者だ。

利用規約を確認すると、Google Places API は、1,000 リクエスト/日 の利用制限があり、クレジットカードの登録により個人情報の登録をすれば、 100,000 リクエスト/日を利用できる
詳しくは、以下のページに記載がある。
https://developers.google.com/places/uplift?hl=ja

但し、以下のページを読むとプレイス検索の「テキスト検索リクエストでは、1 回で、リクエスト 10 回分の割り当て量を使用することになります。」と記載がある。
https://developers.google.com/places/documentation/search?hl=ja

ということは、検索機能は1日に1万回までしか利用できないことになる。
もし、1日1万人が利用するアプリなら、一人が1度検索するだけで、そな日の検索が使えなくなると言うことだ。

Google社に「割り当て数の増加」をお願いできるフォームがあるが、Google社のMap機能向上の為に貢献することが前提になる。
http://places-quota-uplifts.appspot.com/

勿論、これらを利用するにあたりGoogle Places APIのデベロッパー向けの利用規約の確認は必須だ。
https://developers.google.com/places/policies?hl=ja


さて、1日1万回の検索では足らない場合の最終手段としては、Google Maps API for Businessという、有料サービスに申し込むことだ。
http://www.google.com/enterprise/mapsearth/products/mapsapi.html

また、道案内を表示する為には、Google Directions APIというAPIを使う必要がある。
こちらは、1日の利用数2,500回という制限がある。1人で使う分には問題ない制限だがAppStoreで公開するアプリなら、少し流行っただけで使えなくなってしまうことがわかる。
https://developers.google.com/maps/documentation/directions/?hl=ja


このように開発者がWebAPIを利用する時は、利用規約をよく読みアプリの設計を考えないと思いもしないところに落とし穴があるものだ。

プログラムを作ることに夢中になり、テクニカルな部分のドキュメントしか読まないのは危険だ。
アプリは開発したものの、リクエスト数が多くなりエラーしか返ってこなくなれば、アプリとしての利用価値がなくなる。

タダほど怖いものはないと言うことは肝に銘じよう。

ではでは、また。