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