Handle Permissions

本SDKでは、位置情報とアクティビティ情報を使用します。それぞれ、位置情報権限とアクティビティ権限が必要です。

許可される権限の精度が低いには、可能な範囲でのデータを収集します。

権限自体が無い場合には、権限に対応するデータの収集はできませんが、それ以外のデータ収集は行います。

Android

以下の権限が必要です。

権限名用途
android.permission.ACCESS_COARSE_LOCATION位置情報取得(おおよそ)
android.permission.ACCESS_FINE_LOCATION位置情報取得(詳細)
android.permission.ACTIVITY_RECOGNITION (Android SDK 29以降向け)アクティビティ検知結果取得
com.google.android.gms.permission.ACTIVITY_RECOGNITION (Android SDK 28以前向け)アクティビティ検知結果取得
Table.3.4.1 - 必要な権限 (Android)

  • 位置情報取得権限

    プローブデータ収集SDKでは、位置情報を収集します。

    位置情報取得には、詳細、と、おおよそ、の二種類がありますが、プローブデータ収集SDKの動作には、詳細、が必要です。

    位置情報の権限の詳細はこちらを参照してください。Android位置情報権限:精度

  • アクティビティ取得権限

    プローブデータ収集SDKでは、アクティビティ情報を収集します。

    アクティビティ情報の取得には、Activity Recognition Transition APIを使用します。

    この使用にはアクティビティ情報取得権限が必要です。

    アクティビティ情報の詳細はこちらを参照してください。Android:ActivityRecognition

iOS

iOSでは、以下の権限が必要です。


  1. Info.plistに、以下を追加してください。

Key用途
NSLocationWhenInUseUsageDescription位置情報
NSLocationAlwaysAndWhenInUseUsageDescription位置情報
NSMotionUsageDescriptionモーションアクティビティ
UIBackgroundModes位置情報
Table.3.4.2 - Info.plistに追加するKey (iOS)



  1. アプリケーション起動後、プローブデータ収集SDKのデータ使用権限を取得してください。このAPIを介して以下のメソッドが呼び出されます。

名称設定・動作
CMMotionActivityManager.queryActivityStarting(from:to:to:withHandler:)モーションアクティビティ権限取得アラートを表示する
CLLocationManager.requestAlwaysAuthorization()位置情報権限取得アラートを表示する
CLLocationManager.allowsBackgroundLocationUpdatestrueを設定する。バックグラウンドでの実行中に位置情報を更新する
Table.3.4.3 - データ使用権原の取得で呼び出されるメソッド (iOS)




foreground and background

プローブデータ収集SDKは、 ユーザーアプリケーションで以下の設定をすることで、 フォアグラウンド、バックグラウンド、画面OFF状態で動作可能です。

OSごとに以下の設定をしてください。

Android

ユーザーアプリケーションで、フォアグランドサービスを利用してプローブデータ収集SDKを起動してください。

iOS

ユーザーアプリケーションで、以下の設定をしてください。

バックグラウンド実行時に位置情報を更新するよう設定