Android4.1中BinderService用法实例分析
程序员文章站
2023-12-10 20:25:04
本文实例讲述了android4.1中binderservice用法。分享给大家供大家参考,具体如下:
android4.1 中出现了一个新的类,binderservice...
本文实例讲述了android4.1中binderservice用法。分享给大家供大家参考,具体如下:
android4.1 中出现了一个新的类,binderservice,所有的native service 都会继承这个类。
class binderservice { public: static status_t publish(bool allowisolated = false) { sp<iservicemanager> sm(defaultservicemanager()); return sm->addservice(string16(service::getservicename()), new service(), allowisolated); } static void publishandjointhreadpool(bool allowisolated = false) { sp<iservicemanager> sm(defaultservicemanager()); sm->addservice(string16(service::getservicename()), new service(), allowisolated); processstate::self()->startthreadpool(); ipcthreadstate::self()->jointhreadpool(); } static void instantiate() { publish(); } static status_t shutdown() { return no_error; } };
从代码中可以得知,这个类的publish(),就是将native service 注册到servicemanager,同时 binderservice 作为 nativeservice 的友元类。这是因为binderservice 需要访问 native service 的getservicename方法。
希望本文所述对大家android程序设计有所帮助。