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.READ_PRINT_SERVICES" />
38    <uses-permission android:name="android.permission.READ_PRINT_SERVICE_RECOMMENDATIONS" />
39
40    <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
41    <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
42
43    <application
44        android:allowClearUserData="true"
45        android:label="@string/app_label"
46        android:icon="@drawable/ic_app_icon"
47        android:supportsRtl="true">
48
49        <service
50            android:name=".model.PrintSpoolerService"
51            android:exported="true"
52            android:permission="android.permission.BIND_PRINT_SPOOLER_SERVICE">
53        </service>
54
55        <service
56            android:name=".renderer.PdfManipulationService"
57            android:isolatedProcess="true"
58            android:process=":renderer">
59        </service>
60
61        <activity
62            android:name=".ui.PrintActivity"
63            android:configChanges="mnc|mnc|touchscreen|navigation|screenLayout|screenSize|smallestScreenSize|orientation|locale|keyboard|keyboardHidden|fontScale|uiMode|layoutDirection|density"
64            android:permission="android.permission.BIND_PRINT_SPOOLER_SERVICE"
65            android:theme="@style/Theme.PrintActivity">
66            <intent-filter>
67                <action android:name="android.print.PRINT_DIALOG" />
68                <category android:name="android.intent.category.DEFAULT" />
69                <data android:scheme="printjob" android:pathPattern="*" />
70            </intent-filter>
71        </activity>
72
73        <activity
74            android:name=".ui.SelectPrinterActivity"
75            android:label="@string/all_printers_label"
76            android:theme="@style/Theme.SelectPrinterActivity"
77            android:parentActivityName=".ui.PrintActivity"
78            android:exported="false">
79        </activity>
80
81        <activity
82            android:name=".ui.AddPrinterActivity"
83            android:label="@string/print_add_printer"
84            android:theme="@style/Theme.AddPrinterActivity"
85            android:parentActivityName=".ui.SelectPrinterActivity"
86            android:exported="false">
87        </activity>
88
89        <receiver
90            android:name=".model.NotificationController$NotificationBroadcastReceiver"
91            android:exported="false" >
92        </receiver>
93
94    </application>
95
96</manifest>
97