Android One Plus Two: No se pudo cambiar la configuración regional para db

Estoy utilizando la base de datos Sqlite en uno de mis proyectos Android. Funciona bien en todos los dispositivos, excepto One Plus Two .

Estoy recibiendo excepción al intentar abrir la base de datos. Este es el registro de errores.

12-23 19:14:35.235: E/SQLiteLog(3133): (11) database corruption at line 53216 of [9491ba7d73] 12-23 19:14:35.235: E/SQLiteLog(3133): (11) statement aborts at 7: [SELECT locale FROM android_metadata UNION SELECT NULL ORDER BY locale DESC LIMIT 1] 12-23 19:14:35.237: E/SQLiteDatabase(3133): Failed to open database '/data/data/com.zanec.dryjanuary/databases/alcochange.sqlite'. 12-23 19:14:35.237: E/SQLiteDatabase(3133): android.database.sqlite.SQLiteException: Failed to change locale for db '/data/data/com.zanec.dryjanuary/databases/alcochange.sqlite' to 'en_US'. 

Por favor, haga clic aquí para ver el registro completo del accidente

He visto otras preguntas como que aquí, he intentado casi todas las respuestas, pero nada funciona. He intentado esto y esto .

EDIT: El dispositivo funciona con Oxygen Lollipop.

No puedo encontrar la razón por la que estoy teniendo este error, pero de alguna manera he evitado esto haciendo lo siguiente.

Anteriormente, tenía una base de datos sqlite en el paquete y cuando el usuario abrir nuestra aplicación por primera vez, copié la base de datos .sqlite del paquete a la ruta correcta.

Pero ahora, he exportado las consultas en bruto desde el. Sqlite y lo agregó con el paquete como un archivo txt. Ahora, cuando el usuario abra la aplicación por primera vez, primero crearé un archivo .sqlite vacío en la ruta de acceso y luego leeré todas las consultas .sql del archivo txt del paquete y las ejecutaré sobre el archivo .sqlite en el directorio camino.

Intente cambiar localmente manualmente.

Abra el archivo de base de datos con un editor de SQLite como SQLiteStudio y luego abra la tabla android_metadata . Si no existe, crearlo. (Puede crearlo con el editor de consultas (herramientas> abrir el editor de consultas) y copiar / pegar el código DDL a continuación)

 CREATE TABLE android_metadata ( locale TEXT ); 

Para insertar el registro puede copiar / pegar esta línea en el editor de consultas:

 INSERT INTO android_metadata VALUES ('en_us'); 

Sugerencia: para ejecutar la consulta en SQLiteStudio debe pulsar el botón con relámpago En la barra de herramientas.

  • Compare las fechas (almacenadas como cadena) en la base de datos android sqlite?
  • "No hay un constructor por defecto disponible en android.database.sqlite.SQLitepenhelper" en Android Studio
  • Java.lang.OutOfMemoryError en almacenar imágenes en sqlite db
  • Devolver todas las columnas de una tabla SQLite en Android
  • Cómo escribir una base de datos en un archivo de texto en android
  • SQLiteQueryBuilder.query () vs SQLiteDatabase.query ()
  • El grupo por consulta no funciona en android 2.1
  • Android Guardar imágenes en una tarjeta de memoria o en una tarjeta SD
  • Android insertWithOnConflict devolviendo el valor equivocado
  • Necesita ayuda para leer de la base de datos SQLite para Android
  • Obtener cuenta con cursor.getCount () o para ejecutar un rawQuery con un COUNT en una cláusula SQL?
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.