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

Commit 57adb5a5 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

parents 34ea1a81 9dec1ab8
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;
}