- библиотеке был клас с таким методом:
java.lang.Object getItem() { ... }
Он без проблем хэндлился генератором и создавал свойство:
Java.Lang.Object Item { get; }
Сейчас у меня та же библиотека, только переписанная на Kotlin, и в ней этот метод выгляжит так:
fun getItem(): Any { ... }
Генератор вообще его не види теперь. В api.xml этот метод тоже отсутствует. Кто-нибудь сталкивался с подобным?
P.S. Проблема только с этим методом. Я подозреваю, что виновато ключевое слово Any, но не знаю как правильно решить
Кажись нашел ответ, видимо у генератора байндингов есть бага: Если существует поле (даже приватное) типа private val secretField: SecretType Где SecretType : FrameLayout И при этом создать метод fun getSecretField(): Any { return secretField } или даже fun getSecretField(): Object { return secretField } То метод не будет генериться. Видимо генератор знает что есть поле и потому игнорирует. Но, если написать fun getSecretField(): FrameLayout { return secretField } или же fun useAnyMethodNameExceptgetSecretField(): Any { return secretField } То все отлично сгенерируется
А если вручную в xml указать название метода то соберёт библиотеку?
Возможно и будет работать, не уверен
Обсуждают сегодня