I have the Activity and the Service. When Activity is started, it calls startService() to make this Service be alive even when Activity is destroyed, and
I think this (referenced from official dev guide) can explain all your queries:
Multiple clients can connect to the service at once. However, the system calls your service's onBind() method to retrieve the IBinder only when the first client binds. The system then delivers the same IBinder to any additional clients that bind, without calling onBind() again.