As we know , android camera is the C/S architecture, including the client and the service. They communicate each other by the Binder. They are running in different process.
So I have a question : why android camera have a client and service ? What's the advantage?
May be they choosed C/S architecture, because it is better for sending notifications to listeners, for example Dropbox and Google+ app are listening for photo events for uploading new photos to cloud. Also, you can subscribe your app for same events too (with ACTION_IMAGE_CAPTURE
). So, they not watching for changes in DCIM folders, they subscribe to system events.
With just client arhitecture, photo apps will have implement sending of all camera events
to provide compatibility to other apps.
But it is just my opinion :)