private void startTrackingService() {
    if (!DateTimes.isSameDay(mDate, Calendar.getInstance())) {
      mDate = Calendar.getInstance();

      TextView txtDate = (TextView) findViewById(R.id.txtDate);
      txtDate.setText(DateTimes.dateFormat().format(mDate));

      GPSHelper.loadTrackings(mDate);
      updateList();
    }

    IntentFilter intentFilter = new IntentFilter();
    intentFilter.addAction(PresenceManagerUtil.CHANGE_STATUS);
    getApplicationContext().registerReceiver(mIspReceiver, intentFilter);

    mPresenceManager.startPresence();
    for (String p : mLocationManager.getAllProviders()) {
      LocationListener ll = new MyLocationListener();
      mLocationManager.requestLocationUpdates(
          p, 60000, // 通知のための最小時間間隔(ミリ秒)
          30, // 通知のための最小距離間隔(メートル)
          ll);
      locationListeners.add(ll);
    }
    buttonVisible(true);
  }