1<?xml version='1.0' encoding='utf-8' standalone='yes' ?>
2
3<!-- Copyright (C) 2017 Google Inc.
4
5    Licensed under the Apache License, Version 2.0 (the "License");
6    you may not use this file except in compliance with the License.
7    You may obtain a copy of the License at
8
9      http://www.apache.org/licenses/LICENSE-2.0
10
11    Unless required by applicable law or agreed to in writing, software
12    distributed under the License is distributed on an "AS IS" BASIS,
13    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14    See the License for the specific language governing permissions and
15    limitations under the License.
16-->
17
18<!--
19    This file contains permissions to be granted by default. Default
20    permissions are granted to special platform components and to apps
21    that are approved to get default grants. The special components
22    are apps that are expected tto work out-of-the-box as they provide
23    core use cases such as default dialer, default email, etc. These
24    grants are managed by the platform. The apps that are additionally
25    approved for default grants are ones that provide carrier specific
26    functionality, ones legally required at some location, ones providing
27    alternative disclosure and opt-out UI, ones providing highlight features
28    of a dedicated device, etc. This file contains only the latter exceptions.
29    Fixed permissions cannot be controlled by the user and need a special
30    approval. Typically these are to ensure either legally mandated functions
31    or the app is considered a part of the OS.
32-->
33
34<exceptions>
35
36    <!-- This is an example of an exception:
37    <exception
38        package="foo.bar.permission"
39      <permission name="android.permission.READ_CONTACTS" fixed="true"/>
40      <permission name="android.permission.READ_CALENDAR" fixed="false"/>
41    </exception>
42    -->
43
44    <exception
45            package="com.google.android.apps.pixelmigrate">
46        <!-- External storage -->
47        <permission name="android.permission.READ_EXTERNAL_STORAGE" fixed="false"/>
48        <permission name="android.permission.WRITE_EXTERNAL_STORAGE" fixed="false"/>
49        <!-- Contacts -->
50        <permission name="android.permission.READ_CONTACTS" fixed="false"/>
51        <permission name="android.permission.WRITE_CONTACTS" fixed="false"/>
52        <!-- Call logs -->
53        <permission name="android.permission.READ_CALL_LOG" fixed="false"/>
54        <permission name="android.permission.WRITE_CALL_LOG" fixed="false"/>
55        <!-- SMS -->
56        <permission name="android.permission.RECEIVE_SMS" fixed="false"/>
57        <permission name="android.permission.READ_PHONE_NUMBERS" fixed="false"/>
58    </exception>
59
60    <exception
61            package="com.google.android.projection.gearhead"
62            sha256-cert-digest="FD:B0:0C:43:DB:DE:8B:51:CB:31:2A:A8:1D:3B:5F:A1:77:13:AD:B9:4B:28:F5:98:D7:7F:8E:B8:9D:AC:EE:DF">
63        <!-- Gearhead legacy -->
64        <permission name="android.permission.READ_PHONE_STATE" fixed="false"/>
65        <permission name="android.permission.CALL_PHONE" fixed="false"/>
66        <permission name="android.permission.READ_CALL_LOG" fixed="false"/>
67        <permission name="android.permission.READ_CONTACTS" fixed="false"/>
68        <permission name="android.permission.ACCESS_FINE_LOCATION" fixed="false"/>
69        <permission name="android.permission.RECEIVE_SMS" fixed="false"/>
70        <permission name="android.permission.SEND_SMS" fixed="false"/>
71        <permission name="android.permission.RECORD_AUDIO" fixed="false"/>
72        <permission name="android.permission.READ_CALENDAR" fixed="false"/>
73        <!-- For Top Gear -->
74        <permission name="android.permission.PROCESS_OUTGOING_CALLS" fixed="false"/>
75        <permission name="android.permission.READ_SMS" fixed="false"/>
76        <permission name="android.permission.RECEIVE_MMS" fixed="false"/>
77        <permission name="android.permission.WRITE_CALL_LOG" fixed="false"/>
78        <permission name="android.permission.ACCESS_COARSE_LOCATION" fixed="false"/>
79    </exception>
80
81    <exception
82            package="com.google.android.apps.restore"
83            sha256-cert-digest="56:BE:13:2B:78:06:56:FE:24:44:CD:34:32:6E:B5:D7:AA:C9:1D:20:96:AB:F0:FE:67:3A:99:27:06:22:EC:87">
84        <!-- External storage -->
85        <permission name="android.permission.READ_EXTERNAL_STORAGE" fixed="false"/>
86        <permission name="android.permission.WRITE_EXTERNAL_STORAGE" fixed="false"/>
87        <!-- Contacts -->
88        <permission name="android.permission.READ_CONTACTS" fixed="false"/>
89        <permission name="android.permission.WRITE_CONTACTS" fixed="false"/>
90    </exception>
91
92    <exception
93            package="com.verizon.mips.services">
94        <!-- Call -->
95        <permission name="android.permission.PROCESS_OUTGOING_CALLS" fixed="false"/>
96        <!-- Phone -->
97        <permission name="android.permission.READ_PHONE_STATE" fixed="false"/>
98        <!-- SMS -->
99        <permission name="android.permission.RECEIVE_SMS" fixed="false"/>
100    </exception>
101
102    <exception
103            package="com.qualcomm.ltebc_vzw">
104        <!-- Phone -->
105        <permission name="android.permission.READ_PHONE_STATE" fixed="false"/>
106    </exception>
107
108    <exception package="com.google.android.settings.intelligence">
109        <!-- Calendar -->
110        <permission name="android.permission.READ_CALENDAR" fixed="true"/>
111        <!-- Location -->
112        <permission name="android.permission.ACCESS_FINE_LOCATION" fixed="true"/>
113        <permission name="android.permission.ACCESS_BACKGROUND_LOCATION" fixed="true"/>
114    </exception>
115
116    <exception package="com.google.android.wfcactivation">
117        <!-- SMS -->
118        <permission name="android.permission.RECEIVE_WAP_PUSH" fixed="false"/>
119    </exception>
120
121    <exception package="com.google.android.cbrsnetworkmonitor">
122        <!-- Location access to create CBRS geofences-->
123        <permission name="android.permission.ACCESS_FINE_LOCATION" fixed="true"/>
124    </exception>
125
126    <exception package="com.google.android.apps.scone">
127        <!-- NLP Location access to determine proximity to country border -->
128        <permission name="android.permission.ACCESS_COARSE_LOCATION" fixed="false"/>
129        <!-- Used to call ActivityTransition API for Smart OOS & Smart PNO -->
130        <permission name="android.permission.ACTIVITY_RECOGNITION" fixed="false"/>
131    </exception>
132
133    <exception
134        package="com.google.vr.apps.ornament"
135        sha256-cert-digest="4A:9E:3F:3B:C8:D6:0C:E4:D3:CB:E5:A9:C6:6E:EC:11:EF:D0:1C:5F:E9:C7:8D:8C:92:3B:9D:42:48:23:00:13">
136        <!-- Camera -->
137        <permission name="android.permission.CAMERA" fixed="false"/>
138        <!-- Microphone -->
139        <permission name="android.permission.RECORD_AUDIO" fixed="false"/>
140        <!-- Storage -->
141        <permission name="android.permission.READ_EXTERNAL_STORAGE" fixed="false"/>
142        <permission name="android.permission.WRITE_EXTERNAL_STORAGE" fixed="false"/>
143    </exception>
144
145</exceptions>
146