¿Cómo obtener datos de Firebase en Swift Language (iOS)?

Objetivos del blog.

Después de leer este blog, podremos comprender el proceso para obtener datos de Firebase. Este proceso incluye la instalación de Firebase SDK y la implementación de código para obtener datos de Firebase.

Pre-requisitos

Necesitamos escribir código swift para obtener los datos de Firebase. Para esto primero tendremos que crear el proyecto Firebase. Siga los pasos que se indican a continuación para crear el proyecto Firebase:

1. Visite https://console.firebase.google.com

2. Luego tendrás que crear el proyecto Firebase haciendo clic en "Añadir proyectobotón "

add-project: ¿Cómo obtener datos de Firebase en Swift Language (iOS)?

3. Necesita el archivo GoogleService-Info.plist para iOS SDK, ya que este archivo contiene los detalles del proyecto Firebase que utiliza Firebase SDK.

4. Luego agrega el archivo plist en el proyecto

5. Agregue el siguiente código antes de la declaración de retorno dentro de la aplicación(_: didFinishLaunchingWithOptions 🙂 en el archivo AppDelegate.swift

FirebaseApp.configure ()

6. Luego ve a "base de datos"opción del menú de la izquierda.

7. Seleccionar "Base de datos en tiempo real"y esa es la base de datos del proyecto Firebase. Todos los datos que se almacenan o se recuperan son de esta ubicación.

8. La configuración de Firebase está completa. Ahora tendrá que descargar Firebase SDK en el swift. Para ello deberás instalar los siguientes pods.

  1. pod 'Firebase / Core'
  2. pod 'Firebase / Base de datos'

Supongamos que tiene los siguientes datos en la estructura dada en la base de datos de Firebase:

// La raíz del árbol {// artículos comestibles "artículos comestibles": {// artículos comestibles / leche "leche": {// artículos comestibles / leche / nombre "nombre": "leche", / / grocery-items / milk / addedByUser "addedByUser": "David"}, "pizza": {"name": "Pizza", "addedByUser": "Alice"},}}

Después de la instalación exitosa de las cápsulas, podemos pasar a la parte de codificación.

Implementación de Código

Todos los puntos / nodos de datos se utilizan para acceder a los datos de la base de datos Firebase. Creamos referencias a los nodos y luego recuperamos datos de ese nodo. En otras palabras, una referencia de Firebase apunta a una ubicación en Firebase donde se almacenan los datos. Primero tendremos que crear una referencia al nodo raíz de la estructura de la base de datos –

let ref = Database.database (). reference (withPath: "grocery-items")

o se puede utilizar la siguiente manera:

let rootRef = Database.database (). reference () let ref = rootRef.child ("grocery-items")

La referencia al nodo secundario que es "leche" se puede crear utilizando el siguiente código:

let milkRef = ref.child ("milk")

Se puede adjuntar un oyente asíncrono a una referencia para recuperar datos de Firebase usando observar (_: con 🙂 método. El siguiente código recuperará los datos y seguirá escuchando los cambios de datos en la base de datos. Tan pronto como se realiza cualquier cambio en la base de datos, se recupera la nueva instantánea del nodo / referencia y obtenemos los datos actualizados tan pronto como se realiza cualquier cambio en la base de datos.

ref.observe (.value, con: {snapshot in // Esta es la instantánea de los datos en el momento en la base de datos de Firebase // Para obtener el valor de la instantánea, el usuario snapshot.value imprimimos (snapshot.value como Cualquiera) })

Luego, los valores de la instantánea se pueden analizar y utilizar en la aplicación. Una gran ventaja de usar observar método sobre observeSingleEvent El método es que no tiene que llamar a la función una y otra vez, ya que los datos actualizados se recuperan de la base de datos tan pronto como se modifica cualquier valor en la base de datos.

Resumen

Ahora debería poder obtener los datos de la base de datos de Firebase de forma rápida utilizando Firebase SDK.


¿Cómo eliminar el espacio adicional entre la barra de navegación y la vista de desplazamiento?

Objetivos del blog

Después de leer este blog, podremos comprender el motivo del espacio adicional entre la barra de navegación superior y la vista de desplazamiento en la aplicación iOS en las versiones de iOS 7 a iOS 10.

Planteamiento del problema

Cuando agregamos una vista de desplazamiento o una vista de tabla (cualquier vista desplazable) en un controlador de vista que contiene una barra de navegación en la parte superior, nos enfrentamos a un problema común que es un espacio adicional entre la barra de navegación superior y la vista de desplazamiento.

 

¿Por qué el problema actual está ahí?

Desde iOS 7 a iOS 10, cuando agregamos una barra de navegación encima de cualquier ViewController, Xcode nos brinda una opción para hacer que la barra de navegación sea translúcida. Para que podamos ver a través de la barra de navegación y el desplazamiento de la página se puede ver a través de la barra de navegación. Ahora, el motivo del problema es que cuando se agrega una vista de desplazamiento en ViewController y la barra de navegación está configurada y translúcida, ScrollView deja un margen de la vista principal para la barra de navegación. Pero la barra de navegación se agregó en el tiempo de ejecución y mueve la vista principal hacia abajo para que la barra de navegación pueda caber en la parte superior. Entonces, en ese caso, la barra de navegación desplaza la vista hacia abajo y la vista de desplazamiento deja un margen para la barra de navegación. Aquí observamos que el espacio adicional se agregó dos veces. Esta fue la única razón por la que vemos espacio adicional entre la barra de navegación y la vista de desplazamiento.

Procedimiento para resolver el problema-

Hay dos formas de resolver el problema. En ambos casos, restringimos la vista de desplazamiento para dejar un margen adicional para la barra de navegación.

1. Podemos configurar la opción Translúcida para la barra de navegación en “Falso” en Xcode. Esto hará que la barra de navegación sea opaca y luego no se requerirá la vista de desplazamiento para desplazarse debajo de la barra de navegación. De modo que la vista de desplazamiento no dejará espacio para la barra de navegación. En el siguiente Gif, puede ver que la restricción de diseño de la vista cambia cuando habilitamos/deshabilitamos la propiedad “Translúcido” de la barra de navegación.

 

 

2. Podemos deshabilitar la propiedad “Ajustar recuadros de vista de desplazamiento” de ViewController. � Esto restringirá la vista de desplazamiento para dejar espacio adicional para la barra de navegación en la parte superior.

 

Resumen

Después de seguir el procedimiento anterior, podrá eliminar el espacio adicional entre la barra de navegación y la vista de desplazamiento.

¿Cómo guardar datos en Firebase en Swift Language (iOS)?

Objetivos del blog

Después de leer este blog, podremos instalar el SDK de Firebase en su proyecto y escribir código para guardar datos en la base de datos de Firebase junto con la creación del proyecto de Firebase.

Beneficios de usar la base de datos de Firebase

No importa si está trabajando en un proyecto pequeño o tiene los ojos puestos en uno grande, debe necesitar una base de datos para almacenar toda su información. Si está trabajando en un proyecto pequeño, puede usar esta base de datos de Firebase. Aquí está la lista de beneficios usando la base de datos de Firebase: 1. Le ayuda a administrar sin esfuerzo los datos de su tienda. 2. Si los datos cambian en cualquier momento, todos los dispositivos conectados recibirán los datos actualizados en sus dispositivos. 3. La base de datos en tiempo real de Firebase es de uso gratuito. 4. Ahorro de tiempo. 5. Soporte multiplataforma y fácil de usar para SDK. 6. Útil para aplicaciones de chat, notificaciones automáticas, noticias, etc.

Pre-requisitos

Necesitamos escribir código Swift para guardar los datos en Firebase. Para ello, primero tendremos que crear el proyecto Firebase. Siga los pasos que se indican a continuación para crear el proyecto de Firebase: 1. Vaya a https://console.firebase.google.com

2.Haga clic en “Añadir proyectobotón ”

 

3. Luego cree la aplicación iOS y descargue el archivo GoogleService-Info.plist 4. Luego mueva el archivo plist dentro del proyecto 5. Después de Xcode, abra AppDelegate.swift y agregue este código antes de la declaración de devolución dentro de la aplicación (_:didFinishLaunchingWithOptions:)

FirebaseApp.configure()

6.Luego haga clic en “base de datosopción ” del menú de la izquierda.

 

7. Seleccione “Base de datos en tiempo real“, allí encontrará la URL de la base de datos, que puede usar en el código para obtener los datos de la base de datos. Por lo general, no necesitará esta URL ya que estamos usando GoogleServices-Info.plist y la URL de la base de datos ya está disponible en ese archivo, solo necesitamos inicializar Firebase. 8. La configuración de Firebase está completa. Ahora tendrá que descargar el SDK de Firebase en Swift. Para ello tendrás que instalar los siguientes pods. 1. vaina ‘base de fuego/núcleo‘ 2. vaina ‘Firebase/Base de datos‘ Supongamos que actualmente no tenemos datos en la base de datos de Firebase y queremos guardar los siguientes datos en el formato dado en la base de datos� –

// La raíz del árbol { "películas": [ "película1": { "nombre": "Avengers", "addedByUser": "John" }, "película2": { "nombre": "Star Wars", " añadidoPorUsuario": "Jane" }, ] }

Después de instalar con éxito los pods en el proyecto, estamos listos para implementar la parte de codificación.


Implementación de código Antes de crear las referencias, deberá comprender qué es una referencia de Firebase. Una referencia de Firebase apunta a una ubicación en Firebase donde se almacenan los datos. Incluso si crea varias referencias, todas comparten la misma conexión. Primero tendremos que crear una referencia de FIRDatabaseReference. La referencia que contendrá el nodo raíz (artículos de comestibles) se puede hacer usando el siguiente código:

let ref = Database.database().reference(withPath: "movies")

o también puede usar la siguiente manera:

let rootRef = Database.database().reference() let ref = rootRef.child("películas")

Luego, tendremos que crear una referencia a los elementos secundarios que son leche y pizza para que podamos agregar los datos dentro de esos nodos.

let movieRefAvengers = ref.child("movie1") let movieRefStarWars = ref.child("movie2")

Sabemos que necesitamos guardar el diccionario dentro de estas teclas. Para eso, crearemos dos diccionarios uno para leche y otro para pizza.

let dictMovieRefAvengers: [String: String] = ["name": "Avengers", "addedByUser": "John"] let dictMovieRefStarWars: [String: String] = ["name": "Star Wars", "addedByUser": " Juana"]

Después de eso, podemos agregar el dictPelículaRefAvengers y dictPelículaRefStarWars en el películaRefAvengers y películaRefStarWars y estos se agregarán como elementos secundarios de esas referencias. Hay dos métodos que se utilizan para guardar datos en la base de datos de Firebase, que son setValue y updateChildValues. Si desea saber cuándo se confirmaron sus datos, puede agregar un bloque de finalización. Tanto setValue como updateChildValues ​​toman un bloque de finalización opcional que se llama cuando la escritura se ha confirmado en la base de datos. Este oyente puede ser útil para realizar un seguimiento de qué datos se han guardado y qué datos aún se están sincronizando.

 

// Guardando los valores en el nodo movie1 movieRefAvengers.setValue(dictMovieRefAvengers) { (error:Error?, ref:DatabaseReference) in if let error = error { print("No se pudieron guardar los datos: \(error).") } else { print("¡Los datos se guardaron correctamente!") } } // Guardando los valores en el nodo de pizza movieRefStarWars.setValue(dictMovieRefStarWars) { (error:Error?, ref:DatabaseReference) in if let error = error { print("Los datos no pudieron ser guardado: \(error).") } else { print("¡Los datos se guardaron correctamente!") } }

 

Después de ejecutar el código que se muestra arriba, obtendrá la misma estructura en la base de datos de Firebase que ya se muestra.

Resumen

Después de seguir el procedimiento anterior, podrá guardar los datos en la base de datos de Firebase rápidamente.

Lea también estos artículos:

¿Los fabricantes europeos de teléfonos inteligentes de Charging llevarán a Google a las cuestiones antimonopolio?

Todos somos conscientes de la batalla antimonopolio de Android entre Google y la Unión Europea. Google reaccionó a la multa impuesta sobre ellos por la UE al imponer una tarifa de licencia a los fabricantes de teléfonos inteligentes Android en Europa. El martes, 16 de octubre de 2018, el gigante tecnológico anunció que habrá una tarifa de licencia para que los fabricantes de dispositivos accedan a Google Play Store.

¿Qué bien podría hacer a Google la tarifa de licencia?

Los La Comisión Europea golpeó a Google con $ 5B por abuso de Android antimonopolio En julio de 18th este año. Google enseguida ganó todas las acusaciones de dominio del mercado sobre ellas y llegó a citar: "Android siempre ha brindado más opciones para todos, no menos". La compañía afirmó que la plataforma ha sido una razón para el sustento de los desarrolladores europeos. Y ahora, cuando Google ha jugado su movimiento de imponer cargos por el uso de las aplicaciones de Android en Europa, surge la pregunta: ¿es un movimiento intelectual? Existe una pequeña posibilidad de que, con este intento, la compañía pierda el control de la industria de búsqueda y navegación como lo ha hecho hoy. Esta decisión de Google también ha abierto las puertas para que otros fabricantes de dispositivos puedan crear sus propias tiendas. Por ejemplo, Samsung podría traer sus aplicaciones de galaxias a los teléfonos en lugar de ir por el cromo pagado y la búsqueda de Google. Así que ahora, en los próximos tiempos, podríamos incluso presenciar los teléfonos inteligentes sin Google Apps. Esto podría dejar a la empresa con más competidores e incrementando los sacrificios.

Argumentos de cierre

Los Google había apelado anteriormente contra la multa en el tribunal de justicia europeo sobre el 9 de este mes y ahora han presentado esta última política de licencias. Parece que, percibieron que su atractivo no va a ninguna conclusión. Por lo tanto, esto no se puede decir ahora mismo si esta acción de la empresa tecnológica cambiará su equilibrio para siempre o los llevará a aguas cálidas. Eso, solo el tiempo lo dirá.

Google cuestiona la multa de $ 5B de la UE por el caso antimonopolio de Android

Este año, en el mes de julio, Google recibió una multa de $ 5B de la Comisión Europea por abuso de Android. Ahora, después de tres meses el gigante tecnológico decidió criar

¿Por qué Google fue acusado hace tres meses?

Google fue multado por las acusaciones de mal uso del poder para crear su dominio en el mercado. Google había sido acusado de empujar a los usuarios a su motor de búsqueda con el motivo de debilitar a sus competidores. EC dijo que la compañía había estado imponiendo restricciones ilegales a los fabricantes de dispositivos Android durante mucho tiempo para consolidar su posición dominante en la búsqueda. Incluso se dijo, en aquel entonces, que la compañía había realizado varios tratos ilegales con diferentes fabricantes de teléfonos inteligentes con Android pagándoles. Pero, el motor de búsqueda siempre ha estado en una negación a todas las acusaciones. El portavoz de Google, Al Verney, incluso citó "Android siempre ha proporcionado más opciones para todos, no menos“.? Indian origin Google CEO urged that the company has always allowed the developers to make a living through the platform.

¿Cuál es la toma de Google ahora?

El martes 9 de octubre 2018, Google dijo, "Hemos presentado nuestra apelación de la decisión de la CE sobre Android en el Tribunal General de la UE.". Ahora, Google está contraatacando esta multa haciendo una apelación ante el Tribunal Europeo.

Pensamientos de cierre

Esta lucha entre la Comisión Europea y Google no parece estar llegando a ninguna parte.