<?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="3070921713463294774">"التنزيلات"</string>
    <string name="download_title_sorted_by_date" msgid="5898014492155434221">"عمليات التنزيل - مصنفة بحسب التاريخ"</string>
    <string name="download_title_sorted_by_size" msgid="1417193166677094813">"عمليات التنزيل - مصنفة بحسب الحجم"</string>
    <string name="no_downloads" msgid="1029667411186146836">"ليس هناك أي تنزيلات"</string>
    <string name="missing_title" msgid="830115697868833773">"&lt;غير معروف&gt;"</string>
    <string name="button_sort_by_size" msgid="7331549713691146251">"التصنيف بحسب الحجم"</string>
    <string name="button_sort_by_date" msgid="8800842892684101528">"التصنيف بحسب التاريخ"</string>
    <string name="download_queued" msgid="104973307780629904">"في الانتظار"</string>
    <string name="download_running" msgid="4656462962155580641">"قيد التقدم"</string>
    <string name="download_success" msgid="7006048006543495236">"مكتمل"</string>
    <string name="download_error" msgid="3107369653921738690">"أخفق"</string>
    <string name="dialog_title_not_available" msgid="4479021195995400471">"إخفاق التنزيل"</string>
    <string name="dialog_failed_body" msgid="587545111677064427">"هل تريد إعادة محاولة تنزيل الملف لاحقًا أو حذفه من قائمة الانتظار؟"</string>
    <string name="dialog_title_queued_body" msgid="3062862079904954824">"الملف غير متوفر بعد"</string>
    <string name="dialog_queued_body" msgid="2506935748423351902">"هذا الملف في قائمة الانتظار لتنزيله لاحقًا."</string>
    <string name="dialog_file_missing_body" msgid="2783781332668129395">"تعذر العثور على الملف الذي تم تنزيله."</string>
    <string name="dialog_insufficient_space_on_external" msgid="7534108515812329821">"لا يمكن إنهاء التنزيل. ليس هناك مساحة كافية على وحدة التخزين الخارجية."</string>
    <string name="dialog_insufficient_space_on_cache" msgid="8387210487235302129">"لا يمكن إنهاء التنزيل. ليس هناك مساحة كافية على وحدة تخزين التنزيل الداخلية."</string>
    <string name="dialog_cannot_resume" msgid="7704082031608361756">"تمت مقاطعة التنزيل. ولا يمكن استئنافه."</string>
    <string name="dialog_file_already_exists" msgid="2663737850617642888">"لا يمكن التنزيل. ملف الوجهة موجود من قبل."</string>
    <string name="dialog_media_not_found" msgid="5308602145105720991">"لا يمكن التنزيل. الوسائط الخارجية غير متوفرة."</string>
    <string name="download_no_application_title" msgid="3501359021635168387">"لا يمكن فتح الملف"</string>
    <string name="remove_download" msgid="6372920256257247857">"إزالة"</string>
    <string name="delete_download" msgid="76629022653866471">"حذف"</string>
    <string name="keep_queued_download" msgid="5144882786014818569">"مواصلة"</string>
    <string name="cancel_running_download" msgid="5232704030969221112">"إلغاء"</string>
    <string name="retry_download" msgid="7617100787922717912">"إعادة المحاولة"</string>
    <string name="deselect_all" msgid="7986832738563338661">"إلغاء تحديد الكل"</string>
    <string name="select_all" msgid="5854385570247421586">"تحديد الكل"</string>
    <string name="selected_count" msgid="2101564570019753277">"حدد <xliff:g id="NUMBER">%1$d</xliff:g> من إجمالي <xliff:g id="TOTAL">%2$d</xliff:g>"</string>
    <string name="download_share_dialog" msgid="3355867339806448955">"مشاركة عبر"</string>
</resources>
