¿Cuál es la versión de SQLite utilizada en Android?
Motivo: me pregunto cómo manejar las migraciones de esquemas. Las versiones más nuevas de SQLite admiten un comando SQL "ALTER TABLE" que me ahorraría tener que copiar datos, descartar la tabla, volver a crear la tabla y volver a insertar los datos.

Respuestas:
ACTUALIZACIÓN OCTUBRE 2016 : Aquí hay un enlace a los documentos oficiales actualizados que incluye los puntos principales de esta respuesta: android.database.sqlite package-level javadoc
Usando los emuladores:
ACTUALIZACIÓN: desde SDK 29 (revisión de emulador 8), el comando adb shell proporciona:
Alguna idea de por qué? Emitir rastreador aquí .
SQLite 3.28.0 ( funciones de ventana !):
SQLite 3.22.0 :
SQLite 3.19.4 (¡por alguna razón 3.19.4 no existe en las notas de la versión de sqlite! Por lo tanto, se vincula a los controles de control de versiones):
SQLite 3.18.2 :
SQLite 3.9.2 :
SQLite 3.8.10.2 :
SQLite 3.8.6.1 (el enlace SQLite es para 3.8.6 porque 3.8.6.1 no existe por alguna razón):
SQLite 3.8.6 :
SQLite (desconocido):
SQLite 3.7.11 :
SQLite 3.7.4 :
SQLite 3.6.22 :
SQLite 3.5.9 :
Nota: los enlaces de nivel de Android SDK muestran dónde ha cambiado el paquete android.database.sqlite . Donde no hay enlace (por ejemplo, SDK nivel 17), indica que no hay cambios en ese paquete.
Nota: Aquí hay algunas anomalías (la lista no es exhaustiva):
SQLite 3.7.13 (en lugar de 3.7.11):
SQLite 3.7.6.3 (en lugar de 3.6.22):
SQLite 3.7.5 (en lugar de 3.7.4):
SQLite 3.7.0.1 (en lugar de 3.6.22):
SQLite 3.6.23.1 (en lugar de 3.5.9):
Nota: el comando adb para obtener la versión SQLite solo funciona en emuladores y en dispositivos con sqlite3 disponible: https://stackoverflow.com/a/3645800/444761
Para otros dispositivos, vea la respuesta de Juri .
He agregado un número de problema # 58909 al rastreador de problemas de Android. Por favor marque esto si desea apoyarlo.
Nota: si desea que su aplicación use la misma versión de SQLite en todas las versiones de Android, considere usar esta biblioteca de soporte SQLite de terceros .
fuente
targetSdkVersionobuildTargettiene alguna influencia en eso?Aunque la documentación proporciona 3.4.0 como número de referencia, si ejecuta el siguiente sql, notará que hay un número mucho mayor de SQlite instalado:
Esto es solo una pieza de código rápido y sucio para recuperar la versión sqlite. Por ejemplo, en un HTC Hero con Android 2.1, obtengo: 3.5.9 .
En mi Nexus One con Android 2.2, incluso obtengo 3.6.22 .
fuente
Lo mismo en el emulador ADP1 1.6 y 2.1.
fuente
Una breve descripción de las API de Andorid y las versiones compatibles de SQLite.
El resumen es del enlace en la respuesta de Mark Carters.
fuente
En Room puedes consultar
SELECCIONE sqlite_version ()
RG
fuente