<?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_name" msgid="2738748390251381682">"Package installer"</string>
    <string name="next" msgid="3057143178373252333">"Next"</string>
    <string name="install" msgid="5896438203900042068">"Install"</string>
    <string name="done" msgid="3889387558374211719">"Done"</string>
    <string name="security_settings_desc" msgid="2706691034244052604">"Allow this app to:"</string>
    <string name="cancel" msgid="8360346460165114585">"Cancel"</string>
    <string name="unknown" msgid="4742479012767208045">"Unknown"</string>
    <string name="installing" msgid="8613631001631998372">"Installing…"</string>
    <string name="install_done" msgid="3682715442154357097">"App installed."</string>
    <string name="install_confirm_question" msgid="7295206719219043890">"Do you want to install this application? It will get access to:"</string>
    <string name="install_confirm_question_no_perms" msgid="5918305641302873520">"Do you want to install this application? It does not require any special access."</string>
    <string name="install_confirm_question_update" msgid="4624159567361487964">"Do you want to install an update to this existing application? Your existing data will not be lost. The updated application will get access to:"</string>
    <string name="install_confirm_question_update_system" msgid="1302330093676416336">"Do you want to install an update to this built-in application? Your existing data will not be lost. The updated application will get access to:"</string>
    <string name="install_confirm_question_update_no_perms" msgid="4885928136844618944">"Do you want to install an update to this existing application? Your existing data will not be lost. It does not require any special access."</string>
    <string name="install_confirm_question_update_system_no_perms" msgid="7676593512694724374">"Do you want to install an update to this built-in application? Your existing data will not be lost. It does not require any special access."</string>
    <string name="install_failed" msgid="6579998651498970899">"App not installed."</string>
    <string name="install_failed_blocked" msgid="1606870930588770025">"The package was blocked from being installed."</string>
    <string name="install_failed_conflict" msgid="5349055145440204106">"The package conflicts with an existing package by the same name."</string>
    <string name="install_failed_incompatible" product="tablet" msgid="119054044615117271">"This app isn\'t compatible with your tablet."</string>
    <string name="install_failed_incompatible" product="tv" msgid="3553367270510072729">"This app isn\'t compatible with your TV."</string>
    <string name="install_failed_incompatible" product="default" msgid="6677057915876853610">"This app isn\'t compatible with your phone."</string>
    <string name="install_failed_invalid_apk" msgid="1287935707565682604">"The package appears to be corrupt."</string>
    <string name="install_failed_msg" product="tablet" msgid="8368835262605608787">"<xliff:g id="APP_NAME">%1$s</xliff:g> couldn\'t be installed on your tablet."</string>
    <string name="install_failed_msg" product="tv" msgid="3990457938384021566">"<xliff:g id="APP_NAME">%1$s</xliff:g> couldn\'t be installed on your TV."</string>
    <string name="install_failed_msg" product="default" msgid="8554909560982962052">"<xliff:g id="APP_NAME">%1$s</xliff:g> couldn\'t be installed on your phone."</string>
    <string name="launch" msgid="4826921505917605463">"Open"</string>
    <string name="unknown_apps_dlg_text" product="tablet" msgid="7504186369474734767">"For security, your tablet is set to block installation of apps obtained from unknown sources."</string>
    <string name="unknown_apps_dlg_text" product="tv" msgid="7195713985140602351">"For security, your TV is set to block installations of apps obtained from unknown sources."</string>
    <string name="unknown_apps_dlg_text" product="default" msgid="133213135679009316">"For security, your phone is set to block installation of apps obtained from unknown sources."</string>
    <string name="unknown_apps_admin_dlg_text" msgid="1189146324736698462">"Your administrator doesn\'t allow installation of apps obtained from unknown sources."</string>
    <string name="ok" msgid="3468756155452870475">"OK"</string>
    <string name="settings" msgid="6743583734099755409">"Settings"</string>
    <string name="manage_applications" msgid="4033876279091996596">"Manage apps"</string>
    <string name="dlg_app_replacement_title" msgid="1232230739563820951">"Replace app?"</string>
    <string name="dlg_app_replacement_statement" msgid="2992911899989907492">"The app that you\'re installing will replace another app.\n\nAll your previous user data will be saved."</string>
    <string name="dlg_sys_app_replacement_statement" msgid="1900046590819605929">"This is a system app.\n\nAll your previous user data will be saved."</string>
    <string name="out_of_space_dlg_title" msgid="7843674437613797326">"Out of space"</string>
    <string name="out_of_space_dlg_text" msgid="4774775404294282216">"<xliff:g id="APP_NAME">%1$s</xliff:g> couldn\'t be installed. Free up some space and try again."</string>
    <string name="dlg_ok" msgid="6944357727705699232">"OK"</string>
    <string name="app_not_found_dlg_title" msgid="2692335460569505484">"App not found"</string>
    <string name="app_not_found_dlg_text" msgid="6107465056055095930">"The app wasn\'t found in the list of installed apps."</string>
    <string name="uninstall_application_title" msgid="1860074100811653963">"Uninstall app"</string>
    <string name="uninstall_update_title" msgid="4146940097553335390">"Uninstall update"</string>
    <string name="uninstall_activity_text" msgid="6680688689803932550">"<xliff:g id="ACTIVITY_NAME">%1$s</xliff:g> is part of the following app:"</string>
    <string name="uninstall_application_text" msgid="6691975835951187030">"Do you want to uninstall this app?"</string>
    <string name="uninstall_application_text_all_users" msgid="5574704453233525222">"Do you want to uninstall this app for "<b>"all"</b>" users? The application and its data will be removed from "<b>"all"</b>" users on the device."</string>
    <string name="uninstall_application_text_user" msgid="8766882355635485733">"Do you want to uninstall this app for the user <xliff:g id="USERNAME">%1$s</xliff:g>?"</string>
    <string name="uninstall_update_text" msgid="1394549691152728409">"Replace this app with the factory version? All data will be removed."</string>
    <string name="uninstall_update_text_multiuser" msgid="2083665452990861991">"Replace this app with the factory version? All data will be removed. This affects all users of this device, including those with work profiles."</string>
    <string name="uninstalling" msgid="5556217435895938250">"Uninstalling…"</string>
    <string name="uninstall_done" msgid="3792487853420281888">"Uninstall finished"</string>
    <string name="uninstall_failed" msgid="631122574306299512">"Uninstall unsuccessful."</string>
    <string name="uninstall_failed_device_policy_manager" msgid="3493789239037852035">"Can\'t uninstall because this package is an active device administrator."</string>
    <string name="uninstall_failed_device_policy_manager_of_user" msgid="4466062391552204291">"Can\'t uninstall because this package is an active device administrator for the user <xliff:g id="USERNAME">%1$s</xliff:g>."</string>
    <string name="uninstall_all_blocked_profile_owner" msgid="3544933038594382346">"This app is required for some users or profiles and was uninstalled for others"</string>
    <string name="uninstall_blocked_profile_owner" msgid="6912141045528994954">"This app is needed for your profile and can\'t be uninstalled."</string>
    <string name="uninstall_blocked_device_owner" msgid="7074175526413453063">"This app is required by your device administrator and can\'t be uninstalled."</string>
    <string name="manage_device_administrators" msgid="891392489300312370">"Manage device administrators"</string>
    <string name="manage_users" msgid="3125018886835668847">"Manage users"</string>
    <string name="uninstall_failed_msg" msgid="8969754702803951175">"<xliff:g id="APP_NAME">%1$s</xliff:g> couldn\'t be uninstalled."</string>
    <string name="Parse_error_dlg_text" msgid="7623286983621067011">"There was a problem while parsing the package."</string>
    <string name="newPerms" msgid="6039428254474104210">"New"</string>
    <string name="allPerms" msgid="1024385515840703981">"All"</string>
    <string name="privacyPerms" msgid="1850527049572617">"Privacy"</string>
    <string name="devicePerms" msgid="6733560207731294504">"Device Access"</string>
    <string name="no_new_perms" msgid="6657813692169565975">"This update requires no new permissions."</string>
    <string name="grant_confirm_question" msgid="4690289297029223742">"Do you want to grant the following permissions? It will get access to:"</string>
    <string name="grant_dialog_button_deny" msgid="2176510645406614340">"Deny"</string>
    <string name="grant_dialog_button_deny_anyway" msgid="847960499284125250">"Deny anyway"</string>
    <string name="current_permission_template" msgid="6378304249516652817">"<xliff:g id="CURRENT_PERMISSION_INDEX">%1$s</xliff:g> of <xliff:g id="PERMISSION_COUNT">%2$s</xliff:g>"</string>
    <string name="permission_warning_template" msgid="7332275268559121742">"Allow &lt;b&gt;<xliff:g id="APP_NAME">%1$s</xliff:g>&lt;/b&gt; to <xliff:g id="ACTION">%2$s</xliff:g>?"</string>
    <string name="grant_dialog_button_allow" msgid="4616529495342337095">"Allow"</string>
    <string name="app_permissions_breadcrumb" msgid="3390836200791539264">"Apps"</string>
    <string name="app_permissions" msgid="3146758905824597178">"App permissions"</string>
    <string name="never_ask_again" msgid="1089938738199748687">"Don\'t ask again"</string>
    <string name="no_permissions" msgid="3210542466245591574">"No permissions"</string>
    <string name="additional_permissions" msgid="6667573114240111763">"Additional permissions"</string>
    <plurals name="additional_permissions_more" formatted="false" msgid="945127158155064388">
      <item quantity="other"><xliff:g id="COUNT_1">%1$d</xliff:g> more</item>
      <item quantity="one"><xliff:g id="COUNT_0">%1$d</xliff:g> more</item>
    </plurals>
    <string name="old_sdk_deny_warning" msgid="3872277112584842615">"This app was designed for an older version of Android. Denying permission may cause it to no longer function as intended."</string>
    <string name="default_permission_description" msgid="4992892207044156668">"perform an unknown action"</string>
    <string name="app_permissions_group_summary" msgid="4787239772223699263">"<xliff:g id="COUNT_0">%1$d</xliff:g> of <xliff:g id="COUNT_1">%2$d</xliff:g> apps allowed"</string>
    <string name="menu_show_system" msgid="6773743421743728921">"Show system"</string>
    <string name="menu_hide_system" msgid="7595471742649432977">"Hide system"</string>
    <string name="permission_title" msgid="6495415273398916381">"<xliff:g id="PERMISSION">%1$s</xliff:g> permissions"</string>
    <string name="no_apps" msgid="1965493419005012569">"No apps"</string>
    <string name="location_settings" msgid="1774875730854491297">"Location Settings"</string>
    <string name="location_warning" msgid="8778701356292735971">"<xliff:g id="APP_NAME">%1$s</xliff:g> is a provider of location services for this device. Location access can be modified from location settings."</string>
    <string name="system_warning" msgid="7103819124542305179">"If you deny this permission, basic features of your device may no longer function as intended."</string>
    <string name="permission_summary_enforced_by_policy" msgid="3418617316188986205">"Enforced by policy"</string>
    <string name="loading" msgid="7811651799620593731">"Loading…"</string>
    <string name="all_permissions" msgid="5156669007784613042">"All permissions"</string>
    <string name="other_permissions" msgid="2016192512386091933">"Other app capabilities"</string>
    <string name="permission_request_title" msgid="1204446718549121199">"Permission request"</string>
    <string name="screen_overlay_title" msgid="3021729846864038529">"Screen overlay detected"</string>
    <string name="screen_overlay_message" msgid="2141944461571677331">"To change this permission setting, you first have to turn off the screen overlay from Settings &gt; Apps"</string>
    <string name="screen_overlay_button" msgid="4344544843349937743">"Open settings"</string>
    <string name="wear_not_allowed_dlg_title" msgid="8104666773577525713">"Android Wear"</string>
    <string name="wear_not_allowed_dlg_text" msgid="1322352525843583064">"Install/Uninstall actions not supported on Wear."</string>
    <string name="permission_review_warning_title_template_update" msgid="2569412700408535872">"<xliff:g id="APP_NAME_0">%1$s</xliff:g> has been updated. Allow <xliff:g id="APP_NAME_1">%1$s</xliff:g> to access the following?"</string>
    <string name="permission_review_title_template_install" msgid="6535540493936469336">"Choose what to allow <xliff:g id="APP_NAME">%1$s</xliff:g> to access"</string>
    <string name="permission_review_title_template_update" msgid="2548815248828051885">"<xliff:g id="APP_NAME">%1$s</xliff:g> has been updated. Choose what to allow this app to access."</string>
    <string name="review_button_cancel" msgid="957906817733578877">"Cancel"</string>
    <string name="review_button_continue" msgid="4809162078179371370">"Continue"</string>
    <string name="new_permissions_category" msgid="3213523410139204183">"New permissions"</string>
    <string name="current_permissions_category" msgid="998210994450606094">"Current permissions"</string>
    <string name="message_staging" msgid="6151794817691100003">"Staging app…"</string>
    <string name="app_name_unknown" msgid="8931522764510159105">"Unknown"</string>
</resources>
