¿Cómo get datos en Core-Data desde una database SQL?

Estoy a punto de comenzar un proyecto de iOS que requiere extraer los datos del usuario de una database SQL y verlo dentro de la aplicación. Antes de comenzar, estoy buscando la conformación de que estoy tomando la ruta correcta (mejor).

Mi plan:

  1. La aplicación comienza en la página de inicio de session (la aplicación mostrará los datos de otro service)
  2. La aplicación usa AFNetworking para enviar una request al service web.
  3. El service web obtiene datos de usuario de la database SQL y envía de vuelta JSON
  4. La aplicación usa JSONKit para analizar el feed y cargar en Core-Data
  5. La aplicación usa información de core-data para completar la interfaz de usuario

¿Esto parece ser una forma adecuada de get la información en Core-Data de SQL? ¿Alguna sugerencia para hacer las cosas de manera diferente?

Gracias.

¿Recibe la respuesta del server web en JSON? Si es así, el hecho de que el server use una database SQL no tiene importancia. Lo que necesita saber es cómo analizar JSON para su inclusión en un almacén de datos central. Cocoa is my Girlfriend tiene un muy buen tutorial.

  • Parte 1
  • Parte 2

Para responder a su comentario, esto es lo que he hecho.

  1. Muestra una pantalla de inicio de session. Las cnetworkingenciales de inicio de session deben savese en el llavero para mayor security. He usado SSKeychain para esto.
  2. Para manejar el envío y la recepción de datos desde una request web, su mejor opción es utilizar una biblioteca pre-construida. Siempre he usado ASIHTTPRequest , pero como ya no está en desarrollo activo, probablemente deberías mirar un poco antes de comprometerte a algo. Estoy seguro de que hay bibliotecas mejores y más limpias.
  3. Necesita analizar las respuestas JSON. Soy un fanático de JSONKit . Es muy rápido, muy fácil de usar, muy robusto.

Sacar datos del almacén de datos del núcleo y mostrarlo en la interfaz no será un problema para usted. Si crea un nuevo proyecto en Xcode, la mayor parte de la configuration se realizará por usted.

Ahora, hay muchos proyectos que intentan combinar requestes web, análisis json y carga de datos centrales en un marco. He tratado de usar algunos de estos y no he tenido mucha suerte. Los que he probado no han sido robustos y muy difíciles de depurar. Configurar su propio código de request / análisis / carga no es difícil en absoluto, solo requiere un poco de time.

Estoy seguro de que hay muchas forms de implementar este problema. Su solución es una de las soluciones populares, supongo, pero podría conectarse al DB a través de un socket y hablar directamente con la database, por ejemplo, el hecho de pasar por un website de puerto 80 tiene la ventaja de que la posibilidad de algún tipo de cortafuegos que bloquea la comunicación es muy bajo. Solucionaré este tipo de problema de la misma forma que supongo.