Я запускаю службу из класса Fragment
. Мой класс Service
имеет один аргумент в своем конструкторе.
Из моего Fragment
У меня есть функция, которая вызывает это:
val serviceIntent = Intent(context, ServiceClass::class.java)
activity!!.startService(serviceIntent)
И это мой класс обслуживания, который использует Singleton, который требует Context
:
class ServiceClass(var context: Context): Service(){
companion object : SingletonHolder<ServiceClass, Context>(::ServiceClass)
override fun onStartCommand(intent: Intent?, flags: Int, startId: Int): Int {
return START_STICKY
}
Каждый раз, когда я звоню, мой Intent
я получаю сообщение об ошибке:
Невозможно создать экземпляр службы ServiceClass: java.lang.InstantiationException: java.lang.Class не имеет конструктора с нулевым аргументом.
в ...
Как бы я мог передать аргумент Context
через Intent
Любая ссылка на документацию по этому вопросу приветствуется.