Ir a la consola

Primeros pasos con Firebase Remote Config en iOS

Puedes usar Firebase Remote Config para definir parámetros en tu app y actualizar sus valores en la nube, lo que te permite modificar el aspecto y el comportamiento de la app sin distribuir una actualización de ella.

En esta guía, se explican los pasos que debes seguir para comenzar y se proporciona código de muestra que puedes clonar o descargar desde el repositorio firebase/quickstart-ios de GitHub.

Agrega Remote Config a la app

  1. Instala el SDK de Firebase para iOS.

  2. Crea el objeto singleton de Remote Config, como se muestra en el siguiente ejemplo:

    Swift

    Objective‑C

El objeto se usa para almacenar los valores de parámetros predeterminados en la app, obtener los valores de parámetros actualizados desde el servicio y controlar cuándo están disponibles los valores obtenidos para la app.

Durante el desarrollo, se recomienda establecer un intervalo de recuperación mínimo relativamente bajo. Consulta Regulación obtener más detalles.

Establece los valores de los parámetros predeterminados en la app

Puedes configurar los valores de parámetros predeterminados del objeto de Remote Config para que la app se comporte según lo previsto antes de que se conecte al servicio Remote Config y los valores predeterminados estén disponibles si no hay ninguno configurado en el servicio.

  1. Define un conjunto de nombres de parámetros y valores de parámetros predeterminados mediante un objeto NSDictionary o un archivo plist.
  2. Agrega estos valores al objeto de Remote Config mediante setDefaults:. En el siguiente ejemplo, se establecen valores predeterminados en la app desde un archivo plist:

Swift

Objective‑C

Obtén valores de parámetros para usarlos en la app

Ahora puedes obtener valores de parámetros desde el objeto de Remote Config. Si más tarde configuras valores en el servicio de Remote Config, los recuperas y los activas, esos valores estarán disponibles para tu app. De lo contrario, obtendrás los valores de parámetros configurados en la app con setDefaults:. Para obtener estos valores, llama al método configValueForKey: y proporciona la clave del parámetro como argumento.

Establece valores de parámetros en el servicio

Con Firebase console o la API de REST de Remote Config, puedes crear nuevos valores predeterminados del servicio que anulen los valores integrados en la app según la lógica condicional o la orientación a usuarios deseada. En esta sección, se explican los pasos que debes seguir en Firebase console para crear estos valores.

  1. Abre el proyecto en Firebase console.
  2. Selecciona Remote Config desde el menú para ver el panel de Remote Config.
  3. Define parámetros que tengan los mismos nombres que los que definiste en tu app. Para cada parámetro, puedes definir un valor predeterminado (que anulará finalmente el valor predeterminado de la app) y valores condicionales. Para obtener más información, consulta los parámetros y condiciones de Remote Config.

Recupera y activa los valores del servicio

  1. Para recuperar valores de parámetros del servicio de Remote Config, llama a los métodos fetchWithCompletionHandler: o fetchWithExpirationDuration:completionHandler:. Cualquier valor que configures en el servicio de Remote Config se recupera y se almacena en caché en el objeto de Remote Config.
  2. Para que los valores de parámetros recuperados estén disponibles en la app, llama al método activateFetched.

Para los casos en los que desees recuperar y activar valores en una llamada, usa fetchAndActivateWithCompletionHandler:.

En este ejemplo, se recuperan valores del servicio de Remote Config (no valores almacenados en caché) y se llama a activateWithCompletionHandler: a fin de que estén disponibles para la app, de la siguiente manera:

Swift

Objective‑C

Dado que estos valores de parámetros actualizados afectan el comportamiento y el aspecto de la app, debes activar los valores recuperados en un momento en el que se garantice una experiencia fluida para el usuario, como la próxima vez que la abra. Consulta las estrategias de carga de Remote Config para obtener más información y ejemplos.

Regulación

Si una app realiza recuperaciones muchas veces en poco tiempo, se regulan las llamadas de recuperación y el SDK muestra el estado FIRRemoteConfigFetchStatusThrottled. Antes de la versión 6.3.0 del SDK, el límite eran 5 solicitudes de recuperación en un período de 60 minutos (las versiones más recientes tienen límites más permisivos).

Durante el desarrollo de la app, te recomendamos actualizar la caché con mucha frecuencia (varias veces por hora) para que puedas iterar mientras desarrollas y pruebas tu app. A fin de permitir iteraciones rápidas en un proyecto con varios desarrolladores, puedes agregar temporalmente una propiedad FIRRemoteConfigSettings con un intervalo de recuperación mínimo bajo (MinimumFetchInterval) en la app.

En Remote Config, el intervalo de recuperación para la producción predeterminado y recomendado es de 12 horas, es decir, las configuraciones no se recuperarán desde el backend más de una vez en un período de 12 horas, sin importar cuántas llamadas se realicen. Específicamente, el intervalo de recuperación mínimo se determina en el siguiente orden:

  1. El parámetro de fetch(long)
  2. El parámetro de FIRRemoteConfigSettings.MinimumFetchInterval
  3. El valor predeterminado de 12 horas

Pasos siguientes

Si aún no lo has hecho, explora los casos prácticos de Remote Config y revisa algunos de los conceptos clave y la documentación de estrategias avanzadas, en las que se incluye lo siguiente: