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