1. Updated the security mode of the print spooler. Now the spooler is not signed with the system key, it is not a privileged app so if it gets compromised (PDF rendering is a potential attack vector) it cannot access dangerous permissions. Also only the system can bind to the spooler. 2. Added APIs for asking a print service to start and stop tracking a given printer. This is need for the case when the user selects the printer and the print service should do a best effort to keep the system updated for the current state of the printer. 3. Added APIs for putting a print job in a blocked state. A print service would report the print job as blocked if for some reason the printer cannot proceed, e.g. 99 pages are printed but there is no paper for the last one. The user has to add more paper and the print service can resume the job. 4. Changed the read/write APIs to use ParcelFileDescriptor instead of FileDescriptor since the latter does not have a clean API for detaching the wrapped Linux file descriptor when one wants to push it to native. 5. Added API for getting the size of the printed document so the print service can avoid handling big filed over cellular network or ask the user if needed. 6. Now the print services that are preinstalled on the system image are automatically enabled. Change-Id: Ia06c311d3d21cabb9e1368f13928e11cd0030918
149 lines
6.7 KiB
XML
149 lines
6.7 KiB
XML
<?xml version="1.0" encoding="utf-8"?>
|
|
<!-- Copyright (C) 2013 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:xliff="urn:oasis:names:tc:xliff:document:1.2">
|
|
|
|
<!-- Title of the PrintSpooler application. [CHAR LIMIT=50] -->
|
|
<string name="app_label">Print Spooler</string>
|
|
|
|
<!-- Label of the print dialog's print button. [CHAR LIMIT=16] -->
|
|
<string name="print_button">Print</string>
|
|
|
|
<!-- Label of the print dialog's save button. [CHAR LIMIT=16] -->
|
|
<string name="save_button">Save</string>
|
|
|
|
<!-- Label of the destination widget. [CHAR LIMIT=20] -->
|
|
<string name="label_destination">DESTIINATION</string>
|
|
|
|
<!-- Label of the copies count widget. [CHAR LIMIT=20] -->
|
|
<string name="label_copies">COPIES</string>
|
|
|
|
<!-- Label of the paper size widget. [CHAR LIMIT=20] -->
|
|
<string name="label_paper_size">PAPER SIZE</string>
|
|
|
|
<!-- Label of the color mode widget. [CHAR LIMIT=20] -->
|
|
<string name="label_color">COLOR</string>
|
|
|
|
<!-- Label of the orientation widget. [CHAR LIMIT=20] -->
|
|
<string name="label_orientation">ORIENTATION</string>
|
|
|
|
<!-- Label of the page selection widget. [CHAR LIMIT=20] -->
|
|
<string name="label_pages">PAGES (<xliff:g id="page_count" example="5">%1$s</xliff:g>)</string>
|
|
|
|
<!-- Page range exmple used as a hint of how to specify such. [CHAR LIMIT=15] -->
|
|
<string name="pages_range_example">e.g. 1–5, 8, 11–13</string>
|
|
|
|
<!-- Title for the pring preview button .[CHAR LIMIT=30] -->
|
|
<string name="print_preview">Print preview</string>
|
|
|
|
<!-- Title for the pring preview button if there is no PDF viewer isntalled. [CHAR LIMIT=50] -->
|
|
<string name="install_for_print_preview">Install PDF viewer for preview</string>
|
|
|
|
<!-- Title of the message that the printing application crashed. [CHAR LIMIT=50] -->
|
|
<string name="printing_app_crashed">Printing app crashed</string>
|
|
|
|
<!-- Title if the number of pages in a printed document is unknown. [CHAR LIMIT=20] -->
|
|
<string name="page_count_unknown">unknown</string>
|
|
|
|
<!-- Title for the temporary dialog show while an app is generating a print job. [CHAR LIMIT=30] -->
|
|
<string name="generating_print_job">Generating print job</string>
|
|
|
|
<!-- Title for the save as PDF option in the printer list. [CHAR LIMIT=30] -->
|
|
<string name="save_as_pdf">Save as PDF</string>
|
|
|
|
<!-- Title for the open all printers UI option in the printer list. [CHAR LIMIT=30] -->
|
|
<string name="all_printers">All printers…</string>
|
|
|
|
<!-- Select printer activity -->
|
|
|
|
<!-- Title for the share action bar menu item. [CHAR LIMIT=20] -->
|
|
<string name="search">Search</string>
|
|
|
|
<!-- Title for the select printer activity. [CHAR LIMIT=30] -->
|
|
<string name="all_printers_label">All printers</string>
|
|
|
|
<!-- Add printer dialog -->
|
|
|
|
<!-- Title for the alert dialog for selecting a print service. [CHAR LIMIT=50] -->
|
|
<string name="choose_print_service">Choose print service</string>
|
|
|
|
<!-- Title for the button to search the play store for print services. [CHAR LIMIT=50] -->
|
|
<string name="search_play_store">Search in play store</string>
|
|
|
|
<!-- Notifications -->
|
|
|
|
<!-- Template for the notificaiton label for a printing print job. [CHAR LIMIT=25] -->
|
|
<string name="printing_notification_title_template">Printing <xliff:g id="print_job_name" example="foo.jpg">%1$s</xliff:g></string>
|
|
|
|
<!-- Template for the notificaiton label for a cancelling print job. [CHAR LIMIT=25] -->
|
|
<string name="cancelling_notification_title_template">Cancelling <xliff:g id="print_job_name" example="foo.jpg">%1$s</xliff:g></string>
|
|
|
|
<!-- Template for the notificaiton label for a failed print job. [CHAR LIMIT=25] -->
|
|
<string name="failed_notification_title_template">Printer error <xliff:g id="print_job_name" example="foo.jpg">%1$s</xliff:g></string>
|
|
|
|
<!-- Template for the notificaiton label for a blocked print job. [CHAR LIMIT=25] -->
|
|
<string name="blocked_notification_title_template">Printer blocked <xliff:g id="print_job_name" example="foo.jpg">%1$s</xliff:g></string>
|
|
|
|
<!-- Label for the notification button for cancelling a print job. [CHAR LIMIT=25] -->
|
|
<string name="cancel">Cancel</string>
|
|
|
|
<!-- Label for the notification button for restrating a filed print job. [CHAR LIMIT=25] -->
|
|
<string name="restart">Restart</string>
|
|
|
|
<!-- Message that there is no connection to a printer. [CHAR LIMIT=40] -->
|
|
<string name="no_connection_to_printer">No connection to printer</string>
|
|
|
|
<!-- Label for an unknown reason for failed or blocked print job. [CHAR LIMIT=25] -->
|
|
<string name="reason_unknown">unknown</string>
|
|
|
|
<!-- Arrays -->
|
|
|
|
<!-- Color mode labels. -->
|
|
<string-array name="color_mode_labels">
|
|
<!-- Color modelabel: Monochrome color scheme, e.g. one color is used. [CHAR LIMIT=20] -->
|
|
<item>Black & White</item>
|
|
<!-- Color mode label: Color color scheme, e.g. many colors are used. [CHAR LIMIT=20] -->
|
|
<item>Color</item>
|
|
</string-array>
|
|
|
|
<!-- Orientation labels. -->
|
|
<string-array name="orientation_labels">
|
|
<!-- Orientation label: Portrait page orientation. [CHAR LIMIT=30] -->
|
|
<item>Portrait</item>
|
|
<!-- Orientation label: Landscape page orientation [CHAR LIMIT=30] -->
|
|
<item>Landscape</item>
|
|
</string-array>
|
|
|
|
<!-- Page options labels. -->
|
|
<string-array name="page_options_labels">
|
|
<!-- Page range option label: Print all pages [CHAR LIMIT=30] -->
|
|
<item>All</item>
|
|
<!-- Page range option label: Print a page range [CHAR LIMIT=30] -->
|
|
<item>Range</item>
|
|
</string-array>
|
|
|
|
<!-- Permissions -->
|
|
|
|
<!-- Title of an application permission, listed so the user can choose whether they want
|
|
to allow the application to do this. -->
|
|
<string name="permlab_accessAllPrintJobs">access all print jobs</string>
|
|
<!-- Description of an application permission, listed so the user can choose whether
|
|
they want to allow the application to do this. -->
|
|
<string name="permdesc_accessAllPrintJobs">Allows the holder to access print jobs
|
|
created by another app. Should never be needed for normal apps.</string>
|
|
|
|
</resources>
|