MockPackageManager.java revision 88cc346d0602e0b173b5076cd0051120682da601
1/* 2 * Copyright (C) 2008 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 android.test.mock; 18 19import android.app.PackageInstallObserver; 20import android.content.ComponentName; 21import android.content.Intent; 22import android.content.IntentFilter; 23import android.content.IntentSender; 24import android.content.pm.ActivityInfo; 25import android.content.pm.ApplicationInfo; 26import android.content.pm.ContainerEncryptionParams; 27import android.content.pm.FeatureInfo; 28import android.content.pm.IPackageDataObserver; 29import android.content.pm.IPackageDeleteObserver; 30import android.content.pm.IPackageInstallObserver; 31import android.content.pm.IPackageMoveObserver; 32import android.content.pm.IPackageStatsObserver; 33import android.content.pm.InstrumentationInfo; 34import android.content.pm.ManifestDigest; 35import android.content.pm.PackageInfo; 36import android.content.pm.PackageInstaller; 37import android.content.pm.PackageManager; 38import android.content.pm.PermissionGroupInfo; 39import android.content.pm.PermissionInfo; 40import android.content.pm.ProviderInfo; 41import android.content.pm.ResolveInfo; 42import android.content.pm.ServiceInfo; 43import android.content.pm.VerificationParams; 44import android.content.pm.VerifierDeviceIdentity; 45import android.content.res.Resources; 46import android.content.res.XmlResourceParser; 47import android.graphics.Bitmap; 48import android.graphics.drawable.Drawable; 49import android.net.Uri; 50import android.os.UserHandle; 51 52import java.util.List; 53 54/** 55 * A mock {@link android.content.pm.PackageManager} class. All methods are non-functional and throw 56 * {@link java.lang.UnsupportedOperationException}. Override it to provide the operations that you 57 * need. 58 */ 59public class MockPackageManager extends PackageManager { 60 61 @Override 62 public PackageInfo getPackageInfo(String packageName, int flags) 63 throws NameNotFoundException { 64 throw new UnsupportedOperationException(); 65 } 66 67 @Override 68 public String[] currentToCanonicalPackageNames(String[] names) { 69 throw new UnsupportedOperationException(); 70 } 71 72 @Override 73 public String[] canonicalToCurrentPackageNames(String[] names) { 74 throw new UnsupportedOperationException(); 75 } 76 77 @Override 78 public Intent getLaunchIntentForPackage(String packageName) { 79 throw new UnsupportedOperationException(); 80 } 81 82 @Override 83 public Intent getLeanbackLaunchIntentForPackage(String packageName) { 84 throw new UnsupportedOperationException(); 85 } 86 87 @Override 88 89 public int[] getPackageGids(String packageName) throws NameNotFoundException { 90 throw new UnsupportedOperationException(); 91 } 92 93 /** @hide */ 94 @Override 95 public int getPackageUid(String packageName, int userHandle) 96 throws NameNotFoundException { 97 throw new UnsupportedOperationException(); 98 } 99 100 @Override 101 public PermissionInfo getPermissionInfo(String name, int flags) 102 throws NameNotFoundException { 103 throw new UnsupportedOperationException(); 104 } 105 106 @Override 107 public List<PermissionInfo> queryPermissionsByGroup(String group, int flags) 108 throws NameNotFoundException { 109 throw new UnsupportedOperationException(); 110 } 111 112 @Override 113 public PermissionGroupInfo getPermissionGroupInfo(String name, 114 int flags) throws NameNotFoundException { 115 throw new UnsupportedOperationException(); 116 } 117 118 @Override 119 public List<PermissionGroupInfo> getAllPermissionGroups(int flags) { 120 throw new UnsupportedOperationException(); 121 } 122 123 @Override 124 public ApplicationInfo getApplicationInfo(String packageName, int flags) 125 throws NameNotFoundException { 126 throw new UnsupportedOperationException(); 127 } 128 129 @Override 130 public ActivityInfo getActivityInfo(ComponentName className, int flags) 131 throws NameNotFoundException { 132 throw new UnsupportedOperationException(); 133 } 134 135 @Override 136 public ActivityInfo getReceiverInfo(ComponentName className, int flags) 137 throws NameNotFoundException { 138 throw new UnsupportedOperationException(); 139 } 140 141 @Override 142 public ServiceInfo getServiceInfo(ComponentName className, int flags) 143 throws NameNotFoundException { 144 throw new UnsupportedOperationException(); 145 } 146 147 @Override 148 public ProviderInfo getProviderInfo(ComponentName className, int flags) 149 throws NameNotFoundException { 150 throw new UnsupportedOperationException(); 151 } 152 153 @Override 154 public List<PackageInfo> getInstalledPackages(int flags) { 155 throw new UnsupportedOperationException(); 156 } 157 158 @Override 159 public List<PackageInfo> getPackagesHoldingPermissions(String[] permissions, 160 int flags) { 161 throw new UnsupportedOperationException(); 162 } 163 164 /** @hide */ 165 @Override 166 public List<PackageInfo> getInstalledPackages(int flags, int userId) { 167 throw new UnsupportedOperationException(); 168 } 169 170 @Override 171 public int checkPermission(String permName, String pkgName) { 172 throw new UnsupportedOperationException(); 173 } 174 175 @Override 176 public boolean addPermission(PermissionInfo info) { 177 throw new UnsupportedOperationException(); 178 } 179 180 @Override 181 public boolean addPermissionAsync(PermissionInfo info) { 182 throw new UnsupportedOperationException(); 183 } 184 185 @Override 186 public void removePermission(String name) { 187 throw new UnsupportedOperationException(); 188 } 189 190 /** @hide */ 191 @Override 192 public void grantPermission(String packageName, String permissionName) { 193 throw new UnsupportedOperationException(); 194 } 195 196 /** @hide */ 197 @Override 198 public void revokePermission(String packageName, String permissionName) { 199 throw new UnsupportedOperationException(); 200 } 201 202 @Override 203 public int checkSignatures(String pkg1, String pkg2) { 204 throw new UnsupportedOperationException(); 205 } 206 207 @Override 208 public int checkSignatures(int uid1, int uid2) { 209 throw new UnsupportedOperationException(); 210 } 211 212 @Override 213 public String[] getPackagesForUid(int uid) { 214 throw new UnsupportedOperationException(); 215 } 216 217 @Override 218 public String getNameForUid(int uid) { 219 throw new UnsupportedOperationException(); 220 } 221 222 /** 223 * @hide - to match hiding in superclass 224 */ 225 @Override 226 public int getUidForSharedUser(String sharedUserName) { 227 throw new UnsupportedOperationException(); 228 } 229 230 @Override 231 public List<ApplicationInfo> getInstalledApplications(int flags) { 232 throw new UnsupportedOperationException(); 233 } 234 235 @Override 236 public ResolveInfo resolveActivity(Intent intent, int flags) { 237 throw new UnsupportedOperationException(); 238 } 239 240 /** @hide */ 241 @Override 242 public ResolveInfo resolveActivityAsUser(Intent intent, int flags, int userId) { 243 throw new UnsupportedOperationException(); 244 } 245 246 @Override 247 public List<ResolveInfo> queryIntentActivities(Intent intent, int flags) { 248 throw new UnsupportedOperationException(); 249 } 250 251 /** @hide */ 252 @Override 253 public List<ResolveInfo> queryIntentActivitiesAsUser(Intent intent, 254 int flags, int userId) { 255 throw new UnsupportedOperationException(); 256 } 257 258 @Override 259 public List<ResolveInfo> queryIntentActivityOptions(ComponentName caller, 260 Intent[] specifics, Intent intent, int flags) { 261 throw new UnsupportedOperationException(); 262 } 263 264 @Override 265 public List<ResolveInfo> queryBroadcastReceivers(Intent intent, int flags) { 266 throw new UnsupportedOperationException(); 267 } 268 269 /** @hide */ 270 @Override 271 public List<ResolveInfo> queryBroadcastReceivers(Intent intent, int flags, int userId) { 272 throw new UnsupportedOperationException(); 273 } 274 275 @Override 276 public ResolveInfo resolveService(Intent intent, int flags) { 277 throw new UnsupportedOperationException(); 278 } 279 280 @Override 281 public List<ResolveInfo> queryIntentServices(Intent intent, int flags) { 282 throw new UnsupportedOperationException(); 283 } 284 285 /** @hide */ 286 @Override 287 public List<ResolveInfo> queryIntentServicesAsUser(Intent intent, int flags, int userId) { 288 throw new UnsupportedOperationException(); 289 } 290 291 /** @hide */ 292 @Override 293 public List<ResolveInfo> queryIntentContentProvidersAsUser( 294 Intent intent, int flags, int userId) { 295 throw new UnsupportedOperationException(); 296 } 297 298 @Override 299 public List<ResolveInfo> queryIntentContentProviders(Intent intent, int flags) { 300 throw new UnsupportedOperationException(); 301 } 302 303 @Override 304 public ProviderInfo resolveContentProvider(String name, int flags) { 305 throw new UnsupportedOperationException(); 306 } 307 308 @Override 309 public List<ProviderInfo> queryContentProviders(String processName, int uid, int flags) { 310 throw new UnsupportedOperationException(); 311 } 312 313 @Override 314 public InstrumentationInfo getInstrumentationInfo(ComponentName className, int flags) 315 throws NameNotFoundException { 316 throw new UnsupportedOperationException(); 317 } 318 319 @Override 320 public List<InstrumentationInfo> queryInstrumentation( 321 String targetPackage, int flags) { 322 throw new UnsupportedOperationException(); 323 } 324 325 @Override 326 public Drawable getDrawable(String packageName, int resid, ApplicationInfo appInfo) { 327 throw new UnsupportedOperationException(); 328 } 329 330 @Override 331 public Drawable getActivityIcon(ComponentName activityName) 332 throws NameNotFoundException { 333 throw new UnsupportedOperationException(); 334 } 335 336 @Override 337 public Drawable getActivityIcon(Intent intent) throws NameNotFoundException { 338 throw new UnsupportedOperationException(); 339 } 340 341 @Override 342 public Drawable getDefaultActivityIcon() { 343 throw new UnsupportedOperationException(); 344 } 345 346 @Override 347 public Drawable getActivityBanner(ComponentName activityName) 348 throws NameNotFoundException { 349 throw new UnsupportedOperationException(); 350 } 351 352 @Override 353 public Drawable getActivityBanner(Intent intent) throws NameNotFoundException { 354 throw new UnsupportedOperationException(); 355 } 356 357 @Override 358 public Drawable getApplicationBanner(ApplicationInfo info) { 359 throw new UnsupportedOperationException(); 360 } 361 362 @Override 363 public Drawable getApplicationBanner(String packageName) throws NameNotFoundException { 364 throw new UnsupportedOperationException(); 365 } 366 367 @Override 368 public Drawable getApplicationIcon(ApplicationInfo info) { 369 throw new UnsupportedOperationException(); 370 } 371 372 @Override 373 public Drawable getApplicationIcon(String packageName) throws NameNotFoundException { 374 throw new UnsupportedOperationException(); 375 } 376 377 @Override 378 public Drawable getActivityLogo(ComponentName activityName) throws NameNotFoundException { 379 throw new UnsupportedOperationException(); 380 } 381 382 @Override 383 public Drawable getActivityLogo(Intent intent) throws NameNotFoundException { 384 throw new UnsupportedOperationException(); 385 } 386 387 @Override 388 public Drawable getApplicationLogo(ApplicationInfo info) { 389 throw new UnsupportedOperationException(); 390 } 391 392 @Override 393 public Drawable getApplicationLogo(String packageName) throws NameNotFoundException { 394 throw new UnsupportedOperationException(); 395 } 396 397 @Override 398 public CharSequence getText(String packageName, int resid, ApplicationInfo appInfo) { 399 throw new UnsupportedOperationException(); 400 } 401 402 @Override 403 public XmlResourceParser getXml(String packageName, int resid, 404 ApplicationInfo appInfo) { 405 throw new UnsupportedOperationException(); 406 } 407 408 @Override 409 public CharSequence getApplicationLabel(ApplicationInfo info) { 410 throw new UnsupportedOperationException(); 411 } 412 413 @Override 414 public Resources getResourcesForActivity(ComponentName activityName) 415 throws NameNotFoundException { 416 throw new UnsupportedOperationException(); 417 } 418 419 @Override 420 public Resources getResourcesForApplication(ApplicationInfo app) { 421 throw new UnsupportedOperationException(); 422 } 423 424 @Override 425 public Resources getResourcesForApplication(String appPackageName) 426 throws NameNotFoundException { 427 throw new UnsupportedOperationException(); 428 } 429 430 /** @hide */ 431 @Override 432 public Resources getResourcesForApplicationAsUser(String appPackageName, int userId) { 433 throw new UnsupportedOperationException(); 434 } 435 436 @Override 437 public PackageInfo getPackageArchiveInfo(String archiveFilePath, int flags) { 438 throw new UnsupportedOperationException(); 439 } 440 441 /** 442 * @hide - to match hiding in superclass 443 */ 444 @Override 445 public void installPackage(Uri packageURI, IPackageInstallObserver observer, 446 int flags, String installerPackageName) { 447 throw new UnsupportedOperationException(); 448 } 449 450 @Override 451 public void setInstallerPackageName(String targetPackage, 452 String installerPackageName) { 453 throw new UnsupportedOperationException(); 454 } 455 456 /** 457 * @hide - to match hiding in superclass 458 */ 459 @Override 460 public void movePackage(String packageName, IPackageMoveObserver observer, int flags) { 461 throw new UnsupportedOperationException(); 462 } 463 464 @Override 465 public String getInstallerPackageName(String packageName) { 466 throw new UnsupportedOperationException(); 467 } 468 469 /** 470 * @hide - to match hiding in superclass 471 */ 472 @Override 473 public void clearApplicationUserData( 474 String packageName, IPackageDataObserver observer) { 475 throw new UnsupportedOperationException(); 476 } 477 478 /** 479 * @hide - to match hiding in superclass 480 */ 481 @Override 482 public void deleteApplicationCacheFiles( 483 String packageName, IPackageDataObserver observer) { 484 throw new UnsupportedOperationException(); 485 } 486 487 /** 488 * @hide - to match hiding in superclass 489 */ 490 @Override 491 public void freeStorageAndNotify( 492 long idealStorageSize, IPackageDataObserver observer) { 493 throw new UnsupportedOperationException(); 494 } 495 496 /** 497 * @hide - to match hiding in superclass 498 */ 499 @Override 500 public void freeStorage( 501 long idealStorageSize, IntentSender pi) { 502 throw new UnsupportedOperationException(); 503 } 504 505 /** 506 * @hide - to match hiding in superclass 507 */ 508 @Override 509 public void deletePackage( 510 String packageName, IPackageDeleteObserver observer, int flags) { 511 throw new UnsupportedOperationException(); 512 } 513 514 @Override 515 public void addPackageToPreferred(String packageName) { 516 throw new UnsupportedOperationException(); 517 } 518 519 @Override 520 public void removePackageFromPreferred(String packageName) { 521 throw new UnsupportedOperationException(); 522 } 523 524 @Override 525 public List<PackageInfo> getPreferredPackages(int flags) { 526 throw new UnsupportedOperationException(); 527 } 528 529 @Override 530 public void setComponentEnabledSetting(ComponentName componentName, 531 int newState, int flags) { 532 throw new UnsupportedOperationException(); 533 } 534 535 @Override 536 public int getComponentEnabledSetting(ComponentName componentName) { 537 throw new UnsupportedOperationException(); 538 } 539 540 @Override 541 public void setApplicationEnabledSetting(String packageName, int newState, int flags) { 542 throw new UnsupportedOperationException(); 543 } 544 545 @Override 546 public int getApplicationEnabledSetting(String packageName) { 547 throw new UnsupportedOperationException(); 548 } 549 550 @Override 551 public void addPreferredActivity(IntentFilter filter, 552 int match, ComponentName[] set, ComponentName activity) { 553 throw new UnsupportedOperationException(); 554 } 555 556 /** 557 * @hide - to match hiding in superclass 558 */ 559 @Override 560 public void replacePreferredActivity(IntentFilter filter, 561 int match, ComponentName[] set, ComponentName activity) { 562 throw new UnsupportedOperationException(); 563 } 564 565 566 @Override 567 public void clearPackagePreferredActivities(String packageName) { 568 throw new UnsupportedOperationException(); 569 } 570 571 /** 572 * @hide - to match hiding in superclass 573 */ 574 @Override 575 public void getPackageSizeInfo(String packageName, int userHandle, 576 IPackageStatsObserver observer) { 577 throw new UnsupportedOperationException(); 578 } 579 580 @Override 581 public int getPreferredActivities(List<IntentFilter> outFilters, 582 List<ComponentName> outActivities, String packageName) { 583 throw new UnsupportedOperationException(); 584 } 585 586 /** @hide - hidden in superclass */ 587 @Override 588 public ComponentName getHomeActivities(List<ResolveInfo> outActivities) { 589 throw new UnsupportedOperationException(); 590 } 591 592 @Override 593 public String[] getSystemSharedLibraryNames() { 594 throw new UnsupportedOperationException(); 595 } 596 597 @Override 598 public FeatureInfo[] getSystemAvailableFeatures() { 599 throw new UnsupportedOperationException(); 600 } 601 602 @Override 603 public boolean hasSystemFeature(String name) { 604 throw new UnsupportedOperationException(); 605 } 606 607 @Override 608 public boolean isSafeMode() { 609 throw new UnsupportedOperationException(); 610 } 611 612 /** 613 * @hide 614 */ 615 @Override 616 public void installPackageWithVerification(Uri packageURI, IPackageInstallObserver observer, 617 int flags, String installerPackageName, Uri verificationURI, 618 ManifestDigest manifestDigest, ContainerEncryptionParams encryptionParams) { 619 throw new UnsupportedOperationException(); 620 } 621 622 /** 623 * @hide 624 */ 625 @Override 626 public void installPackageWithVerificationAndEncryption(Uri packageURI, 627 IPackageInstallObserver observer, int flags, String installerPackageName, 628 VerificationParams verificationParams, ContainerEncryptionParams encryptionParams) { 629 throw new UnsupportedOperationException(); 630 } 631 632 /** 633 * @hide 634 */ 635 @Override 636 public boolean setApplicationBlockedSettingAsUser(String packageName, boolean blocked, 637 UserHandle user) { 638 return false; 639 } 640 641 /** 642 * @hide 643 */ 644 @Override 645 public boolean getApplicationBlockedSettingAsUser(String packageName, UserHandle user) { 646 return false; 647 } 648 649 /** 650 * @hide 651 */ 652 @Override 653 public int installExistingPackage(String packageName) 654 throws NameNotFoundException { 655 throw new UnsupportedOperationException(); 656 } 657 658 @Override 659 public void verifyPendingInstall(int id, int verificationCode) { 660 throw new UnsupportedOperationException(); 661 } 662 663 @Override 664 public void extendVerificationTimeout(int id, int verificationCodeAtTimeout, 665 long millisecondsToDelay) { 666 throw new UnsupportedOperationException(); 667 } 668 669 /** 670 * @hide 671 */ 672 @Override 673 public VerifierDeviceIdentity getVerifierDeviceIdentity() { 674 throw new UnsupportedOperationException(); 675 } 676 677 /** 678 * @hide 679 */ 680 @Override 681 public void installPackage(Uri packageURI, PackageInstallObserver observer, 682 int flags, String installerPackageName) { 683 throw new UnsupportedOperationException(); 684 } 685 686 /** 687 * @hide 688 */ 689 @Override 690 public void installPackageWithVerification(Uri packageURI, 691 PackageInstallObserver observer, int flags, String installerPackageName, 692 Uri verificationURI, ManifestDigest manifestDigest, 693 ContainerEncryptionParams encryptionParams) { 694 throw new UnsupportedOperationException(); 695 } 696 697 /** 698 * @hide 699 */ 700 @Override 701 public void installPackageWithVerificationAndEncryption(Uri packageURI, 702 PackageInstallObserver observer, int flags, String installerPackageName, 703 VerificationParams verificationParams, ContainerEncryptionParams encryptionParams) { 704 throw new UnsupportedOperationException(); 705 } 706 707 /** 708 * @hide 709 */ 710 @Override 711 public void addCrossProfileIntentFilter(IntentFilter filter, int sourceUserId, int targetUserId, 712 int flags) { 713 throw new UnsupportedOperationException(); 714 } 715 716 /** 717 * @hide 718 */ 719 @Override 720 public void clearCrossProfileIntentFilters(int sourceUserId) { 721 throw new UnsupportedOperationException(); 722 } 723 724 /** {@hide} */ 725 public PackageInstaller getPackageInstaller() { 726 throw new UnsupportedOperationException(); 727 } 728 729 /** 730 * @hide 731 */ 732 @Override 733 public void addCrossProfileIntentsForPackage(String packageName, int sourceUserId, 734 int targetUserId) { 735 throw new UnsupportedOperationException(); 736 } 737 738 /** 739 * @hide 740 */ 741 public Bitmap getUserIcon(int userId) { 742 throw new UnsupportedOperationException(); 743 } 744} 745