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