Join FlipAndroid.COM Telegram Group: https://t.me/joinchat/F_aqThGkhwcLzmI49vKAiw


CursorLoader, obtiene URI para la base de datos local

Soy un principiante android programador y recientemente he seguido un tutorial que muestra cómo crear una base de datos SQLite local y luego acceder a la base de datos utilizando SQLiteDatabase.rawQuery para devolver un cursor. Me gustaría modificar mi aplicación para utilizar CursorLoader que es aparentemente una mejor manera de acceder a la base de datos. Mi problema es que el constructor CursorLoader espera que se dé un URI. ¿Acabo de ingresar "file: /// [path to db]"? Parece un poco desordenado.

  • Cómo escribir datos exif a la imagen en Android?
  • Clase estática en Java (Android) - uso o no uso
  • Buffer de vídeo circular Android con sonido
  • Cómo utilizar Leak Canary
  • Diferencia entre LocationRequest setInterval (long millis) y LocationRequest setFastestInterval (long millis)
  • Android: cambiar los elementos del menú de opciones mediante programación
  • Cambiar dibujable basado en tema
  • Error Inflating CollapsingToolbarLayout
  • Cómo desplazar el edittext dentro de la vista de desplazamiento
  • El servicio Android se bloquea después de que la aplicación se borre de la lista de aplicaciones recientes
  • Cómo indent XML correctamente utilizando XMLSerializer?
  • Volver a una actividad específica
  • 2 Solutions collect form web for “CursorLoader, obtiene URI para la base de datos local”

    La razón detrás del cargador de cursor que acepta un URI es que espera consultar un contentProvider y no una base de datos sin formato.

    Por lo tanto, sugiero que cree un proveedor de contenido que utilice internamente su base de datos, de modo que pueda utilizar la clase CursorLoader directamente.

    La ventaja de usar un proveedor de contenido es que encapsula mejor sus datos y puede fácilmente aprovechar una gran cantidad de apis de android directamente.

    Aquí hay algunas guías sobre cómo crear un proveedor de contenido

    http://developer.android.com/guide/topics/providers/content-provider-creating.html

    http://thinkandroid.wordpress.com/2010/01/13/writing-your-own-contentprovider/

    Si decide no crear un ContentProvider, puede extender AsyncTaskLoader o el cursor loader directamente para consultar los datos de la forma que desee.

    Eche un vistazo a la biblioteca LoaderEx de CommonsWare . Le permite utilizar un Loader con un SQLiteDatabase local, por lo que no tiene que ir a toda la molestia de crear su propio ContentProvider .

    FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.