<?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">"Správce stahování"</string>
    <string name="permlab_downloadManager" msgid="7779544811202855500">"Získat přístup ke správci stahování."</string>
    <string name="permdesc_downloadManager" msgid="4240298564918160337">"Umožní aplikaci získat přístup ke správci stahování a stahovat pomocí něj soubory. Škodlivé aplikace mohou pomocí tohoto nastavení narušit stahování a získat přístup k soukromým informacím."</string>
    <string name="permlab_downloadManagerAdvanced" msgid="7103642833308809655">"Pokročilé funkce správce stahování."</string>
    <string name="permdesc_downloadManagerAdvanced" msgid="6985743912436565114">"Umožňuje aplikaci přístup k pokročilým funkcím správce stahování. Škodlivé aplikace toho mohou využít a narušit stahování nebo získat přístup k důvěrným informacím."</string>
    <string name="permlab_downloadCompletedIntent" msgid="945913803765675685">"Odeslat oznámení o stahování."</string>
    <string name="permdesc_downloadCompletedIntent" msgid="8672701687104399228">"Umožní aplikaci odeslat oznámení o dokončení stahování. Škodlivé aplikace mohou pomocí tohoto nastavení zmást jiné aplikace, které stahují soubory."</string>
    <string name="permlab_seeAllExternal" msgid="140058400609165726">"Zobrazení všech položek stažených na kartu SD"</string>
    <string name="permdesc_seeAllExternal" msgid="3298948060016417104">"Umožňuje aplikaci zobrazit všechny položky stažené na kartu SD bez ohledu na to, která aplikace je stáhla."</string>
    <string name="download_unknown_title" msgid="7015124071247271585">"&lt;Bez názvu&gt;"</string>
    <string name="notification_filename_separator" msgid="7147189522857807618">", "</string>
    <string name="notification_filename_extras" msgid="5549729917695688191">" a ještě <xliff:g id="NUMBER">%d</xliff:g>"</string>
    <string name="notification_download_complete" msgid="840713937779273632">"Stahování bylo dokončeno"</string>
    <string name="notification_download_failed" msgid="5343637375905111462">"Stažení se nezdařilo."</string>
</resources>
