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