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

利用開始

このトピックでは、HERE SDKの利用を開始するための手順を紹介します。以下を行うには、指示に従ってください。

  • HERE SDKを使用するための資格情報を取得する。
  • HERE SDKパッケージをダウンロードする。
  • マシンのエミュレータで、基本的なHERE SDKを活用したサンプルアプリを実行する。

HERE SDK (Navigate) とHERE Navigationは別の製品です。HERE SDKは自動車業界や他の業種におけるさまざまなユースケースに対応し、カスタムアプリケーションの開発を可能にします。これに対して、HERE NavigationはHERE SDKを基盤として構築された自動車向けの既製ナビゲーションアプリケーションです。HERE Navigationをお求めの場合は、HERE営業担当にお問い合わせください。

資格情報を取得する (ExploreとNavigate)

HERE基本プランにサインアップすると、すぐにHERE SDK (Explore) を使用できます。Navigateライセンスでは、資格情報を有効にする前に追加のオンボーディング手順が必要になります。ニーズに合ったライセンスが不明な場合は、ライセンスの概要を確認し、HEREアカウントエグゼクティブにご相談のうえ、適切な料金プランを選択してください。

HERE SDKを使用するには、1つ以上のアプリを登録し、OAuth 2.0の資格情報 (Access key IDAccess key secret) を取得する必要があります。

  1. HERE基本プランにサインアップし、HEREプラットフォームポータルへのアクセス権を取得します。
  2. HEREプラットフォームポータルにサインインします。
  3. OAuthによる認証」の手順に従って、OAuth2資格情報を取得します。注:必要なのは、OAuth 2.0資格情報のみです。OLP CLIをインストールしたりトークンを取得したりする必要はありません。
  4. 資格情報は常にアプリケーションIDに関連付けられています。HEREサポートチームに問い合わせる必要がある場合は、この情報を用意しておいてください。

HERE SDK (Explore) パッケージをダウンロードする

前の手順で作成した資格情報はExploreライセンスで有効なため、すぐに使用できます。

HERE SDK (Explore) パッケージをダウンロードして、アプリの構築を開始してください。

HERE SDK (Navigate) パッケージをダウンロードする

アクセス権を取得するにはお問い合わせください。NavigateパッケージはHERE Technologiesと契約を結んだお客様のみご利用いただけます。

アクセス権を待っている間に、同じAPIと機能のサブセットを提供するHERE SDK (Explore) を使用して構築を開始できます。

アクセス権を取得したら、次の手順に進みます。

  • アプリケーションIDを使用して、セールスポータルで見積もりを承認します。見積もりを承認するまで、資格情報はNavigateで使用できずNavigateパッケージをダウンロードすることもできません。この手順に関してサポートが必要な場合は、HEREアカウントエグゼクティブにお問い合わせください。
  • 前の手順を完了すると、HERE SDK (Navigate) パッケージをダウンロードできるようになります

これで、Navigateライセンスを使用してアプリの構築を開始する準備ができました。

HERE SDKパッケージの内容

HERE SDK パッケージの内容は以下のとおりです。

  • Android Archive (AAR) (アプリに含める HERE SDK バイナリ)。
  • このガイド、API リファレンス、サンプル アプリ、JavaDoc バイナリ (HEREsdk-javadoc.jar) など、いくつかのドキュメント アセット。
  • HERE SDK を使用して作成されたすべてのアプリに含める必要がある HERE_NOTICE ファイル。詳細については、オープンソースに関する通知を参照してください。

バイナリはネイティブにコンパイルされたSDKです。ExploreバイナリはNavigateバイナリのサブセットであるため、NavigateバイナリはすべてのExploreサンプルアプリで動作しますが、その逆は当てはまらない場合があります。Navigate専用のAPIは、Exploreバイナリには含まれません。同様に、ChangelogとAPIリファレンスは各ライセンスに合わせて記載されており、対応するバイナリに一致しています。

資格情報は、HERE SDKパッケージおよびGitHubにある、該当ライセンス向けのすべてのサンプルアプリで使用できます。Navigateライセンスをお持ちの場合、資格情報はすべてのアプリと機能で使用できます。Exploreライセンスをお持ちの場合、資格情報はすべてのアプリで使用できますが、Navigateライセンスを必要とする一部の機能は使用できません。

Hello Mapサンプルアプリ (Java/Kotlin) を実行する

HERE SDKリリースパッケージに含まれる、GitHubで入手可能なサンプルアプリでは、HERE SDKの機能を包括的にプレビューすることができます。まずは、基本的なHelloMapのサンプルアプリをエミュレータで実行してください。次の手順を実行します。

  1. Android Studioをインストールします。ダウンロードする場合はこちらのページにアクセスしてください。他の適切なIDEを使用することもできます。
  2. HEREプラットフォームポータルからダウンロードしたHERE SDKリリースパッケージを解凍します。
  3. サンプルアプリでアーカイブを解凍します。名前がexamples-VERSION_NUMBER.zipで終わるアーカイブです。
  4. パッケージの一番上のディレクトリにある.aarファイルを/HelloMap/app/libsパスにコピーします。Kotlinアプリを使用する場合は、/HelloMapKotlin/app/libsパスにコピーします。
  5. Android Studioを実行し、[Open project](プロジェクトを開く) オプションを使用して「HelloMap」サンプルアプリのフォルダーを開きます。
  6. Android StudioでHelloMap/app/src/main/java/com/here/hellomap/MainActivity.javaファイルを開きます。Kotlinアプリを使用する場合は、HelloMapKotlin/app/src/main/kotlin/com/here/hellomap/MainActivity.ktファイルを開きます。
  7. このファイル内で次のコードのプレースホルダーをお使いの資格情報に変更します。
// Set your credentials for the HERE SDK.
String accessKeyID = "YOUR_ACCESS_KEY_ID";
String accessKeySecret = "YOUR_ACCESS_KEY_SECRET";
AuthenticationMode authenticationMode = AuthenticationMode.withKeySecret(accessKeyID, accessKeySecret);
SDKOptions options = new SDKOptions(authenticationMode);
// Set your credentials for the HERE SDK.
val accessKeyID = "YOUR_ACCESS_KEY_ID"
val accessKeySecret = "YOUR_ACCESS_KEY_SECRET"
val authenticationMode = AuthenticationMode.withKeySecret(accessKeyID, accessKeySecret)
val options = SDKOptions(authenticationMode)
  1. [Play](再生) ボタンを選択して、「HelloMap」アプリを構築し実行します。

Android Studioエミュレータで実行されているHEREマップを表示したアプリを確認できるようになります。または、お好みのAndroidデバイスでアプリを実行することもできます。

次にコードを試します。たとえば、MainActivityloadMapScene()メソッドのMapScheme.NORMAL_DAYMapScheme.SATELLITEに置き換えてみるなど、サンプルを修正してみます。また、他のマップスキームを試したり、利用可能なマップレイヤーを調べたりすることもできます。

<Image align="center" caption=""HelloMap" example running in an emulator." src="https://files.readme.io/9d9e35587f8ffb2c668a04292ae9cb31ff23e98ce4642a5feb94f5cdeee4f42d-sample_app.PNG" />

SDKNativeEngineを初期化する方法、HERE SDKで作成したアプリの基本的なビルディングブロックについては、「HERE SDKを統合する」を参照してください。

複数のアプリを構築する

複数のアプリに同じ資格情報を使用する場合は、アプリを区別するためにスコープを設定する必要があります。

次のステップ


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); })();