E/AndroidRuntime: FATAL EXCEPTION: main
Process: com.sf.DarkCalculator, PID: 13063
java.lang.RuntimeException: Unable to start activity ComponentInfo{com.sf.DarkCalculator/androidx.pluginmgr.DynamicActivity}: java.lang.IllegalStateException: You need to use a Theme.AppCompat theme (or descendant) with this activity.
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2955)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3030)
at android.app.ActivityThread.-wrap11(Unknown Source:0)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1696)
at android.os.Handler.dispatchMessage(Handler.java:105)
at android.os.Looper.loop(Looper.java:164)
at android.app.ActivityThread.main(ActivityThread.java:6938)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.Zygote$MethodAndArgsCaller.run(Zygote.java:327)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1374)
Caused by: java.lang.IllegalStateException: You need to use a Theme.AppCompat theme (or descendant) with this activity.
at android.support.v7.app.AppCompatDelegateImplV9.createSubDecor(AppCompatDelegateImplV9.java:359)
at android.support.v7.app.AppCompatDelegateImplV9.ensureSubDecor(AppCompatDelegateImplV9.java:328)
at android.support.v7.app.AppCompatDelegateImplV9.setContentView(AppCompatDelegateImplV9.java:289)
at android.support.v7.app.AppCompatActivity.setContentView(AppCompatActivity.java:140)
at com.example.gbt.recorder.AudioRecorderActivity.onCreate(AudioRecorderActivity.java:105)
at android.app.Activity.performCreate(Activity.java:7174)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1220)
at androidx.pluginmgr.delegate.DelegateInstrumentation.callActivityOnCreate(DelegateInstrumentation.java:240)
at androidx.pluginmgr.environment.PluginInstrumentation.callActivityOnCreate(PluginInstrumentation.java:153)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2908)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3030)
at android.app.ActivityThread.-wrap11(Unknown Source:0)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1696)
at android.os.Handler.dispatchMessage(Handler.java:105)
at android.os.Looper.loop(Looper.java:164)
at android.app.ActivityThread.main(ActivityThread.java:6938)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.Zygote$MethodAndArgsCaller.run(Zygote.java:327)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1374)
動態加載apk框架使用大神動態加載原理,導入module之後,框架使用方法需要在宿主apk的xml文件中註冊框架的DynamicActivity,拉起插件apk時報以上錯誤,搜索之後提示說需要把activity繼承的AppCompatActivity改爲Activity,但是我的DynamicActivity本身就是繼承的Activity,嘗試了各種辦法均不行以後,發現
宿主apk中在application中
android:theme="@style/AppTheme"
於是去掉application中的這一句,分別在每個宿主的activity中單獨添加,問題解決。
但不是根本方法,後續需要從根本解決