我们只是将应用程序更改为使用该appcompat-v7 support
库,以便利用支持操作栏和支持Material主题。使用v21.0.0 of appcompat-v7
(和v21.0.0 of support-v4)
,我们现在Google Play
只能看到和/或使三星设备running
Android v4.2.2 . Here is the stack trace from Google Play and the app appears to crash as soon as the
actionbar中的崩溃和Crashlytics失效。
java.lang.NoClassDefFoundError: android.support.v7.internal.view.menu.MenuBuilder
at android.support.v7.app.ActionBarActivityDelegateBase.initializePanelMenu(ActionBarActivityDelegateBase.java:991)
at android.support.v7.app.ActionBarActivityDelegateBase.preparePanel(ActionBarActivityDelegateBase.java:1041)
at android.support.v7.app.ActionBarActivityDelegateBase.doInvalidatePanelMenu(ActionBarActivityDelegateBase.java:1259)
at android.support.v7.app.ActionBarActivityDelegateBase.access$100(ActionBarActivityDelegateBase.java:80)
at android.support.v7.app.ActionBarActivityDelegateBase$1.run(ActionBarActivityDelegateBase.java:116)
at android.os.Handler.handleCallback(Handler.java:725)
at android.os.Handler.dispatchMessage(Handler.java:92)
at android.os.Looper.loop(Looper.java:176)
at android.app.ActivityThread.main(ActivityThread.java:5299)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:511)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1102)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:869)
at dalvik.system.NativeStart.main(Native Method)
运行v4.2.2的其他设备和仿真器不会表现出此行为。据我了解,许多Google应用已经在使用此新版本的appcompat
来显示操作栏。如果这些应用未报告这些设备上的崩溃,则了解如何避免/解决此问题将很有帮助。
我向Google报告了此错误,但由于它是开发问题而被关闭。尽管我确实同意可能是这种情况,但我想知道当前是否/如何有人能够使用appcompat-v7 v21.0.0
并且不会崩溃Samsung 4.2.2 devices
。
更新:看来Google至少正在考虑为此可能的解决方法。请参阅此了解详情。