Kotlin:如何在绑定程序中返回正在运行的服务实例?
我有工作的Java代码,并尝试将其转换为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 此表达式中的此表达式的更多信息