blob: ec79218cf65ab4dcc349ba66026871566889a7c5 [file] [log] [blame]
Svet Ganov4bad6412016-01-29 19:05:31 -08001<?xml version="1.0" encoding="utf-8"?>
2<!-- Copyright (C) 2016 The Android Open Source Project
3
4 Licensed under the Apache License, Version 2.0 (the "License");
5 you may not use this file except in compliance with the License.
6 You may obtain a copy of the License at
7
8 http://www.apache.org/licenses/LICENSE-2.0
9
10 Unless required by applicable law or agreed to in writing, software
11 distributed under the License is distributed on an "AS IS" BASIS,
12 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 See the License for the specific language governing permissions and
14 limitations under the License.
15-->
16
17<manifest xmlns:android="http://schemas.android.com/apk/res/android"
Chris Wren29b8c0b2016-03-01 17:17:47 -050018 xmlns:androidprv="http://schemas.android.com/apk/prv/res/android"
Chang Li7d2e3512021-02-19 19:56:45 +000019 xmlns:tools="http://schemas.android.com/tools"
Svet Ganov4bad6412016-01-29 19:05:31 -080020 package="android.ext.services"
lpetera3a47532020-12-07 23:59:08 +080021 android:versionCode="309999900"
Akshayaaca2d22019-06-07 13:31:46 -070022 android:versionName="2019-09"
Svet Ganov4bad6412016-01-29 19:05:31 -080023 coreApp="true">
24
Kang Li732669d2017-04-13 09:17:07 -070025 <uses-permission android:name="android.permission.PROVIDE_RESOLVER_RANKER_SERVICE" />
Stanislav Zholnin36494822019-01-28 15:53:23 +000026 <uses-permission android:name="android.permission.READ_DEVICE_CONFIG" />
Kang Li732669d2017-04-13 09:17:07 -070027
Nadia Benbernoue5d12142019-01-28 11:26:46 -050028 <uses-permission android:name="android.permission.MONITOR_DEFAULT_SMS_PACKAGE" />
Julia Reynolds72587ce2019-03-03 16:10:52 -050029 <uses-permission android:name="android.permission.REQUEST_NOTIFICATION_ASSISTANT_SERVICE" />
Zimuzo2bb41f72019-03-26 13:04:13 +000030 <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
Julia Reynolds41f95292019-08-14 16:52:08 +000031 <uses-permission android:name="android.permission.INTERACT_ACROSS_USERS" />
Tony Mak45604e52019-09-03 17:17:44 +010032 <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
Feng Cao0ad16492020-02-17 18:28:40 -080033 <uses-permission android:name="android.permission.QUERY_ALL_PACKAGES" />
Chang Li7d2e3512021-02-19 19:56:45 +000034 <!-- INTERNET permission is restricted to TextClassifier downloader process only -->
35 <uses-permission android:name="android.permission.INTERNET" />
36 <!-- Remove unused permissions merged from WorkManager library -->
37 <uses-permission android:name="android.permission.WAKE_LOCK" tools:node="remove" />
38 <uses-permission android:name="android.permission.FOREGROUND_SERVICE" tools:node="remove" />
Nadia Benbernoue5d12142019-01-28 11:26:46 -050039
lpeter95966a82021-01-26 11:15:14 +080040 <uses-sdk
Joanne Chung0fb099c2022-05-11 16:00:47 +080041 android:targetSdkVersion="31"
Jeff Hamiltonf03dded2019-03-06 22:47:42 -050042 />
43
Chang Li7d2e3512021-02-19 19:56:45 +000044 <application
45 android:name=".ExtServicesApplication"
46 android:label="@string/app_name"
Patrick Baumann7fc0e442020-02-13 10:18:33 -080047 android:forceQueryable="true"
Feng Cao61554aa2020-06-19 15:05:32 -070048 android:supportsRtl="true">
Svet Ganov4bad6412016-01-29 19:05:31 -080049
Chang Li7d2e3512021-02-19 19:56:45 +000050 <processes>
51 <!-- Deny INTERNET permission for all processes by default -->
52 <deny-permission android:name="android.permission.INTERNET" />
53 <process />
54 <process android:process=":modelDownloaderServiceProcess">
55 <allow-permission android:name="android.permission.INTERNET" />
56 </process>
57 </processes>
58
Daniel Nishi059a8bf2017-01-23 14:33:42 -080059 <service android:name=".storage.CacheQuotaServiceImpl"
Ashwini Oruganti5763e122020-05-19 18:23:58 -070060 android:exported="true"
Chang Li4549e2d2022-02-17 00:47:17 +000061 android:directBootAware="true"
Daniel Nishi059a8bf2017-01-23 14:33:42 -080062 android:permission="android.permission.BIND_CACHE_QUOTA_SERVICE">
63 <intent-filter>
64 <action android:name="android.app.usage.CacheQuotaService" />
65 </intent-filter>
66 </service>
67
Kang Li732669d2017-04-13 09:17:07 -070068 <service android:name=".resolver.LRResolverRankerService"
Ashwini Oruganti5763e122020-05-19 18:23:58 -070069 android:exported="true"
Chang Li4549e2d2022-02-17 00:47:17 +000070 android:directBootAware="true"
Kang Lib95151b2018-02-13 16:33:38 -080071 android:permission="android.permission.BIND_RESOLVER_RANKER_SERVICE">
72 <intent-filter android:priority="-1">
Kang Li732669d2017-04-13 09:17:07 -070073 <action android:name="android.service.resolver.ResolverRankerService" />
74 </intent-filter>
75 </service>
76
Julia Reynolds19afcc12017-10-04 16:09:29 -040077 <service android:name=".notification.Assistant"
78 android:label="@string/notification_assistant"
Chang Li4549e2d2022-02-17 00:47:17 +000079 android:directBootAware="true"
Julia Reynolds19afcc12017-10-04 16:09:29 -040080 android:permission="android.permission.BIND_NOTIFICATION_ASSISTANT_SERVICE"
81 android:exported="true">
82 <intent-filter>
83 <action android:name="android.service.notification.NotificationAssistantService" />
84 </intent-filter>
85 </service>
86
Felipe Leme1daafa82018-01-05 17:04:10 -080087 <service android:name=".autofill.AutofillFieldClassificationServiceImpl"
Ashwini Oruganti5763e122020-05-19 18:23:58 -070088 android:exported="true"
Chang Li4549e2d2022-02-17 00:47:17 +000089 android:directBootAware="true"
Felipe Leme1daafa82018-01-05 17:04:10 -080090 android:permission="android.permission.BIND_AUTOFILL_FIELD_CLASSIFICATION_SERVICE">
91 <intent-filter>
92 <action android:name="android.service.autofill.AutofillFieldClassificationService" />
93 </intent-filter>
Ryan Mitchelle7975e92018-08-21 17:03:04 -070094 <meta-data
95 android:name="android.autofill.field_classification.default_algorithm"
96 android:resource="@string/autofill_field_classification_default_algorithm" />
97 <meta-data
98 android:name="android.autofill.field_classification.available_algorithms"
99 android:resource="@array/autofill_field_classification_available_algorithms" />
Felipe Leme1daafa82018-01-05 17:04:10 -0800100 </service>
101
Zimuzo2bb41f72019-03-26 13:04:13 +0000102 <service android:name=".watchdog.ExplicitHealthCheckServiceImpl"
Ashwini Oruganti5763e122020-05-19 18:23:58 -0700103 android:exported="true"
Chang Li4549e2d2022-02-17 00:47:17 +0000104 android:directBootAware="true"
Zimuzo2bb41f72019-03-26 13:04:13 +0000105 android:permission="android.permission.BIND_EXPLICIT_HEALTH_CHECK_SERVICE">
106 <intent-filter>
107 <action android:name="android.service.watchdog.ExplicitHealthCheckService" />
108 </intent-filter>
109 </service>
110
Tony Mak75c32702019-11-12 17:28:26 +0000111 <activity android:name="com.android.textclassifier.notification.CopyCodeActivity"
Tony Makab746c72019-03-04 15:08:45 +0000112 android:exported="false"
Chang Li4549e2d2022-02-17 00:47:17 +0000113 android:directBootAware="true"
Tony Makab746c72019-03-04 15:08:45 +0000114 android:theme="@android:style/Theme.NoDisplay"/>
115
Chang Li7d2e3512021-02-19 19:56:45 +0000116 <!-- DirectBootAware is disabled below as it shouldn't be used if the device is locked -->
Tony Mak45604e52019-09-03 17:17:44 +0100117 <service
118 android:name="com.android.textclassifier.DefaultTextClassifierService"
Chang Li7d2e3512021-02-19 19:56:45 +0000119 android:directBootAware="false"
Tony Mak45604e52019-09-03 17:17:44 +0100120 android:exported="true"
121 android:permission="android.permission.BIND_TEXTCLASSIFIER_SERVICE">
122 <intent-filter>
123 <action android:name="android.service.textclassifier.TextClassifierService"/>
124 </intent-filter>
125 </service>
126
Chang Liedb39a52021-06-03 23:19:03 +0000127 <service android:name="com.android.textclassifier.downloader.ModelDownloaderService"
Chang Li7d2e3512021-02-19 19:56:45 +0000128 android:exported="false"
Chang Li4549e2d2022-02-17 00:47:17 +0000129 android:directBootAware="false"
Chang Li7d2e3512021-02-19 19:56:45 +0000130 android:process=":modelDownloaderServiceProcess">
131 </service>
132
Adam Hee0d8a8b2020-01-23 13:42:05 -0800133 <service android:name=".autofill.InlineSuggestionRenderServiceImpl"
Ashwini Oruganti5763e122020-05-19 18:23:58 -0700134 android:exported="true"
Chang Li4549e2d2022-02-17 00:47:17 +0000135 android:directBootAware="true"
Adam Hee0d8a8b2020-01-23 13:42:05 -0800136 android:permission="android.permission.BIND_INLINE_SUGGESTION_RENDER_SERVICE">
137 <intent-filter>
138 <action android:name="android.service.autofill.InlineSuggestionRenderService" />
139 </intent-filter>
140 </service>
141
chaviw525881a2021-04-07 09:29:50 -0500142 <service android:name=".displayhash.DisplayHashingServiceImpl"
chaviw10ec86b2020-10-28 10:23:17 -0700143 android:exported="true"
Chang Li4549e2d2022-02-17 00:47:17 +0000144 android:directBootAware="true"
chaviw525881a2021-04-07 09:29:50 -0500145 android:permission="android.permission.BIND_DISPLAY_HASHING_SERVICE">
chaviw10ec86b2020-10-28 10:23:17 -0700146 <intent-filter>
chaviw525881a2021-04-07 09:29:50 -0500147 <action android:name="android.service.displayhash.DisplayHashingService" />
chaviw10ec86b2020-10-28 10:23:17 -0700148 </intent-filter>
chaviw10ec86b2020-10-28 10:23:17 -0700149 </service>
150
Alan Viverette291b1d22021-08-25 14:51:17 +0000151 <!-- Remove the default WorkManager and Startup initializers and use on-demand
152 initialization instead. This gives us more control on when initialization
153 happens, e.g. when the user is unlocked.
Chang Li7d2e3512021-02-19 19:56:45 +0000154 -->
155 <provider
156 android:name="androidx.work.impl.WorkManagerInitializer"
157 android:authorities="${applicationId}.workmanager-init"
158 tools:node="remove" />
Alan Viverette291b1d22021-08-25 14:51:17 +0000159 <provider
160 android:name="androidx.startup.InitializationProvider"
161 android:authorities="${applicationId}.androidx-startup"
162 tools:node="remove" />
Chang Li7d2e3512021-02-19 19:56:45 +0000163
Svet Ganov4bad6412016-01-29 19:05:31 -0800164 </application>
165
166</manifest>