Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android技術 >> Android開發實例 >> Android4.1中BinderService用法實例分析

Android4.1中BinderService用法實例分析

編輯:Android開發實例

本文實例講述了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程序設計有所幫助。

  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved