<?xml version="1.0" encoding="utf-8"?>
<!--
     Copyright (C) 2013-2015 The CyanogenMod Project
     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">Installazione guidata</string>
    <string name="next">Avanti</string>
    <string name="skip">Salta</string>
    <string name="start">Inizia</string>
    <string name="done">Fatto</string>
    <string name="ok">Ok</string>
    <string name="loading">Solo un secondo\u2026</string>
    <string name="setup_complete">Setup completato</string>
    <string name="setup_welcome">Benvenuto</string>
    <string name="setup_locale">Lingua</string>
    <string name="setup_wifi">Seleziona Wi-Fi</string>
    <string name="setup_sim_missing">Scheda SIM mancante</string>
    <string name="setup_choose_data_sim">Scegli una SIM per la connessione dati</string>
    <string name="setup_location">Localizzazione</string>
    <string name="setup_other">Altri servizi</string>
    <string name="setup_datetime">Data &amp; ora</string>
    <string name="setup_current_date">Data corrente</string>
    <string name="setup_current_time">Ora corrente</string>
    <string name="sim_missing_summary" product="tablet">Non è stata riconosciuta alcuna scheda SIM nel tuo tablet. Per inserire una scheda SIM, leggi le istruzioni comprese col tuo dispositivo.</string>
    <string name="sim_missing_summary" product="default">Non è stata rilevata alcuna scheda SIM nel tuo cellulare. Per inserire una scheda SIM, leggi le istruzioni comprese col tuo dispositivo.</string>
    <string name="choose_data_sim_summary" product="tablet">Quale SIM vuoi utilizzare per la connessione dati? La SIM selezionata può incorrere in costi di rete durante la configurazione del dispositivo.</string>
    <string name="choose_data_sim_summary" product="default">Quale SIM vuoi utilizzare per la connessione dati? La SIM selezionata può incorrere in costi di rete durante la configurazione del dispositivo.</string>
    <string name="date_time_summary">Imposta il fuso orario e se necessario regola data e ora corrente</string>
    <string name="backup_data_summary"><b>Esegui il Back-up</b> dei dati delle app, password Wi-Fi e altre impostazioni sui server di Google</string>
    <string name="other_services_summary">Questi servizi consentono a Google di funzionare per te, ed è possibile attivarli o disattivarli in qualsiasi momento. I dati saranno utilizzati in conformità con la <xliff:g id="name" example="Privacy Policy">%s</xliff:g> di Google.</string>
    <string name="location_services_summary">I servizi di localizzazione permettono a Maps e ad altre applicazioni di raccogliere ed utilizzare dati come la tua posizione. Ad esempio, Maps potrebbe utilizzare la tua posizione per individuare bar nelle tue vicinanze.</string>
    <string name="location_access_summary"><b>Consenti alle applicazioni che hanno chiesto la tua autorizzazione</b> di utilizzare informazioni sulla tua posizione. Ciò può includere la tua posizione attuale e quelle precedenti.</string>
    <string name="setup_mobile_data">Attiva la rete mobile</string>
    <string name="setup_mobile_data_no_service">Nessun servizio</string>
    <string name="setup_mobile_data_emergency_only">Solo chiamate di emergenza</string>
    <string name="enable_mobile_data_summary">Vuoi utilizzare la rete mobile durante il setup? L\'attivazione della rete mobile potrebbe comportare costi aggiuntivi.</string>
    <string name="no">No</string>
    <string name="yes">Si</string>
    <string name="data_sim_name">SIM <xliff:g id="sub">%1$d</xliff:g> - <xliff:g id="name">%2$s</xliff:g></string>
    <string name="emergency_call">Emergenza</string>
    <string name="setup_services">Funzioni LineageOS</string>
    <string name="services_explanation" product="tablet">Questi servizi funzionano per estendere le funzioni del tablet. I dati saranno utilizzati in accordo con <xliff:g id="name" example="Privacy Policy">%s</xliff:g> di LineageOS.</string>
    <string name="services_explanation" product="default">Questi servizi funzionano per estendere le funzioni del telefono. I dati saranno utilizzati in accordo con <xliff:g id="name" example="Privacy Policy">%s</xliff:g> di LineageOS.</string>
    <string name="services_privacy_policy">Informativa sulla privacy</string>
    <string name="services_help_improve_cm">Contribuisci a migliorare <xliff:g id="name" example="LineageOS">%s</xliff:g></string>
    <string name="services_metrics_label"><xliff:g id="name" example="Help improve LineageOS">%1$s</xliff:g> inviando automaticamente dati diagnostici e di consumo agli svilupatori di LineageOS. Queste informazioni non possono essere utilizzate per identificare te ma danno una mano ai team che lavorano su cose come la durata della batteria, performance delle app e nuove funzioni di <xliff:g id="name" example="LineageOS">%2$s</xliff:g>.</string>
    <string name="services_os_nav_keys_label"><b>Usa i pulsanti virtuali a schermo</b> invece di quelli fisici.</string>
    <string name="setup_unlock">Sblocca</string>
    <string name="setup_device_locked">Questo dispositivo è stato bloccato dall\'utente.</string>
    <string name="setup_require_cyanogen_label"><b>È necessaria la password del tuo account</b> al fine di utilizzare il dispositivo anche dopo il ripristino di fabbrica.</string>
    <string name="setup_device_locked_instructions"><i>Per attivare e disattivare questa funzione, vai in Impostazioni &gt; Sicurezza</i></string>
    <string name="settings_biometric_setup_title">Seleziona la schermata di sicurezza di riserva</string>
    <string name="settings_biometric_setup_details">Come vuoi bloccare lo schermo?</string>
    <string name="fingerprint_setup_title">Setup impronte digitali</string>
    <string name="fingerprint_setup_summary">Per usare le impronte digitali per sbloccare lo schermo, avrai bisogno di:</string>
    <string name="fingerprint_setup_add_fingerprint">Aggiungere un\'impronta</string>
    <string name="face_setup_title">Configurazione volto</string>
    <string name="face_setup_summary">Per utilizzare il tuo volto per sbloccare lo schermo, avrai bisogno di:</string>
    <string name="face_setup_add_face">Registrare il tuo volto</string>
    <string name="biometric_setup_backup_lock_method">Impostare un metodo di sblocco secondario</string>
    <string name="biometric_setup_screen_lock_setup">Imposta un blocco schermo</string>
    <string name="sim_locale_changed">%1$s SIM rilevata</string>
    <string name="settings_lockscreen_setup_title">Seleziona il tipo di blocco schermo</string>
    <string name="settings_lockscreen_setup_details">Come vuoi bloccare lo schermo?</string>
    <string name="lockscreen_setup_title" product="tablet">Proteggi il tuo tablet</string>
    <string name="lockscreen_setup_title" product="default">Proteggi il tuo telefono</string>
    <string name="lockscreen_setup_summary"><b>Proteggi il dispositivo</b> e richiedi PIN, sequenza o password per sbloccare schermo</string>
    <string name="lockscreen_setup_screen_lock_setup">Configura</string>
    <string name="intro_restore_title">Ripristina app e dati</string>
    <string name="intro_restore_subtitle" product="tablet">Se disponi di un backup da un altro tablet con LineageOS, puoi ripristinarlo qui.</string>
    <string name="intro_restore_subtitle" product="default">Se disponi di un backup da un altro telefono con LineageOS, puoi ripristinarlo qui.</string>
    <string name="intro_restore_button">Ripristina dal backup</string>
    <string name="update_recovery_title">Aggiorna recovery Lineage</string>
    <string name="update_recovery_description">Aggiorna la recovery Lineage al primo avvio successivo ad ogni aggiornamento.</string>
    <string name="update_recovery_warning">La recovery verrà aggiornata non appena terminerai la configurazione. Se desideri mantenerla intatta, disabilita questa funzione.</string>
    <string name="update_recovery_setting">Aggiorna la recovery Lineage insieme al sistema operativo</string>
</resources>
