0

When I use WorkManager + Hilt in regular module, the app works well. However, when I use in dynamic module, meeting the below issue

java.lang.NoSuchMethodException: <init> [class android.content.Context, class androidx.work.WorkerParameters]
    at java.lang.Class.getConstructor0(Class.java:2320)
    at java.lang.Class.getDeclaredConstructor(Class.java:2166)
    at androidx.work.WorkerFactory.createWorkerWithDefaultFallback(WorkerFactory.java:95)
    at androidx.work.impl.WorkerWrapper.runWorker(WorkerWrapper.java:242)
    at androidx.work.impl.WorkerWrapper.run(WorkerWrapper.java:136)
    at androidx.work.impl.utils.SerialExecutor$Task.run(SerialExecutor.java:91)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1162)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:636)
    at java.lang.Thread.run(Thread.java:764)
Hien Nguyen
  • 744
  • 2
  • 7
  • 20

1 Answers1

0

I found solution from this answer Using DelegatingWorkerFactory

It seems Hilt hasn't supported annotation in dynamic module yet. So I must create the factory and add this to DelegatingWorkerFactory. Register DelegatingWorkerFactory in application.

Hien Nguyen
  • 744
  • 2
  • 7
  • 20