<?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">"Yuklanishlar menejeri"</string>
    <string name="permlab_downloadManager" msgid="7779544811202855500">"Yuklab olish menejeriga kirishga ruxsat"</string>
    <string name="permdesc_downloadManager" msgid="4237406545998908947">"Ilovaga yuklab olish menejeriga kirish va yuklab olish fayllaridan foydalanish uchun ruxsat beradi. Zararli dasturlar bundan yuklab olishlarga to‘sqinlik qilish va maxfiy ma’lumotlarga kirish uchun foydalanishi mumkin."</string>
    <string name="permlab_downloadManagerAdvanced" msgid="7103642833308809655">"Qo‘shimcha yuklab olish menejeri funksiyalari."</string>
    <string name="permdesc_downloadManagerAdvanced" msgid="2659546004160962761">"Ilovaga yuklab olish menejerining qo‘shimcha funksiyalariga kirish uchun ruxsat beradi. Zararli dasturlar bundan yuklab olishlarga to‘sqinlik qilish va maxfiy ma’lumotlarga kirish uchun foydalanishi mumkin."</string>
    <string name="permlab_downloadCompletedIntent" msgid="945913803765675685">"Yuklab olish xabarnomalarini jo‘natadi."</string>
    <string name="permdesc_downloadCompletedIntent" msgid="2094706189855699533">"Ilovaga tugagan yuklab olishlar haqidagi xabarnomalarini jo‘natishga ruxsat beradi. Zararli dasturlar bundan yuklab olinayotgan fayllarni boshqalari bilan chalkashtirish uchun foydalanishi mumkin."</string>
    <string name="permlab_seeAllExternal" product="nosdcard" msgid="4084575448409212628">"USB’dagi yuk. olish ko‘r."</string>
    <string name="permlab_seeAllExternal" product="default" msgid="140058400609165726">"SD xotira kartasidagi barcha yuklab olishlarni ko‘rish"</string>
    <string name="permdesc_seeAllExternal" msgid="1672759909065511233">"Ilovaga qaysi ilovalar fayllarni SD xotira kartasiga yuklab olganidan qat’iy nazar, undagi barcha fayllarni ko‘rishga ruxsat beradi."</string>
    <string name="permlab_downloadCacheNonPurgeable" msgid="3069534308882047412">"Yuklab olish keshida joy qoldirish"</string>
    <string name="permdesc_downloadCacheNonPurgeable" msgid="2408760720334570420">"Yuklashlar menejeriga ko‘proq bo‘sh joy kerak bo‘lganda avtomatik o‘chirilmaydigan fayllarni yuklab olish keshiga yuklab olish uchun ilovaga ruxsat beradi."</string>
    <string name="permlab_downloadWithoutNotification" msgid="8837971946078327262">"fayllarni ogohlantirishsiz yuklab olish"</string>
    <string name="permdesc_downloadWithoutNotification" msgid="8483135034298639727">"Foydalanuvchini hech qanday ogohlantirmasdan Ilovaga yuklab olish menejeri orqali fayllar yuklab olish uchun ruxsat beradi."</string>
    <string name="permlab_accessAllDownloads" msgid="2436240495424393717">"Tizimdagi barcha yuklab olishlariga ruxsat berish"</string>
    <string name="permdesc_accessAllDownloads" msgid="1871832254578267128">"Ilovaga tizimda har qanday ilova tomonidan ishga tushirilgan barcha yuklanishlarni ko‘rish va o‘zgartirish uchun ruxsat beradi."</string>
    <string name="download_unknown_title" msgid="7015124071247271585">"&lt;Sarlavhasiz&gt;"</string>
    <string name="notification_download_complete" msgid="5443563299253103667">"Yuklab olish tugallandi."</string>
    <string name="notification_download_failed" msgid="8612136111952014978">"Yuklab olish muvaffaqiyatsiz yakunlandi."</string>
    <string name="notification_need_wifi_for_size" msgid="2556172885154833575">"Katta hajmni yuklab olish uchun Wi-Fi kerak."</string>
    <string name="notification_paused_in_background" msgid="4328508073283591772">"Orqa fonda pauzalangan."</string>
    <string name="wifi_required_title" msgid="1995971416871498179">"Tarmoq operatori aloqasi orqali yuklab olish uchun fayl hajmi katta"</string>
    <string name="wifi_required_body" msgid="3067694630143784449">"Ushbu <xliff:g id="SIZE">%s </xliff:g> hajmdagi yuklab olishni tugatish uchun Wi-Fi tarmoqdan foydalanishingiz kerak. \n\nKeyingi safar Wi-Fi tarmoqqa ulanganingizda yuklab olishni boshlash uchun <xliff:g id="QUEUE_TEXT">%s </xliff:g>ni bosing."</string>
    <string name="wifi_recommended_title" msgid="7441589306734687400">"Keyinroq yuklab olish uchun navbatga qo‘shilsinmi?"</string>
    <string name="wifi_recommended_body" msgid="1314735166699936073">"Ushbu <xliff:g id="SIZE">%s </xliff:g> hajmdagi yuklab olishni boshlash batareya quvvatini kamaytirishi va/yoki uyali aloqa internetidan juda ko‘p foydalanib, natijada internet paketingizga ko‘ra uyali tarmoq operatoringiz tomonidan sizdan ortiqcha haq talab qilinishiga sabab bo‘lishi mumkin. \n\n Keyingi safar Wi-Fi tarmoqqa ulanganingizda yuklab olishni boshlash uchun <xliff:g id="QUEUE_TEXT">%s</xliff:g>ni tanlang."</string>
    <string name="button_queue_for_wifi" msgid="422576726189179221">"Navbat"</string>
    <string name="button_cancel_download" msgid="2430166148737975604">"Bekor qilish"</string>
    <string name="button_start_now" msgid="792123674007840864">"Ishga tushirish"</string>
    <plurals name="notif_summary_active" formatted="false" msgid="7290448463204837173">
      <item quantity="other"><xliff:g id="NUMBER">%d</xliff:g> ta fayl yuklab olinmoqda</item>
      <item quantity="one">1 ta fayl yuklab olinmoqda</item>
    </plurals>
    <plurals name="notif_summary_waiting" formatted="false" msgid="2814217662029273005">
      <item quantity="other"><xliff:g id="NUMBER">%d</xliff:g> ta fayl navbatda</item>
      <item quantity="one">1 ta fayl navbatda</item>
    </plurals>
    <string name="download_remaining" msgid="3139295890887972718">"<xliff:g id="DURATION">%s</xliff:g> qoldi"</string>
    <string name="download_no_application_title" msgid="7935659741162801699">"Fayl ochilmadi"</string>
    <string name="root_downloads" msgid="4098414876292351487">"Yuklanishlar"</string>
    <string name="download_queued" msgid="3302638231377947451">"Navbatga qo‘shildi"</string>
    <string name="download_running" msgid="3925050393361158266">"Yuklab olinmoqda"</string>
    <string name="download_error" msgid="5144180777324573236">"Muvaffaqiyatsiz"</string>
    <string name="download_running_percent" msgid="4305080769167320204">"Davom etmoqda, <xliff:g id="PERCENTAGE">%s</xliff:g>"</string>
</resources>
