1<?xml version="1.0" encoding="utf-8"?>
2<!--
3/*
4 * Copyright (c) 2013 Google Inc.
5 *
6 * Licensed under the Apache License, Version 2.0 (the "License");
7 * you may not use this file except in compliance with the License.
8 * You may obtain a copy of the License at
9 *
10 *     http://www.apache.org/licenses/LICENSE-2.0
11 *
12 * Unless required by applicable law or agreed to in writing, software
13 * distributed under the License is distributed on an "AS IS" BASIS,
14 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15 * See the License for the specific language governing permissions and
16 * limitations under the License.
17 */
18-->
19<manifest xmlns:android="http://schemas.android.com/apk/res/android"
20    package="com.android.printspooler">
21
22    <!-- Allows an application to call APIs that give it access to all print jobs
23         on the device. Usually an app can access only the print jobs it created. -->
24    <permission
25        android:name="com.android.printspooler.permission.ACCESS_ALL_PRINT_JOBS"
26        android:protectionLevel="signature" />
27
28    <!-- May be required by the settings and add printer activities of a
29         print service if the developer wants only trusted system code to
30         be able to launch these activities. -->
31    <permission android:name="android.permission.START_PRINT_SERVICE_CONFIG_ACTIVITY"
32        android:protectionLevel="signature" />
33
34    <uses-permission android:name="com.android.printspooler.permission.ACCESS_ALL_PRINT_JOBS"/>
35    <uses-permission android:name="android.permission.WAKE_LOCK"/>
36    <uses-permission android:name="android.permission.START_PRINT_SERVICE_CONFIG_ACTIVITY"/>
37    <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>
38    <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
39    <uses-permission android:name="android.permission.READ_PRINT_SERVICES" />
40    <uses-permission android:name="android.permission.READ_PRINT_SERVICE_RECOMMENDATIONS" />
41
42    <application
43        android:allowClearUserData="true"
44        android:label="@string/app_label"
45        android:allowBackup= "false"
46        android:supportsRtl="true">
47
48        <service
49            android:name=".model.PrintSpoolerService"
50            android:exported="true"
51            android:permission="android.permission.BIND_PRINT_SPOOLER_SERVICE">
52        </service>
53
54        <service
55            android:name=".renderer.PdfManipulationService"
56            android:isolatedProcess="true"
57            android:process=":renderer">
58        </service>
59
60        <activity
61            android:name=".ui.PrintActivity"
62            android:configChanges="mnc|mnc|touchscreen|navigation|screenLayout|screenSize|smallestScreenSize|orientation|locale|keyboard|keyboardHidden|fontScale|uiMode|layoutDirection|density"
63            android:permission="android.permission.BIND_PRINT_SPOOLER_SERVICE"
64            android:theme="@style/Theme.PrintActivity">
65            <intent-filter>
66                <action android:name="android.print.PRINT_DIALOG" />
67                <category android:name="android.intent.category.DEFAULT" />
68                <data android:scheme="printjob" android:pathPattern="*" />
69            </intent-filter>
70        </activity>
71
72        <activity
73            android:name=".ui.SelectPrinterActivity"
74            android:label="@string/all_printers_label"
75            android:theme="@style/Theme.SelectPrinterActivity"
76            android:parentActivityName=".ui.PrintActivity"
77            android:exported="false">
78        </activity>
79
80        <activity
81            android:name=".ui.AddPrinterActivity"
82            android:label="@string/print_add_printer"
83            android:theme="@style/Theme.AddPrinterActivity"
84            android:parentActivityName=".ui.SelectPrinterActivity"
85            android:exported="false">
86        </activity>
87
88        <receiver
89            android:name=".model.NotificationController$NotificationBroadcastReceiver"
90            android:exported="false" >
91        </receiver>
92
93    </application>
94
95</manifest>
96