I’ve just experienced another version of this problem, with the same symptom of onServiceConnected(...)
not being called. The cause was different in my case.
You must make sure to have a service declaration in your AndroidManifest.xml within the application tag – this was the root of the problem for me.
<application android:name=".YourAppTitle" android:icon="@drawable/icon" android:label="@string/app_name">
<activity android:name=".Main" android:label="@string/app_name">
</activity>
<service android:name="YourService" />
</application>
There’s an extra complication if you’re using a separate Android library within Eclipse – adding this Service tag only seems to fix the issue if the referenced service is in the same package as the manifest; i.e. if your app is in package a.b.c and this is where AndroidManifest.xml resides, then ‘YourService’ must also be in package a.b.c. (manually copied from another library, if necessary) or else the <service..>
tag may/will be ignored and onServiceConnected(...)
still won’t be called.
This was the case for my project even though I used a suitable import statement for the Service in my code. Eclipse showed no error, so the import was correctly identifying the class from another library in the Eclipse workspace.
HTH