ガイド変更履歴HERE SDK API references
ガイド

地図とサービス

HERE SDKは包括的なマップデータを中心に構築されています。このマップデータにはレンダリング情報だけでなく、埋め込み施設情報 (POI)、道路のカーブ、標高データ、制限速度、道路標識など多数の詳細情報が含まれています。このセクションでは、マップ データの形式、カタログ、データの利用可否、日本などの地域地図の設定、バックエンド サービスについて説明します。

マップ データの形式

HERE SDK は、あらゆる種類のデータをマップ タイルに保存します。これには、マップ ビューでのレンダリングに必要なデータも含まれますが、これに限定されません。たとえば、マップ タイルには、マップ ビューには表示されないものの、ターン・バイ・ターンナビなどの他の目的に必要な場所や道路属性に関するデータも含まれています。

マップタイルに格納される情報は、交通情報やランドマークなどの個別のトピックに関する情報を保持する複数のレイヤーに分類されます。

  • 内部的には、HERE SDK (Navigate) ではコンパクトで高速かつ柔軟性のある地図を提供する最適化されたクライアントマップ (OCM) カタログ形式を使用します。OCMカタログはHERE Map Content (HMC) からコンパイルされます。「HERE Optimized Client Map - Developer Guide」(HERE最適化クライアントマップ-開発者ガイド) へのアクセスは制限されています。このドキュメントにアクセスできない場合は、HERE営業担当にお問い合わせください。
  • 内部的には、HERE SDK (Explore) ではオフラインのユースケースをサポートしていない、若干異なる地図形式 (ビジュアル化に最適化した地図) を使用します。

OCM形式では、使用されているすべてのデータをデバイスストレージに永続的に保存することも、マップキャッシュに一時的に保存することもできます。この方法により、アプリケーションではデバイスがオンラインかどうかに関係なく、同じ機能にアクセスできます。

OCM は全世界をカバーするデフォルト設定を使用しています。一部の地域 (日本など) では、ベース マップのみが含まれます。日本のより詳細な拡張マップデータは、リクエストに応じて専用の設定を通じて利用できます (こちらも参照してください)。

カタログ (Navigateでのみ使用可能)

すべてのマップデータは、カタログから参照されるダウンロード可能な地域の一部です。したがって、カタログ自体にはマップ データは含まれず、マップ データへのリンクのみが含まれます。各カタログはHRNによって識別されます。HRNはカタログまたはその他のHEREリソースを識別する、一意のHERE Resource Nameです。

通常、HERE SDKが以下の2つのカタログを識別するために使用するHRN値は2つのみです。

  • Optimized Client Map (ベース)。世界中の利用できるすべての地域への参照を含むカタログ。HRN: "hrn:here:data::olp-here:ocm": https://platform.here.com/data/hrn:here:data::olp-here:ocm/overview
  • 日本向けのOptimized Client Map。日本の詳細なマップ データへの追加参照を含むカタログ。これはデフォルトでは有効になっていません。有効にすると、日本のベースマップが詳しくなり、強化されます。詳細な日本地図を使用することをHEREと合意している場合、この2番目のカタログを使用できます。HRN: "hrn:here:data::olp-here:ocm-japan": https://platform.here.com/data/hrn:here:data::olp-here:ocm-japan/overview

カタログには、利用できる地域への参照のみが含まれることに注意してください。地域のマップ データは、使用するカタログや、ダウンロードしてインストールするバージョンによって異なる場合があります。実際にはカタログ自体は更新せず、既存のカタログにリンクされているデータのみを更新します。

マップ データの利用状況

デフォルトでは、日本、中国、韓国など、世界の一部の地域には限定的なマップ データが含まれています。日本と韓国の完全なマップ データにアクセスするには、HERE の担当者にお問い合わせください。

日本地図を設定する

日本地図カタログを設定するための作業は不要です。HEREチームが資格情報を有効にすると、拡張された日本地図が表示されます。内部的には、Decision APIがユーザーのアクセスを許可するかどうかを制御します。

資格情報がアクセスに対し有効になっていない場合、地図は日本のベースマップにフォールバックし、日本のマップビューに表示される詳細は少なくなります。さらに、マップデータを必要とするナビゲーションなどの特定の機能が期待どおりに動作しない可能性があります。

HERE チームに連絡して、詳細な日本のマップ データにアクセスできるようにしてください。

バックエンド サービス

オフラインで動作しない機能の場合、HERE SDK はコンテンツをさまざまなバックエンド サービスから内部的にリクエストします。すべてのバックエンド サービスは、次のドメインからリクエストされます。

  • here.com
  • hereapi.com

なお、サブ ドメイン (search.hereapi.com など) はこちらに記載されていません。HERE では多数の URL を使用していますが、これらの URL はすべて here.com ドメインおよび hereapi.com ドメインの下にあります。これらの各ホスト名は、複数の IP アドレスのセットに解決されます。その一部は GeoIP 経由で検出された地理的条件を使用しています。また、IP アドレスは変更される可能性があります。必要に応じて、ドメインのみを有効化/ホワイトリスト化し、すべてのサブ ドメインで同じことを行うには、ワイルドカードを使用することをお勧めします。


EN 日本語

HERE documentation

Find answers to your product and technical questions

Documentation

What's new

Videos

EN 日本語

HERE ドキュメント

製品や技術に関する質問の答えを見つけましょう。より多くの内容と最新の情報については、英語版をご覧ください。

ドキュメント

ダイナミックマップ

動的コンテンツ関連のAPIをアプリやサービスに活用して、ドライバーが安全・快適かつ予定どおりに目的地へ到着できるよう支援します。

地図とデータ

世界中を走行する多数のマッピング車両から得られる最新の位置情報データを活用し、精度の高い地図やカスタムレイヤーを構築できます。

最新情報

動画

(function () { const input = document.querySelector('input[data-typeahead]'); if (!input) return; // Prevent the form from submitting/navigating input.closest('form')?.addEventListener('submit', e => e.preventDefault()); input.addEventListener('input', function () { const q = this.value.trim().toLowerCase(); document.querySelectorAll('.nav-group-name').forEach(group => { let anyVisible = false; group.querySelectorAll('.nav-group-task').forEach(task => { const text = task.textContent.trim().toLowerCase(); const show = !q || text.includes(q); task.style.display = show ? '' : 'none'; if (show) anyVisible = true; }); // Hide the whole group header if nothing matches group.style.display = anyVisible || !q ? '' : 'none'; }); }); })(); (function () { function onTokenClick(event) { var link = event.target.closest('.sdk-for-ios .item .token'); if (!link) return; event.preventDefault(); console.log('token clicked', link.textContent.trim()); var item = link.closest('.item'); if (!item) return; var content = item.querySelector('.height-container'); if (!content) { console.log('no .height-container found for item', item); return; } var isHidden = window.getComputedStyle(content).display === 'none'; content.style.display = isHidden ? 'block' : 'none'; link.classList.toggle('token-open', isHidden); var href = link.getAttribute('href'); if (href) { if (history.pushState) history.pushState({}, '', href); else location.hash = href; } } function openHashTarget() { var hash = window.location.hash.slice(1); if (!hash) return; var anchor = document.querySelector('.sdk-for-ios a[name="' + hash + '"]'); if (!anchor) return; var item = anchor.closest('.item'); if (!item) return; var link = item.querySelector('.token'); var content = item.querySelector('.height-container'); if (!link || !content) return; content.style.display = 'block'; link.classList.add('token-open'); } function init() { console.log('HERE SDK accordion init'); openHashTarget(); } document.removeEventListener('click', onTokenClick); document.addEventListener('click', onTokenClick); if (document.readyState === 'loading') { document.addEventListener('DOMContentLoaded', init); } else { init(); } window.addEventListener('hashchange', openHashTarget); window.addEventListener('pageLoad', init); })();