MockPackageManager.java revision 0363c3eb089afd4474bfd6ae6ee8a500d6e97614
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    /** @hide */
309    @Override
310    public ProviderInfo resolveContentProviderAsUser(String name, int flags, int userId) {
311        throw new UnsupportedOperationException();
312    }
313
314    @Override
315    public List<ProviderInfo> queryContentProviders(String processName, int uid, int flags) {
316        throw new UnsupportedOperationException();
317    }
318
319    @Override
320    public InstrumentationInfo getInstrumentationInfo(ComponentName className, int flags)
321    throws NameNotFoundException {
322        throw new UnsupportedOperationException();
323    }
324
325    @Override
326    public List<InstrumentationInfo> queryInstrumentation(
327            String targetPackage, int flags) {
328        throw new UnsupportedOperationException();
329    }
330
331    @Override
332    public Drawable getDrawable(String packageName, int resid, ApplicationInfo appInfo) {
333        throw new UnsupportedOperationException();
334    }
335
336    @Override
337    public Drawable getActivityIcon(ComponentName activityName)
338    throws NameNotFoundException {
339        throw new UnsupportedOperationException();
340    }
341
342    @Override
343    public Drawable getActivityIcon(Intent intent) throws NameNotFoundException {
344        throw new UnsupportedOperationException();
345    }
346
347    @Override
348    public Drawable getDefaultActivityIcon() {
349        throw new UnsupportedOperationException();
350    }
351
352    @Override
353    public Drawable getActivityBanner(ComponentName activityName)
354            throws NameNotFoundException {
355        throw new UnsupportedOperationException();
356    }
357
358    @Override
359    public Drawable getActivityBanner(Intent intent) throws NameNotFoundException {
360        throw new UnsupportedOperationException();
361    }
362
363    @Override
364    public Drawable getApplicationBanner(ApplicationInfo info) {
365        throw new UnsupportedOperationException();
366    }
367
368    @Override
369    public Drawable getApplicationBanner(String packageName) throws NameNotFoundException {
370        throw new UnsupportedOperationException();
371    }
372
373    @Override
374    public Drawable getApplicationIcon(ApplicationInfo info) {
375        throw new UnsupportedOperationException();
376    }
377
378    @Override
379    public Drawable getApplicationIcon(String packageName) throws NameNotFoundException {
380        throw new UnsupportedOperationException();
381    }
382
383    @Override
384    public Drawable getActivityLogo(ComponentName activityName) throws NameNotFoundException {
385        throw new UnsupportedOperationException();
386    }
387
388    @Override
389    public Drawable getActivityLogo(Intent intent) throws NameNotFoundException {
390        throw new UnsupportedOperationException();
391    }
392
393    @Override
394    public Drawable getApplicationLogo(ApplicationInfo info) {
395        throw new UnsupportedOperationException();
396    }
397
398    @Override
399    public Drawable getApplicationLogo(String packageName) throws NameNotFoundException {
400        throw new UnsupportedOperationException();
401    }
402
403    @Override
404    public CharSequence getText(String packageName, int resid, ApplicationInfo appInfo) {
405        throw new UnsupportedOperationException();
406    }
407
408    @Override
409    public XmlResourceParser getXml(String packageName, int resid,
410            ApplicationInfo appInfo) {
411        throw new UnsupportedOperationException();
412    }
413
414    @Override
415    public CharSequence getApplicationLabel(ApplicationInfo info) {
416        throw new UnsupportedOperationException();
417    }
418
419    @Override
420    public Resources getResourcesForActivity(ComponentName activityName)
421    throws NameNotFoundException {
422        throw new UnsupportedOperationException();
423    }
424
425    @Override
426    public Resources getResourcesForApplication(ApplicationInfo app) {
427        throw new UnsupportedOperationException();
428    }
429
430    @Override
431    public Resources getResourcesForApplication(String appPackageName)
432    throws NameNotFoundException {
433        throw new UnsupportedOperationException();
434    }
435
436    /** @hide */
437    @Override
438    public Resources getResourcesForApplicationAsUser(String appPackageName, int userId) {
439        throw new UnsupportedOperationException();
440    }
441
442    @Override
443    public PackageInfo getPackageArchiveInfo(String archiveFilePath, int flags) {
444        throw new UnsupportedOperationException();
445    }
446
447    /**
448     * @hide - to match hiding in superclass
449     */
450    @Override
451    public void installPackage(Uri packageURI, IPackageInstallObserver observer,
452            int flags, String installerPackageName) {
453        throw new UnsupportedOperationException();
454    }
455
456    @Override
457    public void setInstallerPackageName(String targetPackage,
458            String installerPackageName) {
459        throw new UnsupportedOperationException();
460    }
461
462    /**
463     * @hide - to match hiding in superclass
464     */
465    @Override
466    public void movePackage(String packageName, IPackageMoveObserver observer, int flags) {
467        throw new UnsupportedOperationException();
468    }
469
470    @Override
471    public String getInstallerPackageName(String packageName) {
472        throw new UnsupportedOperationException();
473    }
474
475    /**
476     * @hide - to match hiding in superclass
477     */
478    @Override
479    public void clearApplicationUserData(
480            String packageName, IPackageDataObserver observer) {
481        throw new UnsupportedOperationException();
482    }
483
484    /**
485     * @hide - to match hiding in superclass
486     */
487    @Override
488    public void deleteApplicationCacheFiles(
489            String packageName, IPackageDataObserver observer) {
490        throw new UnsupportedOperationException();
491    }
492
493    /**
494     * @hide - to match hiding in superclass
495     */
496    @Override
497    public void freeStorageAndNotify(
498            long idealStorageSize, IPackageDataObserver observer) {
499        throw new UnsupportedOperationException();
500    }
501
502    /**
503     * @hide - to match hiding in superclass
504     */
505    @Override
506    public void freeStorage(
507            long idealStorageSize, IntentSender pi) {
508        throw new UnsupportedOperationException();
509    }
510
511    /**
512     * @hide - to match hiding in superclass
513     */
514    @Override
515    public void deletePackage(
516            String packageName, IPackageDeleteObserver observer, int flags) {
517        throw new UnsupportedOperationException();
518    }
519
520    @Override
521    public void addPackageToPreferred(String packageName) {
522        throw new UnsupportedOperationException();
523    }
524
525    @Override
526    public void removePackageFromPreferred(String packageName) {
527        throw new UnsupportedOperationException();
528    }
529
530    @Override
531    public List<PackageInfo> getPreferredPackages(int flags) {
532        throw new UnsupportedOperationException();
533    }
534
535    @Override
536    public void setComponentEnabledSetting(ComponentName componentName,
537            int newState, int flags) {
538        throw new UnsupportedOperationException();
539    }
540
541    @Override
542    public int getComponentEnabledSetting(ComponentName componentName) {
543        throw new UnsupportedOperationException();
544    }
545
546    @Override
547    public void setApplicationEnabledSetting(String packageName, int newState, int flags) {
548        throw new UnsupportedOperationException();
549    }
550
551    @Override
552    public int getApplicationEnabledSetting(String packageName) {
553        throw new UnsupportedOperationException();
554    }
555
556    @Override
557    public void addPreferredActivity(IntentFilter filter,
558            int match, ComponentName[] set, ComponentName activity) {
559        throw new UnsupportedOperationException();
560    }
561
562    /**
563     * @hide - to match hiding in superclass
564     */
565    @Override
566    public void replacePreferredActivity(IntentFilter filter,
567            int match, ComponentName[] set, ComponentName activity) {
568        throw new UnsupportedOperationException();
569    }
570
571
572    @Override
573    public void clearPackagePreferredActivities(String packageName) {
574        throw new UnsupportedOperationException();
575    }
576
577    /**
578     * @hide - to match hiding in superclass
579     */
580    @Override
581    public void getPackageSizeInfo(String packageName, int userHandle,
582            IPackageStatsObserver observer) {
583        throw new UnsupportedOperationException();
584    }
585
586    @Override
587    public int getPreferredActivities(List<IntentFilter> outFilters,
588            List<ComponentName> outActivities, String packageName) {
589        throw new UnsupportedOperationException();
590    }
591
592    /** @hide - hidden in superclass */
593    @Override
594    public ComponentName getHomeActivities(List<ResolveInfo> outActivities) {
595        throw new UnsupportedOperationException();
596    }
597
598    @Override
599    public String[] getSystemSharedLibraryNames() {
600        throw new UnsupportedOperationException();
601    }
602
603    @Override
604    public FeatureInfo[] getSystemAvailableFeatures() {
605        throw new UnsupportedOperationException();
606    }
607
608    @Override
609    public boolean hasSystemFeature(String name) {
610        throw new UnsupportedOperationException();
611    }
612
613    @Override
614    public boolean isSafeMode() {
615        throw new UnsupportedOperationException();
616    }
617
618    /**
619     * @hide
620     */
621    @Override
622    public void installPackageWithVerification(Uri packageURI, IPackageInstallObserver observer,
623            int flags, String installerPackageName, Uri verificationURI,
624            ManifestDigest manifestDigest, ContainerEncryptionParams encryptionParams) {
625        throw new UnsupportedOperationException();
626    }
627
628    /**
629     * @hide
630     */
631    @Override
632    public void installPackageWithVerificationAndEncryption(Uri packageURI,
633            IPackageInstallObserver observer, int flags, String installerPackageName,
634            VerificationParams verificationParams, ContainerEncryptionParams encryptionParams) {
635        throw new UnsupportedOperationException();
636    }
637
638    /**
639     * @hide
640     */
641    @Override
642    public boolean setApplicationBlockedSettingAsUser(String packageName, boolean blocked,
643            UserHandle user) {
644        return false;
645    }
646
647    /**
648     * @hide
649     */
650    @Override
651    public boolean getApplicationBlockedSettingAsUser(String packageName, UserHandle user) {
652        return false;
653    }
654
655    /**
656     * @hide
657     */
658    @Override
659    public int installExistingPackage(String packageName)
660            throws NameNotFoundException {
661        throw new UnsupportedOperationException();
662    }
663
664    @Override
665    public void verifyPendingInstall(int id, int verificationCode) {
666        throw new UnsupportedOperationException();
667    }
668
669    @Override
670    public void extendVerificationTimeout(int id, int verificationCodeAtTimeout,
671            long millisecondsToDelay) {
672        throw new UnsupportedOperationException();
673    }
674
675    /**
676     * @hide
677     */
678    @Override
679    public VerifierDeviceIdentity getVerifierDeviceIdentity() {
680        throw new UnsupportedOperationException();
681    }
682
683    /**
684     * @hide
685     */
686    @Override
687    public void installPackage(Uri packageURI, PackageInstallObserver observer,
688            int flags, String installerPackageName) {
689        throw new UnsupportedOperationException();
690    }
691
692    /**
693     * @hide
694     */
695    @Override
696    public void installPackageWithVerification(Uri packageURI,
697            PackageInstallObserver observer, int flags, String installerPackageName,
698            Uri verificationURI, ManifestDigest manifestDigest,
699            ContainerEncryptionParams encryptionParams) {
700        throw new UnsupportedOperationException();
701    }
702
703    /**
704     * @hide
705     */
706    @Override
707    public void installPackageWithVerificationAndEncryption(Uri packageURI,
708            PackageInstallObserver observer, int flags, String installerPackageName,
709            VerificationParams verificationParams, ContainerEncryptionParams encryptionParams) {
710        throw new UnsupportedOperationException();
711    }
712
713    /**
714     * @hide
715     */
716    @Override
717    public void addCrossProfileIntentFilter(IntentFilter filter, int sourceUserId, int targetUserId,
718            int flags) {
719        throw new UnsupportedOperationException();
720    }
721
722    /**
723     * @hide
724     */
725    @Override
726    public void clearCrossProfileIntentFilters(int sourceUserId) {
727        throw new UnsupportedOperationException();
728    }
729
730    /** {@hide} */
731    public PackageInstaller getPackageInstaller() {
732        throw new UnsupportedOperationException();
733    }
734
735    /**
736     * @hide
737     */
738    @Override
739    public void addCrossProfileIntentsForPackage(String packageName, int sourceUserId,
740            int targetUserId) {
741        throw new UnsupportedOperationException();
742    }
743
744    /**
745     * @hide
746     */
747    public Bitmap getUserIcon(int userId) {
748        throw new UnsupportedOperationException();
749    }
750}
751