AndroidManifest.xml revision 066ad9e16a548218b139424f758b92db7af34af2
1<?xml version="1.0" encoding="utf-8"?>
2<manifest xmlns:android="http://schemas.android.com/apk/res/android"
3  package="com.android.bluetooth"
4  android:sharedUserId="android.uid.bluetooth">
5
6    <original-package android:name="com.android.bluetooth" />
7
8    <!-- Allows access to the Bluetooth Share Manager -->
9    <permission android:name="android.permission.ACCESS_BLUETOOTH_SHARE"
10        android:label="@string/permlab_bluetoothShareManager"
11        android:description="@string/permdesc_bluetoothShareManager"
12        android:protectionLevel="signature" />
13
14    <!--  Allows temporarily whitelisting Bluetooth addresses for sharing -->
15    <permission android:name="com.android.permission.WHITELIST_BLUETOOTH_DEVICE"
16        android:label="@string/permlab_bluetoothWhitelist"
17        android:description="@string/permdesc_bluetoothWhitelist"
18        android:protectionLevel="signature" />
19
20    <!--  Allows receiving handover status broadcasts from Bluetooth -->,
21    <permission android:name="com.android.permission.HANDOVER_STATUS"
22        android:label="@string/permlab_handoverStatus"
23        android:description="@string/permdesc_handoverStatus"
24        android:protectionLevel="signature" />
25
26    <uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
27    <uses-permission android:name="android.permission.ACCESS_BLUETOOTH_SHARE" />
28    <uses-permission android:name="android.permission.INTERNET" />
29    <uses-permission android:name="android.permission.BLUETOOTH" />
30    <uses-permission android:name="android.permission.BLUETOOTH_ADMIN" />
31    <uses-permission android:name="android.permission.BLUETOOTH_PRIVILEGED" />
32    <uses-permission android:name="android.permission.WAKE_LOCK" />
33    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
34    <uses-permission android:name="android.permission.READ_CONTACTS" />
35    <uses-permission android:name="android.permission.READ_CALL_LOG" />
36    <uses-permission android:name="android.permission.READ_PHONE_STATE" />
37    <uses-permission android:name="android.permission.WRITE_SETTINGS" />
38    <uses-permission android:name="com.android.permission.HANDOVER_STATUS" />
39    <uses-permission android:name="android.permission.WRITE_SECURE_SETTINGS" />
40    <uses-permission android:name="android.permission.WRITE_APN_SETTINGS" />
41    <uses-permission android:name="android.permission.NET_ADMIN" />
42    <uses-permission android:name="android.permission.CALL_PRIVILEGED" />
43    <uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" />
44    <uses-permission android:name="android.permission.NET_TUNNELING" />
45    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
46    <uses-permission android:name="android.permission.CHANGE_NETWORK_STATE" />
47    <uses-permission android:name="android.permission.CONNECTIVITY_INTERNAL" />
48    <uses-permission android:name="android.permission.MODIFY_PHONE_STATE" />
49    <uses-permission android:name="android.permission.INTERACT_ACROSS_USERS_FULL" />
50    <uses-permission android:name="android.permission.BLUETOOTH_STACK" />
51    <uses-permission android:name="android.permission.INTERACT_ACROSS_USERS"/>
52    <uses-permission android:name="android.permission.MANAGE_USERS"/>
53    <uses-permission android:name="com.google.android.gallery3d.permission.GALLERY_PROVIDER"/>
54    <uses-permission android:name="com.android.gallery3d.permission.GALLERY_PROVIDER"/>
55    <uses-permission android:name="android.permission.MMS_SEND_OUTBOX_MSG"/>
56    <uses-permission android:name="android.permission.RECEIVE_SMS" />
57    <uses-permission android:name="android.permission.SEND_SMS" />
58    <uses-permission android:name="android.permission.READ_SMS" />
59    <uses-permission android:name="android.permission.WRITE_SMS" />
60    <uses-permission android:name="android.permission.READ_CONTACTS" />
61    <uses-permission android:name="android.permission.READ_PHONE_STATE" />
62    <uses-permission android:name="android.permission.MEDIA_CONTENT_CONTROL" />
63
64    <!-- For PBAP Owner Vcard Info -->
65    <uses-permission android:name="android.permission.READ_PROFILE"/>
66    <application
67        android:name=".btservice.AdapterApp"
68        android:icon="@drawable/bt_share"
69        android:persistent="false"
70        android:label="@string/app_name">
71        <uses-library android:name="javax.obex" />
72        <provider android:name=".opp.BluetoothOppProvider"
73            android:authorities="com.android.bluetooth.opp"
74            android:exported="true"
75            android:process="@string/process">
76            <path-permission
77                    android:pathPrefix="/btopp"
78                    android:permission="android.permission.ACCESS_BLUETOOTH_SHARE" />
79        </provider>
80        <service
81            android:process="@string/process"
82            android:name = ".btservice.AdapterService">
83            <intent-filter>
84                <action android:name="android.bluetooth.IBluetooth" />
85            </intent-filter>
86        </service>
87        <service
88            android:process="@string/process"
89            android:name=".opp.BluetoothOppService"
90            android:permission="android.permission.ACCESS_BLUETOOTH_SHARE"
91            android:enabled="@bool/profile_supported_opp"/>
92        <receiver
93            android:process="@string/process"
94            android:exported="true"
95            android:name=".opp.BluetoothOppReceiver"
96            android:enabled="@bool/profile_supported_opp">
97            <intent-filter>
98                <action android:name="android.bluetooth.adapter.action.STATE_CHANGED" />
99                <!--action android:name="android.intent.action.BOOT_COMPLETED" /-->
100                <action android:name="android.btopp.intent.action.OPEN_RECEIVED_FILES" />
101            </intent-filter>
102        </receiver>
103         <receiver
104            android:process="@string/process"
105            android:name=".opp.BluetoothOppHandoverReceiver"
106            android:permission="com.android.permission.WHITELIST_BLUETOOTH_DEVICE">
107            <intent-filter>
108                <action android:name="android.btopp.intent.action.WHITELIST_DEVICE" />
109                <action android:name="android.btopp.intent.action.STOP_HANDOVER_TRANSFER" />
110            </intent-filter>
111            <intent-filter>
112                <action android:name="android.btopp.intent.action.HANDOVER_SEND" />
113                <category android:name="android.intent.category.DEFAULT" />
114                <data android:mimeType="*/*" />
115            </intent-filter>
116            <intent-filter>
117                <action android:name="android.btopp.intent.action.HANDOVER_SEND_MULTIPLE" />
118                <category android:name="android.intent.category.DEFAULT" />
119                <data android:mimeType="*/*" />
120            </intent-filter>
121        </receiver>
122        <activity android:name=".opp.BluetoothOppLauncherActivity"
123            android:process="@string/process"
124            android:theme="@android:style/Theme.Holo.Dialog"
125            android:label="@string/bt_share_picker_label"
126            android:enabled="@bool/profile_supported_opp">
127            <intent-filter>
128                <action android:name="android.intent.action.SEND" />
129                <category android:name="android.intent.category.DEFAULT" />
130                <data android:mimeType="image/*" />
131                <data android:mimeType="video/*" />
132                <data android:mimeType="audio/*" />
133                <data android:mimeType="text/x-vcard" />
134                <data android:mimeType="text/plain" />
135                <data android:mimeType="text/html" />
136                <data android:mimeType="text/xml" />
137                <data android:mimeType="application/zip" />
138                <data android:mimeType="application/vnd.ms-excel" />
139                <data android:mimeType="application/msword" />
140                <data android:mimeType="application/vnd.ms-powerpoint" />
141                <data android:mimeType="application/pdf" />
142                <data android:mimeType="application/vnd.openxmlformats-officedocument.spreadsheetml.sheet" />
143                <data android:mimeType="application/vnd.openxmlformats-officedocument.wordprocessingml.document" />
144                <data android:mimeType="application/vnd.openxmlformats-officedocument.presentationml.presentation" />
145            </intent-filter>
146            <intent-filter>
147                <action android:name="android.intent.action.SEND_MULTIPLE" />
148                <category android:name="android.intent.category.DEFAULT" />
149                <data android:mimeType="image/*" />
150                <data android:mimeType="video/*" />
151                <data android:mimeType="x-mixmedia/*" />
152                <data android:mimeType="text/x-vcard" />
153            </intent-filter>
154            <intent-filter>
155                <action android:name="android.btopp.intent.action.OPEN" />
156                <category android:name="android.intent.category.DEFAULT" />
157                <data android:mimeType="vnd.android.cursor.item/vnd.android.btopp" />
158            </intent-filter>
159        </activity>
160        <activity android:name=".opp.BluetoothOppBtEnableActivity"
161                  android:process="@string/process"
162                  android:excludeFromRecents="true"
163                  android:theme="@*android:style/Theme.Holo.Dialog.Alert"
164                  android:enabled="@bool/profile_supported_opp">
165        </activity>
166        <activity android:name=".opp.BluetoothOppBtErrorActivity"
167                  android:process="@string/process"
168                  android:excludeFromRecents="true"
169                  android:theme="@*android:style/Theme.Holo.Dialog.Alert">
170        </activity>
171        <activity android:name=".opp.BluetoothOppBtEnablingActivity"
172                  android:process="@string/process"
173                  android:excludeFromRecents="true"
174                  android:theme="@*android:style/Theme.Holo.Dialog.Alert"
175                  android:enabled="@bool/profile_supported_opp">
176        </activity>
177        <activity android:name=".opp.BluetoothOppIncomingFileConfirmActivity"
178                  android:process="@string/process"
179                  android:excludeFromRecents="true"
180                  android:theme="@*android:style/Theme.Holo.Dialog.Alert"
181                  android:enabled="@bool/profile_supported_opp">
182        </activity>
183        <activity android:name=".opp.BluetoothOppTransferActivity"
184                  android:process="@string/process"
185                  android:excludeFromRecents="true"
186                  android:theme="@*android:style/Theme.Holo.Dialog.Alert"
187                  android:enabled="@bool/profile_supported_opp">
188        </activity>
189        <activity android:name=".opp.BluetoothOppLiveFolder"
190            android:process="@string/process"
191            android:icon="@drawable/ic_launcher_folder_bluetooth"
192            android:label="@string/btopp_live_folder"
193            android:enabled="@bool/profile_supported_opp">
194            <intent-filter>
195                <action android:name="android.intent.action.CREATE_LIVE_FOLDER" />
196                <category android:name="android.intent.category.DEFAULT" />
197            </intent-filter>
198        </activity>
199        <activity android:name=".opp.BluetoothOppTransferHistory"
200                  android:process="@string/process"
201                  android:label=""
202                  android:excludeFromRecents="true"
203                  android:configChanges="orientation|keyboardHidden"
204                  android:enabled="@bool/profile_supported_opp">
205        </activity>
206        <activity android:name=".pbap.BluetoothPbapActivity"
207            android:process="@string/process"
208            android:excludeFromRecents="true"
209            android:theme="@*android:style/Theme.Holo.Dialog.Alert"
210            android:enabled="@bool/profile_supported_pbap">
211            <intent-filter>
212                <category android:name="android.intent.category.DEFAULT" />
213            </intent-filter>
214        </activity>
215        <service
216            android:process="@string/process"
217            android:name=".pbap.BluetoothPbapService"
218            android:enabled="@bool/profile_supported_pbap" >
219            <intent-filter>
220                <action android:name="android.bluetooth.IBluetoothPbap" />
221            </intent-filter>
222        </service>
223        <receiver
224            android:process="@string/process"
225            android:exported="true"
226            android:name=".pbap.BluetoothPbapReceiver"
227            android:enabled="@bool/profile_supported_pbap">
228            <intent-filter>
229                <action android:name="android.bluetooth.adapter.action.STATE_CHANGED"/>
230                <action android:name="android.bluetooth.device.action.CONNECTION_ACCESS_REPLY" />
231                <category android:name="android.intent.category.DEFAULT" />
232            </intent-filter>
233        </receiver>
234        <service
235            android:process="@string/process"
236            android:name=".map.BluetoothMapService"
237            android:enabled="@bool/profile_supported_map" >
238            <intent-filter>
239                <action android:name="android.bluetooth.IBluetoothMap" />
240            </intent-filter>
241        </service>
242        <service
243            android:process="@string/process"
244            android:name = ".gatt.GattService"
245            android:enabled="@bool/profile_supported_gatt">
246            <intent-filter>
247                <action android:name="android.bluetooth.IBluetoothGatt" />
248            </intent-filter>
249        </service>
250        <service
251            android:process="@string/process"
252            android:name = ".hfp.HeadsetService"
253            android:enabled="@bool/profile_supported_hs_hfp">
254            <intent-filter>
255                <action android:name="android.bluetooth.IBluetoothHeadset" />
256            </intent-filter>
257        </service>
258        <service
259            android:process="@string/process"
260            android:name = ".a2dp.A2dpService"
261            android:enabled="@bool/profile_supported_a2dp">
262            <intent-filter>
263                <action android:name="android.bluetooth.IBluetoothA2dp" />
264            </intent-filter>
265        </service>
266        <service
267            android:process="@string/process"
268            android:name = ".a2dp.A2dpSinkService"
269            android:enabled="@bool/profile_supported_a2dp_sink">
270            <intent-filter>
271                <action android:name="android.bluetooth.IBluetoothA2dpSink" />
272            </intent-filter>
273        </service>
274        <service
275            android:process="@string/process"
276            android:name = ".avrcp.AvrcpControllerService"
277            android:enabled="@bool/profile_supported_avrcp_controller">
278            <intent-filter>
279                <action android:name="android.bluetooth.IBluetoothAvrcpController" />
280            </intent-filter>
281        </service>
282        <service
283            android:process="@string/process"
284            android:name = ".hid.HidService"
285            android:enabled="@bool/profile_supported_hid">
286            <intent-filter>
287                <action android:name="android.bluetooth.IBluetoothInputDevice" />
288            </intent-filter>
289        </service>
290        <service
291            android:process="@string/process"
292            android:name = ".hdp.HealthService"
293            android:enabled="@bool/profile_supported_hdp">
294            <intent-filter>
295                <action android:name="android.bluetooth.IBluetoothHealth" />
296            </intent-filter>
297        </service>
298        <service
299            android:process="@string/process"
300            android:name = ".pan.PanService"
301            android:enabled="@bool/profile_supported_pan">
302            <intent-filter>
303                <action android:name="android.bluetooth.IBluetoothPan" />
304            </intent-filter>
305        </service>
306    <service
307            android:process="@string/process"
308            android:name = ".hfpclient.HeadsetClientService"
309            android:enabled="@bool/profile_supported_hfpclient">
310            <intent-filter>
311                <action android:name="android.bluetooth.IBluetoothHeadsetClient" />
312            </intent-filter>
313        </service>
314    </application>
315</manifest>
316