OnViewCreated con la biblioteca de compatibilidad
En una aplicación de Android tengo un fragmento implementado que anula onViewCreated para configurar algunos OnClickListeners una vez que la vista está allí.
Todo esto funciona bien cuando implemento. Sin embargo, tan pronto como añadir la biblioteca de compatibilidad v4 r3 parece que el método no se llama en absoluto.
- Proceso se bloquea durante la creación del inyector de RoboGuice, si hay una instancia burlada en cualquier módulo
- ¿Algún ejemplo simple usando roboguice con fragmentos en android?
- Android y RoboGuice - Inyectar vistas en Fragmento?
- Uso de Guice para inyectar dependencias en el constructor de una actividad de Android
- Robolectric + PowerMock + Mockito no funciona
Por ahora estoy migrando mi configuración en onResume pero eso no es realmente ideal. Asi que aqui están mis preguntas:
-
¿Es esto un error en la biblioteca de compatibilidad?
-
¿Hay una solución mejor?
Después de un poco más de excavación y de intentar diversas cosas conseguí este stacktrace, que me deja creer que es de hecho un insecto en la biblioteca de la compatibilidad.
10-07 14:25:11.130: ERROR/AndroidRuntime(2964): FATAL EXCEPTION: main java.lang.NoSuchMethodError: android.support.v4.app.Fragment.onViewCreated at roboguice.fragment.RoboFragment.onViewCreated(RoboFragment.java:18)
Pero aún más extrañamente. Observando la fuente de la biblioteca de compatibilidad, ese método está realmente allí pero está vacío.
- Roboguice y simulacros: ¿Cómo roboguice inyectar un servicio de simulacro cuando la prueba, pero utiliza el REAL de lo contrario?
- ORMLite para Android: enlazar DAO con Roboguice
- RoboGuice 3.0 NoClassDefFoundError: roboguice.inject.ContextScopedRoboInjector
- Cómo inyectar el contexto usando RoboGuice en Android?
- Mantenga la clase anotada en Proguard
- Roboblender-3.0.1.jar: no incluido en Android: javax.tools. Referido desde com.google.inject.blender.AnnotationDatabaseGenerator
- Roboguice 2.0 inyecta la aplicación en POJO
- ¿Dónde se escribe la salida de registro cuando se utiliza Roboelectric + Roboguice?
Después de mucho de ida y vuelta y depuración encontré el problema. Resulta que estaba usando una versión antigua de la biblioteca de compatibilidad en mi proyecto. Ahora he actualizado mi proyecto y las cosas funcionan bien. Para la referencia el cambio necesario es a la dependencia de biblioteca de compatibilidad en el archivo pom maven para ser así
<dependency> <groupId>android.support</groupId> <artifactId>compatibility-v4</artifactId> <version>r3</version> </dependency>
Con la biblioteca desplegada en su repo Maven con el Maven Android SDK Deployer. También he actualizado el wiki roboguice y el eslabón vinculado en mi cuenta github .
- ¿Cómo obtener el progreso de subida al cargar datos desde Byte Array a un servidor PHP?
- No puede obtener el teclado suave android para aparecer / ocultar usando viewpager