Working version using bound service.