Android: java.land.NoSuchFieldError después de la actualización a SDK 23

He actualizado a SDK 23 y actualizado gradle.build a API 23, la biblioteca de soporte a 23.0.0, etc y ahora estoy recibiendo el siguiente error al intentar ejecutar la aplicación (compila muy bien).

java.lang.NoSuchFieldError: No instance field mFragments of type Landroid/support/v4/app/FragmentManagerImpl; in class Landroid/support/v4/app/Watson; or its superclasses (declaration of 'android.support.v4.app.Watson' appears in /data/app/com.my.app-1/base.apk) at android.support.v4.app.Watson.onCreatePanelMenu(Watson.java:50) at com.actionbarsherlock.ActionBarSherlock.callbackCreateOptionsMenu(ActionBarSherlock.java:560) at com.actionbarsherlock.internal.ActionBarSherlockNative.dispatchCreateOptionsMenu(ActionBarSherlockNative.java:64) at com.actionbarsherlock.app.SherlockFragmentActivity.onCreatePanelMenu(SherlockFragmentActivity.java:164) at com.android.internal.policy.impl.PhoneWindow.preparePanel(PhoneWindow.java:548) at com.android.internal.policy.impl.PhoneWindow.doInvalidatePanelMenu(PhoneWindow.java:917) at com.android.internal.policy.impl.PhoneWindow$1.run(PhoneWindow.java:258) at android.os.Handler.handleCallback(Handler.java:739) at android.os.Handler.dispatchMessage(Handler.java:95) at android.os.Looper.loop(Looper.java:135) at android.app.ActivityThread.main(ActivityThread.java:5221) at java.lang.reflect.Method.invoke(Native Method) at java.lang.reflect.Method.invoke(Method.java:372) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:899) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:694) 

Volví a API 22 en todo y todavía consigo el error.

Hice algo como lo hiciste, pero encontré gradle puede resolver dependencias, en Bibliotecas Externas no puedo encontrar support-v4-23.0.0, support-v7-23.0.0 y otra lib que la versión es 23.0.0. Luego volví a compilar 'com.android.support:support-v4:22.2.0', el solucionador de problemas @mraviator

Gracias @ zmarties por la respuesta, quiero agregar los detalles y enlaces

  1. Eliminar 'com.actionbarsherlock: actionbarsherlock: 4.4.0@aar' de gradle
  2. ¡Descarga el módulo de actionbarsherlock desde este enlace !
  3. Compruebe que tiene 'com.android.support:support-v4:20.0.0' o 23
  4. Abra el módulo de actionbarsherlock src cambie FloatMath a Math en AnimatorProxy.java
  5. Abra el módulo de actionbarsherlock src create FragmentManagerImpl fragments = (FragmentManagerImpl) this.getSupportFragmentManager (); En Watson.java
  6. Reemplazar todas las ocurrencias de fragmentos mFragments

Gracias por las respuestas anteriores.

Uso de Google Play Services versión 8.1.0 en lugar de 8.4.0 resuelto en mi lado

Encontré que podría construir ActionBarSherlock usar el SDK 23 si hice los dos sistemas siguientes de cambios:

  • En AnimatorProxy.java, reemplazar FloatMath llamadas de FloatMath con sus llamadas Math correspondientes
  • En Watson.java, reemplace el uso del campo mFragments con una variable local fragments inicializados mediante getActiveFragments(null) y, a continuación, cambie las referencias de mFragment para usar la variable local

¿Ha cambiado la vista de tema en la disposición principal de la pestaña de diseño? Intente cambiarlo de nuevo a una vista de tema de Sherlock en la pestaña de diseño.

Tuve el mismo problema cuando el proyecto de importación eclipse a Android Studio

Esta es la mejor solución para mí

Encontré que podría construir ActionBarSherlock usar el SDK 23 si hice los dos sistemas siguientes de cambios:

En AnimatorProxy.java, reemplazar llamadas FloatMath con sus correspondientes llamadas matemáticas – i cambiar FloatMath – a Math

En la clase Waston tuve el error – mFragments.isadded Por lo tanto, reemplazar el código de seguimiento en lugar de comprobar

MFragments.isadded! = Null

a

MFragments.getActiveFragments (mCreatedMenus)

Siempre que sea necesario

Tuve que resolver estos problemas.

  • Biblioteca de soporte técnico de Android v17
  • Uso de BottomSheetBehavior con un CoordinatorLayout interno
  • La API de Google Maps para Android v2 lanza GooglePlayServicesNotAvailableException, fuera de fecha, SupportMapFragment.getMap () devuelve null
  • FragmentManager.getFragment () NullPointerException
  • Aplicación Proguard android que utiliza soporte lib
  • ClassCastException: CustomFragment no se puede convertir en android.app.Fragment / Using android.support.v4.app.Fragment
  • Problema al eliminar la biblioteca supportV4
  • Preferences Support Library - SwitchPreference no funciona
  • OpenOptionsMenu () no funcionará en appcompat-v7 22.1.0 o posterior
  • Android.support.v7 con `ActionBarActivity` no se muestra ningún menú
  • Botón de acción flotante de Android Semi Transparente Color de fondo
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.