У меня есть рабочий код Java для Service
и попытка конвертировать его в Kotlin .
class MyService : Service() { companion object MyBinder : Binder() { fun getService() : MyService? { return MyService::class.objectInstance } } // service implementation }
Проблема в том, что в действиях getService()
всегда возвращает null. Я уверен, что service
запускается раньше, я вижу ее в logcat. Я предлагаю, чтобы эта автогенерированная строка из кода Java была другой, но я не могу найти решение:
return MyService::class.objectInstance
В коде Java это:
return MyService.this
Ниже код поможет
class MyService : Service() { inner class MyBinder : Binder() { fun getService() : MyService? { return this@MyService } } // service implementation }
Подробнее об этом выражении в Kotlin Это выражение