1 /*
2  * Copyright (C) 2020 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 package android.appenumeration.cts;
18 
19 public class Constants {
20     public static final String PKG_BASE = "android.appenumeration.";
21     public static final String TEST_PKG = "android.appenumeration.cts";
22     public static final String MOCK_SPELL_CHECKER_PKG = "com.android.cts.mockspellchecker";
23     public static final String MOCK_IME_PKG = "android.inputmethodservice.cts.ime1";
24     /** A package that has two split apks. */
25     public static final String SPLIT_PKG = "com.android.cts.norestart";
26 
27     /** The shared library for getting dependent packages */
28     public static final String TEST_SHARED_LIB_NAME = "android.test.runner";
29     public static final String TEST_NONEXISTENT_PACKAGE_NAME_1 = "com.android.cts.nonexistent1";
30     public static final String TEST_NONEXISTENT_PACKAGE_NAME_2 = "com.android.cts.nonexistent2";
31 
32     /** A package that queries for {@link #TARGET_NO_API} package */
33     public static final String QUERIES_PACKAGE = PKG_BASE + "queries.pkg";
34     /** A package has a provider that queries for {@link #TARGET_NO_API} package */
35     public static final String QUERIES_PACKAGE_PROVIDER = PKG_BASE + "queries.pkg.hasprovider";
36     /** Queries for the unexported authority in {@link #TARGET_FILTERS} provider */
37     public static final String QUERIES_UNEXPORTED_PROVIDER_AUTH =
38             PKG_BASE + "queries.provider.authority.unexported";
39     /** Queries for the unexported action in {@link #TARGET_FILTERS} provider */
40     public static final String QUERIES_UNEXPORTED_PROVIDER_ACTION =
41             PKG_BASE + "queries.provider.action.unexported";
42     /** Queries for the unexported action in {@link #TARGET_FILTERS} service filter */
43     public static final String QUERIES_UNEXPORTED_SERVICE_ACTION =
44             PKG_BASE + "queries.service.action.unexported";
45     /** Queries for the unexported action in {@link #TARGET_FILTERS} activity filter */
46     public static final String QUERIES_UNEXPORTED_ACTIVITY_ACTION =
47             PKG_BASE + "queries.activity.action.unexported";
48     /** A package that queries for the authority in {@link #TARGET_FILTERS} provider */
49     public static final String QUERIES_PROVIDER_AUTH = PKG_BASE + "queries.provider.authority";
50     /** A package that queries for the authority in {@link #TARGET_FILTERS} provider */
51     public static final String QUERIES_PROVIDER_ACTION = PKG_BASE + "queries.provider.action";
52     /** A package that queries for the action in {@link #TARGET_FILTERS} service filter */
53     public static final String QUERIES_SERVICE_ACTION = PKG_BASE + "queries.service.action";
54     /** A package that queries for the action in {@link #TARGET_FILTERS} activity filter */
55     public static final String QUERIES_ACTIVITY_ACTION = PKG_BASE + "queries.activity.action";
56     /** A package that has no queries but gets the QUERY_ALL_PACKAGES permission */
57     public static final String QUERIES_NOTHING_PERM = PKG_BASE + "queries.nothing.haspermission";
58     /** A package that has no queries but has a provider that can be queried */
59     public static final String QUERIES_NOTHING_PROVIDER = PKG_BASE + "queries.nothing.hasprovider";
60     /** A package that has no queries tag or permissions but targets Q */
61     public static final String QUERIES_NOTHING_Q = PKG_BASE + "queries.nothing.q";
62     /** A package that has no queries tag or permission to query any specific packages */
63     public static final String QUERIES_NOTHING = PKG_BASE + "queries.nothing";
64     /** Another package that has no queries tag or permission to query any specific packages */
65     public static final String QUERIES_NOTHING_RECEIVES_URI =
66             PKG_BASE + "queries.nothing.receives.uri";
67     public static final String QUERIES_NOTHING_RECEIVES_PERM_URI =
68             PKG_BASE + "queries.nothing.receives.perm.uri";
69     public static final String QUERIES_NOTHING_RECEIVES_PERSISTABLE_URI =
70             PKG_BASE + "queries.nothing.receives.persistable.uri";
71     public static final String QUERIES_NOTHING_RECEIVES_NON_PERSISTABLE_URI =
72             PKG_BASE + "queries.nothing.receives.nonpersistable.uri";
73     /** Another package that has no queries tag or permission to query any specific packages */
74     public static final String QUERIES_NOTHING_SEES_INSTALLER =
75             PKG_BASE + "queries.nothing.sees.installer";
76     /** A package that queries nothing, but is part of a shared user */
77     public static final String QUERIES_NOTHING_SHARED_USER = PKG_BASE + "queries.nothing.shareduid";
78     /** A package that queries nothing, but uses a shared library */
79     public static final String QUERIES_NOTHING_USES_LIBRARY =
80             PKG_BASE + "queries.nothing.useslibrary";
81     /** A package that queries nothing, but uses a shared library */
82     public static final String QUERIES_NOTHING_USES_OPTIONAL_LIBRARY =
83             PKG_BASE + "queries.nothing.usesoptionallibrary";
84     /** A package that queries via wildcard action. */
85     public static final String QUERIES_WILDCARD_ACTION = PKG_BASE + "queries.wildcard.action";
86     /** A package that queries for all BROWSABLE intents. */
87     public static final String QUERIES_WILDCARD_BROWSABLE = PKG_BASE + "queries.wildcard.browsable";
88     /** A package that queries for all profile / contact targets. */
89     public static final String QUERIES_WILDCARD_CONTACTS = PKG_BASE + "queries.wildcard.contacts";
90     /** A package that queries for document viewer / editor targets. */
91     public static final String QUERIES_WILDCARD_EDITOR = PKG_BASE + "queries.wildcard.editor";
92     /** A package that queries for all jpeg share targets. */
93     public static final String QUERIES_WILDCARD_SHARE = PKG_BASE + "queries.wildcard.share";
94     /** A package that queries for all web intent browsable targets. */
95     public static final String QUERIES_WILDCARD_WEB = PKG_BASE + "queries.wildcard.web";
96     /** A package that queries for only browser intent targets. */
97     public static final String QUERIES_WILDCARD_BROWSER = PKG_BASE + "queries.wildcard.browser";
98 
99     /** A package that queries for {@link #TARGET_NO_API} package */
100     public static final String TARGET_SHARED_USER = PKG_BASE + "noapi.shareduid";
101     /** A package that exposes itself via various intent filters (activities, services, etc.) */
102     public static final String TARGET_FILTERS = PKG_BASE + "filters";
103     /** A package that declares itself force queryable, making it visible to all other packages.
104      *  This is installed as forceQueryable as non-system apps cannot declare themselves as such. */
105     public static final String TARGET_FORCEQUERYABLE = PKG_BASE + "forcequeryable";
106     /** A package that declares itself force queryable, but is installed normally making it not
107      *  visible to other packages */
108     public static final String TARGET_FORCEQUERYABLE_NORMAL =
109             PKG_BASE + "forcequeryable.normalinstall";
110     /** A package with no published API and so isn't queryable by anything but package name */
111     public static final String TARGET_NO_API = PKG_BASE + "noapi";
112     /** A package with no published API and just for installing/uninstalling during test */
113     public static final String TARGET_STUB = PKG_BASE + "stub";
114     public static final String TARGET_STUB_SHARED_USER = PKG_BASE + "stub.shareduid";
115     /** A package that offers an activity used for opening / editing file types */
116     public static final String TARGET_EDITOR = PKG_BASE + "editor.activity";
117     /** A package that offers an activity used viewing a contact / profile */
118     public static final String TARGET_CONTACTS = PKG_BASE + "contacts.activity";
119     /** A package that offers an content sharing activity */
120     public static final String TARGET_SHARE = PKG_BASE + "share.activity";
121     /** A package that offers an activity that handles browsable web intents for a specific host */
122     public static final String TARGET_WEB = PKG_BASE + "web.activity";
123     /** A package that offers an activity acts as a browser, but use a prefix wildcard for host */
124     public static final String TARGET_PREFIX_WILDCARD_WEB =
125             PKG_BASE + "prefix.wildcard.web.activity";
126     /** A package that offers an activity acts as a browser with host undefined */
127     public static final String TARGET_BROWSER = PKG_BASE + "browser.activity";
128     /** A package that offers an activity acts as a browser, but uses a wildcard for host */
129     public static final String TARGET_BROWSER_WILDCARD = PKG_BASE + "browser.wildcard.activity";
130     /** A package that offers a shared library */
131     public static final String TARGET_SHARED_LIBRARY_PACKAGE = "com.android.cts.ctsshim";
132     /** A package that exposes itself as a syncadapter. */
133     public static final String TARGET_SYNCADAPTER = PKG_BASE + "syncadapter";
134     /** A package that exposes itself as a syncadapter with a shared uid. */
135     public static final String TARGET_SYNCADAPTER_SHARED_USER = PKG_BASE + "syncadapter.shareduid";
136     /** A package that exposes itself as a appwidgetprovider. */
137     public static final String TARGET_APPWIDGETPROVIDER = PKG_BASE + "appwidgetprovider";
138     /** A package that exposes itself as a appwidgetprovider with a shared uid. */
139     public static final String TARGET_APPWIDGETPROVIDER_SHARED_USER =
140             PKG_BASE + "appwidgetprovider.shareduid";
141     /** A package that offers an activity which handles preferred activity test intent for the
142      *  tests of preferred activity. */
143     public static final String TARGET_PREFERRED_ACTIVITY = PKG_BASE + "preferred.activity";
144     /** An authority that offers a syncadapter. */
145     public static final String TARGET_SYNCADAPTER_AUTHORITY = TARGET_SYNCADAPTER + ".authority";
146 
147     public static final String AUTHORITY_SUFFIX = ".authority";
148     private static final String BASE_PATH = "/data/local/tmp/cts/appenumeration/";
149     public static final String TARGET_NO_API_APK = BASE_PATH + "CtsAppEnumerationNoApi.apk";
150     public static final String TARGET_STUB_APK = BASE_PATH + "CtsAppEnumerationStub.apk";
151     public static final String TARGET_STUB_SHARED_USER_APK =
152             BASE_PATH + "CtsAppEnumerationStubSharedUser.apk";
153     public static final String TARGET_FILTERS_APK = BASE_PATH + "CtsAppEnumerationFilters.apk";
154     public static final String QUERIES_NOTHING_APK =
155             BASE_PATH + "CtsAppEnumerationQueriesNothing.apk";
156     public static final String QUERIES_NOTHING_PROVIDER_APK =
157             BASE_PATH + "CtsAppEnumerationQueriesNothingHasProvider.apk";
158     public static final String QUERIES_NOTHING_RECEIVES_PERSISTABLE_URI_APK =
159             BASE_PATH + "CtsAppEnumerationQueriesNothingReceivesPersistableUri.apk";
160     public static final String QUERIES_NOTHING_RECEIVES_NON_PERSISTABLE_URI_APK =
161             BASE_PATH + "CtsAppEnumerationQueriesNothingReceivesNonPersistableUri.apk";
162     public static final String QUERIES_NOTHING_RECEIVES_PERM_URI_APK =
163             BASE_PATH + "CtsAppEnumerationQueriesNothingReceivesPermissionProtectedUri.apk";
164     public static final String QUERIES_NOTHING_RECEIVES_URI_APK =
165             BASE_PATH + "CtsAppEnumerationQueriesNothingReceivesUri.apk";
166     public static final String QUERIES_NOTHING_SEES_INSTALLER_APK =
167             BASE_PATH + "CtsAppEnumerationQueriesNothingSeesInstaller.apk";
168     public static final String CTS_MOCK_SPELL_CHECKER_APK = BASE_PATH + "CtsMockSpellChecker.apk";
169     public static final String CTS_MOCK_IME_APK = BASE_PATH + "CtsInputMethod1.apk";
170     public static final String SPLIT_BASE_APK = BASE_PATH + "CtsNoRestartBase.apk";
171     public static final String SPLIT_FEATURE_APK = BASE_PATH + "CtsNoRestartFeature.apk";
172 
173     public static final String[] ALL_QUERIES_TARGETING_R_PACKAGES = {
174             QUERIES_NOTHING,
175             QUERIES_NOTHING_PERM,
176             QUERIES_ACTIVITY_ACTION,
177             QUERIES_SERVICE_ACTION,
178             QUERIES_PROVIDER_AUTH,
179             QUERIES_UNEXPORTED_ACTIVITY_ACTION,
180             QUERIES_UNEXPORTED_SERVICE_ACTION,
181             QUERIES_UNEXPORTED_PROVIDER_AUTH,
182             QUERIES_PACKAGE,
183             QUERIES_NOTHING_SHARED_USER,
184             QUERIES_WILDCARD_ACTION,
185             QUERIES_WILDCARD_BROWSABLE,
186             QUERIES_WILDCARD_CONTACTS,
187             QUERIES_WILDCARD_EDITOR,
188             QUERIES_WILDCARD_SHARE,
189             QUERIES_WILDCARD_WEB,
190     };
191 
192     public static final String ACTIVITY_CLASS_TEST = PKG_BASE + "cts.TestActivity";
193     public static final String ACTIVITY_CLASS_DUMMY_ACTIVITY = PKG_BASE + "testapp.DummyActivity";
194     public static final String ACTIVITY_CLASS_NOT_EXPORTED =
195             PKG_BASE + "testapp.DummyActivityNotExported";
196     public static final String ACTIVITY_CLASS_PERMISSION_PROTECTED =
197             PKG_BASE + "testapp.ActivityPermissionProtected";
198 
199     public static final String SERVICE_CLASS_DUMMY_SERVICE = PKG_BASE + "testapp.DummyService";
200     public static final String SERVICE_CLASS_SYNC_ADAPTER =
201             PKG_BASE + "testapp.MockSyncAdapterService";
202 
203     public static final String SERVICE_CLASS_SELF_VISIBILITY_SERVICE =
204             PKG_BASE + "cts.TestPmComponentDiscoveryService";
205 
206     public static final String ACTION_MANIFEST_ACTIVITY = PKG_BASE + "action.ACTIVITY";
207     public static final String ACTION_MANIFEST_UNEXPORTED_ACTIVITY =
208             PKG_BASE + "action.ACTIVITY_UNEXPORTED";
209     public static final String ACTION_MANIFEST_SERVICE = PKG_BASE + "action.SERVICE";
210     public static final String ACTION_MANIFEST_PROVIDER = PKG_BASE + "action.PROVIDER";
211     public static final String ACTION_SEND_RESULT = PKG_BASE + "cts.action.SEND_RESULT";
212     public static final String ACTION_GET_PACKAGE_INFO = PKG_BASE + "cts.action.GET_PACKAGE_INFO";
213     public static final String ACTION_GET_PACKAGES_FOR_UID =
214             PKG_BASE + "cts.action.GET_PACKAGES_FOR_UID";
215     public static final String ACTION_GET_NAME_FOR_UID =
216             PKG_BASE + "cts.action.GET_NAME_FOR_UID";
217     public static final String ACTION_GET_NAMES_FOR_UIDS =
218             PKG_BASE + "cts.action.GET_NAMES_FOR_UIDS";
219     public static final String ACTION_CHECK_SIGNATURES = PKG_BASE + "cts.action.CHECK_SIGNATURES";
220     public static final String ACTION_HAS_SIGNING_CERTIFICATE =
221             PKG_BASE + "cts.action.HAS_SIGNING_CERTIFICATE";
222     public static final String ACTION_START_FOR_RESULT = PKG_BASE + "cts.action.START_FOR_RESULT";
223     public static final String ACTION_START_DIRECTLY = PKG_BASE + "cts.action.START_DIRECTLY";
224     public static final String ACTION_JUST_FINISH = PKG_BASE + "cts.action.JUST_FINISH";
225     public static final String ACTION_AWAIT_PACKAGE_REMOVED =
226             PKG_BASE + "cts.action.AWAIT_PACKAGE_REMOVED";
227     public static final String ACTION_AWAIT_PACKAGE_ADDED =
228             PKG_BASE + "cts.action.AWAIT_PACKAGE_ADDED";
229     public static final String ACTION_AWAIT_PACKAGE_FULLY_REMOVED =
230             PKG_BASE + "cts.action.AWAIT_PACKAGE_FULLY_REMOVED";
231     public static final String ACTION_AWAIT_PACKAGE_DATA_CLEARED =
232             PKG_BASE + "cts.action.AWAIT_PACKAGE_DATA_CLEARED";
233     public static final String ACTION_QUERY_ACTIVITIES =
234             PKG_BASE + "cts.action.QUERY_INTENT_ACTIVITIES";
235     public static final String ACTION_QUERY_SERVICES =
236             PKG_BASE + "cts.action.QUERY_INTENT_SERVICES";
237     public static final String ACTION_QUERY_PROVIDERS =
238             PKG_BASE + "cts.action.QUERY_INTENT_PROVIDERS";
239     public static final String ACTION_GET_INSTALLED_PACKAGES =
240             PKG_BASE + "cts.action.GET_INSTALLED_PACKAGES";
241     public static final String ACTION_START_SENDER_FOR_RESULT =
242             PKG_BASE + "cts.action.START_SENDER_FOR_RESULT";
243     public static final String ACTION_QUERY_RESOLVER =
244             PKG_BASE + "cts.action.QUERY_RESOLVER_FOR_VISIBILITY";
245     public static final String ACTION_BIND_SERVICE = PKG_BASE + "cts.action.BIND_SERVICE";
246     public static final String ACTION_GET_SYNCADAPTER_TYPES =
247             PKG_BASE + "cts.action.GET_SYNCADAPTER_TYPES";
248     public static final String ACTION_GET_SYNCADAPTER_PACKAGES_FOR_AUTHORITY =
249             PKG_BASE + "cts.action.GET_SYNCADAPTER_PACKAGES_FOR_AUTHORITY";
250     public static final String ACTION_GET_SYNCADAPTER_CONTROL_PANEL =
251             PKG_BASE + "cts.action.GET_SYNCADAPTER_CONTROL_PANEL";
252     public static final String ACTION_GET_INSTALLED_APPWIDGET_PROVIDERS =
253             PKG_BASE + "cts.action.GET_INSTALLED_APPWIDGET_PROVIDERS";
254     public static final String ACTION_REQUEST_SYNC_AND_AWAIT_STATUS =
255             PKG_BASE + "cts.action.REQUEST_SYNC_AND_AWAIT_STATUS";
256     public static final String ACTION_REQUEST_PERIODIC_SYNC =
257             PKG_BASE + "cts.action.REQUEST_PERIODIC_SYNC";
258     public static final String ACTION_SET_SYNC_AUTOMATICALLY =
259             PKG_BASE + "cts.action.SET_SYNC_AUTOMATICALLY";
260     public static final String ACTION_GET_SYNC_AUTOMATICALLY =
261             PKG_BASE + "cts.action.GET_SYNC_AUTOMATICALLY";
262     public static final String ACTION_GET_IS_SYNCABLE =
263             PKG_BASE + "cts.action.GET_IS_SYNCABLE";
264     public static final String ACTION_GET_PERIODIC_SYNCS =
265             PKG_BASE + "cts.action.GET_PERIODIC_SYNCS";
266     public static final String ACTION_AWAIT_PACKAGES_SUSPENDED =
267             PKG_BASE + "cts.action.AWAIT_PACKAGES_SUSPENDED";
268     public static final String ACTION_LAUNCHER_APPS_IS_ACTIVITY_ENABLED =
269             PKG_BASE + "cts.action.LAUNCHER_APPS_IS_ACTIVITY_ENABLED";
270     public static final String ACTION_LAUNCHER_APPS_GET_SUSPENDED_PACKAGE_LAUNCHER_EXTRAS =
271             PKG_BASE + "cts.action.LAUNCHER_APPS_GET_SUSPENDED_PACKAGE_LAUNCHER_EXTRAS";
272     public static final String ACTION_AWAIT_LAUNCHER_APPS_CALLBACK =
273             PKG_BASE + "cts.action.AWAIT_LAUNCHER_APPS_CALLBACK";
274     public static final String ACTION_GET_SHAREDLIBRARY_DEPENDENT_PACKAGES =
275             PKG_BASE + "cts.action.GET_SHAREDLIBRARY_DEPENDENT_PACKAGES";
276     public static final String ACTION_GET_PREFERRED_ACTIVITIES =
277             PKG_BASE + "cts.action.GET_PREFERRED_ACTIVITIES";
278     public static final String ACTION_SET_INSTALLER_PACKAGE_NAME =
279             PKG_BASE + "cts.action.SET_INSTALLER_PACKAGE_NAME";
280     public static final String ACTION_GET_INSTALLED_ACCESSIBILITYSERVICES_PACKAGES =
281             PKG_BASE + "cts.action.GET_INSTALLED_ACCESSIBILITYSERVICES_PACKAGES";
282     public static final String ACTION_LAUNCHER_APPS_SHOULD_HIDE_FROM_SUGGESTIONS =
283             PKG_BASE + "cts.action.LAUNCHER_APPS_SHOULD_HIDE_FROM_SUGGESTIONS";
284     public static final String ACTION_CHECK_URI_PERMISSION =
285             PKG_BASE + "cts.action.CHECK_URI_PERMISSION";
286     public static final String ACTION_CHECK_CONTENT_URI_PERMISSION_FULL =
287             PKG_BASE + "cts.action.CHECK_CONTENT_URI_PERMISSION_FULL";
288     public static final String ACTION_TAKE_PERSISTABLE_URI_PERMISSION =
289             PKG_BASE + "cts.action.TAKE_PERSISTABLE_URI_PERMISSION";
290     public static final String ACTION_CAN_PACKAGE_QUERY =
291             PKG_BASE + "cts.action.CAN_PACKAGE_QUERY";
292     public static final String ACTION_CAN_PACKAGE_QUERIES =
293             PKG_BASE + "cts.action.CAN_PACKAGE_QUERIES";
294     public static final String ACTION_GET_ALL_PACKAGE_INSTALLER_SESSIONS =
295             PKG_BASE + "cts.action.GET_ALL_PACKAGE_INSTALLER_SESSIONS";
296     public static final String ACTION_AWAIT_LAUNCHER_APPS_SESSION_CALLBACK =
297             PKG_BASE + "cts.action.AWAIT_LAUNCHER_APPS_SESSION_CALLBACK";
298     public static final String ACTION_GET_SESSION_INFO =
299             PKG_BASE + "cts.action.GET_SESSION_INFO";
300     public static final String ACTION_GET_STAGED_SESSIONS =
301             PKG_BASE + "cts.action.GET_STAGED_SESSIONS";
302     public static final String ACTION_GET_ALL_SESSIONS =
303             PKG_BASE + "cts.action.GET_ALL_SESSIONS";
304     public static final String ACTION_PENDING_INTENT_GET_ACTIVITY =
305             PKG_BASE + "cts.action.PENDING_INTENT_GET_ACTIVITY";
306     public static final String ACTION_PENDING_INTENT_GET_CREATOR_PACKAGE =
307             PKG_BASE + "cts.action.PENDING_INTENT_GET_CREATOR_PACKAGE";
308     public static final String ACTION_CHECK_PACKAGE =
309             PKG_BASE + "cts.action.CHECK_PACKAGE";
310     public static final String ACTION_GRANT_URI_PERMISSION =
311             PKG_BASE + "cts.action.GRANT_URI_PERMISSION";
312     public static final String ACTION_REVOKE_URI_PERMISSION =
313             PKG_BASE + "cts.action.REVOKE_URI_PERMISSION";
314     public static final String ACTION_AWAIT_PACKAGE_RESTARTED =
315             PKG_BASE + "cts.action.AWAIT_PACKAGE_RESTARTED";
316     public static final String ACTION_GET_CONTENT_PROVIDER_MIME_TYPE =
317             PKG_BASE + "cts.action.GET_CONTENT_PROVIDER_MIME_TYPE";
318     public static final String ACTION_APP_ENUMERATION_PREFERRED_ACTIVITY =
319             PKG_BASE + "cts.action.APP_ENUMERATION_PREFERRED_ACTIVITY";
320     public static final String ACTION_GET_ENABLED_SPELL_CHECKER_INFOS =
321             PKG_BASE + "cts.action.GET_ENABLED_SPELL_CHECKER_INFOS";
322     public static final String ACTION_GET_INPUT_METHOD_LIST =
323             PKG_BASE + "cts.action.GET_INPUT_METHOD_LIST";
324     public static final String ACTION_GET_ENABLED_INPUT_METHOD_LIST =
325             PKG_BASE + "cts.action.GET_ENABLED_INPUT_METHOD_LIST";
326     public static final String ACTION_GET_ENABLED_INPUT_METHOD_SUBTYPE_LIST =
327             PKG_BASE + "cts.action.GET_ENABLED_INPUT_METHOD_SUBTYPE_LIST";
328     public static final String ACTION_ACCOUNT_MANAGER_GET_AUTHENTICATOR_TYPES =
329             PKG_BASE + "cts.action.ACCOUNT_MANAGER_GET_AUTHENTICATOR_TYPES";
330     public static final String ACTION_MEDIA_SESSION_MANAGER_IS_TRUSTED_FOR_MEDIA_CONTROL =
331             PKG_BASE + "cts.action.MEDIA_SESSION_MANAGER_IS_TRUSTED_FOR_MEDIA_CONTROL";
332 
333     public static final String ACCOUNT_NAME = "CtsAppEnumerationTests";
334     public static final String ACCOUNT_TYPE = "android.appenumeration.account.type";
335     public static final String ACCOUNT_TYPE_SHARED_USER =
336             "android.appenumeration.shareduid.account.type";
337 
338     public static final String EXTRA_REMOTE_CALLBACK = "remoteCallback";
339     public static final String EXTRA_REMOTE_READY_CALLBACK = "remoteReadyCallback";
340     public static final String EXTRA_ERROR = "error";
341     public static final String EXTRA_FLAGS = "flags";
342     public static final String EXTRA_DATA = "data";
343     public static final String EXTRA_CERT = "cert";
344     public static final String EXTRA_AUTHORITY = "authority";
345     public static final String EXTRA_ACCOUNT = "account";
346     public static final String EXTRA_ID = "id";
347     public static final String EXTRA_PENDING_INTENT = "pendingIntent";
348     public static final String EXTRA_INPUT_METHOD_INFO = "inputmethodinfo";
349 
350     public static final int CALLBACK_EVENT_INVALID = -1;
351     public static final int CALLBACK_EVENT_PACKAGE_ADDED = 0;
352     public static final int CALLBACK_EVENT_PACKAGE_REMOVED = 1;
353     public static final int CALLBACK_EVENT_PACKAGE_CHANGED = 2;
354     public static final int CALLBACK_EVENT_PACKAGES_AVAILABLE = 3;
355     public static final int CALLBACK_EVENT_PACKAGES_UNAVAILABLE = 4;
356     public static final int CALLBACK_EVENT_PACKAGES_SUSPENDED = 5;
357     public static final int CALLBACK_EVENT_PACKAGES_UNSUSPENDED = 6;
358 }
359