<?xml version="1.0" encoding="UTF-8"?>
<!--  Copyright (C) 2007 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="app_label" msgid="3658948994665187911">"Downloadadministrator"</string>
    <string name="permlab_downloadManager" msgid="7779544811202855500">"Få adgang til downloadadministrator."</string>
    <string name="permdesc_downloadManager" msgid="4237406545998908947">"Tillader, at appen kan få adgang til downloadadministratoren og til at bruge den til at downloade filer. Ondsindede apps kan bruge dette til at afbryde downloads og få adgang til personlige oplysninger."</string>
    <string name="permlab_downloadManagerAdvanced" msgid="7103642833308809655">"Avancerede funktioner for downloadadministrator."</string>
    <string name="permdesc_downloadManagerAdvanced" msgid="2659546004160962761">"Tillader, at appen kan få adgang til downloadadministrators avancerede funktioner. Ondsindede apps kan bruge dette til at afbryde downloads og få adgang til personlige oplysninger."</string>
    <string name="permlab_downloadCompletedIntent" msgid="945913803765675685">"Send downloadmeddelelser."</string>
    <string name="permdesc_downloadCompletedIntent" msgid="2094706189855699533">"Tillader, at appen kan sende meddelelser om fuldførte downloads. Ondsindede apps kan bruge dette til at forvirre andre apps, der downloader filer."</string>
    <string name="permlab_seeAllExternal" product="nosdcard" msgid="4084575448409212628">"Se alle downloads til USB-lagr."</string>
    <string name="permlab_seeAllExternal" product="default" msgid="140058400609165726">"Se alle downloads til SD-kort"</string>
    <string name="permdesc_seeAllExternal" msgid="1672759909065511233">"Tillader, at appen kan se alle downloads på SD-kortet, uanset hvilken app der har downloadet dem."</string>
    <string name="permlab_downloadCacheNonPurgeable" msgid="3069534308882047412">"Reserver plads i downloadcache"</string>
    <string name="permdesc_downloadCacheNonPurgeable" msgid="2408760720334570420">"Tillader, at appen kan downloade filer til downloadcachen, som ikke automatisk kan slettes, når downloadadministratoren har brug for mere plads."</string>
    <string name="permlab_downloadWithoutNotification" msgid="8837971946078327262">"download filer uden meddelelse"</string>
    <string name="permdesc_downloadWithoutNotification" msgid="8483135034298639727">"Tillader, at appen kan downloade filer via downloadadministratoren, uden at brugeren får besked."</string>
    <string name="permlab_accessAllDownloads" msgid="2436240495424393717">"Adgang til alle systemdownloads"</string>
    <string name="permdesc_accessAllDownloads" msgid="1871832254578267128">"Tillader, at appen kan se og ændre alle downloads, der igangsættes af en app i systemet."</string>
    <string name="download_unknown_title" msgid="7015124071247271585">"&lt;Uden titel&gt;"</string>
    <string name="notification_filename_separator" msgid="7147189522857807618">", "</string>
    <string name="notification_filename_extras" msgid="5549729917695688191">" og <xliff:g id="NUMBER">%d</xliff:g> mere"</string>
    <string name="notification_download_complete" msgid="5443563299253103667">"Downloaden er fuldført."</string>
    <string name="notification_download_failed" msgid="8612136111952014978">"Downloaden mislykkedes."</string>
    <string name="notification_need_wifi_for_size" msgid="2556172885154833575">"Downloaden kræver Wi-Fi."</string>
    <string name="notification_paused_in_background" msgid="4328508073283591772">"Standset i baggrunden."</string>
    <string name="wifi_required_title" msgid="1995971416871498179">"Downloadfilen er for stor til mobilnetværk"</string>
    <string name="wifi_required_body" msgid="3067694630143784449">"Du skal bruge Wi-Fi for at fuldføre denne download på <xliff:g id="SIZE">%s </xliff:g>. "\n\n"Tryk på <xliff:g id="QUEUE_TEXT">%s </xliff:g> for at starte denne download, næste gang du får forbindelse til et Wi-Fi-netværk."</string>
    <string name="wifi_recommended_title" msgid="7441589306734687400">"I kø til senere download?"</string>
    <string name="wifi_recommended_body" msgid="1314735166699936073">"Hvis downloaden på <xliff:g id="SIZE">%s </xliff:g> startes nu, kan batteriets levetid forkortes og/eller medføre overdreven brug af din mobildata, som kan koste ekstra hos dit mobilselskab afhængigt af dit dataabonnement."\n\n" Tryk på <xliff:g id="QUEUE_TEXT">%s</xliff:g> for at starte downloaden ved næste forbindelse til Wi-Fi."</string>
    <string name="button_queue_for_wifi" msgid="422576726189179221">"Kø"</string>
    <string name="button_cancel_download" msgid="2430166148737975604">"Annuller"</string>
    <string name="button_start_now" msgid="792123674007840864">"Begynd nu"</string>
    <string name="download_percent" msgid="6889426633242976698">"<xliff:g id="NUMBER">%d</xliff:g> <xliff:g id="PERCENT">%%</xliff:g>"</string>
</resources>
