「デスクトップ地図アプリ開発」シリーズの第10弾記事です。
これまでの記事では、Web マップの作成から、ArcGIS Maps SDK for .NET(以下、SDK)を使用した属性情報表示やレイヤー リストの表示機能などの作成方法をご紹介してきました。第10弾では、SDK で構築したアプリを配布するために必要なライセンス認証の手順についてご紹介します。本記事で紹介する機能のサンプル コードは ESRIジャパン GitHub で公開しています。
これまで作成してきたアプリを実行した際に、アプリのマップ上に 「Licensed for Developer Use Only」と言うウォーターマークが表示されていることに気がつかれたでしょうか?
これは、このアプリが「開発・テスト用途でのみ使用が許可されている」ということを示しています。SDK は無償で開発・テストをすることができる地図アプリ開発キットですが、開発したアプリを実際に配布したり業務で利用したりするには、アプリがライセンス認証されている必要があります。SDK で開発したアプリを配布するためのライセンスには Lite、Basic、Standard、Advanced の 4 種類のライセンスがあり、各ライセンスで利用できる機能に違いがあります。ライセンスの詳細は、ライセンス ページをご参照ください。
このシリーズ記事で作成してきたサンプル アプリに実装した、ArcGIS Online で作成した Web マップの表示、属性情報の表示、住所検索などの機能は Lite ライセンスを使用してアプリを認証できます。Lite ライセンス自体は無償で取得できますが、アプリを運用する場合は、ArcGIS Onlineや ArcGIS Platform を保有するなど、配布のための条件を満たす必要があります(ライセンスの詳細はお問い合わせください)。
1. ArcGIS Developers のサイトの Get a license ページ にアクセスして、表示されたライセンスキーをコピーします。
※ ArcGIS Developers にサインインしてない場合は [Sign in to retrieve your Runtime Lite license string] をクリックして、ArcGIS 開発者アカウントでサインインします。
アプリを Lite ライセンスで認証するには、SDK のクラスがアプリのソース コードで使用される前に、認証コードを実行します。
1.App.xaml.cs の ArcGISRuntimeEnvironment.Initialize() で Lite ライセンスのライセンスキーを設定します。
App.xaml.cs
ArcGISRuntimeEnvironment.Initialize(config => config
.UseLicense("[ここに取得した Lite ライセンスキーを設定]")
.UseApiKey("[ここに取得した API キーを設定]")
.ConfigureAuthentication(auth => auth
.UseDefaultChallengeHandler() // Use the default authentication dialog
2. アプリを実行すると、マップ上に表示されていた 「Licensed for Developer Use Only」 と言うウォーターマークが消えてアプリがライセンス認証されたことを確認できます。
以上で SDK で開発したアプリの Lite ライセンスによる認証は完了です。
「デスクトップ地図アプリ開発」シリーズ記事では、SDK を使用して、地図アプリに必要な基本的な機能を実装したデスクトップ アプリを開発する方法を紹介してきました。
SDK では、本シリーズ記事で紹介した以外にも多くの機能が用意されています。米国 Esri 社の GitHub には多くの機能のサンプル コードが公開されていますので、こちらもご活用ください。ぜひ SDK を使ったデスクトップ地図アプリ開発を試しみてください!