IActivityManager.java revision 5dc5a00e7ebadc085ded7e29feacd17e53698486
1/* 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.app; 18 19import android.content.ComponentName; 20import android.content.ContentProviderNative; 21import android.content.IContentProvider; 22import android.content.IIntentReceiver; 23import android.content.IIntentSender; 24import android.content.Intent; 25import android.content.IntentFilter; 26import android.content.IntentSender; 27import android.content.pm.ApplicationInfo; 28import android.content.pm.ConfigurationInfo; 29import android.content.pm.IPackageDataObserver; 30import android.content.pm.ProviderInfo; 31import android.content.pm.UserInfo; 32import android.content.res.Configuration; 33import android.graphics.Bitmap; 34import android.net.Uri; 35import android.os.Bundle; 36import android.os.Debug; 37import android.os.IBinder; 38import android.os.IInterface; 39import android.os.Parcel; 40import android.os.ParcelFileDescriptor; 41import android.os.Parcelable; 42import android.os.RemoteException; 43import android.os.StrictMode; 44 45import java.util.List; 46 47/** 48 * System private API for talking with the activity manager service. This 49 * provides calls from the application back to the activity manager. 50 * 51 * {@hide} 52 */ 53public interface IActivityManager extends IInterface { 54 public int startActivity(IApplicationThread caller, 55 Intent intent, String resolvedType, IBinder resultTo, String resultWho, 56 int requestCode, int flags, String profileFile, 57 ParcelFileDescriptor profileFd, Bundle options) throws RemoteException; 58 public int startActivityAsUser(IApplicationThread caller, 59 Intent intent, String resolvedType, IBinder resultTo, String resultWho, 60 int requestCode, int flags, String profileFile, 61 ParcelFileDescriptor profileFd, Bundle options, int userId) throws RemoteException; 62 public WaitResult startActivityAndWait(IApplicationThread caller, 63 Intent intent, String resolvedType, IBinder resultTo, String resultWho, 64 int requestCode, int flags, String profileFile, 65 ParcelFileDescriptor profileFd, Bundle options, int userId) throws RemoteException; 66 public int startActivityWithConfig(IApplicationThread caller, 67 Intent intent, String resolvedType, IBinder resultTo, String resultWho, 68 int requestCode, int startFlags, Configuration newConfig, 69 Bundle options, int userId) throws RemoteException; 70 public int startActivityIntentSender(IApplicationThread caller, 71 IntentSender intent, Intent fillInIntent, String resolvedType, 72 IBinder resultTo, String resultWho, int requestCode, 73 int flagsMask, int flagsValues, Bundle options) throws RemoteException; 74 public boolean startNextMatchingActivity(IBinder callingActivity, 75 Intent intent, Bundle options) throws RemoteException; 76 public boolean finishActivity(IBinder token, int code, Intent data) 77 throws RemoteException; 78 public void finishSubActivity(IBinder token, String resultWho, int requestCode) throws RemoteException; 79 public boolean finishActivityAffinity(IBinder token) throws RemoteException; 80 public boolean willActivityBeVisible(IBinder token) throws RemoteException; 81 public Intent registerReceiver(IApplicationThread caller, String callerPackage, 82 IIntentReceiver receiver, IntentFilter filter, 83 String requiredPermission, int userId) throws RemoteException; 84 public void unregisterReceiver(IIntentReceiver receiver) throws RemoteException; 85 public int broadcastIntent(IApplicationThread caller, Intent intent, 86 String resolvedType, IIntentReceiver resultTo, int resultCode, 87 String resultData, Bundle map, String requiredPermission, 88 boolean serialized, boolean sticky, int userId) throws RemoteException; 89 public void unbroadcastIntent(IApplicationThread caller, Intent intent, int userId) throws RemoteException; 90 /* oneway */ 91 public void finishReceiver(IBinder who, int resultCode, String resultData, Bundle map, boolean abortBroadcast) throws RemoteException; 92 public void attachApplication(IApplicationThread app) throws RemoteException; 93 /* oneway */ 94 public void activityIdle(IBinder token, Configuration config, 95 boolean stopProfiling) throws RemoteException; 96 public void activityPaused(IBinder token) throws RemoteException; 97 /* oneway */ 98 public void activityStopped(IBinder token, Bundle state, 99 Bitmap thumbnail, CharSequence description) throws RemoteException; 100 /* oneway */ 101 public void activitySlept(IBinder token) throws RemoteException; 102 /* oneway */ 103 public void activityDestroyed(IBinder token) throws RemoteException; 104 public String getCallingPackage(IBinder token) throws RemoteException; 105 public ComponentName getCallingActivity(IBinder token) throws RemoteException; 106 public List getTasks(int maxNum, int flags, 107 IThumbnailReceiver receiver) throws RemoteException; 108 public List<ActivityManager.RecentTaskInfo> getRecentTasks(int maxNum, 109 int flags, int userId) throws RemoteException; 110 public ActivityManager.TaskThumbnails getTaskThumbnails(int taskId) throws RemoteException; 111 public List getServices(int maxNum, int flags) throws RemoteException; 112 public List<ActivityManager.ProcessErrorStateInfo> getProcessesInErrorState() 113 throws RemoteException; 114 public void moveTaskToFront(int task, int flags, Bundle options) throws RemoteException; 115 public void moveTaskToBack(int task) throws RemoteException; 116 public boolean moveActivityTaskToBack(IBinder token, boolean nonRoot) throws RemoteException; 117 public void moveTaskBackwards(int task) throws RemoteException; 118 public int getTaskForActivity(IBinder token, boolean onlyRoot) throws RemoteException; 119 /* oneway */ 120 public void reportThumbnail(IBinder token, 121 Bitmap thumbnail, CharSequence description) throws RemoteException; 122 public ContentProviderHolder getContentProvider(IApplicationThread caller, 123 String name, boolean stable) throws RemoteException; 124 public ContentProviderHolder getContentProviderExternal(String name, IBinder token) 125 throws RemoteException; 126 public void removeContentProvider(IBinder connection, boolean stable) throws RemoteException; 127 public void removeContentProviderExternal(String name, IBinder token) throws RemoteException; 128 public void publishContentProviders(IApplicationThread caller, 129 List<ContentProviderHolder> providers) throws RemoteException; 130 public boolean refContentProvider(IBinder connection, int stableDelta, int unstableDelta) 131 throws RemoteException; 132 public void unstableProviderDied(IBinder connection) throws RemoteException; 133 public PendingIntent getRunningServiceControlPanel(ComponentName service) 134 throws RemoteException; 135 public ComponentName startService(IApplicationThread caller, Intent service, 136 String resolvedType, int userId) throws RemoteException; 137 public int stopService(IApplicationThread caller, Intent service, 138 String resolvedType, int userId) throws RemoteException; 139 public boolean stopServiceToken(ComponentName className, IBinder token, 140 int startId) throws RemoteException; 141 public void setServiceForeground(ComponentName className, IBinder token, 142 int id, Notification notification, boolean keepNotification) throws RemoteException; 143 public int bindService(IApplicationThread caller, IBinder token, 144 Intent service, String resolvedType, 145 IServiceConnection connection, int flags, int userId) throws RemoteException; 146 public boolean unbindService(IServiceConnection connection) throws RemoteException; 147 public void publishService(IBinder token, 148 Intent intent, IBinder service) throws RemoteException; 149 public void unbindFinished(IBinder token, Intent service, 150 boolean doRebind) throws RemoteException; 151 /* oneway */ 152 public void serviceDoneExecuting(IBinder token, int type, int startId, 153 int res) throws RemoteException; 154 public IBinder peekService(Intent service, String resolvedType) throws RemoteException; 155 156 public boolean bindBackupAgent(ApplicationInfo appInfo, int backupRestoreMode) 157 throws RemoteException; 158 public void backupAgentCreated(String packageName, IBinder agent) throws RemoteException; 159 public void unbindBackupAgent(ApplicationInfo appInfo) throws RemoteException; 160 public void killApplicationProcess(String processName, int uid) throws RemoteException; 161 162 public boolean startInstrumentation(ComponentName className, String profileFile, 163 int flags, Bundle arguments, IInstrumentationWatcher watcher, int userId) 164 throws RemoteException; 165 public void finishInstrumentation(IApplicationThread target, 166 int resultCode, Bundle results) throws RemoteException; 167 168 public Configuration getConfiguration() throws RemoteException; 169 public void updateConfiguration(Configuration values) throws RemoteException; 170 public void setRequestedOrientation(IBinder token, 171 int requestedOrientation) throws RemoteException; 172 public int getRequestedOrientation(IBinder token) throws RemoteException; 173 174 public ComponentName getActivityClassForToken(IBinder token) throws RemoteException; 175 public String getPackageForToken(IBinder token) throws RemoteException; 176 177 public IIntentSender getIntentSender(int type, 178 String packageName, IBinder token, String resultWho, 179 int requestCode, Intent[] intents, String[] resolvedTypes, 180 int flags, Bundle options, int userId) throws RemoteException; 181 public void cancelIntentSender(IIntentSender sender) throws RemoteException; 182 public boolean clearApplicationUserData(final String packageName, 183 final IPackageDataObserver observer, int userId) throws RemoteException; 184 public String getPackageForIntentSender(IIntentSender sender) throws RemoteException; 185 public int getUidForIntentSender(IIntentSender sender) throws RemoteException; 186 187 public int handleIncomingUser(int callingPid, int callingUid, int userId, boolean allowAll, 188 boolean requireFull, String name, String callerPackage) throws RemoteException; 189 190 public void setProcessLimit(int max) throws RemoteException; 191 public int getProcessLimit() throws RemoteException; 192 193 public void setProcessForeground(IBinder token, int pid, 194 boolean isForeground) throws RemoteException; 195 196 public int checkPermission(String permission, int pid, int uid) 197 throws RemoteException; 198 199 public int checkUriPermission(Uri uri, int pid, int uid, int mode) 200 throws RemoteException; 201 public void grantUriPermission(IApplicationThread caller, String targetPkg, 202 Uri uri, int mode) throws RemoteException; 203 public void revokeUriPermission(IApplicationThread caller, Uri uri, 204 int mode) throws RemoteException; 205 206 public void showWaitingForDebugger(IApplicationThread who, boolean waiting) 207 throws RemoteException; 208 209 public void getMemoryInfo(ActivityManager.MemoryInfo outInfo) throws RemoteException; 210 211 public void killBackgroundProcesses(final String packageName, int userId) 212 throws RemoteException; 213 public void killAllBackgroundProcesses() throws RemoteException; 214 public void forceStopPackage(final String packageName, int userId) throws RemoteException; 215 216 // Note: probably don't want to allow applications access to these. 217 public void goingToSleep() throws RemoteException; 218 public void wakingUp() throws RemoteException; 219 public void setLockScreenShown(boolean shown) throws RemoteException; 220 221 public void unhandledBack() throws RemoteException; 222 public ParcelFileDescriptor openContentUri(Uri uri) throws RemoteException; 223 public void setDebugApp( 224 String packageName, boolean waitForDebugger, boolean persistent) 225 throws RemoteException; 226 public void setAlwaysFinish(boolean enabled) throws RemoteException; 227 public void setActivityController(IActivityController watcher) 228 throws RemoteException; 229 230 public void enterSafeMode() throws RemoteException; 231 232 public void noteWakeupAlarm(IIntentSender sender) throws RemoteException; 233 234 public boolean killPids(int[] pids, String reason, boolean secure) throws RemoteException; 235 public boolean killProcessesBelowForeground(String reason) throws RemoteException; 236 237 // Special low-level communication with activity manager. 238 public void startRunning(String pkg, String cls, String action, 239 String data) throws RemoteException; 240 public void handleApplicationCrash(IBinder app, 241 ApplicationErrorReport.CrashInfo crashInfo) throws RemoteException; 242 public boolean handleApplicationWtf(IBinder app, String tag, 243 ApplicationErrorReport.CrashInfo crashInfo) throws RemoteException; 244 245 // A StrictMode violation to be handled. The violationMask is a 246 // subset of the original StrictMode policy bitmask, with only the 247 // bit violated and penalty bits to be executed by the 248 // ActivityManagerService remaining set. 249 public void handleApplicationStrictModeViolation(IBinder app, int violationMask, 250 StrictMode.ViolationInfo crashInfo) throws RemoteException; 251 252 /* 253 * This will deliver the specified signal to all the persistent processes. Currently only 254 * SIGUSR1 is delivered. All others are ignored. 255 */ 256 public void signalPersistentProcesses(int signal) throws RemoteException; 257 // Retrieve running application processes in the system 258 public List<ActivityManager.RunningAppProcessInfo> getRunningAppProcesses() 259 throws RemoteException; 260 // Retrieve info of applications installed on external media that are currently 261 // running. 262 public List<ApplicationInfo> getRunningExternalApplications() 263 throws RemoteException; 264 // Get memory information about the calling process. 265 public void getMyMemoryState(ActivityManager.RunningAppProcessInfo outInfo) 266 throws RemoteException; 267 // Get device configuration 268 public ConfigurationInfo getDeviceConfigurationInfo() throws RemoteException; 269 270 // Turn on/off profiling in a particular process. 271 public boolean profileControl(String process, int userId, boolean start, 272 String path, ParcelFileDescriptor fd, int profileType) throws RemoteException; 273 274 public boolean shutdown(int timeout) throws RemoteException; 275 276 public void stopAppSwitches() throws RemoteException; 277 public void resumeAppSwitches() throws RemoteException; 278 279 public void killApplicationWithAppId(String pkg, int appid) throws RemoteException; 280 281 public void closeSystemDialogs(String reason) throws RemoteException; 282 283 public Debug.MemoryInfo[] getProcessMemoryInfo(int[] pids) 284 throws RemoteException; 285 286 public void overridePendingTransition(IBinder token, String packageName, 287 int enterAnim, int exitAnim) throws RemoteException; 288 289 public boolean isUserAMonkey() throws RemoteException; 290 291 public void finishHeavyWeightApp() throws RemoteException; 292 293 public void setImmersive(IBinder token, boolean immersive) throws RemoteException; 294 public boolean isImmersive(IBinder token) throws RemoteException; 295 public boolean isTopActivityImmersive() throws RemoteException; 296 297 public void crashApplication(int uid, int initialPid, String packageName, 298 String message) throws RemoteException; 299 300 public String getProviderMimeType(Uri uri, int userId) throws RemoteException; 301 302 public IBinder newUriPermissionOwner(String name) throws RemoteException; 303 public void grantUriPermissionFromOwner(IBinder owner, int fromUid, String targetPkg, 304 Uri uri, int mode) throws RemoteException; 305 public void revokeUriPermissionFromOwner(IBinder owner, Uri uri, 306 int mode) throws RemoteException; 307 308 public int checkGrantUriPermission(int callingUid, String targetPkg, 309 Uri uri, int modeFlags) throws RemoteException; 310 311 // Cause the specified process to dump the specified heap. 312 public boolean dumpHeap(String process, int userId, boolean managed, String path, 313 ParcelFileDescriptor fd) throws RemoteException; 314 315 public int startActivities(IApplicationThread caller, 316 Intent[] intents, String[] resolvedTypes, IBinder resultTo, 317 Bundle options) throws RemoteException; 318 319 public int getFrontActivityScreenCompatMode() throws RemoteException; 320 public void setFrontActivityScreenCompatMode(int mode) throws RemoteException; 321 public int getPackageScreenCompatMode(String packageName) throws RemoteException; 322 public void setPackageScreenCompatMode(String packageName, int mode) 323 throws RemoteException; 324 public boolean getPackageAskScreenCompat(String packageName) throws RemoteException; 325 public void setPackageAskScreenCompat(String packageName, boolean ask) 326 throws RemoteException; 327 328 // Multi-user APIs 329 public boolean switchUser(int userid) throws RemoteException; 330 public int stopUser(int userid, IStopUserCallback callback) throws RemoteException; 331 public UserInfo getCurrentUser() throws RemoteException; 332 public boolean isUserRunning(int userid) throws RemoteException; 333 334 public boolean removeSubTask(int taskId, int subTaskIndex) throws RemoteException; 335 336 public boolean removeTask(int taskId, int flags) throws RemoteException; 337 338 public void registerProcessObserver(IProcessObserver observer) throws RemoteException; 339 public void unregisterProcessObserver(IProcessObserver observer) throws RemoteException; 340 341 public boolean isIntentSenderTargetedToPackage(IIntentSender sender) throws RemoteException; 342 343 public boolean isIntentSenderAnActivity(IIntentSender sender) throws RemoteException; 344 345 public void updatePersistentConfiguration(Configuration values) throws RemoteException; 346 347 public long[] getProcessPss(int[] pids) throws RemoteException; 348 349 public void showBootMessage(CharSequence msg, boolean always) throws RemoteException; 350 351 public void dismissKeyguardOnNextActivity() throws RemoteException; 352 353 public boolean targetTaskAffinityMatchesActivity(IBinder token, String destAffinity) 354 throws RemoteException; 355 356 public boolean navigateUpTo(IBinder token, Intent target, int resultCode, Intent resultData) 357 throws RemoteException; 358 359 // This is not public because you need to be very careful in how you 360 // manage your activity to make sure it is always the uid you expect. 361 public int getLaunchedFromUid(IBinder activityToken) throws RemoteException; 362 363 public void registerUserSwitchObserver(IUserSwitchObserver observer) throws RemoteException; 364 public void unregisterUserSwitchObserver(IUserSwitchObserver observer) throws RemoteException; 365 366 /* 367 * Private non-Binder interfaces 368 */ 369 /* package */ boolean testIsSystemReady(); 370 371 /** Information you can retrieve about a particular application. */ 372 public static class ContentProviderHolder implements Parcelable { 373 public final ProviderInfo info; 374 public IContentProvider provider; 375 public IBinder connection; 376 public boolean noReleaseNeeded; 377 378 public ContentProviderHolder(ProviderInfo _info) { 379 info = _info; 380 } 381 382 public int describeContents() { 383 return 0; 384 } 385 386 public void writeToParcel(Parcel dest, int flags) { 387 info.writeToParcel(dest, 0); 388 if (provider != null) { 389 dest.writeStrongBinder(provider.asBinder()); 390 } else { 391 dest.writeStrongBinder(null); 392 } 393 dest.writeStrongBinder(connection); 394 dest.writeInt(noReleaseNeeded ? 1:0); 395 } 396 397 public static final Parcelable.Creator<ContentProviderHolder> CREATOR 398 = new Parcelable.Creator<ContentProviderHolder>() { 399 public ContentProviderHolder createFromParcel(Parcel source) { 400 return new ContentProviderHolder(source); 401 } 402 403 public ContentProviderHolder[] newArray(int size) { 404 return new ContentProviderHolder[size]; 405 } 406 }; 407 408 private ContentProviderHolder(Parcel source) { 409 info = ProviderInfo.CREATOR.createFromParcel(source); 410 provider = ContentProviderNative.asInterface( 411 source.readStrongBinder()); 412 connection = source.readStrongBinder(); 413 noReleaseNeeded = source.readInt() != 0; 414 } 415 } 416 417 /** Information returned after waiting for an activity start. */ 418 public static class WaitResult implements Parcelable { 419 public int result; 420 public boolean timeout; 421 public ComponentName who; 422 public long thisTime; 423 public long totalTime; 424 425 public WaitResult() { 426 } 427 428 public int describeContents() { 429 return 0; 430 } 431 432 public void writeToParcel(Parcel dest, int flags) { 433 dest.writeInt(result); 434 dest.writeInt(timeout ? 1 : 0); 435 ComponentName.writeToParcel(who, dest); 436 dest.writeLong(thisTime); 437 dest.writeLong(totalTime); 438 } 439 440 public static final Parcelable.Creator<WaitResult> CREATOR 441 = new Parcelable.Creator<WaitResult>() { 442 public WaitResult createFromParcel(Parcel source) { 443 return new WaitResult(source); 444 } 445 446 public WaitResult[] newArray(int size) { 447 return new WaitResult[size]; 448 } 449 }; 450 451 private WaitResult(Parcel source) { 452 result = source.readInt(); 453 timeout = source.readInt() != 0; 454 who = ComponentName.readFromParcel(source); 455 thisTime = source.readLong(); 456 totalTime = source.readLong(); 457 } 458 }; 459 460 String descriptor = "android.app.IActivityManager"; 461 462 // Please keep these transaction codes the same -- they are also 463 // sent by C++ code. 464 int START_RUNNING_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION; 465 int HANDLE_APPLICATION_CRASH_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+1; 466 int START_ACTIVITY_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+2; 467 int UNHANDLED_BACK_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+3; 468 int OPEN_CONTENT_URI_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+4; 469 470 // Remaining non-native transaction codes. 471 int FINISH_ACTIVITY_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+10; 472 int REGISTER_RECEIVER_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+11; 473 int UNREGISTER_RECEIVER_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+12; 474 int BROADCAST_INTENT_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+13; 475 int UNBROADCAST_INTENT_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+14; 476 int FINISH_RECEIVER_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+15; 477 int ATTACH_APPLICATION_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+16; 478 int ACTIVITY_IDLE_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+17; 479 int ACTIVITY_PAUSED_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+18; 480 int ACTIVITY_STOPPED_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+19; 481 int GET_CALLING_PACKAGE_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+20; 482 int GET_CALLING_ACTIVITY_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+21; 483 int GET_TASKS_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+22; 484 int MOVE_TASK_TO_FRONT_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+23; 485 int MOVE_TASK_TO_BACK_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+24; 486 int MOVE_TASK_BACKWARDS_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+25; 487 int GET_TASK_FOR_ACTIVITY_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+26; 488 int REPORT_THUMBNAIL_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+27; 489 int GET_CONTENT_PROVIDER_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+28; 490 int PUBLISH_CONTENT_PROVIDERS_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+29; 491 int REF_CONTENT_PROVIDER_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+30; 492 int FINISH_SUB_ACTIVITY_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+31; 493 int GET_RUNNING_SERVICE_CONTROL_PANEL_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+32; 494 int START_SERVICE_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+33; 495 int STOP_SERVICE_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+34; 496 int BIND_SERVICE_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+35; 497 int UNBIND_SERVICE_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+36; 498 int PUBLISH_SERVICE_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+37; 499 500 int GOING_TO_SLEEP_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+39; 501 int WAKING_UP_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+40; 502 int SET_DEBUG_APP_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+41; 503 int SET_ALWAYS_FINISH_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+42; 504 int START_INSTRUMENTATION_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+43; 505 int FINISH_INSTRUMENTATION_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+44; 506 int GET_CONFIGURATION_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+45; 507 int UPDATE_CONFIGURATION_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+46; 508 int STOP_SERVICE_TOKEN_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+47; 509 int GET_ACTIVITY_CLASS_FOR_TOKEN_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+48; 510 int GET_PACKAGE_FOR_TOKEN_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+49; 511 int SET_PROCESS_LIMIT_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+50; 512 int GET_PROCESS_LIMIT_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+51; 513 int CHECK_PERMISSION_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+52; 514 int CHECK_URI_PERMISSION_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+53; 515 int GRANT_URI_PERMISSION_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+54; 516 int REVOKE_URI_PERMISSION_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+55; 517 int SET_ACTIVITY_CONTROLLER_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+56; 518 int SHOW_WAITING_FOR_DEBUGGER_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+57; 519 int SIGNAL_PERSISTENT_PROCESSES_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+58; 520 int GET_RECENT_TASKS_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+59; 521 int SERVICE_DONE_EXECUTING_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+60; 522 int ACTIVITY_DESTROYED_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+61; 523 int GET_INTENT_SENDER_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+62; 524 int CANCEL_INTENT_SENDER_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+63; 525 int GET_PACKAGE_FOR_INTENT_SENDER_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+64; 526 int ENTER_SAFE_MODE_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+65; 527 int START_NEXT_MATCHING_ACTIVITY_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+66; 528 int NOTE_WAKEUP_ALARM_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+67; 529 int REMOVE_CONTENT_PROVIDER_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+68; 530 int SET_REQUESTED_ORIENTATION_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+69; 531 int GET_REQUESTED_ORIENTATION_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+70; 532 int UNBIND_FINISHED_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+71; 533 int SET_PROCESS_FOREGROUND_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+72; 534 int SET_SERVICE_FOREGROUND_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+73; 535 int MOVE_ACTIVITY_TASK_TO_BACK_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+74; 536 int GET_MEMORY_INFO_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+75; 537 int GET_PROCESSES_IN_ERROR_STATE_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+76; 538 int CLEAR_APP_DATA_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+77; 539 int FORCE_STOP_PACKAGE_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+78; 540 int KILL_PIDS_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+79; 541 int GET_SERVICES_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+80; 542 int GET_TASK_THUMBNAILS_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+81; 543 int GET_RUNNING_APP_PROCESSES_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+82; 544 int GET_DEVICE_CONFIGURATION_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+83; 545 int PEEK_SERVICE_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+84; 546 int PROFILE_CONTROL_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+85; 547 int SHUTDOWN_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+86; 548 int STOP_APP_SWITCHES_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+87; 549 int RESUME_APP_SWITCHES_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+88; 550 int START_BACKUP_AGENT_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+89; 551 int BACKUP_AGENT_CREATED_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+90; 552 int UNBIND_BACKUP_AGENT_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+91; 553 int GET_UID_FOR_INTENT_SENDER_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+92; 554 int HANDLE_INCOMING_USER_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+93; 555 556 int KILL_APPLICATION_WITH_APPID_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+95; 557 int CLOSE_SYSTEM_DIALOGS_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+96; 558 int GET_PROCESS_MEMORY_INFO_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+97; 559 int KILL_APPLICATION_PROCESS_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+98; 560 int START_ACTIVITY_INTENT_SENDER_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+99; 561 int OVERRIDE_PENDING_TRANSITION_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+100; 562 int HANDLE_APPLICATION_WTF_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+101; 563 int KILL_BACKGROUND_PROCESSES_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+102; 564 int IS_USER_A_MONKEY_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+103; 565 int START_ACTIVITY_AND_WAIT_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+104; 566 int WILL_ACTIVITY_BE_VISIBLE_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+105; 567 int START_ACTIVITY_WITH_CONFIG_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+106; 568 int GET_RUNNING_EXTERNAL_APPLICATIONS_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+107; 569 int FINISH_HEAVY_WEIGHT_APP_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+108; 570 int HANDLE_APPLICATION_STRICT_MODE_VIOLATION_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+109; 571 int IS_IMMERSIVE_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+110; 572 int SET_IMMERSIVE_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+111; 573 int IS_TOP_ACTIVITY_IMMERSIVE_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+112; 574 int CRASH_APPLICATION_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+113; 575 int GET_PROVIDER_MIME_TYPE_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+114; 576 int NEW_URI_PERMISSION_OWNER_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+115; 577 int GRANT_URI_PERMISSION_FROM_OWNER_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+116; 578 int REVOKE_URI_PERMISSION_FROM_OWNER_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+117; 579 int CHECK_GRANT_URI_PERMISSION_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+118; 580 int DUMP_HEAP_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+119; 581 int START_ACTIVITIES_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+120; 582 int IS_USER_RUNNING_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+121; 583 int ACTIVITY_SLEPT_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+122; 584 int GET_FRONT_ACTIVITY_SCREEN_COMPAT_MODE_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+123; 585 int SET_FRONT_ACTIVITY_SCREEN_COMPAT_MODE_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+124; 586 int GET_PACKAGE_SCREEN_COMPAT_MODE_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+125; 587 int SET_PACKAGE_SCREEN_COMPAT_MODE_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+126; 588 int GET_PACKAGE_ASK_SCREEN_COMPAT_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+127; 589 int SET_PACKAGE_ASK_SCREEN_COMPAT_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+128; 590 int SWITCH_USER_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+129; 591 int REMOVE_SUB_TASK_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+130; 592 int REMOVE_TASK_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+131; 593 int REGISTER_PROCESS_OBSERVER_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+132; 594 int UNREGISTER_PROCESS_OBSERVER_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+133; 595 int IS_INTENT_SENDER_TARGETED_TO_PACKAGE_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+134; 596 int UPDATE_PERSISTENT_CONFIGURATION_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+135; 597 int GET_PROCESS_PSS_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+136; 598 int SHOW_BOOT_MESSAGE_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+137; 599 int DISMISS_KEYGUARD_ON_NEXT_ACTIVITY_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+138; 600 int KILL_ALL_BACKGROUND_PROCESSES_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+139; 601 int GET_CONTENT_PROVIDER_EXTERNAL_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+140; 602 int REMOVE_CONTENT_PROVIDER_EXTERNAL_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+141; 603 int GET_MY_MEMORY_STATE_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+142; 604 int KILL_PROCESSES_BELOW_FOREGROUND_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+143; 605 int GET_CURRENT_USER_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+144; 606 int TARGET_TASK_AFFINITY_MATCHES_ACTIVITY_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+145; 607 int NAVIGATE_UP_TO_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+146; 608 int SET_LOCK_SCREEN_SHOWN_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+147; 609 int FINISH_ACTIVITY_AFFINITY_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+148; 610 int GET_LAUNCHED_FROM_UID_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+149; 611 int UNSTABLE_PROVIDER_DIED_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+150; 612 int IS_INTENT_SENDER_AN_ACTIVITY_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+151; 613 int START_ACTIVITY_AS_USER_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+152; 614 int STOP_USER_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+153; 615 int REGISTER_USER_SWITCH_OBSERVER_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+154; 616 int UNREGISTER_USER_SWITCH_OBSERVER_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+155; 617} 618