<?xml version="1.0" encoding="UTF-8"?>
<!--  Copyright (C) 2010 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="4847371117203587513">"Tệp đã tải xuống"</string>
    <string name="download_title_sorted_by_date" msgid="6033509257480233878">"Tải xuống - Sắp xếp theo ngày"</string>
    <string name="download_title_sorted_by_size" msgid="2575551670173644253">"Tải xuống - Sắp xếp theo kích thước"</string>
    <string name="no_downloads" msgid="1654764193290918538">"Không có bản tải xuống nào."</string>
    <string name="missing_title" msgid="3827247802608803753">"&lt;Không xác định&gt;"</string>
    <string name="button_sort_by_size" msgid="7952187121189086395">"Sắp xếp theo kích thước"</string>
    <string name="button_sort_by_date" msgid="2064919145709585942">"Sắp xếp theo ngày"</string>
    <string name="download_queued" msgid="4128038702528588781">"Đã xếp hàng"</string>
    <string name="download_running" msgid="2046492059586594352">"Đang tải lên"</string>
    <string name="download_success" msgid="3895973294927323747">"Hoàn tất"</string>
    <string name="download_error" msgid="6652902885480887230">"Không thành công"</string>
    <string name="dialog_title_not_available" msgid="7793272183758002416">"Không thể tải xuống"</string>
    <string name="dialog_failed_body" msgid="4538779125597383173">"Bạn muốn thử lại tải xuống tệp sau hay xóa tệp khỏi hàng đợi?"</string>
    <string name="dialog_title_queued_body" msgid="7481231558376227012">"Tệp trong hàng đợi"</string>
    <string name="dialog_queued_body" msgid="2374398802707010234">"Tệp này được xếp hàng đợi để tải xuống sau do đó chưa sẵn có."</string>
    <string name="dialog_file_missing_body" msgid="7896653198405160564">"Không thể tìm thấy tệp đã tải xuống."</string>
    <string name="dialog_insufficient_space_on_external" msgid="1847671628253287114">"Không thể hoàn tất tải xuống. Không đủ dung lượng trong bộ nhớ ngoài."</string>
    <string name="dialog_insufficient_space_on_cache" msgid="703074452633529558">"Không thể hoàn tất tải xuống. Không đủ dung lượng trong bộ nhớ tải xuống trong."</string>
    <string name="dialog_cannot_resume" msgid="3101433441301206866">"Tải xuống bị gián đoạn và không thể tiếp tục."</string>
    <string name="dialog_file_already_exists" msgid="6849168874901909994">"Không thể tải xuống. Đã tồn tại tệp đích."</string>
    <string name="dialog_media_not_found" msgid="7376030905821161865">"Không thể tải xuống. Không có thiết bị ngoài."</string>
    <string name="download_no_application_title" msgid="1209223807604231431">"Không thể mở tệp"</string>
    <string name="remove_download" msgid="244394809285977300">"Xóa"</string>
    <string name="delete_download" msgid="1861638125603383676">"Xóa"</string>
    <string name="keep_queued_download" msgid="6905870466259272973">"Giữ"</string>
    <string name="cancel_running_download" msgid="8586888328847044473">"Hủy"</string>
    <string name="retry_download" msgid="6957856437473044831">"Thử lại"</string>
    <string name="start_now_download" msgid="1518778561803897734">"Bắt đầu ngay"</string>
    <string name="deselect_all" msgid="4673983454506880405">"Bỏ chọn tất cả"</string>
    <string name="select_all" msgid="7469093306474000460">"Chọn tất cả"</string>
    <string name="selected_count" msgid="5876842902167894010">"Đã chọn <xliff:g id="NUMBER">%1$d</xliff:g> trong tổng số <xliff:g id="TOTAL">%2$d</xliff:g>"</string>
    <string name="download_share_dialog" msgid="5212760257251501969">"Chia sẻ qua"</string>
</resources>
