ChuckerTeam / chucker

🔎 An HTTP inspector for Android & OkHTTP (like Charles but on device)
Apache License 2.0
3.81k stars 329 forks source link

Crash on Share Click java.lang.NoClassDefFoundError: Failed resolution of: Landroidx/appcompat/graphics/drawable/DrawableWrapper; #1142

Open nauhalf opened 7 months ago

nauhalf commented 7 months ago

:writing_hand: Describe the bug

When I click the share in the request detail screen, it crashed.

:bomb: Steps to reproduce

  1. Go to 'Chucker'
  2. Click on 'One of detail'
  3. Click share icon
  4. Crash occured

:wrench: Expected behavior

I want it to display pop up to share curl, response, etc

:camera: Screenshots

image

:iphone: Tech info

:page_facing_up: Additional context

The logs of crash

java.lang.NoClassDefFoundError: Failed resolution of: Landroidx/appcompat/graphics/drawable/DrawableWrapper;
                                                                                                        at androidx.appcompat.widget.MenuPopupWindow.createDropDownListView(MenuPopupWindow.java:80)
                                                                                                        at androidx.appcompat.widget.ListPopupWindow.buildDropDown(ListPopupWindow.java:1179)
                                                                                                        at androidx.appcompat.widget.ListPopupWindow.show(ListPopupWindow.java:664)
                                                                                                        at androidx.appcompat.view.menu.StandardMenuPopup.tryShow(StandardMenuPopup.java:181)
                                                                                                        at androidx.appcompat.view.menu.StandardMenuPopup.show(StandardMenuPopup.java:208)
                                                                                                        at androidx.appcompat.view.menu.MenuPopupHelper.showPopup(MenuPopupHelper.java:296)
                                                                                                        at androidx.appcompat.view.menu.MenuPopupHelper.tryShow(MenuPopupHelper.java:182)
                                                                                                        at androidx.appcompat.view.menu.MenuPopupHelper.show(MenuPopupHelper.java:144)
                                                                                                        at androidx.appcompat.widget.ActionMenuPresenter.onSubMenuSelected(ActionMenuPresenter.java:310)
                                                                                                        at androidx.appcompat.view.menu.MenuBuilder.dispatchSubMenuSelected(MenuBuilder.java:314)
                                                                                                        at androidx.appcompat.view.menu.MenuBuilder.performItemAction(MenuBuilder.java:1008)
                                                                                                        at androidx.appcompat.view.menu.MenuBuilder.performItemAction(MenuBuilder.java:975)
                                                                                                        at androidx.appcompat.widget.ActionMenuView.invokeItem(ActionMenuView.java:625)
                                                                                                        at androidx.appcompat.view.menu.ActionMenuItemView.onClick(ActionMenuItemView.java:151)
                                                                                                        at android.view.View.performClick(View.java:7471)
                                                                                                        at android.widget.TextView.performClick(TextView.java:12535)
                                                                                                        at android.view.View.performClickInternal(View.java:7448)
                                                                                                        at android.view.View.access$3700(View.java:838)
                                                                                                        at android.view.View$PerformClick.run(View.java:28936)
                                                                                                        at android.os.Handler.handleCallback(Handler.java:938)
                                                                                                        at android.os.Handler.dispatchMessage(Handler.java:99)
                                                                                                        at android.os.Looper.loopOnce(Looper.java:242)
                                                                                                        at android.os.Looper.loop(Looper.java:374)
                                                                                                        at android.app.ActivityThread.main(ActivityThread.java:9333)
                                                                                                        at java.lang.reflect.Method.invoke(Native Method)
                                                                                                        at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:612)
                                                                                                        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1018)
                                                                                                    Caused by: java.lang.ClassNotFoundException: Didn't find class "androidx.appcompat.graphics.drawable.DrawableWrapper" on path: DexPathList[[zip file "/data/app/~~zbuxISZm-2RiN-YdRfLKrw==/{{package}}-iRGYHm0cJ9zOJL-Dx1EG4g==/base.apk"],nativeLibraryDirectories=[/data/app/~~zbuxISZm-2RiN-YdRfLKrw==/{{package}}-iRGYHm0cJ9zOJL-Dx1EG4g==/lib/arm64, /data/app/~~zbuxISZm-2RiN-YdRfLKrw==/{{package}}-iRGYHm0cJ9zOJL-Dx1EG4g==/base.apk!/lib/arm64-v8a, /system/lib64, /system_ext/lib64]]
                                                                                                        at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:259)
                                                                                                        at java.lang.ClassLoader.loadClass(ClassLoader.java:379)
                                                                                                        at java.lang.ClassLoader.loadClass(ClassLoader.java:312)
                                                                                                        at androidx.appcompat.widget.MenuPopupWindow.createDropDownListView(MenuPopupWindow.java:80) 
                                                                                                        at androidx.appcompat.widget.ListPopupWindow.buildDropDown(ListPopupWindow.java:1179) 
                                                                                                        at androidx.appcompat.widget.ListPopupWindow.show(ListPopupWindow.java:664) 
                                                                                                        at androidx.appcompat.view.menu.StandardMenuPopup.tryShow(StandardMenuPopup.java:181) 
                                                                                                        at androidx.appcompat.view.menu.StandardMenuPopup.show(StandardMenuPopup.java:208) 
                                                                                                        at androidx.appcompat.view.menu.MenuPopupHelper.showPopup(MenuPopupHelper.java:296) 
                                                                                                        at androidx.appcompat.view.menu.MenuPopupHelper.tryShow(MenuPopupHelper.java:182) 
                                                                                                        at androidx.appcompat.view.menu.MenuPopupHelper.show(MenuPopupHelper.java:144) 
                                                                                                        at androidx.appcompat.widget.ActionMenuPresenter.onSubMenuSelected(ActionMenuPresenter.java:310) 
                                                                                                        at androidx.appcompat.view.menu.MenuBuilder.dispatchSubMenuSelected(MenuBuilder.java:314) 
                                                                                                        at androidx.appcompat.view.menu.MenuBuilder.performItemAction(MenuBuilder.java:1008) 
                                                                                                        at androidx.appcompat.view.menu.MenuBuilder.performItemAction(MenuBuilder.java:975) 
                                                                                                        at androidx.appcompat.widget.ActionMenuView.invokeItem(ActionMenuView.java:625) 
                                                                                                        at androidx.appcompat.view.menu.ActionMenuItemView.onClick(ActionMenuItemView.java:151) 
                                                                                                        at android.view.View.performClick(View.java:7471) 
                                                                                                        at android.widget.TextView.performClick(TextView.java:12535) 
                                                                                                        at android.view.View.performClickInternal(View.java:7448) 
                                                                                                        at android.view.View.access$3700(View.java:838) 
                                                                                                        at android.view.View$PerformClick.run(View.java:28936) 
                                                                                                        at android.os.Handler.handleCallback(Handler.java:938) 
                                                                                                        at android.os.Handler.dispatchMessage(Handler.java:99) 
                                                                                                        at android.os.Looper.loopOnce(Looper.java:242) 
                                                                                                        at android.os.Looper.loop(Looper.java:374) 
                                                                                                        at android.app.ActivityThread.main(ActivityThread.java:9333) 
                                                                                                        at java.lang.reflect.Method.invoke(Native Method) 
                                                                                                        at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:612) 
                                                                                                        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1018) 
cortinico commented 7 months ago

Does this happen consistently? Also can you create a reproducer?

nauhalf commented 7 months ago
  1. Yes, but it only occurred on the version and tech info I mentioned above.

I tried to check the old version like the one below,

AGP 7.2.1
Gradle 7.3.3
Kotlin Version = 1.6.10
Java Version = VERSION_1_8
Chucker Version 3.5.2

It runs normally

--Edit-- I found that I add "androidx.appcompat:appcompat-resources:1.6.1", is it related to this error?

--Another Edit-- Nope, after I delete that dependency, it still crash

  1. Can you explain about what is the reproducer you mean?
ithebk commented 2 months ago

@nauhalf How did you resolve this issue?