<!--
  Copyright (C) 2011 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>
    <string name="app_name">Device Admin Lesson</string>
    <string name="app_policy_admin_name">Policy Admin Receiver</string>

    <!-- Setup activity -->
    <string name="setup_policy_instruction">Set up device administration policy:</string>
    <string name="setup_password_quality">Select a password quality</string>
    <string name="setup_password_length">Set min. pw. length</string>
    <string name="setup_password_uppercase">Set min. pw. uppercase</string>
    <string name="setup_action_activate">Activate</string>
    <string name="setup_message_activate">Press button to activate the device administrator</string>
    <string name="setup_action_set_policy">Enforce Policy</string>
    <string name="setup_message_set_policy">Press button to enforce specified policy.</string>
    <string name="setup_action_enforce_policy">Update Password</string>
    <string name="setup_message_enforce_policy">Current password doesn\'t conform to the policy.\nPress button to update password.</string>
    <string name="setup_action_go_secured">Go</string>
    <string name="setup_message_go_secured">Current password conforms to policy.  Device is protected.\nPress button to access secured content.</string>

    <!-- View policy activity -->
    <string name="view_policy_instruction">Review device administration policy:</string>
    <string name="view_password_quality">Password quality:</string>
    <string name="view_password_length">Minimum password length:</string>
    <string name="view_password_uppercase">Minimum password upper case:</string>

    <string name="secure_message">Device is properly secured. Access is granted to secured content</string>
    <string name="device_admin_activation_message">Provide a message here explaining why an application needs to become a device administrator.</string>
</resources>
