気楽なソフト工房

プログラミングについていろいろな記事を書いています。



mykonos2008

Author:mykonos2008
システムエンジニアとして働いている30代の会社員です。
仕事や趣味でプログラムを書いている方の役に立つ記事を書いていきたいと思っています。
ご意見、ご感想はこちらまで
If you are an english speaker,Please visit my english blog.

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。
Windows Phoneで位置情報を利用するアプリケーションをマーケットに出品する場合、
満たさないといけない要件があります。
1つ1つ内容を確認しながら、現在開発中のアプリケーションの仕様を再検討していきたいと思います。

マーケットに出品するための要件は5つのカテゴリに分類され、それぞれのカテゴリの中には、
いろいろと細かい内容が記述されています。

Application Certification Requirements for Windows Phone

今回は、その中で位置情報に関連する内容を抜粋して、見ていきます。

まず、アプリケーションポリシーのカテゴリに記載されている内容からです。
アプリケーションポリシーでは、2.7の項に位置情報サービスを使用するアプリケーションについての
内容が記載されています。

2.7.1 Your application must determine location using the Microsoft Location Service API.
(位置情報は、「Microsoft Location Service API」を使用して決定する必要がある。)

位置情報を利用する際は、Microsoft Location Service APIを使用しなさいと言う内容ですね。
これについては、特に問題無いと思います。

2.7.2 The privacy policy of your application must inform users about how location data from the Location Service API is used and disclosed and the controls that users have over the use and sharing of location data. This can be hosted within or directly linked from the application.
(プライバシーポリシーの中で、位置情報がどのように利用/公開れるのかをユーザに知らせる必要がある。また、位置情報の使用と共有に関してユーザが可能な制御(操作)について、知らせる必要がある。お知らせの内容は、アプリケーション内のコンテンツでも、Webページでも良い。)

これについては、明示的な対応が必要ですね。プライバシーポリシーのページをユーザが
位置情報を利用するページに遷移する前に挟み込んで、上記の内容を表示する感じですかね。

2.7.3 Your application must provide in-application settings that allow the user to enable and disable your application's access to and use of location from the Location Service API.
(アプリケーション内の設定機能によって、ユーザが位置情報サービスの使用/未使用を切り替えることが出来るようにする必要がある。

2.7.2に記載されている内容とも関連していますが、設定機能を設けて、ユーザが位置情報サービスの使用/未使用を
設定できるようにしておきなさいということですね。設定ページを設けるか、Application Barに設定しておくかですかね。

2.7.4 If your application publishes or makes available location data obtained from the Location Service API to any other service or other person (including advertising networks), your application must implement a method to obtain opt-in consent. To "implement a method to obtain 'opt-in' consent," the application must:
(位置情報を他のサービスや、他者に公開する場合、ユーザに事前に許可を得る必要がある。許可を得る際には、以下の内容を案内する。)

(a) first describe how the location information will be used or shared;
(どのように位置情報が使用、共有されるか)

(b) obtain the user's express permission before publishing the location information as described; and
(情報を公開する前にユーザの明示的な許可が必要。)

(c) provide a mechanism through which the user can later opt out of having the location information published. Your application must periodically remind users or provide a visual indicator that location data is being sent to any other service or person.
(ユーザが情報提供の停止ができる機能を提供しなさい。また、ユーザに他のサービスや、他者に位置情報を共有していることを定期的に通知しなさい。)

これは、位置情報を他のサービス等に共有する場合に、対応しなければいけない内容です。
自分のアプリケーションで使用する範囲では対応が不要な内容ですね。

2.7.5 Your application must not override, circumvent, or suppress any Microsoft toast notification or prompts related to the Location Service API.
(Location Service APIに関するマイクロソフトの通知を変更したり、止めたりしてはいけない。)

これは、普通に開発していればやらないことなので、大丈夫だと思います。

2.7.6 Your application must not override or circumvent a user's choice to disable location services on the mobile device.
(位置情報の使用設定を変更してはいけない。)

OSの位置情報の使用設定を上書きしないでってことだと思います。通常これもやらないので、
大丈夫だと思います。(というか、出来るのかな。。)

2.7.7 Your application must request location and retain and use location data from the Location Service API only as necessary to deliver the location-aware features your application provides to users.
(位置情報に関連する機能をユーザに提供するためだけに、位置情報を取得しなさい。)

要するに、意味なく、または、ユーザが認識していない用途で使用するために位置情報を取得するなということですね。
ユーザに対しては、位置情報を使用する機能を全く提供していないのに、裏では、サーバに位置情報を送信しているような
ことはNGだということですね。

2.7.8 You and your application must adopt measures to protect against unauthorized access to, use or disclosure of location data received from the Location Service API.
(位置情報を不正なアクセス、使用、公開から保護する方法を採用する必要がある。)

他のサービスなどへの情報共有をしている場合は、気を付けないといけない項目かもしれませんが、していない場合は
特に気にする必要がない(?)気がします。

また、その他、Additional Requirements for Specific Application Types(特定のタイプのアプリケーションに対する要件)
カテゴリに以下の内容が記載されています。

Users have the ability to turn off the Location Service on the phone from the System Settings page. Location aware applications must remain responsive when the Location Service is turned off on the phone.
(ユーザがシステム設定で位置情報を使用不可にしても、アプリケーションは正常にレスポンスをユーザに返す必要がある。)

位置情報が使用できない状態でも、ハングアップしないようにしなさいということですね。
GeoCoordinateWatcherのStatusChangedイベントを正しく処理していれば回避可能です。

Recommendations(推奨)
Present a user-friendly message to indicate that location data is not available.
(位置情報が使用できない場合は、その旨をユーザに知らせなさい。

上記は推奨ですが、通常はこうしておいた方が良いですよね。

こうして見てみると追加で明示的に行わないといけないのは、プライバシーポリシーでの
位置情報の使用に関する記載と、位置情報の使用/未使用を変更するための設定機能を
設けるという2点ですね。

後はやらなけば良い内容と、通常はやっている内容になると思います。

(訳が間違っていたらごめんなさい。。)

コメント

コメントの投稿

管理者にだけ表示を許可する

トラックバック

http://csfun.blog49.fc2.com/tb.php/110-aaf587fd

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。