<?xml version="1.0" encoding="UTF-8"?>
<!-- 
    Copyright (C) 2018 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_title" msgid="1995858460392177468">"کار لانچر"</string>
    <string name="app_launcher_title_all_apps" msgid="3215107396036838217">"سبھی ایپس"</string>
    <string name="app_launcher_title_media_only" msgid="4400886555907422816">"میڈیا ایپس"</string>
    <string name="default_media_song_title" msgid="2970305231647817808"></string>
    <string name="driving_toast_text" msgid="149483091947120092">"گاڑی چلاتے وقت <xliff:g id="APP_NAME">%1$s</xliff:g> کا استعمال نہیں کیا جاسکتا۔"</string>
    <string name="tap_for_more_info_text" msgid="2043549383814415585">"مزید معلومات کے لیے کارڈ تھپتھپائیں"</string>
    <string name="tap_to_launch_text" msgid="6910695705119260847">"شروع کرنے کے لیے کارڈ تھپتھپائیں"</string>
    <string name="ongoing_call_duration_text_separator" msgid="6019453854809413561">" • "</string>
    <string name="ongoing_call_text" msgid="2394626676478708070">"جاری کال"</string>
    <string name="dialing_call_text" msgid="415326503409745490">"ڈائل ہو رہی ہے…"</string>
    <string name="projected_launch_text" msgid="5809132353957907500">"Android Auto شروع کریں"</string>
    <string name="projected_onclick_launch_error_toast_text" msgid="7462478007773137082">"Android Auto شروع کرنے سے قاصر۔ کوئی سرگرمی نہیں ملی۔"</string>
    <string name="projection_devices" msgid="916314090031116598">"{count,plural, =1{# آلہ}other{# آلات}}"</string>
    <string name="weather_app_name" msgid="8048146303519139993">"موسم"</string>
    <string name="fake_weather_main_text" msgid="8117240999340284429">"--° زیادہ تر دھوپ"</string>
    <string name="fake_weather_footer_text" msgid="4570172025869749926">"Mountain View • H: --° L: --°‎"</string>
    <string name="hide_debug_apps" msgid="6128313544379622475">"ڈیبگ ایپس چھپائیں"</string>
    <string name="show_debug_apps" msgid="4521073121286325786">"ڈیبگ ایپس دکھائیں"</string>
</resources>
