herramientas google funciones ios caching storage

ios - funciones - 10 herramientas de google drive



Almacenar datos localmente IOS (3)

Tengo un UIViewController para que el usuario ingrese sus datos y los envíe a nuestro ASP.NET Webapi. hay aproximadamente 40 textField y otros controles.

¿Hay alguna manera de que pueda guardar la entrada localmente? los datos no serán claros hasta que el usuario haga clic en el botón Enviar. Quiero que la información aún allí reinicie el teléfono o reinicie el programa. guardar en XML?


Existen bastantes opciones entre las que puede elegir, que varían en complejidad de la siguiente manera:

  • Use un NSKeyedArchiver para guardar en el sistema de archivos local. Esto implica hacer que su clase de modelo se ajuste al protocolo NSCoding .

  • Use sqlite y una base de datos local. La api de C puede ser bastante prolija, sin embargo hay una envoltura agradable de Objective-C llamada FMDB .

  • Usa CoreData . Esto implica la creación de un modelo de datos local (esquema de objetos) y luego instruir a CoreData para que persista el objeto en su almacenamiento. El almacenamiento es típicamente una base de datos sqlite (incluye el cumplimiento de ACID, por ejemplo, transacciones, atomicidad, etc.), pero CoreData también sabe cómo hacer formatos binarios y XML.

Cualquiera que sea el enfoque que use, le recomiendo usar el patrón de diseño de Objeto de acceso a datos (DAO), que proporciona un protocolo para los métodos de persistencia. Ejemplos:

- (Customer*) findCustomByLastName:(NSString*)lastName - (void) save:(Customer*)customer

. . de esta manera, es posible comenzar con un estilo de persistencia muy simple, probar cómo su arquitectura general se integra en una aplicación cohesiva y luego intercambiar otro estilo más sólido más adelante. Aquí hay un ejemplo de un DAO de sistema de archivos que usa NSKeyedArchiver .

Otros enfoques :

  • El patrón ActiveRecord es una alternativa al objeto de acceso a datos, y hay algunas bibliotecas muy populares y bien respaldadas que proporcionan esto con CoreData. Utilice el patrón ActiveRecord o el patrón DAO, pero probablemente debería evitar simplemente arrojar todo el código de persistencia en su controlador de vista. ;)
  • Nick Lockwood creó una buena utilidad para facilitar el trabajo con NSKeyedArchiving .
  • Para casos simples también puedes usar NSUserDefaults
  • Si se requiere seguridad, puede guardar en el llavero. Nuevamente, la API es de bajo nivel, sin embargo, hay buenos contenedores. Aquí hay uno .
  • Desde los días NeXTSTEP, un NSDictionary ha proporcionado métodos para serializarse en el disco en varios formatos. Los formatos modernos incluyen XML, JSON, binario. (Y hay algunos formatos funky heredados, que aún se pueden leer, pero están en desuso para la escritura. Como el que utiliza Xcode para guardar su archivo project.pbxproj).

Puede almacenar los datos en NSUserDefaults o en una base de datos SQLite. Recomendaría SQLite pero depende totalmente de su necesidad. Hay muchos tutoriales sobre cómo hacer esto en YouTube / apple dev docs


Echa un vistazo al Reino

Una base de datos móvil que se ejecuta directamente dentro de teléfonos, tabletas o dispositivos portátiles. Realm te permite crear aplicaciones más rápido, crear aplicaciones que son más rápidas y crear experiencias previamente imposibles.