---
title: "React Native - Usar paywalls de respaldo"
description: "Gestiona los casos en que los usuarios están sin conexión o los servidores de Adapty no están disponibles."
---

:::warning
Los paywalls de respaldo son compatibles con el SDK de React Native v2.11 y versiones posteriores.
:::

Para mantener una experiencia de usuario fluida, es importante configurar [respaldos](/fallback-paywalls) para tus [paywalls](paywalls) y [onboardings](onboardings). Esta precaución amplía las capacidades de la aplicación en caso de pérdida parcial o total de la conexión a internet.

* **Si la aplicación no puede acceder a los servidores de Adapty:**

    Podrá mostrar un paywall de respaldo y acceder a la configuración local del onboarding.

* **Si la aplicación no puede acceder a internet:**

    Podrá mostrar un paywall de respaldo. Los onboardings incluyen contenido remoto y requieren conexión a internet para funcionar.

:::important
Antes de seguir los pasos de esta guía, [descarga](/local-fallback-paywalls) los archivos de configuración de respaldo desde Adapty.
:::

## Configuración \{#configuration\}

### Android \{#android\}

1. Añade el archivo de configuración de respaldo a tu aplicación. Elige uno de los siguientes directorios:
   * **android/app/src/main/assets/**
   * **android/app/src/main/res/raw/**

      Nota: La carpeta `res/raw` tiene una convención especial de nomenclatura de archivos (deben comenzar con una letra, sin mayúsculas, sin caracteres especiales excepto el guion bajo y sin espacios en los nombres).

2. Actualiza la propiedad `android` de la constante `FileLocation`:
   * Si el archivo está en el directorio `assets`, pasa la ruta del archivo relativa a ese directorio.
   * Si el archivo está en el directorio `res/raw`, pasa el nombre del archivo sin la extensión.

### iOS \{#ios\}

1. Añade el archivo JSON de respaldo al bundle de tu proyecto: abre el menú **File** en XCode y selecciona la opción **Add Files to "YourProjectName"**.
2. Pasa el nombre de tu archivo de configuración a la propiedad `ios` de la constante `FileLocation`.

## Ejemplo \{#example\}

<Tabs groupId="current-os" queryString> <TabItem value="current" label="Current (v3.8+)" default> 
```typescript showLineNumbers
//after v3.8
const fileLocation = {
  ios: {
    fileName: 'ios_fallback.json'
  },
  android: {
    //if the file is located in 'android/app/src/main/assets/'
    relativeAssetPath: 'android_fallback.json'
  }
}
await adapty.setFallback(fileLocation);
```
</TabItem> 
<TabItem value="old" label="Legacy (before v3.8)" default> 
```typescript showLineNumbers
//Legacy (before v3.8)
const paywallsLocation = {
  ios: {
    fileName: 'ios_fallback.json'
  },
  android: {
    //if the file is located in 'android/app/src/main/assets/'
    relativeAssetPath: 'android_fallback.json'
  }
}
await adapty.setFallbackPaywalls(paywallsLocation);
```
</TabItem> 
</Tabs>

Parámetros:

| Parámetro            | Descripción                                              |
| :------------------- | :------------------------------------------------------- |
| **fileLocation** | Objeto que representa la ubicación del archivo de configuración de respaldo. |