large-screen-codelabs icon indicating copy to clipboard operation
large-screen-codelabs copied to clipboard

Exception: Unable to get provider androidx.startup.InitializationProvider, when applicationId is not same as package name in Activity_Embedding sample

Open bagguo opened this issue 10 months ago • 0 comments

In Activity_Embedding sample, has this code:

<provider
        android:name="androidx.startup.InitializationProvider"
        android:authorities="${applicationId}.androidx-startup"
        android:exported="false"
        tools:node="merge">

        <meta-data
            android:name="${applicationId}.SplitInitializer"
            android:value="androidx.startup" />
</provider>

when applicationId is not same as package name, Exception:

E  FATAL EXCEPTION: main (Ask Gemini)
Process: com.bagguo.samples, PID: 9395
java.lang.RuntimeException: Unable to get provider androidx.startup.InitializationProvider: androidx.startup.StartupException: java.lang.ClassNotFoundException: com.bagguo.samples.SplitInitializer
  at android.app.ActivityThread.installProvider(ActivityThread.java:8633)
  at android.app.ActivityThread.installContentProviders(ActivityThread.java:8126)
  at android.app.ActivityThread.handleBindApplication(ActivityThread.java:7812)
  at android.app.ActivityThread.-$$Nest$mhandleBindApplication(Unknown Source:0)
  at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2486)
  at android.os.Handler.dispatchMessage(Handler.java:106)
  at android.os.Looper.loopOnce(Looper.java:230)
  at android.os.Looper.loop(Looper.java:319)
  at android.app.ActivityThread.main(ActivityThread.java:9063)
  at java.lang.reflect.Method.invoke(Native Method)
  at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:588)
  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1103)
Caused by: androidx.startup.StartupException: java.lang.ClassNotFoundException: com.bagguo.samples.SplitInitializer
  at androidx.startup.AppInitializer.discoverAndInitialize(AppInitializer.java:242)
  at androidx.startup.AppInitializer.discoverAndInitialize(AppInitializer.java:206)
  at androidx.startup.InitializationProvider.onCreate(InitializationProvider.java:45)
  at android.content.ContentProvider.attachInfo(ContentProvider.java:2700)
  at android.content.ContentProvider.attachInfo(ContentProvider.java:2670)
  at android.app.ActivityThread.installProvider(ActivityThread.java:8628)
  at android.app.ActivityThread.installContentProviders(ActivityThread.java:8126) 
  at android.app.ActivityThread.handleBindApplication(ActivityThread.java:7812) 
  at android.app.ActivityThread.-$$Nest$mhandleBindApplication(Unknown Source:0) 
  at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2486) 
  at android.os.Handler.dispatchMessage(Handler.java:106) 
  at android.os.Looper.loopOnce(Looper.java:230) 
  at android.os.Looper.loop(Looper.java:319) 
  at android.app.ActivityThread.main(ActivityThread.java:9063) 
  at java.lang.reflect.Method.invoke(Native Method) 
  at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:588) 
  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1103) 
Caused by: java.lang.ClassNotFoundException: com.bagguo.samples.SplitInitializer
  at java.lang.Class.classForName(Native Method)
  at java.lang.Class.forName(Class.java:607)
  at java.lang.Class.forName(Class.java:512)
  at androidx.startup.AppInitializer.discoverAndInitialize(AppInitializer.java:224)
  at androidx.startup.AppInitializer.discoverAndInitialize(AppInitializer.java:206) 
  at androidx.startup.InitializationProvider.onCreate(InitializationProvider.java:45) 
  at android.content.ContentProvider.attachInfo(ContentProvider.java:2700) 
  at android.content.ContentProvider.attachInfo(ContentProvider.java:2670) 
  at android.app.ActivityThread.installProvider(ActivityThread.java:8628) 
  at android.app.ActivityThread.installContentProviders(ActivityThread.java:8126) 
  at android.app.ActivityThread.handleBindApplication(ActivityThread.java:7812) 
  at android.app.ActivityThread.-$$Nest$mhandleBindApplication(Unknown Source:0) 
  at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2486) 
  at android.os.Handler.dispatchMessage(Handler.java:106) 
  at android.os.Looper.loopOnce(Looper.java:230) 
  at android.os.Looper.loop(Looper.java:319) 
  at android.app.ActivityThread.main(ActivityThread.java:9063) 
  at java.lang.reflect.Method.invoke(Native Method) 
  at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:588) 
  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1103) 
Caused by: java.lang.ClassNotFoundException: Didn't find class "com.bagguo.samples.SplitInitializer" on path: DexPathList[[zip file "/data/app/~~oStOCCPnGsjjIlq-6EVSmw==/com.bagguo.samples-S28UlZOXDYmdVJHYhCvRqg==/base.apk"],nativeLibraryDirectories=[/data/app/~~oStOCCPnGsjjIlq-6EVSmw==/com.bagguo.samples-S28UlZOXDYmdVJHYhCvRqg==/lib/arm64, /data/app/~~oStOCCPnGsjjIlq-6EVSmw==/com.bagguo.samples-S28UlZOXDYmdVJHYhCvRqg==/base.apk!/lib/arm64-v8a, /system/lib64, /system/system_ext/lib64]]
  at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:259)
  at java.lang.ClassLoader.loadClass(ClassLoader.java:637)
  at java.lang.ClassLoader.loadClass(ClassLoader.java:573)
  at java.lang.Class.classForName(Native Method) 
  at java.lang.Class.forName(Class.java:607) 
  at java.lang.Class.forName(Class.java:512) 
  at androidx.startup.AppInitializer.discoverAndInitialize(AppInitializer.java:224) 
  at androidx.startup.AppInitializer.discoverAndInitialize(AppInitializer.java:206) 
  at androidx.startup.InitializationProvider.onCreate(InitializationProvider.java:45) 
  at android.content.ContentProvider.attachInfo(ContentProvider.java:2700) 
  at android.content.ContentProvider.attachInfo(ContentProvider.java:2670) 
  at android.app.ActivityThread.installProvider(ActivityThread.java:8628) 
  at android.app.ActivityThread.installContentProviders(ActivityThread.java:8126) 
  at android.app.ActivityThread.handleBindApplication(ActivityThread.java:7812) 
  at android.app.ActivityThread.-$$Nest$mhandleBindApplication(Unknown Source:0) 
  at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2486) 
  at android.os.Handler.dispatchMessage(Handler.java:106) 
  at android.os.Looper.loopOnce(Looper.java:230) 
  at android.os.Looper.loop(Looper.java:319) 
  at android.app.ActivityThread.main(ActivityThread.java:9063) 
  at java.lang.reflect.Method.invoke(Native Method) 
  at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:588) 
  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1103) 

How to reproduce this issue? -Change Sample's applicationId, error will be printed

bagguo avatar Mar 17 '25 03:03 bagguo