Згенерований 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
як тип повернення.