blob: 67de4fe6bc4bd2110a519d06c5fdb37e383c577d [file] [log] [blame]
The Android Open Source Project9066cfe2009-03-03 19:31:44 -08001/*
2 * Copyright (C) 2006 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.content;
18
Dianne Hackborna750a632015-06-16 17:18:23 -070019import android.annotation.SystemApi;
Tony Mak46aabe52016-11-14 12:53:06 +000020import android.app.IApplicationThread;
21import android.app.IServiceConnection;
Dianne Hackborn5c1e00b2009-06-18 17:10:57 -070022import android.content.pm.ApplicationInfo;
The Android Open Source Project9066cfe2009-03-03 19:31:44 -080023import android.content.pm.PackageManager;
24import android.content.res.AssetManager;
Dianne Hackborn756220b2012-08-14 16:45:30 -070025import android.content.res.Configuration;
The Android Open Source Project9066cfe2009-03-03 19:31:44 -080026import android.content.res.Resources;
Vasu Nori74f170f2010-06-01 18:06:18 -070027import android.database.DatabaseErrorHandler;
The Android Open Source Project9066cfe2009-03-03 19:31:44 -080028import android.database.sqlite.SQLiteDatabase;
29import android.database.sqlite.SQLiteDatabase.CursorFactory;
30import android.graphics.Bitmap;
31import android.graphics.drawable.Drawable;
32import android.net.Uri;
33import android.os.Bundle;
34import android.os.Handler;
Dianne Hackbornff170242014-11-19 10:59:01 -080035import android.os.IBinder;
The Android Open Source Project9066cfe2009-03-03 19:31:44 -080036import android.os.Looper;
Dianne Hackborn79af1dd2012-08-16 16:42:52 -070037import android.os.UserHandle;
Jeff Browna492c3a2012-08-23 19:48:44 -070038import android.view.Display;
Jeff Sharkey8a372a02016-03-16 16:25:45 -060039import android.view.DisplayAdjustments;
Felipe Lemebb567ae2017-10-04 09:56:21 -070040import android.view.autofill.AutofillManager.AutofillClient;
The Android Open Source Project9066cfe2009-03-03 19:31:44 -080041
42import java.io.File;
43import java.io.FileInputStream;
44import java.io.FileNotFoundException;
45import java.io.FileOutputStream;
46import java.io.IOException;
47import java.io.InputStream;
Jeff Sharkey8439ac02017-12-12 17:26:23 -070048import java.util.concurrent.Executor;
The Android Open Source Project9066cfe2009-03-03 19:31:44 -080049
50/**
51 * Proxying implementation of Context that simply delegates all of its calls to
52 * another Context. Can be subclassed to modify behavior without changing
53 * the original Context.
54 */
55public class ContextWrapper extends Context {
56 Context mBase;
57
58 public ContextWrapper(Context base) {
59 mBase = base;
60 }
61
62 /**
63 * Set the base context for this ContextWrapper. All calls will then be
64 * delegated to the base context. Throws
65 * IllegalStateException if a base context has already been set.
66 *
67 * @param base The new base context for this wrapper.
68 */
69 protected void attachBaseContext(Context base) {
70 if (mBase != null) {
71 throw new IllegalStateException("Base context already set");
72 }
73 mBase = base;
74 }
75
76 /**
77 * @return the base context as set by the constructor or setBaseContext
78 */
79 public Context getBaseContext() {
80 return mBase;
81 }
82
83 @Override
84 public AssetManager getAssets() {
85 return mBase.getAssets();
86 }
87
88 @Override
Alan Viverette713a5cd2015-12-16 15:46:32 -050089 public Resources getResources() {
The Android Open Source Project9066cfe2009-03-03 19:31:44 -080090 return mBase.getResources();
91 }
92
93 @Override
94 public PackageManager getPackageManager() {
95 return mBase.getPackageManager();
96 }
97
98 @Override
99 public ContentResolver getContentResolver() {
100 return mBase.getContentResolver();
101 }
102
103 @Override
104 public Looper getMainLooper() {
105 return mBase.getMainLooper();
106 }
Jeff Sharkey8439ac02017-12-12 17:26:23 -0700107
108 @Override
109 public Executor getMainExecutor() {
110 return mBase.getMainExecutor();
111 }
112
The Android Open Source Project9066cfe2009-03-03 19:31:44 -0800113 @Override
114 public Context getApplicationContext() {
115 return mBase.getApplicationContext();
116 }
117
118 @Override
119 public void setTheme(int resid) {
120 mBase.setTheme(resid);
121 }
122
Dianne Hackborn247fe742011-01-08 17:25:57 -0800123 /** @hide */
124 @Override
125 public int getThemeResId() {
126 return mBase.getThemeResId();
127 }
128
The Android Open Source Project9066cfe2009-03-03 19:31:44 -0800129 @Override
130 public Resources.Theme getTheme() {
131 return mBase.getTheme();
132 }
133
134 @Override
135 public ClassLoader getClassLoader() {
136 return mBase.getClassLoader();
137 }
138
139 @Override
140 public String getPackageName() {
141 return mBase.getPackageName();
142 }
143
Dianne Hackbornd8e1dbb2013-01-17 17:47:37 -0800144 /** @hide */
145 @Override
146 public String getBasePackageName() {
147 return mBase.getBasePackageName();
148 }
149
Dianne Hackborn95d78532013-09-11 09:51:14 -0700150 /** @hide */
151 @Override
152 public String getOpPackageName() {
153 return mBase.getOpPackageName();
154 }
155
The Android Open Source Project9066cfe2009-03-03 19:31:44 -0800156 @Override
Dianne Hackborn5c1e00b2009-06-18 17:10:57 -0700157 public ApplicationInfo getApplicationInfo() {
158 return mBase.getApplicationInfo();
159 }
160
161 @Override
The Android Open Source Project9066cfe2009-03-03 19:31:44 -0800162 public String getPackageResourcePath() {
163 return mBase.getPackageResourcePath();
164 }
165
166 @Override
167 public String getPackageCodePath() {
168 return mBase.getPackageCodePath();
169 }
170
Joe Onorato23ecae32009-06-10 17:07:15 -0700171 @Override
The Android Open Source Project9066cfe2009-03-03 19:31:44 -0800172 public SharedPreferences getSharedPreferences(String name, int mode) {
173 return mBase.getSharedPreferences(name, mode);
174 }
175
Jeff Sharkey70168dd2016-03-30 21:47:16 -0600176 /** @removed */
The Android Open Source Project9066cfe2009-03-03 19:31:44 -0800177 @Override
Jeff Sharkey8fc29cf2015-11-30 17:51:00 -0700178 public SharedPreferences getSharedPreferences(File file, int mode) {
179 return mBase.getSharedPreferences(file, mode);
180 }
181
Christopher Tatefe2368c2017-05-17 15:42:35 -0700182 /** @hide */
183 @Override
184 public void reloadSharedPreferences() {
185 mBase.reloadSharedPreferences();
186 }
187
Jeff Sharkey8fc29cf2015-11-30 17:51:00 -0700188 @Override
Jeff Sharkey8a372a02016-03-16 16:25:45 -0600189 public boolean moveSharedPreferencesFrom(Context sourceContext, String name) {
190 return mBase.moveSharedPreferencesFrom(sourceContext, name);
Jeff Sharkey35871f22016-01-29 17:13:29 -0700191 }
192
193 @Override
194 public boolean deleteSharedPreferences(String name) {
195 return mBase.deleteSharedPreferences(name);
196 }
197
198 @Override
The Android Open Source Project9066cfe2009-03-03 19:31:44 -0800199 public FileInputStream openFileInput(String name)
200 throws FileNotFoundException {
201 return mBase.openFileInput(name);
202 }
203
204 @Override
205 public FileOutputStream openFileOutput(String name, int mode)
206 throws FileNotFoundException {
207 return mBase.openFileOutput(name, mode);
208 }
209
210 @Override
211 public boolean deleteFile(String name) {
212 return mBase.deleteFile(name);
213 }
214
215 @Override
216 public File getFileStreamPath(String name) {
217 return mBase.getFileStreamPath(name);
218 }
219
Jeff Sharkey70168dd2016-03-30 21:47:16 -0600220 /** @removed */
The Android Open Source Project9066cfe2009-03-03 19:31:44 -0800221 @Override
Jeff Sharkey6a6cdaf2015-12-07 19:25:19 -0700222 public File getSharedPreferencesPath(String name) {
223 return mBase.getSharedPreferencesPath(name);
224 }
225
226 @Override
The Android Open Source Project9066cfe2009-03-03 19:31:44 -0800227 public String[] fileList() {
228 return mBase.fileList();
229 }
230
231 @Override
Jeff Sharkey2c1ba9a2016-02-17 15:29:38 -0700232 public File getDataDir() {
233 return mBase.getDataDir();
234 }
235
236 @Override
The Android Open Source Project9066cfe2009-03-03 19:31:44 -0800237 public File getFilesDir() {
238 return mBase.getFilesDir();
239 }
Christopher Tatea7835b62014-07-11 17:25:57 -0700240
241 @Override
242 public File getNoBackupFilesDir() {
243 return mBase.getNoBackupFilesDir();
244 }
245
The Android Open Source Project9066cfe2009-03-03 19:31:44 -0800246 @Override
Dianne Hackborne83cefce2010-02-04 17:38:14 -0800247 public File getExternalFilesDir(String type) {
248 return mBase.getExternalFilesDir(type);
249 }
Jeff Sharkey1abdb712013-08-11 16:28:14 -0700250
251 @Override
252 public File[] getExternalFilesDirs(String type) {
253 return mBase.getExternalFilesDirs(type);
254 }
255
Dianne Hackborne83cefce2010-02-04 17:38:14 -0800256 @Override
Dianne Hackborn805fd7e2011-01-16 18:30:29 -0800257 public File getObbDir() {
258 return mBase.getObbDir();
259 }
Jeff Sharkey1abdb712013-08-11 16:28:14 -0700260
261 @Override
262 public File[] getObbDirs() {
263 return mBase.getObbDirs();
264 }
265
Dianne Hackborn805fd7e2011-01-16 18:30:29 -0800266 @Override
The Android Open Source Project9066cfe2009-03-03 19:31:44 -0800267 public File getCacheDir() {
268 return mBase.getCacheDir();
269 }
270
271 @Override
Jeff Sharkey4ed745d2014-07-15 20:39:15 -0700272 public File getCodeCacheDir() {
273 return mBase.getCodeCacheDir();
274 }
275
276 @Override
Dianne Hackborne83cefce2010-02-04 17:38:14 -0800277 public File getExternalCacheDir() {
278 return mBase.getExternalCacheDir();
279 }
280
281 @Override
Jeff Sharkey1abdb712013-08-11 16:28:14 -0700282 public File[] getExternalCacheDirs() {
283 return mBase.getExternalCacheDirs();
284 }
285
286 @Override
Jeff Sharkey2ee3c1e2014-05-30 15:38:35 -0700287 public File[] getExternalMediaDirs() {
288 return mBase.getExternalMediaDirs();
289 }
290
291 @Override
The Android Open Source Project9066cfe2009-03-03 19:31:44 -0800292 public File getDir(String name, int mode) {
293 return mBase.getDir(name, mode);
294 }
295
Fyodor Kupolov61221292016-09-02 15:21:03 -0700296
297 /** @hide **/
298 @Override
299 public File getPreloadsFileCache() {
300 return mBase.getPreloadsFileCache();
301 }
302
The Android Open Source Project9066cfe2009-03-03 19:31:44 -0800303 @Override
304 public SQLiteDatabase openOrCreateDatabase(String name, int mode, CursorFactory factory) {
305 return mBase.openOrCreateDatabase(name, mode, factory);
306 }
307
308 @Override
Vasu Nori74f170f2010-06-01 18:06:18 -0700309 public SQLiteDatabase openOrCreateDatabase(String name, int mode, CursorFactory factory,
310 DatabaseErrorHandler errorHandler) {
311 return mBase.openOrCreateDatabase(name, mode, factory, errorHandler);
312 }
313
314 @Override
Jeff Sharkey8a372a02016-03-16 16:25:45 -0600315 public boolean moveDatabaseFrom(Context sourceContext, String name) {
316 return mBase.moveDatabaseFrom(sourceContext, name);
Jeff Sharkey35871f22016-01-29 17:13:29 -0700317 }
318
319 @Override
The Android Open Source Project9066cfe2009-03-03 19:31:44 -0800320 public boolean deleteDatabase(String name) {
321 return mBase.deleteDatabase(name);
322 }
323
324 @Override
325 public File getDatabasePath(String name) {
326 return mBase.getDatabasePath(name);
327 }
328
329 @Override
330 public String[] databaseList() {
331 return mBase.databaseList();
332 }
333
334 @Override
Jeff Brown6e539312015-02-24 18:53:21 -0800335 @Deprecated
The Android Open Source Project9066cfe2009-03-03 19:31:44 -0800336 public Drawable getWallpaper() {
337 return mBase.getWallpaper();
338 }
339
340 @Override
Jeff Brown6e539312015-02-24 18:53:21 -0800341 @Deprecated
The Android Open Source Project9066cfe2009-03-03 19:31:44 -0800342 public Drawable peekWallpaper() {
343 return mBase.peekWallpaper();
344 }
345
346 @Override
Jeff Brown6e539312015-02-24 18:53:21 -0800347 @Deprecated
The Android Open Source Project9066cfe2009-03-03 19:31:44 -0800348 public int getWallpaperDesiredMinimumWidth() {
349 return mBase.getWallpaperDesiredMinimumWidth();
350 }
351
352 @Override
Jeff Brown6e539312015-02-24 18:53:21 -0800353 @Deprecated
The Android Open Source Project9066cfe2009-03-03 19:31:44 -0800354 public int getWallpaperDesiredMinimumHeight() {
355 return mBase.getWallpaperDesiredMinimumHeight();
356 }
357
358 @Override
Jeff Brown6e539312015-02-24 18:53:21 -0800359 @Deprecated
The Android Open Source Project9066cfe2009-03-03 19:31:44 -0800360 public void setWallpaper(Bitmap bitmap) throws IOException {
361 mBase.setWallpaper(bitmap);
362 }
363
364 @Override
Jeff Brown6e539312015-02-24 18:53:21 -0800365 @Deprecated
The Android Open Source Project9066cfe2009-03-03 19:31:44 -0800366 public void setWallpaper(InputStream data) throws IOException {
367 mBase.setWallpaper(data);
368 }
369
370 @Override
Jeff Brown6e539312015-02-24 18:53:21 -0800371 @Deprecated
The Android Open Source Project9066cfe2009-03-03 19:31:44 -0800372 public void clearWallpaper() throws IOException {
373 mBase.clearWallpaper();
374 }
375
376 @Override
377 public void startActivity(Intent intent) {
378 mBase.startActivity(intent);
379 }
380
Amith Yamasani82644082012-08-03 13:09:11 -0700381 /** @hide */
382 @Override
Dianne Hackborn79af1dd2012-08-16 16:42:52 -0700383 public void startActivityAsUser(Intent intent, UserHandle user) {
384 mBase.startActivityAsUser(intent, user);
Amith Yamasani82644082012-08-03 13:09:11 -0700385 }
386
Clara Bayarrid5bf3ed2015-03-27 17:32:45 +0000387 /** @hide **/
388 public void startActivityForResult(
389 String who, Intent intent, int requestCode, Bundle options) {
390 mBase.startActivityForResult(who, intent, requestCode, options);
391 }
392
393 /** @hide **/
394 public boolean canStartActivityForResult() {
395 return mBase.canStartActivityForResult();
396 }
397
The Android Open Source Project9066cfe2009-03-03 19:31:44 -0800398 @Override
Dianne Hackborna4972e92012-03-14 10:38:05 -0700399 public void startActivity(Intent intent, Bundle options) {
400 mBase.startActivity(intent, options);
401 }
402
Amith Yamasani258848d2012-08-10 17:06:33 -0700403 /** @hide */
404 @Override
Dianne Hackborn79af1dd2012-08-16 16:42:52 -0700405 public void startActivityAsUser(Intent intent, Bundle options, UserHandle user) {
406 mBase.startActivityAsUser(intent, options, user);
Amith Yamasani258848d2012-08-10 17:06:33 -0700407 }
408
Dianne Hackborna4972e92012-03-14 10:38:05 -0700409 @Override
Dianne Hackborn621e17d2010-11-22 15:59:56 -0800410 public void startActivities(Intent[] intents) {
411 mBase.startActivities(intents);
412 }
413
414 @Override
Dianne Hackborna4972e92012-03-14 10:38:05 -0700415 public void startActivities(Intent[] intents, Bundle options) {
416 mBase.startActivities(intents, options);
417 }
418
Amith Yamasaniea7e9152012-09-24 16:11:18 -0700419 /** @hide */
420 @Override
421 public void startActivitiesAsUser(Intent[] intents, Bundle options, UserHandle userHandle) {
422 mBase.startActivitiesAsUser(intents, options, userHandle);
423 }
424
Dianne Hackborna4972e92012-03-14 10:38:05 -0700425 @Override
Dianne Hackbornfa82f222009-09-17 15:14:12 -0700426 public void startIntentSender(IntentSender intent,
427 Intent fillInIntent, int flagsMask, int flagsValues, int extraFlags)
428 throws IntentSender.SendIntentException {
429 mBase.startIntentSender(intent, fillInIntent, flagsMask,
430 flagsValues, extraFlags);
431 }
Dianne Hackborna4972e92012-03-14 10:38:05 -0700432
433 @Override
434 public void startIntentSender(IntentSender intent,
435 Intent fillInIntent, int flagsMask, int flagsValues, int extraFlags,
436 Bundle options) throws IntentSender.SendIntentException {
437 mBase.startIntentSender(intent, fillInIntent, flagsMask,
438 flagsValues, extraFlags, options);
439 }
Dianne Hackbornfa82f222009-09-17 15:14:12 -0700440
441 @Override
The Android Open Source Project9066cfe2009-03-03 19:31:44 -0800442 public void sendBroadcast(Intent intent) {
443 mBase.sendBroadcast(intent);
444 }
445
Amith Yamasani67cf7d32012-02-16 14:31:23 -0800446 @Override
The Android Open Source Project9066cfe2009-03-03 19:31:44 -0800447 public void sendBroadcast(Intent intent, String receiverPermission) {
448 mBase.sendBroadcast(intent, receiverPermission);
449 }
450
Dianne Hackbornf51f6122013-02-04 18:23:34 -0800451 /** @hide */
Fyodor Kupolovd4fd8c72015-07-13 19:19:25 -0700452 @Override
453 public void sendBroadcastMultiplePermissions(Intent intent, String[] receiverPermissions) {
454 mBase.sendBroadcastMultiplePermissions(intent, receiverPermissions);
455 }
456
457 /** @hide */
Dianne Hackborna750a632015-06-16 17:18:23 -0700458 @SystemApi
459 @Override
460 public void sendBroadcast(Intent intent, String receiverPermission, Bundle options) {
461 mBase.sendBroadcast(intent, receiverPermission, options);
462 }
463
464 /** @hide */
Dianne Hackbornf51f6122013-02-04 18:23:34 -0800465 @Override
466 public void sendBroadcast(Intent intent, String receiverPermission, int appOp) {
467 mBase.sendBroadcast(intent, receiverPermission, appOp);
468 }
469
The Android Open Source Project9066cfe2009-03-03 19:31:44 -0800470 @Override
471 public void sendOrderedBroadcast(Intent intent,
472 String receiverPermission) {
473 mBase.sendOrderedBroadcast(intent, receiverPermission);
474 }
475
476 @Override
477 public void sendOrderedBroadcast(
478 Intent intent, String receiverPermission, BroadcastReceiver resultReceiver,
479 Handler scheduler, int initialCode, String initialData,
480 Bundle initialExtras) {
481 mBase.sendOrderedBroadcast(intent, receiverPermission,
482 resultReceiver, scheduler, initialCode,
483 initialData, initialExtras);
484 }
485
Dianne Hackbornf51f6122013-02-04 18:23:34 -0800486 /** @hide */
Dianne Hackborna750a632015-06-16 17:18:23 -0700487 @SystemApi
488 @Override
489 public void sendOrderedBroadcast(
490 Intent intent, String receiverPermission, Bundle options, BroadcastReceiver resultReceiver,
491 Handler scheduler, int initialCode, String initialData,
492 Bundle initialExtras) {
493 mBase.sendOrderedBroadcast(intent, receiverPermission,
494 options, resultReceiver, scheduler, initialCode,
495 initialData, initialExtras);
496 }
497
498 /** @hide */
Dianne Hackbornf51f6122013-02-04 18:23:34 -0800499 @Override
500 public void sendOrderedBroadcast(
501 Intent intent, String receiverPermission, int appOp, BroadcastReceiver resultReceiver,
502 Handler scheduler, int initialCode, String initialData,
503 Bundle initialExtras) {
504 mBase.sendOrderedBroadcast(intent, receiverPermission, appOp,
505 resultReceiver, scheduler, initialCode,
506 initialData, initialExtras);
507 }
508
The Android Open Source Project9066cfe2009-03-03 19:31:44 -0800509 @Override
Dianne Hackborn79af1dd2012-08-16 16:42:52 -0700510 public void sendBroadcastAsUser(Intent intent, UserHandle user) {
511 mBase.sendBroadcastAsUser(intent, user);
Dianne Hackborn7d19e022012-08-07 19:12:33 -0700512 }
513
514 @Override
Dianne Hackborn5ac72a22012-08-29 18:32:08 -0700515 public void sendBroadcastAsUser(Intent intent, UserHandle user,
516 String receiverPermission) {
517 mBase.sendBroadcastAsUser(intent, user, receiverPermission);
518 }
519
Svet Ganov16a16892015-04-16 10:32:04 -0700520 /** @hide */
521 @Override
522 public void sendBroadcastAsUser(Intent intent, UserHandle user,
Chad Brubaker52c8edc2016-07-25 14:30:26 -0700523 String receiverPermission, Bundle options) {
524 mBase.sendBroadcastAsUser(intent, user, receiverPermission, options);
525 }
526
527 /** @hide */
528 @Override
529 public void sendBroadcastAsUser(Intent intent, UserHandle user,
Svet Ganov16a16892015-04-16 10:32:04 -0700530 String receiverPermission, int appOp) {
531 mBase.sendBroadcastAsUser(intent, user, receiverPermission, appOp);
532 }
533
Dianne Hackborn5ac72a22012-08-29 18:32:08 -0700534 @Override
Dianne Hackborn79af1dd2012-08-16 16:42:52 -0700535 public void sendOrderedBroadcastAsUser(Intent intent, UserHandle user,
Dianne Hackborn5ac72a22012-08-29 18:32:08 -0700536 String receiverPermission, BroadcastReceiver resultReceiver, Handler scheduler,
Dianne Hackborn7d19e022012-08-07 19:12:33 -0700537 int initialCode, String initialData, Bundle initialExtras) {
Dianne Hackborn5ac72a22012-08-29 18:32:08 -0700538 mBase.sendOrderedBroadcastAsUser(intent, user, receiverPermission, resultReceiver,
Dianne Hackborn7d19e022012-08-07 19:12:33 -0700539 scheduler, initialCode, initialData, initialExtras);
540 }
541
Amith Yamasani3cf75722014-05-16 12:37:29 -0700542 /** @hide */
543 @Override
544 public void sendOrderedBroadcastAsUser(Intent intent, UserHandle user,
545 String receiverPermission, int appOp, BroadcastReceiver resultReceiver,
Dianne Hackbornfd854ee2015-07-13 18:00:37 -0700546 Handler scheduler, int initialCode, String initialData, Bundle initialExtras) {
Amith Yamasani3cf75722014-05-16 12:37:29 -0700547 mBase.sendOrderedBroadcastAsUser(intent, user, receiverPermission, appOp, resultReceiver,
548 scheduler, initialCode, initialData, initialExtras);
549 }
550
Dianne Hackbornfd854ee2015-07-13 18:00:37 -0700551 /** @hide */
552 @Override
553 public void sendOrderedBroadcastAsUser(Intent intent, UserHandle user,
554 String receiverPermission, int appOp, Bundle options, BroadcastReceiver resultReceiver,
555 Handler scheduler, int initialCode, String initialData, Bundle initialExtras) {
556 mBase.sendOrderedBroadcastAsUser(intent, user, receiverPermission, appOp, options,
557 resultReceiver, scheduler, initialCode, initialData, initialExtras);
558 }
559
Dianne Hackborn7d19e022012-08-07 19:12:33 -0700560 @Override
Jeff Brown6e539312015-02-24 18:53:21 -0800561 @Deprecated
The Android Open Source Project9066cfe2009-03-03 19:31:44 -0800562 public void sendStickyBroadcast(Intent intent) {
563 mBase.sendStickyBroadcast(intent);
564 }
565
566 @Override
Jeff Brown6e539312015-02-24 18:53:21 -0800567 @Deprecated
Dianne Hackbornefa199f2009-09-19 12:03:15 -0700568 public void sendStickyOrderedBroadcast(
569 Intent intent, BroadcastReceiver resultReceiver,
570 Handler scheduler, int initialCode, String initialData,
571 Bundle initialExtras) {
572 mBase.sendStickyOrderedBroadcast(intent,
573 resultReceiver, scheduler, initialCode,
574 initialData, initialExtras);
575 }
576
577 @Override
Jeff Brown6e539312015-02-24 18:53:21 -0800578 @Deprecated
The Android Open Source Project9066cfe2009-03-03 19:31:44 -0800579 public void removeStickyBroadcast(Intent intent) {
580 mBase.removeStickyBroadcast(intent);
581 }
582
583 @Override
Jeff Brown6e539312015-02-24 18:53:21 -0800584 @Deprecated
Dianne Hackborn5ac72a22012-08-29 18:32:08 -0700585 public void sendStickyBroadcastAsUser(Intent intent, UserHandle user) {
586 mBase.sendStickyBroadcastAsUser(intent, user);
587 }
588
Dianne Hackborne0e413e2015-12-09 17:22:26 -0800589 /** @hide */
590 @Override
591 @Deprecated
592 public void sendStickyBroadcastAsUser(Intent intent, UserHandle user, Bundle options) {
593 mBase.sendStickyBroadcastAsUser(intent, user, options);
594 }
595
Dianne Hackborn5ac72a22012-08-29 18:32:08 -0700596 @Override
Jeff Brown6e539312015-02-24 18:53:21 -0800597 @Deprecated
Dianne Hackborn5ac72a22012-08-29 18:32:08 -0700598 public void sendStickyOrderedBroadcastAsUser(Intent intent,
599 UserHandle user, BroadcastReceiver resultReceiver,
600 Handler scheduler, int initialCode, String initialData,
601 Bundle initialExtras) {
602 mBase.sendStickyOrderedBroadcastAsUser(intent, user, resultReceiver,
603 scheduler, initialCode, initialData, initialExtras);
604 }
605
606 @Override
Jeff Brown6e539312015-02-24 18:53:21 -0800607 @Deprecated
Dianne Hackborn5ac72a22012-08-29 18:32:08 -0700608 public void removeStickyBroadcastAsUser(Intent intent, UserHandle user) {
609 mBase.removeStickyBroadcastAsUser(intent, user);
610 }
611
612 @Override
The Android Open Source Project9066cfe2009-03-03 19:31:44 -0800613 public Intent registerReceiver(
614 BroadcastReceiver receiver, IntentFilter filter) {
615 return mBase.registerReceiver(receiver, filter);
616 }
617
618 @Override
619 public Intent registerReceiver(
Chad Brubaker6d6015f2017-04-18 11:25:16 -0700620 BroadcastReceiver receiver, IntentFilter filter, int flags) {
621 return mBase.registerReceiver(receiver, filter, flags);
Chad Brubaker816c83b2017-03-02 10:27:59 -0800622 }
623
624 @Override
625 public Intent registerReceiver(
The Android Open Source Project9066cfe2009-03-03 19:31:44 -0800626 BroadcastReceiver receiver, IntentFilter filter,
627 String broadcastPermission, Handler scheduler) {
628 return mBase.registerReceiver(receiver, filter, broadcastPermission,
629 scheduler);
630 }
631
Chad Brubaker816c83b2017-03-02 10:27:59 -0800632 @Override
633 public Intent registerReceiver(
634 BroadcastReceiver receiver, IntentFilter filter,
Chad Brubaker6d6015f2017-04-18 11:25:16 -0700635 String broadcastPermission, Handler scheduler, int flags) {
Chad Brubaker816c83b2017-03-02 10:27:59 -0800636 return mBase.registerReceiver(receiver, filter, broadcastPermission,
Chad Brubaker6d6015f2017-04-18 11:25:16 -0700637 scheduler, flags);
Chad Brubaker816c83b2017-03-02 10:27:59 -0800638 }
639
Dianne Hackborn20e80982012-08-31 19:00:44 -0700640 /** @hide */
641 @Override
642 public Intent registerReceiverAsUser(
643 BroadcastReceiver receiver, UserHandle user, IntentFilter filter,
644 String broadcastPermission, Handler scheduler) {
645 return mBase.registerReceiverAsUser(receiver, user, filter, broadcastPermission,
646 scheduler);
647 }
648
The Android Open Source Project9066cfe2009-03-03 19:31:44 -0800649 @Override
650 public void unregisterReceiver(BroadcastReceiver receiver) {
651 mBase.unregisterReceiver(receiver);
652 }
653
654 @Override
655 public ComponentName startService(Intent service) {
656 return mBase.startService(service);
657 }
658
Christopher Tate08992ac2017-03-21 11:37:06 -0700659 @Override
660 public ComponentName startForegroundService(Intent service) {
661 return mBase.startForegroundService(service);
662 }
663
The Android Open Source Project9066cfe2009-03-03 19:31:44 -0800664 @Override
665 public boolean stopService(Intent name) {
666 return mBase.stopService(name);
667 }
668
Dianne Hackborn7767eac2012-08-23 18:25:40 -0700669 /** @hide */
670 @Override
671 public ComponentName startServiceAsUser(Intent service, UserHandle user) {
672 return mBase.startServiceAsUser(service, user);
673 }
674
675 /** @hide */
676 @Override
Christopher Tate08992ac2017-03-21 11:37:06 -0700677 public ComponentName startForegroundServiceAsUser(Intent service, UserHandle user) {
678 return mBase.startForegroundServiceAsUser(service, user);
679 }
680
Christopher Tate42a386b2016-11-07 12:21:21 -0800681 /** @hide */
682 @Override
Dianne Hackborn7767eac2012-08-23 18:25:40 -0700683 public boolean stopServiceAsUser(Intent name, UserHandle user) {
684 return mBase.stopServiceAsUser(name, user);
685 }
686
The Android Open Source Project9066cfe2009-03-03 19:31:44 -0800687 @Override
688 public boolean bindService(Intent service, ServiceConnection conn,
689 int flags) {
690 return mBase.bindService(service, conn, flags);
691 }
692
Amith Yamasani37ce3a82012-02-06 12:04:42 -0800693 /** @hide */
694 @Override
Amith Yamasani27b89e62013-01-16 12:30:11 -0800695 public boolean bindServiceAsUser(Intent service, ServiceConnection conn, int flags,
696 UserHandle user) {
697 return mBase.bindServiceAsUser(service, conn, flags, user);
Amith Yamasani37ce3a82012-02-06 12:04:42 -0800698 }
699
Jeff Davidson6192bff2017-01-09 10:55:53 -0800700 /** @hide */
701 @Override
702 public boolean bindServiceAsUser(Intent service, ServiceConnection conn, int flags,
703 Handler handler, UserHandle user) {
704 return mBase.bindServiceAsUser(service, conn, flags, handler, user);
705 }
706
The Android Open Source Project9066cfe2009-03-03 19:31:44 -0800707 @Override
708 public void unbindService(ServiceConnection conn) {
709 mBase.unbindService(conn);
710 }
711
712 @Override
713 public boolean startInstrumentation(ComponentName className,
714 String profileFile, Bundle arguments) {
715 return mBase.startInstrumentation(className, profileFile, arguments);
716 }
717
718 @Override
719 public Object getSystemService(String name) {
720 return mBase.getSystemService(name);
721 }
722
723 @Override
Jeff Brown6e539312015-02-24 18:53:21 -0800724 public String getSystemServiceName(Class<?> serviceClass) {
725 return mBase.getSystemServiceName(serviceClass);
726 }
727
728 @Override
The Android Open Source Project9066cfe2009-03-03 19:31:44 -0800729 public int checkPermission(String permission, int pid, int uid) {
730 return mBase.checkPermission(permission, pid, uid);
731 }
732
Dianne Hackbornff170242014-11-19 10:59:01 -0800733 /** @hide */
734 @Override
735 public int checkPermission(String permission, int pid, int uid, IBinder callerToken) {
736 return mBase.checkPermission(permission, pid, uid, callerToken);
737 }
738
The Android Open Source Project9066cfe2009-03-03 19:31:44 -0800739 @Override
740 public int checkCallingPermission(String permission) {
741 return mBase.checkCallingPermission(permission);
742 }
743
744 @Override
745 public int checkCallingOrSelfPermission(String permission) {
746 return mBase.checkCallingOrSelfPermission(permission);
747 }
748
749 @Override
Svetoslavc6d1c342015-02-26 14:44:43 -0800750 public int checkSelfPermission(String permission) {
751 return mBase.checkSelfPermission(permission);
752 }
753
754 @Override
The Android Open Source Project9066cfe2009-03-03 19:31:44 -0800755 public void enforcePermission(
756 String permission, int pid, int uid, String message) {
757 mBase.enforcePermission(permission, pid, uid, message);
758 }
759
760 @Override
761 public void enforceCallingPermission(String permission, String message) {
762 mBase.enforceCallingPermission(permission, message);
763 }
764
765 @Override
766 public void enforceCallingOrSelfPermission(
767 String permission, String message) {
768 mBase.enforceCallingOrSelfPermission(permission, message);
769 }
770
771 @Override
772 public void grantUriPermission(String toPackage, Uri uri, int modeFlags) {
773 mBase.grantUriPermission(toPackage, uri, modeFlags);
774 }
775
776 @Override
777 public void revokeUriPermission(Uri uri, int modeFlags) {
778 mBase.revokeUriPermission(uri, modeFlags);
779 }
780
781 @Override
Dianne Hackborna47223f2017-03-30 13:49:13 -0700782 public void revokeUriPermission(String targetPackage, Uri uri, int modeFlags) {
783 mBase.revokeUriPermission(targetPackage, uri, modeFlags);
784 }
785
786 @Override
The Android Open Source Project9066cfe2009-03-03 19:31:44 -0800787 public int checkUriPermission(Uri uri, int pid, int uid, int modeFlags) {
788 return mBase.checkUriPermission(uri, pid, uid, modeFlags);
789 }
790
Dianne Hackbornff170242014-11-19 10:59:01 -0800791 /** @hide */
792 @Override
793 public int checkUriPermission(Uri uri, int pid, int uid, int modeFlags, IBinder callerToken) {
794 return mBase.checkUriPermission(uri, pid, uid, modeFlags, callerToken);
795 }
796
The Android Open Source Project9066cfe2009-03-03 19:31:44 -0800797 @Override
798 public int checkCallingUriPermission(Uri uri, int modeFlags) {
799 return mBase.checkCallingUriPermission(uri, modeFlags);
800 }
801
802 @Override
803 public int checkCallingOrSelfUriPermission(Uri uri, int modeFlags) {
804 return mBase.checkCallingOrSelfUriPermission(uri, modeFlags);
805 }
806
807 @Override
808 public int checkUriPermission(Uri uri, String readPermission,
809 String writePermission, int pid, int uid, int modeFlags) {
810 return mBase.checkUriPermission(uri, readPermission, writePermission,
811 pid, uid, modeFlags);
812 }
813
814 @Override
815 public void enforceUriPermission(
816 Uri uri, int pid, int uid, int modeFlags, String message) {
817 mBase.enforceUriPermission(uri, pid, uid, modeFlags, message);
818 }
819
820 @Override
821 public void enforceCallingUriPermission(
822 Uri uri, int modeFlags, String message) {
823 mBase.enforceCallingUriPermission(uri, modeFlags, message);
824 }
825
826 @Override
827 public void enforceCallingOrSelfUriPermission(
828 Uri uri, int modeFlags, String message) {
829 mBase.enforceCallingOrSelfUriPermission(uri, modeFlags, message);
830 }
831
832 @Override
833 public void enforceUriPermission(
834 Uri uri, String readPermission, String writePermission,
835 int pid, int uid, int modeFlags, String message) {
836 mBase.enforceUriPermission(
837 uri, readPermission, writePermission, pid, uid, modeFlags,
838 message);
839 }
840
841 @Override
842 public Context createPackageContext(String packageName, int flags)
843 throws PackageManager.NameNotFoundException {
844 return mBase.createPackageContext(packageName, flags);
845 }
Romain Guy870e09f2009-07-06 16:35:25 -0700846
Jeff Sharkey6d515712012-09-20 16:06:08 -0700847 /** @hide */
848 @Override
849 public Context createPackageContextAsUser(String packageName, int flags, UserHandle user)
850 throws PackageManager.NameNotFoundException {
851 return mBase.createPackageContextAsUser(packageName, flags, user);
852 }
853
Jim Millera75a8832013-02-07 16:53:32 -0800854 /** @hide */
Jeff Brown6e539312015-02-24 18:53:21 -0800855 @Override
Svetoslav976e8bd2014-07-16 15:12:03 -0700856 public Context createApplicationContext(ApplicationInfo application,
857 int flags) throws PackageManager.NameNotFoundException {
858 return mBase.createApplicationContext(application, flags);
859 }
860
861 /** @hide */
Jim Millera75a8832013-02-07 16:53:32 -0800862 @Override
Adam Lesinski4e862812016-11-21 16:02:24 -0800863 public Context createContextForSplit(String splitName)
864 throws PackageManager.NameNotFoundException {
865 return mBase.createContextForSplit(splitName);
866 }
867
868 /** @hide */
869 @Override
Jim Millera75a8832013-02-07 16:53:32 -0800870 public int getUserId() {
871 return mBase.getUserId();
872 }
873
Romain Guy870e09f2009-07-06 16:35:25 -0700874 @Override
Dianne Hackborn756220b2012-08-14 16:45:30 -0700875 public Context createConfigurationContext(Configuration overrideConfiguration) {
876 return mBase.createConfigurationContext(overrideConfiguration);
877 }
878
879 @Override
Jeff Browna492c3a2012-08-23 19:48:44 -0700880 public Context createDisplayContext(Display display) {
881 return mBase.createDisplayContext(display);
882 }
883
884 @Override
Romain Guy870e09f2009-07-06 16:35:25 -0700885 public boolean isRestricted() {
886 return mBase.isRestricted();
887 }
Jeff Brown98365d72012-08-19 20:30:52 -0700888
889 /** @hide */
890 @Override
Craig Mautner48d0d182013-06-11 07:53:06 -0700891 public DisplayAdjustments getDisplayAdjustments(int displayId) {
892 return mBase.getDisplayAdjustments(displayId);
Jeff Brown98365d72012-08-19 20:30:52 -0700893 }
Jeff Sharkey7a30a302015-12-08 14:20:06 -0700894
Adam Lesinski4ece3d62016-06-16 18:05:41 -0700895 /**
896 * @hide
897 */
898 @Override
899 public Display getDisplay() {
900 return mBase.getDisplay();
901 }
902
Andrii Kulianb047b8b2017-02-08 18:38:26 -0800903 /**
904 * @hide
905 */
906 @Override
907 public void updateDisplay(int displayId) {
908 mBase.updateDisplay(displayId);
909 }
910
Jeff Sharkey7a30a302015-12-08 14:20:06 -0700911 @Override
Jeff Sharkey8a372a02016-03-16 16:25:45 -0600912 public Context createDeviceProtectedStorageContext() {
913 return mBase.createDeviceProtectedStorageContext();
Jeff Sharkeye13529a2015-12-09 14:15:27 -0700914 }
915
916 /** {@hide} */
917 @SystemApi
918 @Override
Jeff Sharkey8a372a02016-03-16 16:25:45 -0600919 public Context createCredentialProtectedStorageContext() {
920 return mBase.createCredentialProtectedStorageContext();
Jeff Sharkey7a30a302015-12-08 14:20:06 -0700921 }
922
923 @Override
Jeff Sharkey8a372a02016-03-16 16:25:45 -0600924 public boolean isDeviceProtectedStorage() {
925 return mBase.isDeviceProtectedStorage();
Jeff Sharkey7a30a302015-12-08 14:20:06 -0700926 }
927
Jeff Sharkeye13529a2015-12-09 14:15:27 -0700928 /** {@hide} */
929 @SystemApi
Jeff Sharkey7a30a302015-12-08 14:20:06 -0700930 @Override
Jeff Sharkey8a372a02016-03-16 16:25:45 -0600931 public boolean isCredentialProtectedStorage() {
932 return mBase.isCredentialProtectedStorage();
Jeff Sharkey7a30a302015-12-08 14:20:06 -0700933 }
Tony Mak46aabe52016-11-14 12:53:06 +0000934
Seigo Nonaka6d6cd682017-06-22 08:22:18 -0700935 /** {@hide} */
936 @Override
937 public boolean canLoadUnsafeResources() {
938 return mBase.canLoadUnsafeResources();
939 }
940
Tony Mak46aabe52016-11-14 12:53:06 +0000941 /**
942 * @hide
943 */
944 @Override
945 public IBinder getActivityToken() {
946 return mBase.getActivityToken();
947 }
948
949 /**
950 * @hide
951 */
952 @Override
953 public IServiceConnection getServiceDispatcher(ServiceConnection conn, Handler handler,
954 int flags) {
955 return mBase.getServiceDispatcher(conn, handler, flags);
956 }
957
958 /**
959 * @hide
960 */
961 @Override
962 public IApplicationThread getIApplicationThread() {
963 return mBase.getIApplicationThread();
964 }
Tony Makbf9928d2016-12-22 11:02:45 +0000965
966 /**
967 * @hide
968 */
969 @Override
970 public Handler getMainThreadHandler() {
971 return mBase.getMainThreadHandler();
972 }
Philip P. Moltmannff6d6d92017-05-06 10:41:40 -0700973
974 /**
975 * @hide
976 */
Felipe Lemebb567ae2017-10-04 09:56:21 -0700977 @Override
Phil Weaver846cda932017-06-15 10:10:06 -0700978 public int getNextAutofillId() {
979 return mBase.getNextAutofillId();
Philip P. Moltmannff6d6d92017-05-06 10:41:40 -0700980 }
Felipe Lemebb567ae2017-10-04 09:56:21 -0700981
982 /**
983 * @hide
984 */
985 @Override
986 public AutofillClient getAutofillClient() {
987 return mBase.getAutofillClient();
988 }
989
990 /**
991 * @hide
992 */
993 @Override
994 public void setAutofillClient(AutofillClient client) {
995 mBase.setAutofillClient(client);
996 }
The Android Open Source Project9066cfe2009-03-03 19:31:44 -0800997}