<?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="5264040740662487684">"下載管理員"</string>
    <string name="storage_description" msgid="169690279447532621">"下載"</string>
    <string name="permlab_downloadManager" msgid="4241473724446132797">"存取下載管理員。"</string>
    <string name="permdesc_downloadManager" msgid="5562734314998369030">"允許應用程式存取下載管理員，並使用下載管理員下載檔案。惡意應用程式可能藉此干擾檔案下載並存取私人資訊。"</string>
    <string name="permlab_downloadManagerAdvanced" msgid="2225663947531460795">"下載管理員進階功能。"</string>
    <string name="permdesc_downloadManagerAdvanced" msgid="3902478062563030716">"允許應用程式存取下載管理員的進階功能。惡意應用程式可能藉此干擾檔案下載並存取私人資訊。"</string>
    <string name="permlab_downloadCompletedIntent" msgid="2674407390116052956">"傳送下載通知。"</string>
    <string name="permdesc_downloadCompletedIntent" msgid="3384693829639860032">"允許應用程式在完成下載時送出通知。惡意應用程式可能藉此干擾其他下載檔案的應用程式。"</string>
    <string name="permlab_downloadCacheNonPurgeable" msgid="4538031250425141333">"保留下載快取空間"</string>
    <string name="permdesc_downloadCacheNonPurgeable" msgid="3071381088686444674">"允許應用程式將檔案下載至下載快取空間，確保檔案不會因為下載管理員需要挪出更多空間而遭到自動刪除。"</string>
    <string name="permlab_downloadWithoutNotification" msgid="4877101864770265405">"不顯示通知，直接下載檔案"</string>
    <string name="permdesc_downloadWithoutNotification" msgid="7699189763226483523">"允許應用程式不需通知使用者，即可透過下載管理員下載檔案。"</string>
    <string name="permlab_accessAllDownloads" msgid="8227356876527248611">"存取所有系統下載內容"</string>
    <string name="permdesc_accessAllDownloads" msgid="7541731738152145079">"允許應用程式檢視及修改系統上任一應用程式下載的所有內容。"</string>
    <string name="download_unknown_title" msgid="1017800350818840396">"&lt;未命名&gt;"</string>
    <string name="notification_download_complete" msgid="466652037490092787">"下載完成。"</string>
    <string name="notification_download_failed" msgid="3932167763860605874">"下載失敗。"</string>
    <string name="notification_need_wifi_for_size" msgid="4743443900432303646">"這個檔案較大，需要透過 Wi-Fi 下載。"</string>
    <string name="notification_paused_in_background" msgid="6393408819031041778">"在背景中暫停。"</string>
    <string name="wifi_required_title" msgid="7266700488421122218">"檔案過大，無法透過行動電話業者的網路下載"</string>
    <string name="wifi_required_body" msgid="4005023496578941958">"你必須透過 Wi-Fi 才能完整下載這個 <xliff:g id="SIZE">%1$s </xliff:g> 的檔案。\n\n建議你改在下次連上 Wi-Fi 網路時，再輕觸 [<xliff:g id="QUEUE_TEXT">%2$s </xliff:g>] 開始下載。"</string>
    <string name="wifi_recommended_title" msgid="6488158053932133804">"排入佇列以供日後下載？"</string>
    <string name="wifi_recommended_body" msgid="8710820743211704403">"現在下載這個 <xliff:g id="SIZE">%1$s </xliff:g> 的檔案，可能會減少電池可使用的時間，並/或超額使用行動數據連線，導致電信業者依據資費方案向你收費。\n\n建議你改在下次連上 Wi-Fi 網路時，再輕觸 [<xliff:g id="QUEUE_TEXT">%2$s</xliff:g>] 開始下載。"</string>
    <string name="button_queue_for_wifi" msgid="6650185573566994738">"佇列"</string>
    <string name="button_cancel_download" msgid="4135046775536601831">"取消"</string>
    <string name="button_start_now" msgid="3817100969365441730">"立即開始"</string>
    <plurals name="notif_summary_active" formatted="false" msgid="8652501374845637331">
      <item quantity="other">正在下載 <xliff:g id="NUMBER">%d</xliff:g> 個檔案</item>
      <item quantity="one">正在下載 1 個檔案</item>
    </plurals>
    <plurals name="notif_summary_waiting" formatted="false" msgid="1782251721955177526">
      <item quantity="other">正在等待下載 <xliff:g id="NUMBER">%d</xliff:g> 個檔案</item>
      <item quantity="one">正在等待下載 1 個檔案</item>
    </plurals>
    <string name="download_remaining" msgid="2313089371178695625">"剩餘 <xliff:g id="DURATION">%s</xliff:g>"</string>
    <string name="download_no_application_title" msgid="5780812573953335721">"無法開啟檔案"</string>
    <string name="root_downloads" msgid="8380500940211778491">"下載項目"</string>
    <string name="download_queued" msgid="3383844741769045371">"已加入佇列"</string>
    <string name="download_running" msgid="774654178925442490">"進行中"</string>
    <string name="download_error" msgid="1857737890005386798">"失敗"</string>
    <string name="download_running_percent" msgid="3492753569359254730">"下載中 (<xliff:g id="PERCENTAGE">%s</xliff:g>)"</string>
</resources>
