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