MockPackageManager.java revision 88cc346d0602e0b173b5076cd0051120682da601
1/*
2 * Copyright (C) 2008 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
17package android.test.mock;
18
19import android.app.PackageInstallObserver;
20import android.content.ComponentName;
21import android.content.Intent;
22import android.content.IntentFilter;
23import android.content.IntentSender;
24import android.content.pm.ActivityInfo;
25import android.content.pm.ApplicationInfo;
26import android.content.pm.ContainerEncryptionParams;
27import android.content.pm.FeatureInfo;
28import android.content.pm.IPackageDataObserver;
29import android.content.pm.IPackageDeleteObserver;
30import android.content.pm.IPackageInstallObserver;
31import android.content.pm.IPackageMoveObserver;
32import android.content.pm.IPackageStatsObserver;
33import android.content.pm.InstrumentationInfo;
34import android.content.pm.ManifestDigest;
35import android.content.pm.PackageInfo;
36import android.content.pm.PackageInstaller;
37import android.content.pm.PackageManager;
38import android.content.pm.PermissionGroupInfo;
39import android.content.pm.PermissionInfo;
40import android.content.pm.ProviderInfo;
41import android.content.pm.ResolveInfo;
42import android.content.pm.ServiceInfo;
43import android.content.pm.VerificationParams;
44import android.content.pm.VerifierDeviceIdentity;
45import android.content.res.Resources;
46import android.content.res.XmlResourceParser;
47import android.graphics.Bitmap;
48import android.graphics.drawable.Drawable;
49import android.net.Uri;
50import android.os.UserHandle;
51
52import java.util.List;
53
54/**
55 * A mock {@link android.content.pm.PackageManager} class.  All methods are non-functional and throw
56 * {@link java.lang.UnsupportedOperationException}. Override it to provide the operations that you
57 * need.
58 */
59public class MockPackageManager extends PackageManager {
60
61    @Override
62    public PackageInfo getPackageInfo(String packageName, int flags)
63    throws NameNotFoundException {
64        throw new UnsupportedOperationException();
65    }
66
67    @Override
68    public String[] currentToCanonicalPackageNames(String[] names) {
69        throw new UnsupportedOperationException();
70    }
71
72    @Override
73    public String[] canonicalToCurrentPackageNames(String[] names) {
74        throw new UnsupportedOperationException();
75    }
76
77    @Override
78    public Intent getLaunchIntentForPackage(String packageName) {
79        throw new UnsupportedOperationException();
80    }
81
82    @Override
83    public Intent getLeanbackLaunchIntentForPackage(String packageName) {
84        throw new UnsupportedOperationException();
85    }
86
87    @Override
88
89    public int[] getPackageGids(String packageName) throws NameNotFoundException {
90        throw new UnsupportedOperationException();
91    }
92
93    /** @hide */
94    @Override
95    public int getPackageUid(String packageName, int userHandle)
96            throws NameNotFoundException {
97        throw new UnsupportedOperationException();
98    }
99
100    @Override
101    public PermissionInfo getPermissionInfo(String name, int flags)
102    throws NameNotFoundException {
103        throw new UnsupportedOperationException();
104    }
105
106    @Override
107    public List<PermissionInfo> queryPermissionsByGroup(String group, int flags)
108            throws NameNotFoundException {
109        throw new UnsupportedOperationException();
110    }
111
112    @Override
113    public PermissionGroupInfo getPermissionGroupInfo(String name,
114            int flags) throws NameNotFoundException {
115        throw new UnsupportedOperationException();
116    }
117
118    @Override
119    public List<PermissionGroupInfo> getAllPermissionGroups(int flags) {
120        throw new UnsupportedOperationException();
121    }
122
123    @Override
124    public ApplicationInfo getApplicationInfo(String packageName, int flags)
125    throws NameNotFoundException {
126        throw new UnsupportedOperationException();
127    }
128
129    @Override
130    public ActivityInfo getActivityInfo(ComponentName className, int flags)
131    throws NameNotFoundException {
132        throw new UnsupportedOperationException();
133    }
134
135    @Override
136    public ActivityInfo getReceiverInfo(ComponentName className, int flags)
137    throws NameNotFoundException {
138        throw new UnsupportedOperationException();
139    }
140
141    @Override
142    public ServiceInfo getServiceInfo(ComponentName className, int flags)
143    throws NameNotFoundException {
144        throw new UnsupportedOperationException();
145    }
146
147    @Override
148    public ProviderInfo getProviderInfo(ComponentName className, int flags)
149    throws NameNotFoundException {
150        throw new UnsupportedOperationException();
151    }
152
153    @Override
154    public List<PackageInfo> getInstalledPackages(int flags) {
155        throw new UnsupportedOperationException();
156    }
157
158    @Override
159    public List<PackageInfo> getPackagesHoldingPermissions(String[] permissions,
160            int flags) {
161        throw new UnsupportedOperationException();
162    }
163
164    /** @hide */
165    @Override
166    public List<PackageInfo> getInstalledPackages(int flags, int userId) {
167        throw new UnsupportedOperationException();
168    }
169
170    @Override
171    public int checkPermission(String permName, String pkgName) {
172        throw new UnsupportedOperationException();
173    }
174
175    @Override
176    public boolean addPermission(PermissionInfo info) {
177        throw new UnsupportedOperationException();
178    }
179
180    @Override
181    public boolean addPermissionAsync(PermissionInfo info) {
182        throw new UnsupportedOperationException();
183    }
184
185    @Override
186    public void removePermission(String name) {
187        throw new UnsupportedOperationException();
188    }
189
190    /** @hide */
191    @Override
192    public void grantPermission(String packageName, String permissionName) {
193        throw new UnsupportedOperationException();
194    }
195
196    /** @hide */
197    @Override
198    public void revokePermission(String packageName, String permissionName) {
199        throw new UnsupportedOperationException();
200    }
201
202    @Override
203    public int checkSignatures(String pkg1, String pkg2) {
204        throw new UnsupportedOperationException();
205    }
206
207    @Override
208    public int checkSignatures(int uid1, int uid2) {
209        throw new UnsupportedOperationException();
210    }
211
212    @Override
213    public String[] getPackagesForUid(int uid) {
214        throw new UnsupportedOperationException();
215    }
216
217    @Override
218    public String getNameForUid(int uid) {
219        throw new UnsupportedOperationException();
220    }
221
222    /**
223     * @hide - to match hiding in superclass
224     */
225    @Override
226    public int getUidForSharedUser(String sharedUserName) {
227        throw new UnsupportedOperationException();
228    }
229
230    @Override
231    public List<ApplicationInfo> getInstalledApplications(int flags) {
232        throw new UnsupportedOperationException();
233    }
234
235    @Override
236    public ResolveInfo resolveActivity(Intent intent, int flags) {
237        throw new UnsupportedOperationException();
238    }
239
240    /** @hide */
241    @Override
242    public ResolveInfo resolveActivityAsUser(Intent intent, int flags, int userId) {
243        throw new UnsupportedOperationException();
244    }
245
246    @Override
247    public List<ResolveInfo> queryIntentActivities(Intent intent, int flags) {
248        throw new UnsupportedOperationException();
249    }
250
251    /** @hide */
252    @Override
253    public List<ResolveInfo> queryIntentActivitiesAsUser(Intent intent,
254                                                   int flags, int userId) {
255        throw new UnsupportedOperationException();
256    }
257
258    @Override
259    public List<ResolveInfo> queryIntentActivityOptions(ComponentName caller,
260            Intent[] specifics, Intent intent, int flags) {
261        throw new UnsupportedOperationException();
262    }
263
264    @Override
265    public List<ResolveInfo> queryBroadcastReceivers(Intent intent, int flags) {
266        throw new UnsupportedOperationException();
267    }
268
269    /** @hide */
270    @Override
271    public List<ResolveInfo> queryBroadcastReceivers(Intent intent, int flags, int userId) {
272        throw new UnsupportedOperationException();
273    }
274
275    @Override
276    public ResolveInfo resolveService(Intent intent, int flags) {
277        throw new UnsupportedOperationException();
278    }
279
280    @Override
281    public List<ResolveInfo> queryIntentServices(Intent intent, int flags) {
282        throw new UnsupportedOperationException();
283    }
284
285    /** @hide */
286    @Override
287    public List<ResolveInfo> queryIntentServicesAsUser(Intent intent, int flags, int userId) {
288        throw new UnsupportedOperationException();
289    }
290
291    /** @hide */
292    @Override
293    public List<ResolveInfo> queryIntentContentProvidersAsUser(
294            Intent intent, int flags, int userId) {
295        throw new UnsupportedOperationException();
296    }
297
298    @Override
299    public List<ResolveInfo> queryIntentContentProviders(Intent intent, int flags) {
300        throw new UnsupportedOperationException();
301    }
302
303    @Override
304    public ProviderInfo resolveContentProvider(String name, int flags) {
305        throw new UnsupportedOperationException();
306    }
307
308    @Override
309    public List<ProviderInfo> queryContentProviders(String processName, int uid, int flags) {
310        throw new UnsupportedOperationException();
311    }
312
313    @Override
314    public InstrumentationInfo getInstrumentationInfo(ComponentName className, int flags)
315    throws NameNotFoundException {
316        throw new UnsupportedOperationException();
317    }
318
319    @Override
320    public List<InstrumentationInfo> queryInstrumentation(
321            String targetPackage, int flags) {
322        throw new UnsupportedOperationException();
323    }
324
325    @Override
326    public Drawable getDrawable(String packageName, int resid, ApplicationInfo appInfo) {
327        throw new UnsupportedOperationException();
328    }
329
330    @Override
331    public Drawable getActivityIcon(ComponentName activityName)
332    throws NameNotFoundException {
333        throw new UnsupportedOperationException();
334    }
335
336    @Override
337    public Drawable getActivityIcon(Intent intent) throws NameNotFoundException {
338        throw new UnsupportedOperationException();
339    }
340
341    @Override
342    public Drawable getDefaultActivityIcon() {
343        throw new UnsupportedOperationException();
344    }
345
346    @Override
347    public Drawable getActivityBanner(ComponentName activityName)
348            throws NameNotFoundException {
349        throw new UnsupportedOperationException();
350    }
351
352    @Override
353    public Drawable getActivityBanner(Intent intent) throws NameNotFoundException {
354        throw new UnsupportedOperationException();
355    }
356
357    @Override
358    public Drawable getApplicationBanner(ApplicationInfo info) {
359        throw new UnsupportedOperationException();
360    }
361
362    @Override
363    public Drawable getApplicationBanner(String packageName) throws NameNotFoundException {
364        throw new UnsupportedOperationException();
365    }
366
367    @Override
368    public Drawable getApplicationIcon(ApplicationInfo info) {
369        throw new UnsupportedOperationException();
370    }
371
372    @Override
373    public Drawable getApplicationIcon(String packageName) throws NameNotFoundException {
374        throw new UnsupportedOperationException();
375    }
376
377    @Override
378    public Drawable getActivityLogo(ComponentName activityName) throws NameNotFoundException {
379        throw new UnsupportedOperationException();
380    }
381
382    @Override
383    public Drawable getActivityLogo(Intent intent) throws NameNotFoundException {
384        throw new UnsupportedOperationException();
385    }
386
387    @Override
388    public Drawable getApplicationLogo(ApplicationInfo info) {
389        throw new UnsupportedOperationException();
390    }
391
392    @Override
393    public Drawable getApplicationLogo(String packageName) throws NameNotFoundException {
394        throw new UnsupportedOperationException();
395    }
396
397    @Override
398    public CharSequence getText(String packageName, int resid, ApplicationInfo appInfo) {
399        throw new UnsupportedOperationException();
400    }
401
402    @Override
403    public XmlResourceParser getXml(String packageName, int resid,
404            ApplicationInfo appInfo) {
405        throw new UnsupportedOperationException();
406    }
407
408    @Override
409    public CharSequence getApplicationLabel(ApplicationInfo info) {
410        throw new UnsupportedOperationException();
411    }
412
413    @Override
414    public Resources getResourcesForActivity(ComponentName activityName)
415    throws NameNotFoundException {
416        throw new UnsupportedOperationException();
417    }
418
419    @Override
420    public Resources getResourcesForApplication(ApplicationInfo app) {
421        throw new UnsupportedOperationException();
422    }
423
424    @Override
425    public Resources getResourcesForApplication(String appPackageName)
426    throws NameNotFoundException {
427        throw new UnsupportedOperationException();
428    }
429
430    /** @hide */
431    @Override
432    public Resources getResourcesForApplicationAsUser(String appPackageName, int userId) {
433        throw new UnsupportedOperationException();
434    }
435
436    @Override
437    public PackageInfo getPackageArchiveInfo(String archiveFilePath, int flags) {
438        throw new UnsupportedOperationException();
439    }
440
441    /**
442     * @hide - to match hiding in superclass
443     */
444    @Override
445    public void installPackage(Uri packageURI, IPackageInstallObserver observer,
446            int flags, String installerPackageName) {
447        throw new UnsupportedOperationException();
448    }
449
450    @Override
451    public void setInstallerPackageName(String targetPackage,
452            String installerPackageName) {
453        throw new UnsupportedOperationException();
454    }
455
456    /**
457     * @hide - to match hiding in superclass
458     */
459    @Override
460    public void movePackage(String packageName, IPackageMoveObserver observer, int flags) {
461        throw new UnsupportedOperationException();
462    }
463
464    @Override
465    public String getInstallerPackageName(String packageName) {
466        throw new UnsupportedOperationException();
467    }
468
469    /**
470     * @hide - to match hiding in superclass
471     */
472    @Override
473    public void clearApplicationUserData(
474            String packageName, IPackageDataObserver observer) {
475        throw new UnsupportedOperationException();
476    }
477
478    /**
479     * @hide - to match hiding in superclass
480     */
481    @Override
482    public void deleteApplicationCacheFiles(
483            String packageName, IPackageDataObserver observer) {
484        throw new UnsupportedOperationException();
485    }
486
487    /**
488     * @hide - to match hiding in superclass
489     */
490    @Override
491    public void freeStorageAndNotify(
492            long idealStorageSize, IPackageDataObserver observer) {
493        throw new UnsupportedOperationException();
494    }
495
496    /**
497     * @hide - to match hiding in superclass
498     */
499    @Override
500    public void freeStorage(
501            long idealStorageSize, IntentSender pi) {
502        throw new UnsupportedOperationException();
503    }
504
505    /**
506     * @hide - to match hiding in superclass
507     */
508    @Override
509    public void deletePackage(
510            String packageName, IPackageDeleteObserver observer, int flags) {
511        throw new UnsupportedOperationException();
512    }
513
514    @Override
515    public void addPackageToPreferred(String packageName) {
516        throw new UnsupportedOperationException();
517    }
518
519    @Override
520    public void removePackageFromPreferred(String packageName) {
521        throw new UnsupportedOperationException();
522    }
523
524    @Override
525    public List<PackageInfo> getPreferredPackages(int flags) {
526        throw new UnsupportedOperationException();
527    }
528
529    @Override
530    public void setComponentEnabledSetting(ComponentName componentName,
531            int newState, int flags) {
532        throw new UnsupportedOperationException();
533    }
534
535    @Override
536    public int getComponentEnabledSetting(ComponentName componentName) {
537        throw new UnsupportedOperationException();
538    }
539
540    @Override
541    public void setApplicationEnabledSetting(String packageName, int newState, int flags) {
542        throw new UnsupportedOperationException();
543    }
544
545    @Override
546    public int getApplicationEnabledSetting(String packageName) {
547        throw new UnsupportedOperationException();
548    }
549
550    @Override
551    public void addPreferredActivity(IntentFilter filter,
552            int match, ComponentName[] set, ComponentName activity) {
553        throw new UnsupportedOperationException();
554    }
555
556    /**
557     * @hide - to match hiding in superclass
558     */
559    @Override
560    public void replacePreferredActivity(IntentFilter filter,
561            int match, ComponentName[] set, ComponentName activity) {
562        throw new UnsupportedOperationException();
563    }
564
565
566    @Override
567    public void clearPackagePreferredActivities(String packageName) {
568        throw new UnsupportedOperationException();
569    }
570
571    /**
572     * @hide - to match hiding in superclass
573     */
574    @Override
575    public void getPackageSizeInfo(String packageName, int userHandle,
576            IPackageStatsObserver observer) {
577        throw new UnsupportedOperationException();
578    }
579
580    @Override
581    public int getPreferredActivities(List<IntentFilter> outFilters,
582            List<ComponentName> outActivities, String packageName) {
583        throw new UnsupportedOperationException();
584    }
585
586    /** @hide - hidden in superclass */
587    @Override
588    public ComponentName getHomeActivities(List<ResolveInfo> outActivities) {
589        throw new UnsupportedOperationException();
590    }
591
592    @Override
593    public String[] getSystemSharedLibraryNames() {
594        throw new UnsupportedOperationException();
595    }
596
597    @Override
598    public FeatureInfo[] getSystemAvailableFeatures() {
599        throw new UnsupportedOperationException();
600    }
601
602    @Override
603    public boolean hasSystemFeature(String name) {
604        throw new UnsupportedOperationException();
605    }
606
607    @Override
608    public boolean isSafeMode() {
609        throw new UnsupportedOperationException();
610    }
611
612    /**
613     * @hide
614     */
615    @Override
616    public void installPackageWithVerification(Uri packageURI, IPackageInstallObserver observer,
617            int flags, String installerPackageName, Uri verificationURI,
618            ManifestDigest manifestDigest, ContainerEncryptionParams encryptionParams) {
619        throw new UnsupportedOperationException();
620    }
621
622    /**
623     * @hide
624     */
625    @Override
626    public void installPackageWithVerificationAndEncryption(Uri packageURI,
627            IPackageInstallObserver observer, int flags, String installerPackageName,
628            VerificationParams verificationParams, ContainerEncryptionParams encryptionParams) {
629        throw new UnsupportedOperationException();
630    }
631
632    /**
633     * @hide
634     */
635    @Override
636    public boolean setApplicationBlockedSettingAsUser(String packageName, boolean blocked,
637            UserHandle user) {
638        return false;
639    }
640
641    /**
642     * @hide
643     */
644    @Override
645    public boolean getApplicationBlockedSettingAsUser(String packageName, UserHandle user) {
646        return false;
647    }
648
649    /**
650     * @hide
651     */
652    @Override
653    public int installExistingPackage(String packageName)
654            throws NameNotFoundException {
655        throw new UnsupportedOperationException();
656    }
657
658    @Override
659    public void verifyPendingInstall(int id, int verificationCode) {
660        throw new UnsupportedOperationException();
661    }
662
663    @Override
664    public void extendVerificationTimeout(int id, int verificationCodeAtTimeout,
665            long millisecondsToDelay) {
666        throw new UnsupportedOperationException();
667    }
668
669    /**
670     * @hide
671     */
672    @Override
673    public VerifierDeviceIdentity getVerifierDeviceIdentity() {
674        throw new UnsupportedOperationException();
675    }
676
677    /**
678     * @hide
679     */
680    @Override
681    public void installPackage(Uri packageURI, PackageInstallObserver observer,
682            int flags, String installerPackageName) {
683        throw new UnsupportedOperationException();
684    }
685
686    /**
687     * @hide
688     */
689    @Override
690    public void installPackageWithVerification(Uri packageURI,
691            PackageInstallObserver observer, int flags, String installerPackageName,
692            Uri verificationURI, ManifestDigest manifestDigest,
693            ContainerEncryptionParams encryptionParams) {
694        throw new UnsupportedOperationException();
695    }
696
697    /**
698     * @hide
699     */
700    @Override
701    public void installPackageWithVerificationAndEncryption(Uri packageURI,
702            PackageInstallObserver observer, int flags, String installerPackageName,
703            VerificationParams verificationParams, ContainerEncryptionParams encryptionParams) {
704        throw new UnsupportedOperationException();
705    }
706
707    /**
708     * @hide
709     */
710    @Override
711    public void addCrossProfileIntentFilter(IntentFilter filter, int sourceUserId, int targetUserId,
712            int flags) {
713        throw new UnsupportedOperationException();
714    }
715
716    /**
717     * @hide
718     */
719    @Override
720    public void clearCrossProfileIntentFilters(int sourceUserId) {
721        throw new UnsupportedOperationException();
722    }
723
724    /** {@hide} */
725    public PackageInstaller getPackageInstaller() {
726        throw new UnsupportedOperationException();
727    }
728
729    /**
730     * @hide
731     */
732    @Override
733    public void addCrossProfileIntentsForPackage(String packageName, int sourceUserId,
734            int targetUserId) {
735        throw new UnsupportedOperationException();
736    }
737
738    /**
739     * @hide
740     */
741    public Bitmap getUserIcon(int userId) {
742        throw new UnsupportedOperationException();
743    }
744}
745