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