技术库 > Java

android插件化-apkplug中以监听方式获取OSGI服务

技术库:tec.5lulu.com

1 需求

from:tec.5lulu.com

查询方式必须在Service启动以后才能使用,而有时我们并不知道Service何时启动,而只需要在Service启动以后能立即获取到并使用。OSGI提供监听器的形式动态监听指定Service的注册于注销过程。

2 OSGI Service 监听代码

private ServiceReference ref=null;
private printLog service=null;
context.addServiceListener(
    new ServiceListener(){
    @Override
    public void serviceChanged(ServiceEvent event) {
        switch  (event.getType()) {
        case  ServiceEvent.REGISTERED:
    //服务注册
            if  (ref  ==   null ) {
           ref  =  event.getServiceReference();
                service  =  (printLog) context.getService(ref);//保存实例以备后续访问
            }
        break ;
        case  ServiceEvent.UNREGISTERING:
        //服务注销
            if  (ref  ==  event.getServiceReference()) {
                context.ungetService(ref); //释放实例
                service  =   null ;
                ref  =   null ;
                }
        break ;
        }
    }
},"(objectclass=com.apkplug.osgi.service.printLog)" );//服务名称

android插件化-apkplug中以监听方式获取OSGI服务


标签: android private public osgi本文链接 http://tec.5lulu.com/detail/110dan2ehcg928536.html

我来评分 :6.5
1

转载注明:转自5lulu技术库

本站遵循:署名-非商业性使用-禁止演绎 3.0 共享协议

www.5lulu.com