android服务的几个小问题

android服务的几个问题
写了一个服务(CountService.java),服务中有接收关机广播并进行处理的功能,在另一个APK工程中加入这个服务源码(工程源码有调用该服务),
运行APK,系统关机时,服务是可以收到相应的logcat信息.
网上的 service 范例中,都有一个Activity类,在Activity中启动service.

问题A: 要是将服务提供给第三方,是不是只能提供服务源码?(不想给别人看到服务的源码)

问题B: android系统中如何调用我写的这个服务呢?

问题C: android 上有apk和jar, 请问 adt 上如何编译出一个 jar ?

------解决思路----------------------
自己编写的服务给别人用 可以导出为jar文件,然后混淆一下jar内容,只保留公开的Service类
别人使用的话 在APP的清单文件中配置即可。做的好的话  需要自己封装广播类,用户只需要调用这个类即可,数据接收也用回调函数的方式提供给用户Activity.


------解决思路----------------------
只想说实战这个服务可以用AIDL和Messenger,至于调用,不需要service源码,只需要提供AIDL编译后的java类,如果是用Messenger只要告诉别人使用方法,根本不需要提供service源码。