Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 2f41f894 authored by Jooyung Han's avatar Jooyung Han Committed by Automerger Merge Worker
Browse files

Merge "Regsiter BT HAL services if they are declared" into main am: 9dec1ab8 am: 57adb5a5

parents eca8be36 57adb5a5
Loading
Loading
Loading
Loading
+9 −5
Original line number Diff line number Diff line
@@ -35,12 +35,16 @@ int main(int /* argc */, char** /* argv */) {
      ndk::SharedRefBase::make<BluetoothFinder>();
  std::string instance =
      std::string() + BluetoothFinder::descriptor + "/default";
  if (AServiceManager_isDeclared(instance.c_str())) {
    auto result =
        AServiceManager_addService(service->asBinder().get(), instance.c_str());
  if (result == STATUS_OK) {
    ABinderProcess_joinThreadPool();
  } else {
    if (result != STATUS_OK) {
      ALOGE("Could not register as a service!");
    }
  } else {
    ALOGE("Could not register as a service because it's not declared.");
  }
  // Keep running
  ABinderProcess_joinThreadPool();
  return 0;
}
+6 −5
Original line number Diff line number Diff line
@@ -41,10 +41,11 @@ fn main() {
    let lmp_event_service = lmp_event::LmpEvent::new();
    let lmp_event_service_binder = BnBluetoothLmpEvent::new_binder(lmp_event_service, BinderFeatures::default());

    binder::add_service(
        &format!("{}/default", lmp_event::LmpEvent::get_descriptor()),
        lmp_event_service_binder.as_binder(),
    ).expect("Failed to register service");

    let descriptor = format!("{}/default", lmp_event::LmpEvent::get_descriptor());
    if binder::is_declared(&descriptor).expect("Failed to check if declared") {
        binder::add_service(&descriptor, lmp_event_service_binder.as_binder()).expect("Failed to register service");
    } else {
        info!("{LOG_TAG}: Failed to register service. Not declared.");
    }
    binder::ProcessState::join_thread_pool()
}
+9 −5
Original line number Diff line number Diff line
@@ -37,12 +37,16 @@ int main(int /* argc */, char** /* argv */) {
      ndk::SharedRefBase::make<BluetoothChannelSounding>();
  std::string instance =
      std::string() + BluetoothChannelSounding::descriptor + "/default";
  if (AServiceManager_isDeclared(instance.c_str())) {
    auto result =
        AServiceManager_addService(service->asBinder().get(), instance.c_str());
  if (result == STATUS_OK) {
    ABinderProcess_joinThreadPool();
  } else {
    if (result != STATUS_OK) {
      ALOGE("Could not register as a service!");
    }
  } else {
    ALOGE("Could not register as a service because it's not declared.");
  }
  // Keep running
  ABinderProcess_joinThreadPool();
  return 0;
}