Collect ProbeData
プローブデータの収集を行う
プローブデータの収集設定は Navi.initialize() のタイミングで行います。
まず、以下のように ProbeDataSettingInfo を作成し NaviInitInfo.setProbeDataSettingInfo() で指定します。
// Naviの初期化
private fun initializeNavi(context: Context) {
val initInfo = NaviInitInfo(context)
val apiKeyInfo = ApiKeyInfo();
apiKeyInfo.setApiKey(API_KEY); // 具体的なキー(文字列)については営業窓口までお問い合わせください。
apiKeyInfo.setTrafficProviderKey(PROVIDER_KEY); // 具体的なキー(文字列)については営業窓口までお問い合わせください。
apiKeyInfo.setTrafficProviderUserID(USER_ID); // 具体的なID(文字列)については営業窓口までお問い合わせください。
initInfo.setServerSettingInfo(ServerSettingInfo(apiKeyInfo));
// UserID(このIDを元にクラウドの設定やルート保存が行われるためユニークなIDを推奨)
val userID = "MyAppName" + Settings.Secure.getString(context.contentResolver, ANDROID_ID)
initInfo.setUserID(userID);
// プローブデータの設定
+ var probeDataSettingInfo = ProbeDataSettingInfo()
+ initInfo.setProbeDataSettingInfo(probeDataSettingInfo)
Navi.getInstance().initialize(initInfo) { errorCode, naviInitResult ->
if (errorCode == NaviInitListener.ErrorCode.NONE) {
Navi.getInstance().mobileAppLifecycle = lifecycle
Navi.getInstance().startPositioning()
Navi.getInstance().startVoiceEngine { }
}
}
}
次に、ProbeDataSettingInfo の collectDataTypeList で収集するデータを設定します。
ここでは NAVI_INFO、ROUTE_ACTION_LOG を収集します。
// Naviの初期化
private fun initializeNavi(context: Context) {
val initInfo = NaviInitInfo(context)
/** 省略 **/
// プローブデータの設定
var probeDataSettingInfo = ProbeDataSettingInfo()
+ probeDataSettingInfo.collectDataTypeList = listOf(DataType.NAVI_INFO, DataType.ROUTE_ACTION_LOG)
initInfo.probeDataSettingInfo = probeDataSettingInfo
/** 省略 **/
}
以上で収集設定は完了です。
収集を開始するために、Navi.initialize() の初期化完了後に Navi.getInstance().startCollectProbeData() を呼び出してください。
このメソッドを呼び出すと、自動的にプローブデータの収集が開始されます。
実際の運用時は、ユーザーに対して情報収集の旨を通知した上で実施してください。
// Naviの初期化
private fun initializeNavi(context: Context) {
val initInfo = NaviInitInfo(context)
/** 省略 **/
// プローブデータの設定
var probeDataSettingInfo = ProbeDataSettingInfo()
probeDataSettingInfo.collectDataTypeList = listOf(DataType.NAVI_INFO, DataType.ROUTE_ACTION_LOG)
initInfo.probeDataSettingInfo = probeDataSettingInfo
Navi.getInstance().initialize(initInfo) { errorCode, naviInitResult ->
if (errorCode == NaviInitListener.ErrorCode.NONE) {
Navi.getInstance().mobileAppLifecycle = lifecycle
Navi.getInstance().startPositioning()
Navi.getInstance().startVoiceEngine { }
+ Navi.getInstance().startCollectProbeData()
}
}
}
以上でプローブデータの収集設定は完了です。
プローブデータの収集についての詳細は、ProbeDataをご確認ください。