Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

255
Vistas
El servicio de Android falla cuando se usa el lenguaje kotlin

Estoy escribiendo una aplicación para Android con firebase y kotlin. Ahora creé una clase kotlin que extiende la clase Service .

El problema es que después de iniciar el servicio, si cierro la aplicación, ¡se bloquea !

¡Si escribo el mismo código con Java , todo funciona bien! No puedo entender por qué se bloqueó cuando uso kotlin .

Mira mi código a continuación.

miServicio.kt

 class myService : Service() { internal var TAG = "tagForLogD" override fun onBind(p0: Intent?): IBinder? { return null } override fun onCreate() { super.onCreate() Log.d(TAG, "myService Created!") } override fun onStartCommand(intent: Intent, flags: Int, startId: Int): Int { return Service.START_STICKY } override fun onDestroy() { super.onDestroy() Log.d(TAG, "myService destroyed") } }

miServicio.java

 public class myService extends Service { String TAG = "tagForLogD"; @Nullable @Override public IBinder onBind(Intent intent) { return null; } @Override public void onCreate(){ super.onCreate(); Log.d(TAG, "myService Created!"); } @Override public int onStartCommand(Intent intent, int flags, int startId){ return Service.START_STICKY; } @Override public void onDestroy(){ super.onDestroy(); Log.d(TAG, "myService destroyed"); } }

Gracias por tu apoyo.

Logcat lanza la siguiente excepción

 03-10 15:13:53.847 4911-4911/net.beingup.simplechat E/AndroidRuntime: FATAL EXCEPTION: main Process: net.beingup.simplechat, PID: 4911 java.lang.RuntimeException: Unable to start service net.beingup.simplechat.Notification.myService@11a4382f with null: java.lang.IllegalArgumentException: Parameter specified as non-null is null: method kotlin.jvm.internal.Intrinsics.checkParameterIsNotNull, parameter intent at android.app.ActivityThread.handleServiceArgs(ActivityThread.java:3975) at android.app.ActivityThread.access$2300(ActivityThread.java:218) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1842) at android.os.Handler.dispatchMessage(Handler.java:102) at android.os.Looper.loop(Looper.java:145) at android.app.ActivityThread.main(ActivityThread.java:7007) at java.lang.reflect.Method.invoke(Native Method) at java.lang.reflect.Method.invoke(Method.java:372) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1404) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1199) Caused by: java.lang.IllegalArgumentException: Parameter specified as non-null is null: method kotlin.jvm.internal.Intrinsics.checkParameterIsNotNull, parameter intent at net.beingup.simplechat.Notification.myService.onStartCommand(myService.kt) at android.app.ActivityThread.handleServiceArgs(ActivityThread.java:3958)
over 4 years ago · Santiago Trujillo
3 Respuestas
Responde la pregunta

0

Declaraste la intent de no ser nulo en onStartCommand :

 override fun onStartCommand(intent: Intent, flags: Int, startId: Int): Int

El parámetro especificado como no nulo es nulo: método kotlin.jvm.internal.Intrinsics.checkParameterIsNotNull, intención del parámetro

Entonces, ¿declararlo como Intent? .

Razones por las que el Intent pasado sería NULL en onStartCommand

over 4 years ago · Santiago Trujillo Denunciar

0

Si usa LifecycleService , este problema se solucionó en la versión 2.2.0-alpha02 de la biblioteca AndroidX Lifecycle.

Puede anular:

 override fun onStartCommand(intent: Intent?, flags: Int, startId: Int): Int

(Aviso: Intent? en lugar de Intent )

over 4 years ago · Santiago Trujillo Denunciar

0

Google corrigió este error en androidx.lifecycle:lifecycle-service:2.2.0 ;

código

over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda