HERE SDK の最適化

この 最適化ガイド では、 HERE SDK のサイズを縮小し、ロードまたは処理する必要のあるデータを削減してランタイムの動作を最適化するためのオプションをいくつか示します。

フィーチャー設定を使用します

LayerConfiguration を設定すると 、MapViewをパンするとき、またはオフラインで使用するために新しい Region をダウンロードするときに、キャッシュにロードするマップ データの量を指定できます。 たとえば、ターン・バイ・ターンナビ (矢印ナビ)などのフィーチャーがアプリケーションで使用されていない場合 、フィーチャーの設定のnavigation を削除できます。

その結果、MapView をパンすると、キャッシュにダウンロードされるデータ量が少なくなります。 さらに、新しいRegionをダウンロードすると、サイズが小さくなります。

LayerConfigurationSDKOptions.layerConfigurationを経由してアイテムのFeatureリストとして設定すると 、一覧表示され ているフィーチャーのみが有効になり、それ以外のフィーチャーはすべて 無効になります。 1 つのフィーチャーは1つのみを無効にする場合は、他のすべてのフィーチャーを有効にするか、または無効にする必要があります。

たとえば、フィーチャー・一覧に navigationTRUCK が含まれている場合、 ナビゲーション フィーチャーとトラックフィーチャーのみが有効になり、その他のフィーチャーはすべて無効になります。

Region が 初めてダウンロードまたはキャッシュされたときに、グローバルに設定されたのみLayerConfiguration が使用されます。 すでにダウンロードされているリージョンのLayerConfiguration を更新する場合は、リージョンを削除して再度ダウンロードするか、または mapUpdater.performFeatureUpdate() を呼び出します ( 以下のも参照 ) 。

現在、以下のフィーチャーを指定できます。 表には、デフォルトで有効になっているフィーチャーも表示されます。

フィーチャー 有効 説明
detailRendering はい 建物などの追加のレンダリングの詳細。 MapViewにのみ使用されます。 設定されていない場合、オフラインのリージョンをダウンロードするとき、またはそのようなデータが含まれているエリアをプリフェッチするときに、データが除外されます。 ただし、オンラインでの使用中には、このようなデータがキャッシュにダウンロードされて表示されることがあります。
navigation はい ナビゲーション中のマップマッチングに使用されるマップ データ。 設定されていない場合、オンラインまたはオフラインで使用しているときにナビゲーションが正しく動作しないことがあります。
offlineSearch はい 検索に使用されるマップ データ。 設定されていない場合、 OfflineSearchEngine を使用するとが正しく動作しないことがあります。
offlineRouting はい ルートの計算に使用されるマップ データ。 設定されていない場合、 OfflineRoutingEngine を使用するとが正しく動作しないことがあります。
truck はい トラックルートの計算に使用されるマップ データ。 設定しないと、 OfflineRoutingEngine を使用してトラックルートを計算するときにが正しく動作しないことがあります。 トラックナビゲーション中の地図の一致にも使用されます。 設定しないと、オフラインで使用しているときにトラックナビゲーションが正しく動作しないことがあります。 オンライントラックナビゲーションは、デバイスがオンライン接続されている場合でも機能します。
landmarks3d いいえ テクスチャ付き 3D ランドマークのレンダリングに使用されるマップ データ。 設定されていない場合、オフラインのリージョンをダウンロードするとき、またはそのようなデータが含まれているエリアをプリフェッチするときに、データが除外されます。 LANDMARKSレイヤーがMapSceneに対して表示されるように設定されている場合、3D ランドマークはオンライン使用中にも表示されます。
junctionView3x4, junctionView16x9 いいえ 複雑な交差点に適した 3D ビジュアル。 このアセットデータは、ガイダンス中に SVG 画像を表示するために使用できます。 有効にすると、ダウンロードされたリージョンに、対応する JunctionViewWarning イベントで使用される交差点表示イメージが含まれます。 これは、旅程を開始する前にアセットをダウンロードする場合に役立ちます。 有効になっていない場合、必要なデータが必要なときにダウンロードされます。 各イメージは最大 15 MB を使用できます。 HERE SDK の今後のリリースでは、リアルさのレベルを下げることでサイズが最適化されることに注意してください。 デフォルトでは、レイヤーは有効になっていません。
junctionSign3X4junctionSign4X3junctionSign3X5、、 junctionSign5X3 junctionSign16X9 いいえ 署名者のビジュアル。 このアセットデータは、ガイダンス中に SVG 画像を表示するために使用できます。 有効にすると、ダウンロードされたリージョンに、対応する SignpostWarning イベントで使用される交差点表示イメージが含まれます。 有効になっていない場合、必要なデータが必要なときにダウンロードされます。 各イメージは最大 300 KB を使用できます。 有効になっていない場合、必要なデータが必要なときにダウンロードされます。 デフォルトでは、レイヤーは有効になっていません。
rendering はい Carto POI などの基本的なレンダリングフィーチャーのセット。 ベースレイヤーとして、このフィーチャーを無効にすることはできません。
traffic はい RDS-TMC 形式を使用してトラフィックブロードキャストフィーチャーを提供するマップ データ。 インターネット接続がない場合に使用して、ルーティングモジュールが無線チャネル経由で送信されるトラフィックデータを利用して、OfflineRoutingEngineを使用してルートを作成できるようにします。
ev いいえ EV 充電ステーションのオフライン マップデータ。
truckServiceAttributes いいえ トラックに関連する属性をOfflineSearchEngineから戻すことができます。
fuelStationAttributes いいえ OfflineSearchEngineによって燃料属性が返されるようにします。
offlineBusRouting いいえ バスルートの計算に使用されるマップ データ。 設定されていない 場合 、 OfflineRoutingEngineBusOptionsでルートを計算できないことがあります。
terrain いいえ 地形データを表すために使用されるマップ データ 。

この detailRendering フィーチャーは Headless Editionには関連していません。

一覧表示されている各フィーチャーは、 1 つ以上の OCM レイヤーグループに関連しています。 OCM レイヤーグループの名前は、 API リファレンス のフィーチャーごとに確認できます。 ただし、ほとんどのユースケースの場合、関連する OCM レイヤー名を知っていても関連ありません。

さらに、 HERE SDK エディションで現在使用するのに適していない 2 つのレイヤーADASEHORIZON(電子ホライズン)があります。これらのレイヤーは現在は無視してかまいません。 デフォルトでは、これらはすでに無効になっています。

フィーチャーが無効になっている場合、そのフィーチャーに必要なデータがキャッシュ内のスペースまたはダウンロードRegion の一部 としては使用されません。 また、フィーチャーをオフラインで使用することはできません。 また、offlineSearchが無効になっているのにOfflineSearchEngineを使おうとした場合など、エラーが発生することもあります。詳細については、以下を参照してください。

SearchEngineRoutingEngine などのエンジン では、キャッシュされた、またはダウンロードされたマップ データは使用されません。 関連するフィーチャーが無効になっていない場合、OfflineSearchEngine および OfflineRoutingEngine のみがこのようなデータを使用します。 たとえば、アプリがオンラインで完全に動作することが確実な場合は、オフライン検索フィーチャーを無効にしても安全です。 ただし、一時的に接続が失われたときにアプリ が POI を検索できるようにする 場合は、そのような失われた POI を検出したときににOfflineSearchEngine に切り替えることができます。そのため、関連するフィーチャーを無効にしないでください。

上記のように、一部の無効化されたフィーチャーについては、デバイスがオンライン接続され、フィーチャーが必要な場合に、デバイスが対応するデータをダウンロードすることがあります。 たとえば、このlandmarks3d フィーチャーが無効になっていても、対応するレイヤーMapScene が有効になっている場合、デバイスは必要なテクスチャをダウンロードして 、 3D ランドマークがMapViewのビューポイントに表示されたときにレンダリングします。

上記のすべてのフィーチャについて、 offlineSearch およびofflineRoutingを除き、 HERE SDK はまず、必要なデータがキャッシュで利用可能かどうかを確認します。 オフラインで使用するためにダウンロードされたRegion があるかどうかが確認されます。 見つからない場合、 HERE SDK は必要なデータをワイヤレスでダウンロードしようとします。 offlineSearchofflineRoutingの動作は同じですが、ワイヤレスではデータは要求されません。

フィーチャーの設定を更新

フィーチャーの設定は、次のアプリケーションアップデートのインストール後に mapUpdater.performFeatureUpdate()を呼び出して更新でき ます。PList ファイル内のフィーチャーの設定が更新されたら、このメソッドを呼び出します。

その結果、キャッシュされたマップ データ が削除され、その後更新されます。 また、ダウンロードしたリージョンが更新され、変更内容が反映されます。

アップデートをいつ実行するかは開発者の責任で決定してください。 HERE SDK は、このような更新がいつ行われるかを決定または通知しません。 performFeatureUpdate() の呼び出しは、アプリケーションが更新された後で 1 回のみ必要です。 開発者がフィーチャーの設定を変更していない場合は、この関数を呼び出す必要はありません

未使用の音声を削除

未使用の音声ガイダンスファイルを削除することで、 HERE SDK のサイズを削減できます。

これらのファイルは、テキスト / スピーチボイスメッセージでターン・バイ・ターンナビ (矢印ナビ) を使用する場合にのみ必要です。

未使用のファイルを削除するには、次の操作を行います。

  • heresdk.frameworkの内部でフォルダios-arm64/voice_assetsを開き、不要な音声パッケージを削除します。

ここで サポートされているすべての音声言語のリストと、 HERE SDK フレームワーク内に保存されている関連する音声スキンの名前を見つけることができます。

未使用のフォントの削除

未使用のフォントを削除することで、 HERE SDK のサイズを削減できます。 これについては、 ここで説明します。

ファットバイナリ

HERE SDKのバイナリサイズを配布用に最適化する方法の詳細については 、こちらをご覧ください。

その他のオプション

HERE SDK の最適化-その他のオプションは次のとおりです。

さらに、すべてのエンジンには、フィーチャーの設定方法を許可するいくつかのオプションが含まれています。 たとえば、SearchEngine を使用する場合、SearchOptionsを指定して、返される検索結果を制限できます。

」に一致する結果は 件です

    」に一致する結果はありません