Згенерований API сервісу

Binder генерує трейт, що відповідає визначенню інтерфейсу. Трейт для зв'язку з сервісом.

birthday_service/aidl/com/example/birthdayservice/IBirthdayService.aidl:

/** Інтерфейс сервісу Birthday. */
interface IBirthdayService {
    /** Генерує привітання з днем народження. */
    String wishHappyBirthday(String name, int years);
}

Згенерований трейт:

trait IBirthdayService {
    fn wishHappyBirthday(&self, name: &str, years: i32) -> binder::Result<String>;
}

Ваш сервіс повинен реалізувати цей трейт, а ваш клієнт використовуватиме цей трейт для спілкування зі сервісом.

  • Згенеровані прив'язки можна знайти за адресою out/soong/.intermediates/<path to module>/.
  • Вкажіть, як сигнатура згенерованої функції, зокрема, типи аргументів та повернення, відповідають визначенню інтерфейсу.
    • String як аргумент призводить до іншого типу Rust, ніж String як тип повернення.