<?xml version="1.0" encoding="utf-8"?>
<!--
     Copyright (C) 2017-2020 The LineageOS Project

     Licensed under the Apache License, Version 2.0 (the "License");
     you may not use this file except in compliance with the License.
     You may obtain a copy of the License at

          http://www.apache.org/licenses/LICENSE-2.0

     Unless required by applicable law or agreed to in writing, software
     distributed under the License is distributed on an "AS IS" BASIS,
     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
     See the License for the specific language governing permissions and
     limitations under the License.
-->
<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
    <string name="app_name">Actualizador</string>
    <string name="display_name">Actualizador</string>
    <string name="verification_failed_notification">Verificación fallida</string>
    <string name="verifying_download_notification">Verificando actualización</string>
    <string name="downloading_notification">Descargando</string>
    <string name="download_paused_notification">Descarga pausada</string>
    <string name="download_paused_error_notification">Error de descarga</string>
    <string name="download_completed_notification">Descarga completada</string>
    <string name="download_starting_notification">Iniciando descarga</string>
    <string name="new_updates_found_title">Nuevas actualizaciones</string>
    <string name="text_download_speed">%1$s, %2$s/s</string>
    <string name="pause_button">Pausar</string>
    <string name="resume_button">Reanudar</string>
    <string name="installing_update">Instalando paquete de actualización</string>
    <string name="installing_update_error">Error de instalación</string>
    <string name="installing_update_finished">Actualización instalada</string>
    <string name="finalizing_package">Finalizando instalación del paquete</string>
    <string name="preparing_ota_first_boot">Preparando para el primer arranque</string>
    <string name="dialog_prepare_zip_message">Preparación preliminar de la actualización</string>
    <string name="reboot">Reiniciar</string>
    <string name="menu_refresh">Actualizar</string>
    <string name="menu_preferences">Preferencias</string>
    <string name="menu_auto_updates_check">Comprobación de actualizaciones automática</string>
    <string name="menu_auto_delete_updates">Borrar actualizaciones luego de instalar</string>
    <string name="menu_delete_update">Borrar</string>
    <string name="menu_copy_url">Copiar URL</string>
    <string name="menu_export_update">Exportar actualización</string>
    <string name="menu_show_changelog">Mostrar registro de cambios</string>
    <string name="snack_updates_found">Se encontraron nuevas actualizaciones</string>
    <string name="snack_no_updates_found">No se encontraron nuevas actualizaciones</string>
    <string name="snack_updates_check_failed">Error en la comprobación de actualizaciones. Por favor, verifique la conexión a Internet e inténtalo nuevamente.</string>
    <string name="snack_download_failed">Descarga fallida. Compruebe la conexión a Internet e inténtelo nuevamente.</string>
    <string name="snack_download_verification_failed">La verificación de la actualización falló.</string>
    <string name="snack_download_verified">Descarga completada.</string>
    <string name="snack_update_not_installable">Esta actualización no puede instalarse encima de la versión actual.</string>
    <string name="header_title_text">LineageOS\n%1$s</string>
    <string name="header_android_version">Android <xliff:g id="version" example="7.1.2">%1$s</xliff:g></string>
    <string name="header_last_updates_check">Última comprobación: <xliff:g id="date" example="1 January 1970">%1$s</xliff:g> (<xliff:g id="time" example="01:23">%2$s</xliff:g>)</string>
    <string name="list_build_version">LineageOS <xliff:g id="version" example="14.1">%1$s</xliff:g></string>
    <string name="list_build_version_date">LineageOS <xliff:g id="version" example="14.1">%1$s</xliff:g> - <xliff:g id="date" example="July 11, 2017">%2$s</xliff:g></string>
    <string name="list_download_progress_new"><xliff:g id="filesize_without_unit" example="12.2">%1$s</xliff:g> de <xliff:g id="filesize_without_unit" example="310 MB">%2$s</xliff:g> • <xliff:g id="percentage" example="56">%3$s</xliff:g></string>
    <string name="list_verifying_update">Verificando actualización</string>
    <string name="list_no_updates">Sin nuevas actualizaciones disponibles. Para comprobar manualmente, pulsa el botón «Actualizar».</string>
    <string name="action_download">Descargar</string>
    <string name="action_pause">Pausar</string>
    <string name="action_resume">Reanudar</string>
    <string name="action_install">Instalar</string>
    <string name="action_info">Información</string>
    <string name="action_delete">Borrar</string>
    <string name="action_cancel">Cancelar</string>
    <string name="confirm_delete_dialog_title">Borrar archivo</string>
    <string name="confirm_delete_dialog_message">¿Borrar el archivo de actualización seleccionado?</string>
    <string name="apply_update_dialog_title">Aplicar actualización</string>
    <string name="apply_update_dialog_message">Actualizarás a <xliff:g id="filename">%1$s</xliff:g>.\n\nAl pulsar en <xliff:g id="ok">%2$s</xliff:g>, se reiniciará el dispositivo en modo «Recovery» para instalar la actualización.\n\nNota: Esta función requiere un «Recovery» compatible o las actualizaciones deberán instalarse manualmente.</string>
    <string name="apply_update_dialog_message_ab">Actualizarás a <xliff:g id="filename">%1$s</xliff:g>. \n\nAl pulsar en <xliff:g id="ok">%2$s</xliff:g>, el dispositivo comenzará a instalar en segundo plano.\n\nUna vez terminado el proceso, se le pedirá que reinicie.</string>
    <string name="cancel_installation_dialog_message">¿Cancelar la instalación?</string>
    <string name="label_download_url">URL de descarga</string>
    <string name="toast_download_url_copied">URL copiada</string>
    <string name="dialog_export_title">Exportando actualización</string>
    <string name="notification_export_success">Actualización exportada</string>
    <string name="notification_export_fail">Error de exportación</string>
    <string name="toast_already_exporting">Ya se está exportando una actualización</string>
    <string name="update_on_mobile_data_title">Advertencia</string>
    <string name="update_on_mobile_data_message">Se descargará un paquete de actualización usando los datos móviles, que probablemente ocasione un alto consumo de datos. ¿Quieres continuar?</string>
    <string name="checkbox_mobile_data_warning">No mostrar de nuevo</string>
    <string name="menu_mobile_data_warning">Advertencia de datos móviles</string>
    <string name="blocked_update_dialog_title">Actualización bloqueada</string>
    <string name="blocked_update_dialog_message">Esta actualización no puede instalarse usando la aplicación «Actualizador».  Lea <xliff:g id="info_url">%1$s</xliff:g> para más información.</string>
    <string name="export_channel_title">Exportación finalizada</string>
    <string name="new_updates_channel_title">Nuevas actualizaciones</string>
    <string name="ongoing_channel_title">Descargas en curso</string>
</resources>
