<?xml version="1.0" encoding="UTF-8"?>
<!--  Copyright (C) 2020 The Android Open Source 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:android="http://schemas.android.com/apk/res/android"
    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
    <string name="wifitrackerlib_summary_separator" msgid="6613897475167609815">" / "</string>
    <string name="wifitrackerlib_auto_connect_disable" msgid="4714835547164460651">"Automatisk forbindelse er deaktiveret"</string>
    <string name="wifitrackerlib_saved_network" msgid="5353460010746484376">"Gemt af <xliff:g id="NAME">%1$s</xliff:g>"</string>
    <string name="wifitrackerlib_wifi_no_internet_no_reconnect" msgid="6618216332537706908">"Der oprettes ikke automatisk forbindelse"</string>
    <string name="wifitrackerlib_wifi_no_internet" msgid="4998563744669636949">"Ingen internetadgang"</string>
    <string name="wifitrackerlib_wifi_disabled_password_failure" msgid="2850244218754633550">"Problem med godkendelse"</string>
    <string name="wifitrackerlib_wifi_check_password_try_again" msgid="2327777719175574699">"Tjek adgangskoden, og prøv igen"</string>
    <string name="wifitrackerlib_wifi_disabled_network_failure" msgid="3046956554224277166">"IP-konfigurationsfejl"</string>
    <string name="wifitrackerlib_wifi_disabled_generic" msgid="4278806060337007814">"Deaktiveret"</string>
    <string name="wifitrackerlib_wifi_ap_unable_to_handle_new_sta" msgid="931922372010639716">"Adgangspunktet er midlertidigt fuldt"</string>
    <string name="wifitrackerlib_wifi_poor_channel_conditions" msgid="26484680900376236">"Midlertidig dårlig netværksforbindelse"</string>
    <string name="wifitrackerlib_wifi_mbo_oce_assoc_disallowed_insufficient_rssi" msgid="5078611817423181773">"Svagt signal. Prøv at rykke tættere på routeren."</string>
    <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_max_num_sta_associated" msgid="4418848919914618807">"Netværkets kapacitet er overskredet. Prøv igen senere."</string>
    <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_cannot_connect" msgid="2692286425448897083">"Der kan ikke oprettes forbindelse. Prøv igen senere."</string>
    <string name="wifitrackerlib_wifi_network_not_found" msgid="2208793323700267293">"Netværket er ikke kompatibelt med denne enhed"</string>
    <string name="wifitrackerlib_wifi_disconnected" msgid="3320414360982942679">"Afbrudt"</string>
    <string name="wifitrackerlib_wifi_remembered" msgid="2406091442008343041">"Gemt"</string>
    <string name="wifitrackerlib_wifi_metered_label" msgid="8818508951778620385">"Forbrugsafregnet"</string>
    <string name="wifitrackerlib_wifi_unmetered_label" msgid="1902150402929678469">"Ikke forbrugsafregnet"</string>
    <string name="wifitrackerlib_connected_via_app" msgid="7823921840931347560">"Forbundet via <xliff:g id="NAME">%1$s</xliff:g>"</string>
    <string name="wifitrackerlib_available_via_app" msgid="8556844256194837469">"Tilgængeligt via <xliff:g id="NAME">%1$s</xliff:g>"</string>
    <string name="wifitrackerlib_connected_via_network_scorer" msgid="6306655070903763086">"Automatisk forbundet via <xliff:g id="NAME">%1$s</xliff:g>"</string>
    <string name="wifitrackerlib_connected_via_network_scorer_default" msgid="3436792128688839692">"Automatisk forbundet via udbyder af netværksvurdering"</string>
    <string name="wifitrackerlib_wifi_limited_connection" msgid="4234326409980991740">"Begrænset forbindelse"</string>
    <string name="wifitrackerlib_private_dns_broken" msgid="6049401148262718707">"Der er ikke adgang til den private DNS-server"</string>
    <string name="wifitrackerlib_wifi_connected_cannot_provide_internet" msgid="3803471522215612745">"Forbundet til enheden. Der er ikke noget internet."</string>
    <string name="wifi_connected_low_quality" msgid="4478331645458058445">"Dårlig kvalitet"</string>
    <string name="wifitrackerlib_wifi_security_none" msgid="2686062484642847280">"Ingen"</string>
    <string name="wifitrackerlib_wifi_passpoint_expired" msgid="7974960573887452566">"Udløbet"</string>
    <string name="wifitrackerlib_tap_to_sign_up" msgid="3897017015910817402">"Tryk for at registrere"</string>
    <string name="wifitrackerlib_tap_to_renew_subscription_and_connect" msgid="6048420776676138069">"Tryk for at forny abonnementet, og opret forbindelse"</string>
    <string name="wifitrackerlib_osu_opening_provider" msgid="7128677439450712558">"Åbner <xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g>"</string>
    <string name="wifitrackerlib_osu_connect_failed" msgid="3872233609000700930">"Der kunne ikke oprettes forbindelse"</string>
    <string name="wifitrackerlib_osu_completing_sign_up" msgid="4359503050543182480">"Fuldfører registrering…"</string>
    <string name="wifitrackerlib_osu_sign_up_failed" msgid="3964140125523395898">"Registreringen kunne ikke fuldføres. Tryk for at prøve igen."</string>
    <string name="wifitrackerlib_osu_sign_up_complete" msgid="3279606633343124580">"Registreringen er fuldført. Opretter forbindelse…"</string>
    <string name="wifitrackerlib_imsi_protection_warning" msgid="7202210931586169466">"Dette netværk kræver et SIM-id, der kan bruges til at spore enhedens placering. "<annotation id="url">"Få flere oplysninger"</annotation></string>
    <string name="wifitrackerlib_speed_label_very_slow" msgid="6606409259798814244">"Meget langsom"</string>
    <string name="wifitrackerlib_speed_label_slow" msgid="7327906382011957760">"Langsom"</string>
    <string name="wifitrackerlib_speed_label_okay" msgid="6656684124654881956">"OK"</string>
    <string name="wifitrackerlib_speed_label_medium" msgid="2249280306855290094">"Middel"</string>
    <string name="wifitrackerlib_speed_label_fast" msgid="2593921008376044650">"Hurtig"</string>
    <string name="wifitrackerlib_speed_label_very_fast" msgid="4162759416291355173">"Meget hurtig"</string>
    <string name="wifitrackerlib_wifi_wont_autoconnect_for_now" msgid="4923161724964349851">"Der oprettes ikke automatisk forbindelse til Wi-Fi-netværket i øjeblikket"</string>
</resources>
