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