Інтерфейси AIDL

Ви оголошуєте API свого сервісу за допомогою інтерфейсу AIDL:

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

package com.example.birthdayservice;

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

birthday_service/aidl/Android.bp:

aidl_interface {
    name: "com.example.birthdayservice",
    srcs: ["com/example/birthdayservice/*.aidl"],
    unstable: true,
    backend: {
        rust: { // Rust не увімкнено за замовчуванням
            enabled: true,
        },
    },
}
  • Зверніть увагу, що структура каталогів у каталозі aidl/ має відповідати назві пакета, що використовується у файлі AIDL, тобто пакетом є com.example.birthdayservice, а файл знаходиться за адресою aidl/com/example/IBirthdayService.aidl.