<?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">"Menedżer pobierania"</string>
    <string name="permlab_downloadManager" msgid="7779544811202855500">"Dostęp do menedżera pobierania."</string>
    <string name="permdesc_downloadManager" msgid="4237406545998908947">"Zezwala aplikacji na dostęp do menedżera pobierania i korzystanie z niego w celu pobierania plików. Złośliwe aplikacje mogą wykorzystać tę możliwość w celu zakłócenia pobierania i uzyskania dostępu do informacji prywatnych."</string>
    <string name="permlab_downloadManagerAdvanced" msgid="7103642833308809655">"Zaawansowane funkcje menedżera pobierania."</string>
    <string name="permdesc_downloadManagerAdvanced" msgid="2659546004160962761">"Zezwala aplikacji na dostęp do zaawansowanych funkcji menedżera pobierania. Złośliwe aplikacje mogą wykorzystać tę możliwość w celu zakłócenia pobierania i uzyskania dostępu do informacji prywatnych."</string>
    <string name="permlab_downloadCompletedIntent" msgid="945913803765675685">"Wysyłanie powiadomień o pobraniu."</string>
    <string name="permdesc_downloadCompletedIntent" msgid="2094706189855699533">"Zezwala aplikacji na wysyłanie powiadomień o ukończonym pobieraniu. Złośliwe aplikacje mogą używać tego uprawnienia do wprowadzania w błąd innych aplikacji, które pobierają pliki."</string>
    <string name="permlab_seeAllExternal" product="nosdcard" msgid="4084575448409212628">"Zobacz pliki pobrane na USB"</string>
    <string name="permlab_seeAllExternal" product="default" msgid="140058400609165726">"Sprawdzanie wszystkich plików pobranych na kartę SD"</string>
    <string name="permdesc_seeAllExternal" msgid="1672759909065511233">"Zezwala aplikacji na dostęp do listy wszystkich plików pobranych na kartę SD, niezależnie od tego, w której aplikacji zostały one pobrane."</string>
    <string name="permlab_downloadCacheNonPurgeable" msgid="3069534308882047412">"Zarezerwuj miejsce w pamięci podręcznej pobierania"</string>
    <string name="permdesc_downloadCacheNonPurgeable" msgid="2408760720334570420">"Zezwala aplikacji na pobieranie plików do pamięci podręcznej, która nie może zostać automatycznie usunięta, gdy menedżer pobierania potrzebuje więcej miejsca."</string>
    <string name="permlab_downloadWithoutNotification" msgid="8837971946078327262">"pobieraj pliki bez powiadomienia"</string>
    <string name="permdesc_downloadWithoutNotification" msgid="8483135034298639727">"Zezwala aplikacji na pobieranie plików przez menedżera pobierania bez wyświetlania powiadomień."</string>
    <string name="permlab_accessAllDownloads" msgid="2436240495424393717">"Dostęp do wszystkich pobranych pozycji w systemie"</string>
    <string name="permdesc_accessAllDownloads" msgid="1871832254578267128">"Zezwala aplikacji na wyświetlanie i modyfikowanie wszystkich plików pobranych w dowolnej aplikacji w systemie."</string>
    <string name="download_unknown_title" msgid="7015124071247271585">"&lt;Bez nazwy&gt;"</string>
    <string name="notification_filename_separator" msgid="7147189522857807618">", "</string>
    <string name="notification_filename_extras" msgid="5549729917695688191">" i inne (<xliff:g id="NUMBER">%d</xliff:g>)"</string>
    <string name="notification_download_complete" msgid="5443563299253103667">"Pobieranie ukończone."</string>
    <string name="notification_download_failed" msgid="8612136111952014978">"Pobranie nie powiodło się."</string>
    <string name="notification_need_wifi_for_size" msgid="2556172885154833575">"Pobieranie wymaga Wi-Fi"</string>
    <string name="notification_paused_in_background" msgid="4328508073283591772">"Wstrzymane w tle."</string>
    <string name="wifi_required_title" msgid="1995971416871498179">"Zbyt duży plik do pobrania dla sieci operatora"</string>
    <string name="wifi_required_body" msgid="3067694630143784449">"Do pobrania <xliff:g id="SIZE">%s </xliff:g> musisz użyć połączenia Wi-Fi. "\n\n"Wybierz <xliff:g id="QUEUE_TEXT">%s </xliff:g>, aby pobrać po nawiązaniu połączenia z siecią Wi-Fi."</string>
    <string name="wifi_recommended_title" msgid="7441589306734687400">"Czy dodać do kolejki do późniejszego pobrania?"</string>
    <string name="wifi_recommended_body" msgid="1314735166699936073">"Pobranie <xliff:g id="SIZE">%s </xliff:g> może skrócić czas pracy na baterii i spowodować przekroczenie limitu transmisji danych, za co operator może naliczyć dodatkowe opłaty."\n\n"Wybierz <xliff:g id="QUEUE_TEXT">%s</xliff:g>, aby pobrać po połączeniu z siecią Wi-Fi."</string>
    <string name="button_queue_for_wifi" msgid="422576726189179221">"Dodaj do kolejki"</string>
    <string name="button_cancel_download" msgid="2430166148737975604">"Anuluj"</string>
    <string name="button_start_now" msgid="792123674007840864">"Rozpocznij teraz"</string>
    <string name="download_percent" msgid="6889426633242976698">"<xliff:g id="NUMBER">%d</xliff:g><xliff:g id="PERCENT">%%</xliff:g>"</string>
</resources>
