<?xml version="1.0" encoding="UTF-8"?>
<!--  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 xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
    <string name="app_name" msgid="170210454004696382">"金鑰鏈"</string>
    <string name="title_no_certs" msgid="8350009443064722873">"找不到任何憑證"</string>
    <string name="title_select_cert" msgid="3588447616418041699">"選擇憑證"</string>
    <string name="requesting_application" msgid="1589142627467598421">"應用程式「%s」已提出憑證要求。選擇憑證即可讓應用程式今後在伺服器上使用這個身分。"</string>
    <string name="requesting_server" msgid="5832565605998634370">"應用程式已將提出要求的伺服器視為「%s」。除非您信任應用程式，否則請勿允許應用程式存取憑證。"</string>
    <string name="install_new_cert_message" msgid="4451971501142085495">"您可以從外部儲存裝置中含有 %1$s 或 %2$s 擴充功能的 PKCS#12 檔案安裝憑證。"</string>
    <string name="install_new_cert_button_label" msgid="510732745267546907">"安裝"</string>
    <string name="allow_button" msgid="5340501035618157678">"允許"</string>
    <string name="deny_button" msgid="3766539809121892584">"拒絕"</string>
</resources>
