BridgePackageManager.java revision d88c717b4e124e435e54bf1542774aa100773c3e
1/*
2 * Copyright (C) 2015 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 com.android.layoutlib.bridge.android;
18
19import android.annotation.NonNull;
20import android.app.PackageInstallObserver;
21import android.content.ComponentName;
22import android.content.Intent;
23import android.content.IntentFilter;
24import android.content.IntentSender;
25import android.content.pm.ActivityInfo;
26import android.content.pm.ApplicationInfo;
27import android.content.pm.ChangedPackages;
28import android.content.pm.InstantAppInfo;
29import android.content.pm.FeatureInfo;
30import android.content.pm.IPackageDataObserver;
31import android.content.pm.IPackageDeleteObserver;
32import android.content.pm.IPackageInstallObserver;
33import android.content.pm.IPackageStatsObserver;
34import android.content.pm.InstrumentationInfo;
35import android.content.pm.IntentFilterVerificationInfo;
36import android.content.pm.KeySet;
37import android.content.pm.PackageInfo;
38import android.content.pm.PackageInstaller;
39import android.content.pm.PackageItemInfo;
40import android.content.pm.PackageManager;
41import android.content.pm.PermissionGroupInfo;
42import android.content.pm.PermissionInfo;
43import android.content.pm.ProviderInfo;
44import android.content.pm.ResolveInfo;
45import android.content.pm.ServiceInfo;
46import android.content.pm.SharedLibraryInfo;
47import android.content.pm.VerifierDeviceIdentity;
48import android.content.pm.VersionedPackage;
49import android.content.res.Resources;
50import android.content.res.XmlResourceParser;
51import android.graphics.Rect;
52import android.graphics.drawable.ColorDrawable;
53import android.graphics.drawable.Drawable;
54import android.net.Uri;
55import android.os.Handler;
56import android.os.UserHandle;
57import android.os.storage.VolumeInfo;
58import java.util.List;
59
60/**
61 * An implementation of {@link PackageManager} that does nothing.
62 */
63@SuppressWarnings("deprecation")
64public class BridgePackageManager extends PackageManager {
65    @Override
66    public PackageInfo getPackageInfo(String packageName, int flags) throws NameNotFoundException {
67        return null;
68    }
69
70    @Override
71    public PackageInfo getPackageInfoAsUser(String packageName, int flags, int userId)
72            throws NameNotFoundException {
73        return null;
74    }
75
76    @Override
77    public PackageInfo getPackageInfo(VersionedPackage versionedPackage,
78            @PackageInfoFlags int flags) throws NameNotFoundException {
79        return null;
80    }
81
82    @Override
83    public List<SharedLibraryInfo> getSharedLibraries(@InstallFlags int flags) {
84        return null;
85    }
86
87    @Override
88    public List<SharedLibraryInfo> getSharedLibrariesAsUser(@InstallFlags int flags,
89            int userId) {
90        return null;
91    }
92
93    @Override
94    public String[] currentToCanonicalPackageNames(String[] names) {
95        return new String[0];
96    }
97
98    @Override
99    public String[] canonicalToCurrentPackageNames(String[] names) {
100        return new String[0];
101    }
102
103    @Override
104    public Intent getLaunchIntentForPackage(String packageName) {
105        return null;
106    }
107
108    @Override
109    public Intent getLeanbackLaunchIntentForPackage(String packageName) {
110        return null;
111    }
112
113    @Override
114    public int[] getPackageGids(String packageName) throws NameNotFoundException {
115        return new int[0];
116    }
117
118    @Override
119    public int[] getPackageGids(String packageName, int flags) throws NameNotFoundException {
120        return new int[0];
121    }
122
123    @Override
124    public int getPackageUid(String packageName, int flags) throws NameNotFoundException {
125        return 0;
126    }
127
128    @Override
129    public int getPackageUidAsUser(String packageName, int userHandle) throws NameNotFoundException {
130        return 0;
131    }
132
133    @Override
134    public int getPackageUidAsUser(String packageName, int flags, int userHandle) throws NameNotFoundException {
135        return 0;
136    }
137
138    @Override
139    public PermissionInfo getPermissionInfo(String name, int flags) throws NameNotFoundException {
140        return null;
141    }
142
143    @Override
144    public List<PermissionInfo> queryPermissionsByGroup(String group, int flags)
145            throws NameNotFoundException {
146        return null;
147    }
148
149    @Override
150    public boolean isPermissionReviewModeEnabled() {
151        return false;
152    }
153
154    @Override
155    public PermissionGroupInfo getPermissionGroupInfo(String name, int flags)
156            throws NameNotFoundException {
157        return null;
158    }
159
160    @Override
161    public List<PermissionGroupInfo> getAllPermissionGroups(int flags) {
162        return null;
163    }
164
165    @Override
166    public ApplicationInfo getApplicationInfo(String packageName, int flags)
167            throws NameNotFoundException {
168        return null;
169    }
170
171    @Override
172    public ApplicationInfo getApplicationInfoAsUser(String packageName, int flags, int userId)
173            throws NameNotFoundException {
174        return null;
175    }
176
177    @Override
178    public ActivityInfo getActivityInfo(ComponentName component, int flags)
179            throws NameNotFoundException {
180        return null;
181    }
182
183    @Override
184    public ActivityInfo getReceiverInfo(ComponentName component, int flags)
185            throws NameNotFoundException {
186        return null;
187    }
188
189    @Override
190    public ServiceInfo getServiceInfo(ComponentName component, int flags)
191            throws NameNotFoundException {
192        return null;
193    }
194
195    @Override
196    public ProviderInfo getProviderInfo(ComponentName component, int flags)
197            throws NameNotFoundException {
198        return null;
199    }
200
201    @Override
202    public List<PackageInfo> getInstalledPackages(int flags) {
203        return null;
204    }
205
206    @Override
207    public List<PackageInfo> getPackagesHoldingPermissions(String[] permissions, int flags) {
208        return null;
209    }
210
211    @Override
212    public List<PackageInfo> getInstalledPackagesAsUser(int flags, int userId) {
213        return null;
214    }
215
216    @Override
217    public int checkPermission(String permName, String pkgName) {
218        return 0;
219    }
220
221    @Override
222    public boolean isPermissionRevokedByPolicy(String permName, String pkgName) {
223        return false;
224    }
225
226    @Override
227    public String getPermissionControllerPackageName() {
228        return null;
229    }
230
231    @Override
232    public boolean addPermission(PermissionInfo info) {
233        return false;
234    }
235
236    @Override
237    public boolean addPermissionAsync(PermissionInfo info) {
238        return false;
239    }
240
241    @Override
242    public void removePermission(String name) {
243    }
244
245    @Override
246    public void grantRuntimePermission(String packageName, String permissionName, UserHandle user) {
247    }
248
249    @Override
250    public void revokeRuntimePermission(String packageName, String permissionName,
251            UserHandle user) {
252    }
253
254    @Override
255    public int getPermissionFlags(String permissionName, String packageName, UserHandle user) {
256        return 0;
257    }
258
259    @Override
260    public void updatePermissionFlags(String permissionName, String packageName, int flagMask,
261            int flagValues, UserHandle user) {
262    }
263
264    @Override
265    public boolean shouldShowRequestPermissionRationale(String permission) {
266        return false;
267    }
268
269    @Override
270    public int checkSignatures(String pkg1, String pkg2) {
271        return 0;
272    }
273
274    @Override
275    public int checkSignatures(int uid1, int uid2) {
276        return 0;
277    }
278
279    @Override
280    public String[] getPackagesForUid(int uid) {
281        return new String[0];
282    }
283
284    @Override
285    public String getNameForUid(int uid) {
286        return null;
287    }
288
289    @Override
290    public int getUidForSharedUser(String sharedUserName) throws NameNotFoundException {
291        return 0;
292    }
293
294    @Override
295    public List<ApplicationInfo> getInstalledApplications(int flags) {
296        return null;
297    }
298
299    @Override
300    public List<ApplicationInfo> getInstalledApplicationsAsUser(int flags, int userId) {
301        return null;
302    }
303
304    @Override
305    public List<InstantAppInfo> getInstantApps() {
306        return null;
307    }
308
309    @Override
310    public Drawable getInstantAppIcon(String packageName) {
311        assert false : "Unsupported operation";
312        return new ColorDrawable();
313    }
314
315    @Override
316    public byte[] getInstantAppCookie() {
317        return new byte[0];
318    }
319
320    @Override
321    public boolean isInstantApp() {
322        return false;
323    }
324
325    @Override
326    public boolean isInstantApp(String packageName) {
327        return false;
328    }
329
330    @Override
331    public int getInstantAppCookieMaxSize() {
332        return 0;
333    }
334
335    @Override
336    public boolean setInstantAppCookie(@NonNull byte[] cookie) {
337        return false;
338    }
339
340    @Override
341    public String[] getSystemSharedLibraryNames() {
342        return new String[0];
343    }
344
345    @Override
346    public String getServicesSystemSharedLibraryPackageName() {
347        return null;
348    }
349
350    @Override
351    public @NonNull String getSharedSystemSharedLibraryPackageName() {
352        return null;
353    }
354
355    @Override
356    public FeatureInfo[] getSystemAvailableFeatures() {
357        return new FeatureInfo[0];
358    }
359
360    @Override
361    public boolean hasSystemFeature(String name) {
362        return false;
363    }
364
365    @Override
366    public boolean hasSystemFeature(String name, int version) {
367        return false;
368    }
369
370    @Override
371    public ResolveInfo resolveActivity(Intent intent, int flags) {
372        return null;
373    }
374
375    @Override
376    public ResolveInfo resolveActivityAsUser(Intent intent, int flags, int userId) {
377        return null;
378    }
379
380    @Override
381    public List<ResolveInfo> queryIntentActivities(Intent intent, int flags) {
382        return null;
383    }
384
385    @Override
386    public List<ResolveInfo> queryIntentActivitiesAsUser(Intent intent, int flags, int userId) {
387        return null;
388    }
389
390    @Override
391    public List<ResolveInfo> queryIntentActivityOptions(ComponentName caller, Intent[] specifics,
392            Intent intent, int flags) {
393        return null;
394    }
395
396    @Override
397    public List<ResolveInfo> queryBroadcastReceivers(Intent intent, int flags) {
398        return null;
399    }
400
401    @Override
402    public List<ResolveInfo> queryBroadcastReceiversAsUser(Intent intent, int flags, int userId) {
403        return null;
404    }
405
406    @Override
407    public ResolveInfo resolveService(Intent intent, int flags) {
408        return null;
409    }
410
411    @Override
412    public List<ResolveInfo> queryIntentServices(Intent intent, int flags) {
413        return null;
414    }
415
416    @Override
417    public List<ResolveInfo> queryIntentServicesAsUser(Intent intent, int flags, int userId) {
418        return null;
419    }
420
421    @Override
422    public List<ResolveInfo> queryIntentContentProvidersAsUser(Intent intent, int flags,
423            int userId) {
424        return null;
425    }
426
427    @Override
428    public List<ResolveInfo> queryIntentContentProviders(Intent intent, int flags) {
429        return null;
430    }
431
432    @Override
433    public ProviderInfo resolveContentProvider(String name, int flags) {
434        return null;
435    }
436
437    @Override
438    public ProviderInfo resolveContentProviderAsUser(String name, int flags, int userId) {
439        return null;
440    }
441
442    @Override
443    public List<ProviderInfo> queryContentProviders(String processName, int uid, int flags) {
444        return null;
445    }
446
447    @Override
448    public InstrumentationInfo getInstrumentationInfo(ComponentName className, int flags)
449            throws NameNotFoundException {
450        return null;
451    }
452
453    @Override
454    public List<InstrumentationInfo> queryInstrumentation(String targetPackage, int flags) {
455        return null;
456    }
457
458    @Override
459    public Drawable getDrawable(String packageName, int resid, ApplicationInfo appInfo) {
460        return null;
461    }
462
463    @Override
464    public Drawable getActivityIcon(ComponentName activityName) throws NameNotFoundException {
465        return null;
466    }
467
468    @Override
469    public Drawable getActivityIcon(Intent intent) throws NameNotFoundException {
470        return null;
471    }
472
473    @Override
474    public Drawable getActivityBanner(ComponentName activityName) throws NameNotFoundException {
475        return null;
476    }
477
478    @Override
479    public Drawable getActivityBanner(Intent intent) throws NameNotFoundException {
480        return null;
481    }
482
483    @Override
484    public Drawable getDefaultActivityIcon() {
485        return null;
486    }
487
488    @Override
489    public Drawable getApplicationIcon(ApplicationInfo info) {
490        return null;
491    }
492
493    @Override
494    public Drawable getApplicationIcon(String packageName) throws NameNotFoundException {
495        return null;
496    }
497
498    @Override
499    public Drawable getApplicationBanner(ApplicationInfo info) {
500        return null;
501    }
502
503    @Override
504    public Drawable getApplicationBanner(String packageName) throws NameNotFoundException {
505        return null;
506    }
507
508    @Override
509    public Drawable getActivityLogo(ComponentName activityName) throws NameNotFoundException {
510        return null;
511    }
512
513    @Override
514    public Drawable getActivityLogo(Intent intent) throws NameNotFoundException {
515        return null;
516    }
517
518    @Override
519    public Drawable getApplicationLogo(ApplicationInfo info) {
520        return null;
521    }
522
523    @Override
524    public Drawable getApplicationLogo(String packageName) throws NameNotFoundException {
525        return null;
526    }
527
528    @Override
529    public Drawable getUserBadgedIcon(Drawable icon, UserHandle user) {
530        return null;
531    }
532
533    @Override
534    public Drawable getUserBadgedDrawableForDensity(Drawable drawable, UserHandle user,
535            Rect badgeLocation, int badgeDensity) {
536        return null;
537    }
538
539    @Override
540    public Drawable getUserBadgeForDensity(UserHandle user, int density) {
541        return null;
542    }
543
544    @Override
545    public Drawable getUserBadgeForDensityNoBackground(UserHandle user, int density) {
546        return null;
547    }
548
549    @Override
550    public CharSequence getUserBadgedLabel(CharSequence label, UserHandle user) {
551        return null;
552    }
553
554    @Override
555    public CharSequence getText(String packageName, int resid, ApplicationInfo appInfo) {
556        return null;
557    }
558
559    @Override
560    public XmlResourceParser getXml(String packageName, int resid, ApplicationInfo appInfo) {
561        return null;
562    }
563
564    @Override
565    public CharSequence getApplicationLabel(ApplicationInfo info) {
566        return null;
567    }
568
569    @Override
570    public Resources getResourcesForActivity(ComponentName activityName)
571            throws NameNotFoundException {
572        return null;
573    }
574
575    @Override
576    public Resources getResourcesForApplication(ApplicationInfo app) throws NameNotFoundException {
577        return null;
578    }
579
580    @Override
581    public Resources getResourcesForApplication(String appPackageName)
582            throws NameNotFoundException {
583        return null;
584    }
585
586    @Override
587    public Resources getResourcesForApplicationAsUser(String appPackageName, int userId)
588            throws NameNotFoundException {
589        return null;
590    }
591
592    @Override
593    public void installPackage(Uri packageURI, IPackageInstallObserver observer, int flags,
594            String installerPackageName) {
595    }
596
597    @Override
598    public void installPackage(Uri packageURI, PackageInstallObserver observer, int flags,
599            String installerPackageName) {
600    }
601
602    @Override
603    public int installExistingPackage(String packageName) throws NameNotFoundException {
604        return 0;
605    }
606
607    @Override
608    public int installExistingPackageAsUser(String packageName, int userId)
609            throws NameNotFoundException {
610        return 0;
611    }
612
613    @Override
614    public void verifyPendingInstall(int id, int verificationCode) {
615    }
616
617    @Override
618    public void extendVerificationTimeout(int id, int verificationCodeAtTimeout,
619            long millisecondsToDelay) {
620    }
621
622    @Override
623    public void verifyIntentFilter(int verificationId, int verificationCode,
624            List<String> outFailedDomains) {
625    }
626
627    @Override
628    public int getIntentVerificationStatusAsUser(String packageName, int userId) {
629        return 0;
630    }
631
632    @Override
633    public boolean updateIntentVerificationStatusAsUser(String packageName, int status, int userId) {
634        return false;
635    }
636
637    @Override
638    public List<IntentFilterVerificationInfo> getIntentFilterVerifications(String packageName) {
639        return null;
640    }
641
642    @Override
643    public List<IntentFilter> getAllIntentFilters(String packageName) {
644        return null;
645    }
646
647    @Override
648    public String getDefaultBrowserPackageNameAsUser(int userId) {
649        return null;
650    }
651
652    @Override
653    public boolean setDefaultBrowserPackageNameAsUser(String packageName, int userId) {
654        return false;
655    }
656
657    @Override
658    public void setInstallerPackageName(String targetPackage, String installerPackageName) {
659    }
660
661    @Override
662    public void setUpdateAvailable(String packageName, boolean updateAvailable) {
663    }
664
665    @Override
666    public void deletePackage(String packageName, IPackageDeleteObserver observer, int flags) {
667    }
668
669    @Override
670    public void deletePackageAsUser(String packageName, IPackageDeleteObserver observer, int flags,
671            int userId) {
672    }
673
674    @Override
675    public String getInstallerPackageName(String packageName) {
676        return null;
677    }
678
679    @Override
680    public void clearApplicationUserData(String packageName, IPackageDataObserver observer) {
681    }
682
683    @Override
684    public void deleteApplicationCacheFiles(String packageName, IPackageDataObserver observer) {
685    }
686
687    @Override
688    public void deleteApplicationCacheFilesAsUser(String packageName, int userId,
689            IPackageDataObserver observer) {
690    }
691
692    @Override
693    public void freeStorageAndNotify(String volumeUuid, long freeStorageSize,
694            IPackageDataObserver observer) {
695    }
696
697    @Override
698    public void freeStorage(String volumeUuid, long freeStorageSize, IntentSender pi) {
699    }
700
701    @Override
702    public void getPackageSizeInfoAsUser(String packageName, int userHandle,
703            IPackageStatsObserver observer) {
704    }
705
706    @Override
707    public void addPackageToPreferred(String packageName) {
708    }
709
710    @Override
711    public void removePackageFromPreferred(String packageName) {
712    }
713
714    @Override
715    public List<PackageInfo> getPreferredPackages(int flags) {
716        return null;
717    }
718
719    @Override
720    public void addPreferredActivity(IntentFilter filter, int match, ComponentName[] set,
721            ComponentName activity) {
722    }
723
724    @Override
725    public void replacePreferredActivity(IntentFilter filter, int match, ComponentName[] set,
726            ComponentName activity) {
727    }
728
729    @Override
730    public void clearPackagePreferredActivities(String packageName) {
731    }
732
733    @Override
734    public int getPreferredActivities(List<IntentFilter> outFilters,
735            List<ComponentName> outActivities, String packageName) {
736        return 0;
737    }
738
739    @Override
740    public ComponentName getHomeActivities(List<ResolveInfo> outActivities) {
741        return null;
742    }
743
744    @Override
745    public void setComponentEnabledSetting(ComponentName componentName, int newState, int flags) {
746    }
747
748    @Override
749    public int getComponentEnabledSetting(ComponentName componentName) {
750        return 0;
751    }
752
753    @Override
754    public void setApplicationEnabledSetting(String packageName, int newState, int flags) {
755    }
756
757    @Override
758    public int getApplicationEnabledSetting(String packageName) {
759        return 0;
760    }
761
762    @Override
763    public void flushPackageRestrictionsAsUser(int userId) {
764    }
765
766    @Override
767    public boolean setApplicationHiddenSettingAsUser(String packageName, boolean hidden,
768            UserHandle userHandle) {
769        return false;
770    }
771
772    @Override
773    public boolean getApplicationHiddenSettingAsUser(String packageName, UserHandle userHandle) {
774        return false;
775    }
776
777    @Override
778    public boolean isSafeMode() {
779        return false;
780    }
781
782    @Override
783    public void addOnPermissionsChangeListener(OnPermissionsChangedListener listener) {
784    }
785
786    @Override
787    public void removeOnPermissionsChangeListener(OnPermissionsChangedListener listener) {
788    }
789
790    @Override
791    public KeySet getKeySetByAlias(String packageName, String alias) {
792        return null;
793    }
794
795    @Override
796    public KeySet getSigningKeySet(String packageName) {
797        return null;
798    }
799
800    @Override
801    public boolean isSignedBy(String packageName, KeySet ks) {
802        return false;
803    }
804
805    @Override
806    public boolean isSignedByExactly(String packageName, KeySet ks) {
807        return false;
808    }
809
810    @Override
811    public String[] setPackagesSuspendedAsUser(String[] packageNames, boolean suspended,
812            int userId) {
813        return new String[]{};
814    }
815
816    @Override
817    public boolean isPackageSuspendedForUser(String packageName, int userId) {
818        return false;
819    }
820
821    @Override
822    public void setApplicationCategoryHint(String packageName, int categoryHint) {
823    }
824
825    @Override
826    public int getMoveStatus(int moveId) {
827        return 0;
828    }
829
830    @Override
831    public void registerMoveCallback(MoveCallback callback, Handler handler) {
832    }
833
834    @Override
835    public void unregisterMoveCallback(MoveCallback callback) {
836    }
837
838    @Override
839    public int movePackage(String packageName, VolumeInfo vol) {
840        return 0;
841    }
842
843    @Override
844    public VolumeInfo getPackageCurrentVolume(ApplicationInfo app) {
845        return null;
846    }
847
848    @Override
849    public List<VolumeInfo> getPackageCandidateVolumes(ApplicationInfo app) {
850        return null;
851    }
852
853    @Override
854    public int movePrimaryStorage(VolumeInfo vol) {
855        return 0;
856    }
857
858    @Override
859    public VolumeInfo getPrimaryStorageCurrentVolume() {
860        return null;
861    }
862
863    @Override
864    public List<VolumeInfo> getPrimaryStorageCandidateVolumes() {
865        return null;
866    }
867
868    @Override
869    public VerifierDeviceIdentity getVerifierDeviceIdentity() {
870        return null;
871    }
872
873    @Override
874    public ChangedPackages getChangedPackages(int sequenceNumber) {
875        return null;
876    }
877
878    @Override
879    public boolean isUpgrade() {
880        return false;
881    }
882
883    @Override
884    public PackageInstaller getPackageInstaller() {
885        return null;
886    }
887
888    @Override
889    public void addCrossProfileIntentFilter(IntentFilter filter, int sourceUserId, int targetUserId,
890            int flags) {
891    }
892
893    @Override
894    public void clearCrossProfileIntentFilters(int sourceUserId) {
895    }
896
897    @Override
898    public Drawable loadItemIcon(PackageItemInfo itemInfo, ApplicationInfo appInfo) {
899        return null;
900    }
901
902    @Override
903    public Drawable loadUnbadgedItemIcon(PackageItemInfo itemInfo, ApplicationInfo appInfo) {
904        return null;
905    }
906
907    @Override
908    public boolean isPackageAvailable(String packageName) {
909        return false;
910    }
911
912    @Override
913    public int getInstallReason(String packageName, UserHandle user) {
914        return INSTALL_REASON_UNKNOWN;
915    }
916
917    @Override
918    public boolean canRequestPackageInstalls() {
919        return false;
920    }
921
922    @Override
923    public ComponentName getInstantAppResolverSettingsComponent() {
924        return null;
925    }
926}
927