¿Qué sucede si simplemente nunca cierra su conexión? Sé que obtienes excepciones si no lo cierras e intentas abrir otro, pero ¿qué ocurre si tienes un singleton global y simplemente no lo cierras? ¿Alguna idea?Nunca cierre la conexión de Android SQLite
Respuesta
Una grieta se forma en el continuo espacio-tiempo, la extinción de toda amenaza para la vida en el universo, hasta que el día es salvado por un grupo de seres humanos en trajes de aspecto gracioso de colores brillantes (incluyendo algunos con cabos, si puedes creerlo).
Oh, no, espera. Eso fue solo un comic.
En realidad, no pasa mucho. Me han dicho, por Googlers y otros expertos de Android, que debido a la forma en que SQLite funciona (en particular, su manejo de las transacciones), no debe pasar nada malo si no cierra la base de datos.
De hecho, si implementa un proveedor de contenido, tendrá el mismo efecto, ya que los proveedores de contenido no son llamados con ningún tipo de método onDestroy()
, lo que significa que nunca tendrá la oportunidad de cerrar su base de datos. Un proveedor de contenido solo vivirá hasta que finalice el proceso. Personalmente, esto realmente me molesta, que es una de las razones por las que trato de minimizar mi uso de los proveedores de contenido.
- 1. Android: cierre de la base de datos SQLite
- 2. cierre conexión WCF
- 3. Conexión con Sqlite en android a través de Servlet
- 4. ¿Debo mantener abierta la conexión Sqlite?
- 5. Detectando el cierre de la conexión del cliente en node.js
- 6. cierre HttpClient conexión antes timout se alcanza
- 7. android sqlite sincronización bidireccional sqlite
- 8. OnUpdate nunca llamó - Widget Android
- 9. Android ACTION_UP incluso nunca llamado
- 10. Android SQLite DB Cuándo cerrar
- 11. Android onPageScrollStateChanged de ViewPager nunca se llama
- 12. ¿Cómo puedo evitar que Oracle SQL Developer cierre la conexión de base de datos?
- 13. SQlite - Android - Sintaxis de clave externa
- 14. Administración de conexiones de SQLite en Android
- 15. Forzar el cierre de una conexión oráculo en C#
- 16. ado.net conexión de cierre cuando se utiliza el "uso" declaración
- 17. synchronize android sqlite database
- 18. salida Android cáscara sqlite
- 19. Android: SQLite - insertWithOnConflict
- 20. Android sqlite rollback
- 21. Android SQLite incremento automático
- 22. Tienda Android SQLite
- 23. cifrado sqlite para Android
- 24. Android SQLite consulta SELECT
- 25. Android: CursorLoader, LoaderManager, SQLite
- 26. Android Sqlite Caracteres especiales
- 27. Abrir una conexión Sqlite con un bloqueo exclusivo en Java/Scala usando la biblioteca SQlite JDBC
- 28. Android: onPreviewFrame nunca se llamó sin SurfaceView
- 29. Android: Parcelable.writeToParcel y Parcelable.Creator.createFromParcel nunca se llaman
- 30. Android SQLite filtró
Los proveedores de contenido son una de las partes de Android menos comprendidas y más utilizadas en exceso. Son muy solicitados en los documentos, o al menos en los primeros documentos, pero solo deben usarse si planea compartir datos con aplicaciones de terceros. He visto gente usarlos solo para serializar acceso a DB, lo cual es terrible. De todos modos, pensé que tener una conexión estática estaría bien. Hice un montón de trabajo probando lo que ocurre con múltiples conexiones. Resumen, es malo: http://www.touchlab.co/blog/android-sqlite-locking/. Trabajando en una repetición de la gestión de conexión para ORMLite. Gracias. –
Esa es una gran publicación de blog, por cierto. – CommonsWare
Esa publicación del blog ya no parece existir. Nuevo enlace? – John