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