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