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