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