• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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 
23     /** A package that queries for {@link #TARGET_NO_API} package */
24     public static final String QUERIES_PACKAGE = PKG_BASE + "queries.pkg";
25     /** A package has a provider that queries for {@link #TARGET_NO_API} package */
26     public static final String QUERIES_PACKAGE_PROVIDER = PKG_BASE + "queries.pkg.hasprovider";
27     /** Queries for the unexported authority in {@link #TARGET_FILTERS} provider */
28     public static final String QUERIES_UNEXPORTED_PROVIDER_AUTH =
29             PKG_BASE + "queries.provider.authority.unexported";
30     /** Queries for the unexported action in {@link #TARGET_FILTERS} provider */
31     public static final String QUERIES_UNEXPORTED_PROVIDER_ACTION =
32             PKG_BASE + "queries.provider.action.unexported";
33     /** Queries for the unexported action in {@link #TARGET_FILTERS} service filter */
34     public static final String QUERIES_UNEXPORTED_SERVICE_ACTION =
35             PKG_BASE + "queries.service.action.unexported";
36     /** Queries for the unexported action in {@link #TARGET_FILTERS} activity filter */
37     public static final String QUERIES_UNEXPORTED_ACTIVITY_ACTION =
38             PKG_BASE + "queries.activity.action.unexported";
39     /** A package that queries for the authority in {@link #TARGET_FILTERS} provider */
40     public static final String QUERIES_PROVIDER_AUTH = PKG_BASE + "queries.provider.authority";
41     /** A package that queries for the authority in {@link #TARGET_FILTERS} provider */
42     public static final String QUERIES_PROVIDER_ACTION = PKG_BASE + "queries.provider.action";
43     /** A package that queries for the action in {@link #TARGET_FILTERS} service filter */
44     public static final String QUERIES_SERVICE_ACTION = PKG_BASE + "queries.service.action";
45     /** A package that queries for the action in {@link #TARGET_FILTERS} activity filter */
46     public static final String QUERIES_ACTIVITY_ACTION = PKG_BASE + "queries.activity.action";
47     /** A package that has no queries but gets the QUERY_ALL_PACKAGES permission */
48     public static final String QUERIES_NOTHING_PERM = PKG_BASE + "queries.nothing.haspermission";
49     /** A package that has no queries but has a provider that can be queried */
50     public static final String QUERIES_NOTHING_PROVIDER = PKG_BASE + "queries.nothing.hasprovider";
51     /** A package that has no queries tag or permissions but targets Q */
52     public static final String QUERIES_NOTHING_Q = PKG_BASE + "queries.nothing.q";
53     /** A package that has no queries tag or permission to query any specific packages */
54     public static final String QUERIES_NOTHING = PKG_BASE + "queries.nothing";
55     /** Another package that has no queries tag or permission to query any specific packages */
56     public static final String QUERIES_NOTHING_RECEIVES_URI =
57             PKG_BASE + "queries.nothing.receives.uri";
58     public static final String QUERIES_NOTHING_RECEIVES_PERM_URI =
59             PKG_BASE + "queries.nothing.receives.perm.uri";
60     public static final String QUERIES_NOTHING_RECEIVES_PERSISTABLE_URI =
61             PKG_BASE + "queries.nothing.receives.persistable.uri";
62     public static final String QUERIES_NOTHING_RECEIVES_NON_PERSISTABLE_URI =
63             PKG_BASE + "queries.nothing.receives.nonpersistable.uri";
64     /** Another package that has no queries tag or permission to query any specific packages */
65     public static final String QUERIES_NOTHING_SEES_INSTALLER =
66             PKG_BASE + "queries.nothing.sees.installer";
67     /** A package that queries nothing, but is part of a shared user */
68     public static final String QUERIES_NOTHING_SHARED_USER = PKG_BASE + "queries.nothing.shareduid";
69     /** A package that queries nothing, but uses a shared library */
70     public static final String QUERIES_NOTHING_USES_LIBRARY =
71             PKG_BASE + "queries.nothing.useslibrary";
72     /** A package that queries nothing, but uses a shared library */
73     public static final String QUERIES_NOTHING_USES_OPTIONAL_LIBRARY =
74             PKG_BASE + "queries.nothing.usesoptionallibrary";
75     /** A package that queries via wildcard action. */
76     public static final String QUERIES_WILDCARD_ACTION = PKG_BASE + "queries.wildcard.action";
77     /** A package that queries for all BROWSABLE intents. */
78     public static final String QUERIES_WILDCARD_BROWSABLE = PKG_BASE + "queries.wildcard.browsable";
79     /** A package that queries for all profile / contact targets. */
80     public static final String QUERIES_WILDCARD_CONTACTS = PKG_BASE + "queries.wildcard.contacts";
81     /** A package that queries for document viewer / editor targets. */
82     public static final String QUERIES_WILDCARD_EDITOR = PKG_BASE + "queries.wildcard.editor";
83     /** A package that queries for all jpeg share targets. */
84     public static final String QUERIES_WILDCARD_SHARE = PKG_BASE + "queries.wildcard.share";
85     /** A package that queries for all web intent browsable targets. */
86     public static final String QUERIES_WILDCARD_WEB = PKG_BASE + "queries.wildcard.web";
87     /** A package that queries for only browser intent targets. */
88     public static final String QUERIES_WILDCARD_BROWSER = PKG_BASE + "queries.wildcard.browser";
89 
90     /** A package that queries for {@link #TARGET_NO_API} package */
91     public static final String TARGET_SHARED_USER = PKG_BASE + "noapi.shareduid";
92     /** A package that exposes itself via various intent filters (activities, services, etc.) */
93     public static final String TARGET_FILTERS = PKG_BASE + "filters";
94     /** A package that declares itself force queryable, making it visible to all other packages.
95      *  This is installed as forceQueryable as non-system apps cannot declare themselves as such. */
96     public static final String TARGET_FORCEQUERYABLE = PKG_BASE + "forcequeryable";
97     /** A package that declares itself force queryable, but is installed normally making it not
98      *  visible to other packages */
99     public static final String TARGET_FORCEQUERYABLE_NORMAL =
100             PKG_BASE + "forcequeryable.normalinstall";
101     /** A package with no published API and so isn't queryable by anything but package name */
102     public static final String TARGET_NO_API = PKG_BASE + "noapi";
103     /** A package with no published API and just for installing/uninstalling during test */
104     public static final String TARGET_STUB = PKG_BASE + "stub";
105     /** A package that offers an activity used for opening / editing file types */
106     public static final String TARGET_EDITOR = PKG_BASE + "editor.activity";
107     /** A package that offers an activity used viewing a contact / profile */
108     public static final String TARGET_CONTACTS = PKG_BASE + "contacts.activity";
109     /** A package that offers an content sharing activity */
110     public static final String TARGET_SHARE = PKG_BASE + "share.activity";
111     /** A package that offers an activity that handles browsable web intents for a specific host */
112     public static final String TARGET_WEB = PKG_BASE + "web.activity";
113     /** A package that offers an activity acts as a browser, but use a prefix wildcard for host */
114     public static final String TARGET_PREFIX_WILDCARD_WEB =
115             PKG_BASE + "prefix.wildcard.web.activity";
116     /** A package that offers an activity acts as a browser with host undefined */
117     public static final String TARGET_BROWSER = PKG_BASE + "browser.activity";
118     /** A package that offers an activity acts as a browser, but uses a wildcard for host */
119     public static final String TARGET_BROWSER_WILDCARD = PKG_BASE + "browser.wildcard.activity";
120     /** A package that offers a shared library */
121     public static final String TARGET_SHARED_LIBRARY_PACKAGE = "com.android.cts.ctsshim";
122     /** A package that exposes itself as a syncadapter. */
123     public static final String TARGET_SYNCADAPTER = PKG_BASE + "syncadapter";
124     /** A package that exposes itself as a syncadapter with a shared uid. */
125     public static final String TARGET_SYNCADAPTER_SHARED_USER = PKG_BASE + "syncadapter.shareduid";
126     /** A package that exposes itself as a appwidgetprovider. */
127     public static final String TARGET_APPWIDGETPROVIDER = PKG_BASE + "appwidgetprovider";
128     /** A package that exposes itself as a appwidgetprovider with a shared uid. */
129     public static final String TARGET_APPWIDGETPROVIDER_SHARED_USER =
130             PKG_BASE + "appwidgetprovider.shareduid";
131     /** A package that offers an activity which handles preferred activity test intent for the
132      *  tests of preferred activity. */
133     public static final String TARGET_PREFERRED_ACTIVITY = PKG_BASE + "preferred.activity";
134 
135     private static final String BASE_PATH = "/data/local/tmp/cts/appenumeration/";
136     public static final String TARGET_NO_API_APK = BASE_PATH + "CtsAppEnumerationNoApi.apk";
137     public static final String TARGET_STUB_APK = BASE_PATH + "CtsAppEnumerationStub.apk";
138     public static final String TARGET_FILTERS_APK = BASE_PATH + "CtsAppEnumerationFilters.apk";
139     public static final String QUERIES_NOTHING_SEES_INSTALLER_APK =
140             BASE_PATH + "CtsAppEnumerationQueriesNothingSeesInstaller.apk";
141     public static final String QUERIES_NOTHING_RECEIVES_PERSISTABLE_URI_APK =
142             BASE_PATH + "CtsAppEnumerationQueriesNothingReceivesPersistableUri.apk";
143     public static final String QUERIES_NOTHING_RECEIVES_NON_PERSISTABLE_URI_APK =
144             BASE_PATH + "CtsAppEnumerationQueriesNothingReceivesNonPersistableUri.apk";
145 
146     public static final String[] ALL_QUERIES_TARGETING_R_PACKAGES = {
147             QUERIES_NOTHING,
148             QUERIES_NOTHING_PERM,
149             QUERIES_ACTIVITY_ACTION,
150             QUERIES_SERVICE_ACTION,
151             QUERIES_PROVIDER_AUTH,
152             QUERIES_UNEXPORTED_ACTIVITY_ACTION,
153             QUERIES_UNEXPORTED_SERVICE_ACTION,
154             QUERIES_UNEXPORTED_PROVIDER_AUTH,
155             QUERIES_PACKAGE,
156             QUERIES_NOTHING_SHARED_USER,
157             QUERIES_WILDCARD_ACTION,
158             QUERIES_WILDCARD_BROWSABLE,
159             QUERIES_WILDCARD_CONTACTS,
160             QUERIES_WILDCARD_EDITOR,
161             QUERIES_WILDCARD_SHARE,
162             QUERIES_WILDCARD_WEB,
163     };
164 
165     public static final String ACTIVITY_CLASS_TEST = PKG_BASE + "cts.TestActivity";
166     public static final String ACTIVITY_CLASS_DUMMY_ACTIVITY = PKG_BASE + "testapp.DummyActivity";
167 
168     public static final String ACTION_MANIFEST_ACTIVITY = PKG_BASE + "action.ACTIVITY";
169     public static final String ACTION_MANIFEST_SERVICE = PKG_BASE + "action.SERVICE";
170     public static final String ACTION_MANIFEST_PROVIDER = PKG_BASE + "action.PROVIDER";
171     public static final String ACTION_SEND_RESULT = PKG_BASE + "cts.action.SEND_RESULT";
172     public static final String ACTION_GET_PACKAGE_INFO = PKG_BASE + "cts.action.GET_PACKAGE_INFO";
173     public static final String ACTION_GET_PACKAGES_FOR_UID =
174             PKG_BASE + "cts.action.GET_PACKAGES_FOR_UID";
175     public static final String ACTION_GET_NAME_FOR_UID =
176             PKG_BASE + "cts.action.GET_NAME_FOR_UID";
177     public static final String ACTION_GET_NAMES_FOR_UIDS =
178             PKG_BASE + "cts.action.GET_NAMES_FOR_UIDS";
179     public static final String ACTION_CHECK_SIGNATURES = PKG_BASE + "cts.action.CHECK_SIGNATURES";
180     public static final String ACTION_HAS_SIGNING_CERTIFICATE =
181             PKG_BASE + "cts.action.HAS_SIGNING_CERTIFICATE";
182     public static final String ACTION_START_FOR_RESULT = PKG_BASE + "cts.action.START_FOR_RESULT";
183     public static final String ACTION_START_DIRECTLY = PKG_BASE + "cts.action.START_DIRECTLY";
184     public static final String ACTION_JUST_FINISH = PKG_BASE + "cts.action.JUST_FINISH";
185     public static final String ACTION_AWAIT_PACKAGE_REMOVED =
186             PKG_BASE + "cts.action.AWAIT_PACKAGE_REMOVED";
187     public static final String ACTION_AWAIT_PACKAGE_ADDED =
188             PKG_BASE + "cts.action.AWAIT_PACKAGE_ADDED";
189     public static final String ACTION_AWAIT_PACKAGE_FULLY_REMOVED =
190             PKG_BASE + "cts.action.AWAIT_PACKAGE_FULLY_REMOVED";
191     public static final String ACTION_AWAIT_PACKAGE_DATA_CLEARED =
192             PKG_BASE + "cts.action.AWAIT_PACKAGE_DATA_CLEARED";
193     public static final String ACTION_QUERY_ACTIVITIES =
194             PKG_BASE + "cts.action.QUERY_INTENT_ACTIVITIES";
195     public static final String ACTION_QUERY_SERVICES =
196             PKG_BASE + "cts.action.QUERY_INTENT_SERVICES";
197     public static final String ACTION_QUERY_PROVIDERS =
198             PKG_BASE + "cts.action.QUERY_INTENT_PROVIDERS";
199     public static final String ACTION_GET_INSTALLED_PACKAGES =
200             PKG_BASE + "cts.action.GET_INSTALLED_PACKAGES";
201     public static final String ACTION_START_SENDER_FOR_RESULT =
202             PKG_BASE + "cts.action.START_SENDER_FOR_RESULT";
203     public static final String ACTION_QUERY_RESOLVER =
204             PKG_BASE + "cts.action.QUERY_RESOLVER_FOR_VISIBILITY";
205     public static final String ACTION_BIND_SERVICE = PKG_BASE + "cts.action.BIND_SERVICE";
206     public static final String ACTION_GET_SYNCADAPTER_TYPES =
207             PKG_BASE + "cts.action.GET_SYNCADAPTER_TYPES";
208     public static final String ACTION_GET_SYNCADAPTER_PACKAGES_FOR_AUTHORITY =
209             PKG_BASE + "cts.action.GET_SYNCADAPTER_PACKAGES_FOR_AUTHORITY";
210     public static final String ACTION_GET_INSTALLED_APPWIDGET_PROVIDERS =
211             PKG_BASE + "cts.action.GET_INSTALLED_APPWIDGET_PROVIDERS";
212     public static final String ACTION_REQUEST_SYNC_AND_AWAIT_STATUS =
213             PKG_BASE + "cts.action.REQUEST_SYNC_AND_AWAIT_STATUS";
214     public static final String ACTION_AWAIT_PACKAGES_SUSPENDED =
215             PKG_BASE + "cts.action.AWAIT_PACKAGES_SUSPENDED";
216     public static final String ACTION_LAUNCHER_APPS_IS_ACTIVITY_ENABLED =
217             PKG_BASE + "cts.action.LAUNCHER_APPS_IS_ACTIVITY_ENABLED";
218     public static final String ACTION_LAUNCHER_APPS_GET_SUSPENDED_PACKAGE_LAUNCHER_EXTRAS =
219             PKG_BASE + "cts.action.LAUNCHER_APPS_GET_SUSPENDED_PACKAGE_LAUNCHER_EXTRAS";
220     public static final String ACTION_AWAIT_LAUNCHER_APPS_CALLBACK =
221             PKG_BASE + "cts.action.AWAIT_LAUNCHER_APPS_CALLBACK";
222     public static final String ACTION_GET_SHAREDLIBRARY_DEPENDENT_PACKAGES =
223             PKG_BASE + "cts.action.GET_SHAREDLIBRARY_DEPENDENT_PACKAGES";
224     public static final String ACTION_GET_PREFERRED_ACTIVITIES =
225             PKG_BASE + "cts.action.GET_PREFERRED_ACTIVITIES";
226     public static final String ACTION_SET_INSTALLER_PACKAGE_NAME =
227             PKG_BASE + "cts.action.SET_INSTALLER_PACKAGE_NAME";
228     public static final String ACTION_GET_INSTALLED_ACCESSIBILITYSERVICES_PACKAGES =
229             PKG_BASE + "cts.action.GET_INSTALLED_ACCESSIBILITYSERVICES_PACKAGES";
230     public static final String ACTION_LAUNCHER_APPS_SHOULD_HIDE_FROM_SUGGESTIONS =
231             PKG_BASE + "cts.action.LAUNCHER_APPS_SHOULD_HIDE_FROM_SUGGESTIONS";
232     public static final String ACTION_CHECK_URI_PERMISSION =
233             PKG_BASE + "cts.action.CHECK_URI_PERMISSION";
234     public static final String ACTION_TAKE_PERSISTABLE_URI_PERMISSION =
235             PKG_BASE + "cts.action.TAKE_PERSISTABLE_URI_PERMISSION";
236     public static final String ACTION_CAN_PACKAGE_QUERY =
237             PKG_BASE + "cts.action.CAN_PACKAGE_QUERY";
238     public static final String ACTION_GET_ALL_PACKAGE_INSTALLER_SESSIONS =
239             PKG_BASE + "cts.action.GET_ALL_PACKAGE_INSTALLER_SESSIONS";
240     public static final String ACTION_AWAIT_LAUNCHER_APPS_SESSION_CALLBACK =
241             PKG_BASE + "cts.action.AWAIT_LAUNCHER_APPS_SESSION_CALLBACK";
242     public static final String ACTION_GET_SESSION_INFO =
243             PKG_BASE + "cts.action.GET_SESSION_INFO";
244     public static final String ACTION_GET_STAGED_SESSIONS =
245             PKG_BASE + "cts.action.GET_STAGED_SESSIONS";
246     public static final String ACTION_GET_ALL_SESSIONS =
247             PKG_BASE + "cts.action.GET_ALL_SESSIONS";
248     public static final String ACTION_PENDING_INTENT_GET_ACTIVITY =
249             PKG_BASE + "cts.action.PENDING_INTENT_GET_ACTIVITY";
250     public static final String ACTION_PENDING_INTENT_GET_CREATOR_PACKAGE =
251             PKG_BASE + "cts.action.PENDING_INTENT_GET_CREATOR_PACKAGE";
252     public static final String ACTION_CHECK_PACKAGE =
253             PKG_BASE + "cts.action.CHECK_PACKAGE";
254     public static final String ACTION_GRANT_URI_PERMISSION =
255             PKG_BASE + "cts.action.GRANT_URI_PERMISSION";
256     public static final String ACTION_REVOKE_URI_PERMISSION =
257             PKG_BASE + "cts.action.REVOKE_URI_PERMISSION";
258 
259     public static final String EXTRA_REMOTE_CALLBACK = "remoteCallback";
260     public static final String EXTRA_REMOTE_READY_CALLBACK = "remoteReadyCallback";
261     public static final String EXTRA_ERROR = "error";
262     public static final String EXTRA_FLAGS = "flags";
263     public static final String EXTRA_DATA = "data";
264     public static final String EXTRA_CERT = "cert";
265     public static final String EXTRA_AUTHORITY = "authority";
266     public static final String EXTRA_ACCOUNT = "account";
267     public static final String EXTRA_ID = "id";
268     public static final String EXTRA_PENDING_INTENT = "pendingIntent";
269 
270     public static final int CALLBACK_EVENT_INVALID = -1;
271     public static final int CALLBACK_EVENT_PACKAGE_ADDED = 0;
272     public static final int CALLBACK_EVENT_PACKAGE_REMOVED = 1;
273     public static final int CALLBACK_EVENT_PACKAGE_CHANGED = 2;
274     public static final int CALLBACK_EVENT_PACKAGES_AVAILABLE = 3;
275     public static final int CALLBACK_EVENT_PACKAGES_UNAVAILABLE = 4;
276     public static final int CALLBACK_EVENT_PACKAGES_SUSPENDED = 5;
277     public static final int CALLBACK_EVENT_PACKAGES_UNSUSPENDED = 6;
278 }
279