{"id":805,"date":"2021-09-08T22:37:59","date_gmt":"2021-09-08T21:37:59","guid":{"rendered":"https:\/\/7ret.com\/?p=805"},"modified":"2023-03-07T22:54:47","modified_gmt":"2023-03-07T21:54:47","slug":"preferencias-de-usuario-con-get_storage-en-getx-preferencias-de-usuario","status":"publish","type":"post","link":"https:\/\/7ret.com\/index.php\/2021\/09\/08\/preferencias-de-usuario-con-get_storage-en-getx-preferencias-de-usuario\/","title":{"rendered":"Preferencias de Usuario con GET_STORAGE en GETX"},"content":{"rendered":"\n<figure class=\"wp-block-image size-medium is-style-default left-block\"><img loading=\"lazy\" decoding=\"async\" width=\"148\" height=\"300\" src=\"https:\/\/7ret.com\/wp-content\/uploads\/2021\/09\/Captura-de-pantalla-2021-09-08-a-las-22.56.22-148x300.png\" alt=\"\" class=\"wp-image-818\" srcset=\"https:\/\/7ret.com\/wp-content\/uploads\/2021\/09\/Captura-de-pantalla-2021-09-08-a-las-22.56.22-148x300.png 148w, https:\/\/7ret.com\/wp-content\/uploads\/2021\/09\/Captura-de-pantalla-2021-09-08-a-las-22.56.22.png 379w\" sizes=\"auto, (max-width: 148px) 100vw, 148px\" \/><\/figure>\n\n\n\n<p>Casi toda aplicaci\u00f3n necesita guardar datos. Algo t\u00edpico es guardar las preferencias del usuario para que la pr\u00f3xima vez que arranque la aplicaci\u00f3n, todo est\u00e9 tal como estaba cuando entr\u00f3 la \u00faltima vez. Por ejemplo, los colores, el lenguaje que prefiere, o incluso otros valores mas importantes como nombre de usuario y\/o datos de login. Toda esta informaci\u00f3n debe permanecer almacenada para que la aplicaci\u00f3n la vuelva a rescatar una vez que arranque de nuevo. \u00bfC\u00f3mo hacerlo en Flutter bajo GETX?<\/p>\n\n\n\n<p>Existe un paquete estupendo llamado GET_STORAGE desarrollado por el mismo equipo que ha desarrollado GETX.<\/p>\n\n\n\n<p>Te explico a continuaci\u00f3n c\u00f3mo usarlo para guardar las preferencias en una app.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Aplicaci\u00f3n de ejemplo<\/h2>\n\n\n\n<p>Lo primero es instalar el paquete. Para ello, hemos de a\u00f1adir la siguiente dependencia. Como vamos a trabajar en el entorno GetX tambi\u00e9n importaremos el paquete get.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code lang=\"dart\" class=\"language-dart line-numbers\">dependencies:\n  get_storage:\n  get:\n<\/code><\/pre>\n\n\n\n<p>A continuaci\u00f3n vamos a crear la clase MyPrefs que luego utilizaremos.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code lang=\"dart\" class=\"language-dart line-numbers\">import 'package:flutter\/material.dart';\nimport 'package:get\/get.dart';\nimport 'package:get_storage\/get_storage.dart';\n\nclass MyPrefs extends GetxController {\n\n  final box = GetStorage(); \/\/ The info is saved to a file named GetStorage.gs\n\n  \/\/ Other alternative is\n  \/\/ final box = GetStorage('FileName'); \/\/ FileName will be the name for the data file used\n\n  bool get isDark =&gt; box.read('darkmode') ?? false;\n  ThemeData get theme =&gt; isDark ? ThemeData.dark() : ThemeData.light();\n  void changeTheme(bool val) =&gt; box.write('darkmode', val);\n\n  \/\/get set for name1 value\n  String get name1 =&gt; box.read('name1') ?? '';\n  set name1 (String val) =&gt; box.write('name1', val);\n\n  \/\/get set for int1 value\n  int get edad1 =&gt; box.read('edad1') ?? 0;\n  set edad1 (int val) =&gt; box.write('edad1', val);\n\n  \/\/other way to do it name2 y edad2\n  var name2 = ''.val('name2');\n  var edad2 = 0.val('edad2');\n\n  \/\/other way to do it name3 y edad3\n  var name3 = ReadWriteValue('name3', '');\n  var edad3 = ReadWriteValue('edad3', 0);\n\n  \/\/final vars\n  final mainTittle = 'Get_Storage with GetX Example App'.val('tittle');\n}\n<\/code><\/pre>\n\n\n\n<p>Vamos a explicar un poco la clase anterior. Es una clase que extiende de GetxController porque vamos a utilizarla como controlador de un view. (Echa un vistazo a mis otros tutoriales sobre el uso de GetX como gestor de estados). En esta clase, lo primero es crear una instancia del GetStorage a la que llamamos box. Esta variable buscar\u00e1 un archivo en Documentos llamado GetStorage.ds. Si no existe lo crear\u00e1. Si existe lo abrir\u00e1 y leera los resultados.<\/p>\n\n\n\n<p>Lo siguiente que hacemos es preparar algunas variables: isDark que es un bool que usaremos para guardar el modo gr\u00e1fico seleccionado, luego un name1 name2 y name3 que almacenar\u00e1 un String que ser\u00e1 el nombre del usuario, por \u00faltimo una variable tipo int llamadas edad1 edad2 y edad3 que guardar\u00e1n n\u00fameros enteros.<\/p>\n\n\n\n<p>Utilizamos varias maneras pero similares de usar las variables.<\/p>\n\n\n\n<p>Adem\u00e1s, tenemos un m\u00e9todo get theme que devuelve un ThemeData dependiendo del tema seleccionado en el bool isDark, devolviendo el tema oscuro o el tema claro seg\u00fan proceda. Y adem\u00e1s tenemos otro m\u00e9todo llamado changeTheme que cambia el valor bool de la variable darkmode.<\/p>\n\n\n\n<p>Vamos a crear ahora la clase main y la clase MyApp.<\/p>\n\n\n\n<p><\/p>\n\n\n\n<pre class=\"wp-block-code\"><code lang=\"dart\" class=\"language-dart line-numbers\">import 'package:flutter\/material.dart';\nimport 'package:get\/get.dart';\nimport 'package:get_storage\/get_storage.dart';\n\nvoid main() async {\n  await GetStorage.init();\n  runApp(MyApp());\n}<\/code><\/pre>\n\n\n\n<p>En la clase main, lo primero que hemos de hacer es inicializar el GetStorage \u00e1ntes de lanzar la app. Para ello utilizamos un async &#8211; await. Echa un vistazo a mis tutoriales sobre dart si no sabes c\u00f3mo funcionan.<\/p>\n\n\n\n<p>La clase MyApp quedar\u00e1 as\u00ed:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code lang=\"dart\" class=\"language-dart line-numbers\">import 'package:flutter\/material.dart';\nimport 'package:get\/get.dart';\nimport 'package:get_storage\/get_storage.dart';\n\nclass MyApp extends StatelessWidget {\n  const MyApp({Key? key}) : super(key: key);\n\n  @override\n  Widget build(BuildContext context) {\n    final preferences = Get.put(MyPrefs());\n    return SimpleBuilder(builder: (_)\n    {\n      return MaterialApp(\n        theme: preferences.theme,\n        home: Scaffold(\n          appBar: AppBar(title: Text(preferences.mainTittle.val)),\n          body: Center(\n            child: Column(\n              mainAxisAlignment: MainAxisAlignment.center,\n              children: [\n                Text('Nombre 1: ${preferences.name1} Edad 1: ${preferences.edad1}'),\n                Text('Nombre 2: ${preferences.name2.val} Edad 2: ${preferences.edad2.val}'),\n                Text('Nombre 3: ${preferences.name3.val} Edad 3: ${preferences.edad3.val}'),\n                const Divider(height: 5.0, color: Colors.amber,thickness: 5.0),\n                SwitchListTile(\n                    value: preferences.isDark,\n                    title: const Text(\"Pulsa para cambiar el tema\"),\n                    onChanged: (_) {\n                      \/\/switch between dark and light themes\n                      preferences.changeTheme(_);\n\n                      \/\/Test the variables name1 and edad1\n                      if (preferences.name1 == 'Activo') {\n                        preferences.name1 = 'No Activo';\n                        preferences.edad1 = 12;\n                      } else {\n                        preferences.name1 = 'Activo';\n                        preferences.edad1 = 7;\n                      }\n\n                      \/\/Test the variables name2 and edad2\n                      if (preferences.name2.val == 'Pedro') {\n                        preferences.name2.val = 'Juan';\n                        preferences.edad2.val = 25;\n                      } else {\n                        preferences.name2.val = 'Pedro';\n                        preferences.edad2.val = 24;\n                      }\n\n                      \/\/Test the varialbes name3 and edad 3\n                      if (preferences.name3.val == '7ret') {\n                        preferences.name3.val = 'CnkSoftware';\n                        preferences.edad3.val = 12;\n                      } else {\n                        preferences.name3.val = '7ret';\n                        preferences.edad3.val = 7;\n                      }\n\n                    }\n                ),\n              ],\n            ),\n          ),\n        ),\n      );\n    });\n  }\n}<\/code><\/pre>\n\n\n\n<p>Vamos a explicar un poco la clase MyApp.<\/p>\n\n\n\n<p>Lo primero que hacemos es inyectar el controlador que en nuestro caso es la clase MyPrefs. Para ello utilizamos un Get.put(MyPrefs()).<\/p>\n\n\n\n<p>A continuaci\u00f3n, utilizamos un SimpleBuilder (Que viene del paquete GetX) y que devuelve un simple StateFullWidget. Dentro de este, devolvemos un MaterialApp que es la base de nuestra app.<\/p>\n\n\n\n<p>En el material App, creamos un Scaffold. La AppBar tendr\u00e1 un t\u00edtulo que mostrar\u00e1 las dos variables name1 y edad1 solo como referencia. El body tiene un center que incluye un SwitchListTile con el t\u00edtulo &#8216;Pulsar para cambiar el Tema&#8217;. Este usa como valor la variable isDark de MyPrefs. Al cambiarlo, se dispara su evento onChanged y se env\u00eda el valor seleccionado. En su m\u00e9todo actualizamos el valor de isDark mediante el m\u00e9todo changeTheme de la clase MyPrefs y ahora jugamos un poco con las variables edad1 y name1 solo para ver c\u00f3mo cambian tambi\u00e9n en la AppBar. Al actualizar el valor, el SimpleBuilder se redibuja nuevamente. Veremos como se alterna entre el tema oscuro y el tema claro.<\/p>\n\n\n\n<p>Finalmente podemos eliminar una entrada o eliminar el fichero completo. Para ello:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code lang=\"dart\" class=\"language-dart\">\n\/\/Remove name2 register from file\npreferences.remove('name2');\n\n\/\/Remove the entire data file container\npreferences.erase();\n<\/code><\/pre>\n\n\n\n<p>Para mas referencias sobre el uso del paquete GET_STORAGE te dejo el enlace a continuaci\u00f3n:<\/p>\n\n\n\n<p><a href=\"https:\/\/pub.dev\/packages\/get_storage\/example\">https:\/\/pub.dev\/packages\/get_storage\/example<\/a><\/p>\n\n\n\n<div class=\"wp-block-advgb-images-slider advgb-images-slider-block\"><div class=\"advgb-images-slider\" dir=\"ltr\"><div class=\"advgb-image-slider-item\"><img decoding=\"async\" src=\"https:\/\/7ret.com\/wp-content\/uploads\/2021\/09\/Simulator-Screen-Shot-iPhone-12-Pro-Max-2021-09-09-at-22.12.57.png\" class=\"advgb-image-slider-img\" alt=\"\" style=\"width:340px;height:auto\"\/><div class=\"advgb-image-slider-item-info\" style=\"justify-content:flex-end;align-items:center\"><\/div><\/div><div class=\"advgb-image-slider-item\"><img decoding=\"async\" src=\"https:\/\/7ret.com\/wp-content\/uploads\/2021\/09\/Simulator-Screen-Shot-iPhone-12-Pro-Max-2021-09-09-at-22.13.02.png\" class=\"advgb-image-slider-img\" style=\"width:340px;height:auto\"\/><div class=\"advgb-image-slider-item-info\" style=\"justify-content:flex-end;align-items:center\"><\/div><\/div><\/div><\/div>\n\n\n\n<p> <\/p>\n","protected":false},"excerpt":{"rendered":"<p>Casi toda aplicaci\u00f3n necesita guardar datos. Algo t\u00edpico es guardar las preferencias del usuario para que la pr\u00f3xima vez que arranque la aplicaci\u00f3n, todo est\u00e9 tal como estaba cuando entr\u00f3 la \u00faltima vez. Por ejemplo, los colores, el lenguaje que prefiere, o incluso otros valores mas importantes como nombre de usuario y\/o datos de login.<\/p>\n<div class=\"blog-grid-button\"><a class href=\"https:\/\/7ret.com\/index.php\/2021\/09\/08\/preferencias-de-usuario-con-get_storage-en-getx-preferencias-de-usuario\/\">Seguir leyendo <i class=\"fa fa-arrow-right\"><\/i><\/a><\/div>\n","protected":false},"author":2,"featured_media":818,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"advgb_blocks_editor_width":"","advgb_blocks_columns_visual_guide":"","footnotes":""},"categories":[29,28,27],"tags":[30,32],"class_list":["post-805","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-dart","category-flutter","category-programacion","tag-getx","tag-user-preferences"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.4 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Preferencias de Usuario con GET_STORAGE en GETX - 7ret Software<\/title>\n<meta name=\"description\" content=\"Simple manera de crear y guardar las preferencias del usuario autom\u00e1ticamente. Preferencias de usuario con GET_STORAGE en GETX Persistencia\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/7ret.com\/index.php\/2021\/09\/08\/preferencias-de-usuario-con-get_storage-en-getx-preferencias-de-usuario\/\" \/>\n<meta property=\"og:locale\" content=\"es_ES\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Preferencias de Usuario con GET_STORAGE en GETX - 7ret Software\" \/>\n<meta property=\"og:description\" content=\"Simple manera de crear y guardar las preferencias del usuario autom\u00e1ticamente. Preferencias de usuario con GET_STORAGE en GETX Persistencia\" \/>\n<meta property=\"og:url\" content=\"https:\/\/7ret.com\/index.php\/2021\/09\/08\/preferencias-de-usuario-con-get_storage-en-getx-preferencias-de-usuario\/\" \/>\n<meta property=\"og:site_name\" content=\"7ret Software\" \/>\n<meta property=\"article:published_time\" content=\"2021-09-08T21:37:59+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2023-03-07T21:54:47+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/7ret.com\/wp-content\/uploads\/2021\/09\/Captura-de-pantalla-2021-09-08-a-las-22.56.22-148x300.png\" \/>\n<meta name=\"author\" content=\"C. H.\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Escrito por\" \/>\n\t<meta name=\"twitter:data1\" content=\"C. H.\" \/>\n\t<meta name=\"twitter:label2\" content=\"Tiempo de lectura\" \/>\n\t<meta name=\"twitter:data2\" content=\"5 minutos\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/7ret.com\\\/index.php\\\/2021\\\/09\\\/08\\\/preferencias-de-usuario-con-get_storage-en-getx-preferencias-de-usuario\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/7ret.com\\\/index.php\\\/2021\\\/09\\\/08\\\/preferencias-de-usuario-con-get_storage-en-getx-preferencias-de-usuario\\\/\"},\"author\":{\"name\":\"C. H.\",\"@id\":\"https:\\\/\\\/7ret.com\\\/#\\\/schema\\\/person\\\/da40a9548fc342444e3bc2e02737e757\"},\"headline\":\"Preferencias de Usuario con GET_STORAGE en GETX\",\"datePublished\":\"2021-09-08T21:37:59+00:00\",\"dateModified\":\"2023-03-07T21:54:47+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/7ret.com\\\/index.php\\\/2021\\\/09\\\/08\\\/preferencias-de-usuario-con-get_storage-en-getx-preferencias-de-usuario\\\/\"},\"wordCount\":644,\"image\":{\"@id\":\"https:\\\/\\\/7ret.com\\\/index.php\\\/2021\\\/09\\\/08\\\/preferencias-de-usuario-con-get_storage-en-getx-preferencias-de-usuario\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/7ret.com\\\/wp-content\\\/uploads\\\/2021\\\/09\\\/Captura-de-pantalla-2021-09-08-a-las-22.56.22.png\",\"keywords\":[\"getx\",\"user preferences\"],\"articleSection\":[\"DART\",\"FLUTTER\",\"PROGRAMACI\u00d3N\"],\"inLanguage\":\"es\"},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/7ret.com\\\/index.php\\\/2021\\\/09\\\/08\\\/preferencias-de-usuario-con-get_storage-en-getx-preferencias-de-usuario\\\/\",\"url\":\"https:\\\/\\\/7ret.com\\\/index.php\\\/2021\\\/09\\\/08\\\/preferencias-de-usuario-con-get_storage-en-getx-preferencias-de-usuario\\\/\",\"name\":\"Preferencias de Usuario con GET_STORAGE en GETX - 7ret Software\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/7ret.com\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/7ret.com\\\/index.php\\\/2021\\\/09\\\/08\\\/preferencias-de-usuario-con-get_storage-en-getx-preferencias-de-usuario\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/7ret.com\\\/index.php\\\/2021\\\/09\\\/08\\\/preferencias-de-usuario-con-get_storage-en-getx-preferencias-de-usuario\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/7ret.com\\\/wp-content\\\/uploads\\\/2021\\\/09\\\/Captura-de-pantalla-2021-09-08-a-las-22.56.22.png\",\"datePublished\":\"2021-09-08T21:37:59+00:00\",\"dateModified\":\"2023-03-07T21:54:47+00:00\",\"author\":{\"@id\":\"https:\\\/\\\/7ret.com\\\/#\\\/schema\\\/person\\\/da40a9548fc342444e3bc2e02737e757\"},\"description\":\"Simple manera de crear y guardar las preferencias del usuario autom\u00e1ticamente. Preferencias de usuario con GET_STORAGE en GETX Persistencia\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/7ret.com\\\/index.php\\\/2021\\\/09\\\/08\\\/preferencias-de-usuario-con-get_storage-en-getx-preferencias-de-usuario\\\/#breadcrumb\"},\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/7ret.com\\\/index.php\\\/2021\\\/09\\\/08\\\/preferencias-de-usuario-con-get_storage-en-getx-preferencias-de-usuario\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\\\/\\\/7ret.com\\\/index.php\\\/2021\\\/09\\\/08\\\/preferencias-de-usuario-con-get_storage-en-getx-preferencias-de-usuario\\\/#primaryimage\",\"url\":\"https:\\\/\\\/7ret.com\\\/wp-content\\\/uploads\\\/2021\\\/09\\\/Captura-de-pantalla-2021-09-08-a-las-22.56.22.png\",\"contentUrl\":\"https:\\\/\\\/7ret.com\\\/wp-content\\\/uploads\\\/2021\\\/09\\\/Captura-de-pantalla-2021-09-08-a-las-22.56.22.png\",\"width\":379,\"height\":766},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/7ret.com\\\/index.php\\\/2021\\\/09\\\/08\\\/preferencias-de-usuario-con-get_storage-en-getx-preferencias-de-usuario\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Portada\",\"item\":\"https:\\\/\\\/7ret.com\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Preferencias de Usuario con GET_STORAGE en GETX\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/7ret.com\\\/#website\",\"url\":\"https:\\\/\\\/7ret.com\\\/\",\"name\":\"7ret Software\",\"description\":\"The Art of Coding\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/7ret.com\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"es\"},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/7ret.com\\\/#\\\/schema\\\/person\\\/da40a9548fc342444e3bc2e02737e757\",\"name\":\"C. H.\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/4df3c28219e56a7b6c01b95b6e775c52edcb4eccfc976161efd745a8801b821d?s=96&d=mm&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/4df3c28219e56a7b6c01b95b6e775c52edcb4eccfc976161efd745a8801b821d?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/4df3c28219e56a7b6c01b95b6e775c52edcb4eccfc976161efd745a8801b821d?s=96&d=mm&r=g\",\"caption\":\"C. H.\"},\"url\":\"https:\\\/\\\/7ret.com\\\/index.php\\\/author\\\/cesar2admin\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Preferencias de Usuario con GET_STORAGE en GETX - 7ret Software","description":"Simple manera de crear y guardar las preferencias del usuario autom\u00e1ticamente. Preferencias de usuario con GET_STORAGE en GETX Persistencia","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/7ret.com\/index.php\/2021\/09\/08\/preferencias-de-usuario-con-get_storage-en-getx-preferencias-de-usuario\/","og_locale":"es_ES","og_type":"article","og_title":"Preferencias de Usuario con GET_STORAGE en GETX - 7ret Software","og_description":"Simple manera de crear y guardar las preferencias del usuario autom\u00e1ticamente. Preferencias de usuario con GET_STORAGE en GETX Persistencia","og_url":"https:\/\/7ret.com\/index.php\/2021\/09\/08\/preferencias-de-usuario-con-get_storage-en-getx-preferencias-de-usuario\/","og_site_name":"7ret Software","article_published_time":"2021-09-08T21:37:59+00:00","article_modified_time":"2023-03-07T21:54:47+00:00","og_image":[{"url":"https:\/\/7ret.com\/wp-content\/uploads\/2021\/09\/Captura-de-pantalla-2021-09-08-a-las-22.56.22-148x300.png","type":"","width":"","height":""}],"author":"C. H.","twitter_card":"summary_large_image","twitter_misc":{"Escrito por":"C. H.","Tiempo de lectura":"5 minutos"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/7ret.com\/index.php\/2021\/09\/08\/preferencias-de-usuario-con-get_storage-en-getx-preferencias-de-usuario\/#article","isPartOf":{"@id":"https:\/\/7ret.com\/index.php\/2021\/09\/08\/preferencias-de-usuario-con-get_storage-en-getx-preferencias-de-usuario\/"},"author":{"name":"C. H.","@id":"https:\/\/7ret.com\/#\/schema\/person\/da40a9548fc342444e3bc2e02737e757"},"headline":"Preferencias de Usuario con GET_STORAGE en GETX","datePublished":"2021-09-08T21:37:59+00:00","dateModified":"2023-03-07T21:54:47+00:00","mainEntityOfPage":{"@id":"https:\/\/7ret.com\/index.php\/2021\/09\/08\/preferencias-de-usuario-con-get_storage-en-getx-preferencias-de-usuario\/"},"wordCount":644,"image":{"@id":"https:\/\/7ret.com\/index.php\/2021\/09\/08\/preferencias-de-usuario-con-get_storage-en-getx-preferencias-de-usuario\/#primaryimage"},"thumbnailUrl":"https:\/\/7ret.com\/wp-content\/uploads\/2021\/09\/Captura-de-pantalla-2021-09-08-a-las-22.56.22.png","keywords":["getx","user preferences"],"articleSection":["DART","FLUTTER","PROGRAMACI\u00d3N"],"inLanguage":"es"},{"@type":"WebPage","@id":"https:\/\/7ret.com\/index.php\/2021\/09\/08\/preferencias-de-usuario-con-get_storage-en-getx-preferencias-de-usuario\/","url":"https:\/\/7ret.com\/index.php\/2021\/09\/08\/preferencias-de-usuario-con-get_storage-en-getx-preferencias-de-usuario\/","name":"Preferencias de Usuario con GET_STORAGE en GETX - 7ret Software","isPartOf":{"@id":"https:\/\/7ret.com\/#website"},"primaryImageOfPage":{"@id":"https:\/\/7ret.com\/index.php\/2021\/09\/08\/preferencias-de-usuario-con-get_storage-en-getx-preferencias-de-usuario\/#primaryimage"},"image":{"@id":"https:\/\/7ret.com\/index.php\/2021\/09\/08\/preferencias-de-usuario-con-get_storage-en-getx-preferencias-de-usuario\/#primaryimage"},"thumbnailUrl":"https:\/\/7ret.com\/wp-content\/uploads\/2021\/09\/Captura-de-pantalla-2021-09-08-a-las-22.56.22.png","datePublished":"2021-09-08T21:37:59+00:00","dateModified":"2023-03-07T21:54:47+00:00","author":{"@id":"https:\/\/7ret.com\/#\/schema\/person\/da40a9548fc342444e3bc2e02737e757"},"description":"Simple manera de crear y guardar las preferencias del usuario autom\u00e1ticamente. Preferencias de usuario con GET_STORAGE en GETX Persistencia","breadcrumb":{"@id":"https:\/\/7ret.com\/index.php\/2021\/09\/08\/preferencias-de-usuario-con-get_storage-en-getx-preferencias-de-usuario\/#breadcrumb"},"inLanguage":"es","potentialAction":[{"@type":"ReadAction","target":["https:\/\/7ret.com\/index.php\/2021\/09\/08\/preferencias-de-usuario-con-get_storage-en-getx-preferencias-de-usuario\/"]}]},{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/7ret.com\/index.php\/2021\/09\/08\/preferencias-de-usuario-con-get_storage-en-getx-preferencias-de-usuario\/#primaryimage","url":"https:\/\/7ret.com\/wp-content\/uploads\/2021\/09\/Captura-de-pantalla-2021-09-08-a-las-22.56.22.png","contentUrl":"https:\/\/7ret.com\/wp-content\/uploads\/2021\/09\/Captura-de-pantalla-2021-09-08-a-las-22.56.22.png","width":379,"height":766},{"@type":"BreadcrumbList","@id":"https:\/\/7ret.com\/index.php\/2021\/09\/08\/preferencias-de-usuario-con-get_storage-en-getx-preferencias-de-usuario\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Portada","item":"https:\/\/7ret.com\/"},{"@type":"ListItem","position":2,"name":"Preferencias de Usuario con GET_STORAGE en GETX"}]},{"@type":"WebSite","@id":"https:\/\/7ret.com\/#website","url":"https:\/\/7ret.com\/","name":"7ret Software","description":"The Art of Coding","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/7ret.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"es"},{"@type":"Person","@id":"https:\/\/7ret.com\/#\/schema\/person\/da40a9548fc342444e3bc2e02737e757","name":"C. H.","image":{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/secure.gravatar.com\/avatar\/4df3c28219e56a7b6c01b95b6e775c52edcb4eccfc976161efd745a8801b821d?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/4df3c28219e56a7b6c01b95b6e775c52edcb4eccfc976161efd745a8801b821d?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/4df3c28219e56a7b6c01b95b6e775c52edcb4eccfc976161efd745a8801b821d?s=96&d=mm&r=g","caption":"C. H."},"url":"https:\/\/7ret.com\/index.php\/author\/cesar2admin\/"}]}},"author_meta":{"display_name":"C. H.","author_link":"https:\/\/7ret.com\/index.php\/author\/cesar2admin\/"},"featured_img":"https:\/\/7ret.com\/wp-content\/uploads\/2021\/09\/Captura-de-pantalla-2021-09-08-a-las-22.56.22-148x300.png","coauthors":[],"tax_additional":{"categories":{"linked":["<a href=\"https:\/\/7ret.com\/index.php\/category\/programacion\/dart\/\" class=\"advgb-post-tax-term\">DART<\/a>","<a href=\"https:\/\/7ret.com\/index.php\/category\/programacion\/flutter\/\" class=\"advgb-post-tax-term\">FLUTTER<\/a>","<a href=\"https:\/\/7ret.com\/index.php\/category\/programacion\/\" class=\"advgb-post-tax-term\">PROGRAMACI\u00d3N<\/a>"],"unlinked":["<span class=\"advgb-post-tax-term\">DART<\/span>","<span class=\"advgb-post-tax-term\">FLUTTER<\/span>","<span class=\"advgb-post-tax-term\">PROGRAMACI\u00d3N<\/span>"]},"tags":{"linked":["<a href=\"https:\/\/7ret.com\/index.php\/category\/programacion\/\" class=\"advgb-post-tax-term\">getx<\/a>","<a href=\"https:\/\/7ret.com\/index.php\/category\/programacion\/\" class=\"advgb-post-tax-term\">user preferences<\/a>"],"unlinked":["<span class=\"advgb-post-tax-term\">getx<\/span>","<span class=\"advgb-post-tax-term\">user preferences<\/span>"]}},"comment_count":"0","relative_dates":{"created":"Publicado 5 a\u00f1os hace","modified":"Actualizado 4 a\u00f1os hace"},"absolute_dates":{"created":"Publicado el 8 septiembre, 2021","modified":"Actualizado el 7 marzo, 2023"},"absolute_dates_time":{"created":"Publicado el 8 septiembre, 2021 10:37 pm","modified":"Actualizado el 7 marzo, 2023 10:54 pm"},"featured_img_caption":"","series_order":"","_links":{"self":[{"href":"https:\/\/7ret.com\/index.php\/wp-json\/wp\/v2\/posts\/805","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/7ret.com\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/7ret.com\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/7ret.com\/index.php\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/7ret.com\/index.php\/wp-json\/wp\/v2\/comments?post=805"}],"version-history":[{"count":0,"href":"https:\/\/7ret.com\/index.php\/wp-json\/wp\/v2\/posts\/805\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/7ret.com\/index.php\/wp-json\/wp\/v2\/media\/818"}],"wp:attachment":[{"href":"https:\/\/7ret.com\/index.php\/wp-json\/wp\/v2\/media?parent=805"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/7ret.com\/index.php\/wp-json\/wp\/v2\/categories?post=805"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/7ret.com\/index.php\/wp-json\/wp\/v2\/tags?post=805"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}