¿Cómo crear una instancia de Singleton solo una vez en mi aplicación y sus bibliotecas?

Creé una biblioteca con Firebase Cloud Messaging para mí, así que puedo usar eso en mis aplicaciones y en todas las demás bibliotecas que creé. Está funcionando hasta ahora.

Luego agregué una class FcmManager, que gestiona todas las cosas relacionadas con Fcm, como el token de actualización. Como puedo usar esta FcmLibrary en mi aplicación y sus otras bibliotecas, me gustaría hacer que sea Singleton, de modo que este FcmManager se instancia solo una vez. El problema aquí es en FcmManager Tengo un parámetro de Context . En actividades:

 val fcmManager = FcmManager(this) 

¿Cómo puedo resolver eso?

Consulte este enlace. En este artículo, describieron el concepto singleton breafly. https://medium.com/@adinugroho/singleton-in-kotlin-502f80fd8a63

¿Tienes que echarle un vistazo al object Kotlin? Es una característica incorporada para el soporte de Singleton.

Lea aquí: https://kotlinlang.org/docs/reference/object-declarations.html