IActivityManager.java revision f6f9f2d0256930ce0bb4913b2260b8480914edc2
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.Intent; 23import android.content.IntentFilter; 24import android.content.IIntentSender; 25import android.content.IIntentReceiver; 26import android.content.pm.ApplicationInfo; 27import android.content.pm.ConfigurationInfo; 28import android.content.pm.IPackageDataObserver; 29import android.content.pm.ProviderInfo; 30import android.content.res.Configuration; 31import android.graphics.Bitmap; 32import android.net.Uri; 33import android.os.RemoteException; 34import android.os.IBinder; 35import android.os.IInterface; 36import android.os.Parcel; 37import android.os.Parcelable; 38import android.os.ParcelFileDescriptor; 39import android.os.Bundle; 40 41import java.util.List; 42 43/** 44 * System private API for talking with the activity manager service. This 45 * provides calls from the application back to the activity manager. 46 * 47 * {@hide} 48 */ 49public interface IActivityManager extends IInterface { 50 /** 51 * Returned by startActivity() if the start request was canceled because 52 * app switches are temporarily canceled to ensure the user's last request 53 * (such as pressing home) is performed. 54 */ 55 public static final int START_SWITCHES_CANCELED = 4; 56 /** 57 * Returned by startActivity() if an activity wasn't really started, but 58 * the given Intent was given to the existing top activity. 59 */ 60 public static final int START_DELIVERED_TO_TOP = 3; 61 /** 62 * Returned by startActivity() if an activity wasn't really started, but 63 * a task was simply brought to the foreground. 64 */ 65 public static final int START_TASK_TO_FRONT = 2; 66 /** 67 * Returned by startActivity() if the caller asked that the Intent not 68 * be executed if it is the recipient, and that is indeed the case. 69 */ 70 public static final int START_RETURN_INTENT_TO_CALLER = 1; 71 /** 72 * Activity was started successfully as normal. 73 */ 74 public static final int START_SUCCESS = 0; 75 public static final int START_INTENT_NOT_RESOLVED = -1; 76 public static final int START_CLASS_NOT_FOUND = -2; 77 public static final int START_FORWARD_AND_REQUEST_CONFLICT = -3; 78 public static final int START_PERMISSION_DENIED = -4; 79 public int startActivity(IApplicationThread caller, 80 Intent intent, String resolvedType, Uri[] grantedUriPermissions, 81 int grantedMode, IBinder resultTo, String resultWho, int requestCode, 82 boolean onlyIfNeeded, boolean debug) throws RemoteException; 83 public boolean startNextMatchingActivity(IBinder callingActivity, 84 Intent intent) throws RemoteException; 85 public boolean finishActivity(IBinder token, int code, Intent data) 86 throws RemoteException; 87 public void finishSubActivity(IBinder token, String resultWho, int requestCode) throws RemoteException; 88 public Intent registerReceiver(IApplicationThread caller, 89 IIntentReceiver receiver, IntentFilter filter, 90 String requiredPermission) throws RemoteException; 91 public void unregisterReceiver(IIntentReceiver receiver) throws RemoteException; 92 public static final int BROADCAST_SUCCESS = 0; 93 public static final int BROADCAST_STICKY_CANT_HAVE_PERMISSION = -1; 94 public int broadcastIntent(IApplicationThread caller, Intent intent, 95 String resolvedType, IIntentReceiver resultTo, int resultCode, 96 String resultData, Bundle map, String requiredPermission, 97 boolean serialized, boolean sticky) throws RemoteException; 98 public void unbroadcastIntent(IApplicationThread caller, Intent intent) throws RemoteException; 99 /* oneway */ 100 public void finishReceiver(IBinder who, int resultCode, String resultData, Bundle map, boolean abortBroadcast) throws RemoteException; 101 public void setPersistent(IBinder token, boolean isPersistent) throws RemoteException; 102 public void attachApplication(IApplicationThread app) throws RemoteException; 103 /* oneway */ 104 public void activityIdle(IBinder token) throws RemoteException; 105 public void activityPaused(IBinder token, Bundle state) throws RemoteException; 106 /* oneway */ 107 public void activityStopped(IBinder token, 108 Bitmap thumbnail, CharSequence description) throws RemoteException; 109 /* oneway */ 110 public void activityDestroyed(IBinder token) throws RemoteException; 111 public String getCallingPackage(IBinder token) throws RemoteException; 112 public ComponentName getCallingActivity(IBinder token) throws RemoteException; 113 public List getTasks(int maxNum, int flags, 114 IThumbnailReceiver receiver) throws RemoteException; 115 public List<ActivityManager.RecentTaskInfo> getRecentTasks(int maxNum, 116 int flags) throws RemoteException; 117 public List getServices(int maxNum, int flags) throws RemoteException; 118 public List<ActivityManager.ProcessErrorStateInfo> getProcessesInErrorState() 119 throws RemoteException; 120 public void moveTaskToFront(int task) throws RemoteException; 121 public void moveTaskToBack(int task) throws RemoteException; 122 public boolean moveActivityTaskToBack(IBinder token, boolean nonRoot) throws RemoteException; 123 public void moveTaskBackwards(int task) throws RemoteException; 124 public int getTaskForActivity(IBinder token, boolean onlyRoot) throws RemoteException; 125 public void finishOtherInstances(IBinder token, ComponentName className) throws RemoteException; 126 /* oneway */ 127 public void reportThumbnail(IBinder token, 128 Bitmap thumbnail, CharSequence description) throws RemoteException; 129 public ContentProviderHolder getContentProvider(IApplicationThread caller, 130 String name) throws RemoteException; 131 public void removeContentProvider(IApplicationThread caller, 132 String name) throws RemoteException; 133 public void publishContentProviders(IApplicationThread caller, 134 List<ContentProviderHolder> providers) throws RemoteException; 135 public ComponentName startService(IApplicationThread caller, Intent service, 136 String resolvedType) throws RemoteException; 137 public int stopService(IApplicationThread caller, Intent service, 138 String resolvedType) 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) 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 161 public boolean startInstrumentation(ComponentName className, String profileFile, 162 int flags, Bundle arguments, IInstrumentationWatcher watcher) 163 throws RemoteException; 164 public void finishInstrumentation(IApplicationThread target, 165 int resultCode, Bundle results) throws RemoteException; 166 167 public Configuration getConfiguration() throws RemoteException; 168 public void updateConfiguration(Configuration values) throws RemoteException; 169 public void setRequestedOrientation(IBinder token, 170 int requestedOrientation) throws RemoteException; 171 public int getRequestedOrientation(IBinder token) throws RemoteException; 172 173 public ComponentName getActivityClassForToken(IBinder token) throws RemoteException; 174 public String getPackageForToken(IBinder token) throws RemoteException; 175 176 public static final int INTENT_SENDER_BROADCAST = 1; 177 public static final int INTENT_SENDER_ACTIVITY = 2; 178 public static final int INTENT_SENDER_ACTIVITY_RESULT = 3; 179 public static final int INTENT_SENDER_SERVICE = 4; 180 public IIntentSender getIntentSender(int type, 181 String packageName, IBinder token, String resultWho, 182 int requestCode, Intent intent, String resolvedType, int flags) throws RemoteException; 183 public void cancelIntentSender(IIntentSender sender) throws RemoteException; 184 public boolean clearApplicationUserData(final String packageName, 185 final IPackageDataObserver observer) throws RemoteException; 186 public String getPackageForIntentSender(IIntentSender sender) 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, boolean isForeground) throws RemoteException; 192 193 public int checkPermission(String permission, int pid, int uid) 194 throws RemoteException; 195 196 public int checkUriPermission(Uri uri, int pid, int uid, int mode) 197 throws RemoteException; 198 public void grantUriPermission(IApplicationThread caller, String targetPkg, 199 Uri uri, int mode) throws RemoteException; 200 public void revokeUriPermission(IApplicationThread caller, Uri uri, 201 int mode) throws RemoteException; 202 203 public void showWaitingForDebugger(IApplicationThread who, boolean waiting) 204 throws RemoteException; 205 206 public void getMemoryInfo(ActivityManager.MemoryInfo outInfo) throws RemoteException; 207 208 public void restartPackage(final String packageName) throws RemoteException; 209 210 // Note: probably don't want to allow applications access to these. 211 public void goingToSleep() throws RemoteException; 212 public void wakingUp() throws RemoteException; 213 214 public void unhandledBack() throws RemoteException; 215 public ParcelFileDescriptor openContentUri(Uri uri) throws RemoteException; 216 public void setDebugApp( 217 String packageName, boolean waitForDebugger, boolean persistent) 218 throws RemoteException; 219 public void setAlwaysFinish(boolean enabled) throws RemoteException; 220 public void setActivityController(IActivityController watcher) 221 throws RemoteException; 222 223 public void enterSafeMode() throws RemoteException; 224 225 public void noteWakeupAlarm(IIntentSender sender) throws RemoteException; 226 227 public boolean killPidsForMemory(int[] pids) throws RemoteException; 228 229 public void reportPss(IApplicationThread caller, int pss) throws RemoteException; 230 231 // Special low-level communication with activity manager. 232 public void startRunning(String pkg, String cls, String action, 233 String data) throws RemoteException; 234 public void systemReady() throws RemoteException; 235 // Returns 1 if the user wants to debug. 236 public int handleApplicationError(IBinder app, 237 int flags, /* 1 == can debug */ 238 String tag, String shortMsg, String longMsg, 239 byte[] crashData) throws RemoteException; 240 241 /* 242 * This will deliver the specified signal to all the persistent processes. Currently only 243 * SIGUSR1 is delivered. All others are ignored. 244 */ 245 public void signalPersistentProcesses(int signal) throws RemoteException; 246 // Retrieve running application processes in the system 247 public List<ActivityManager.RunningAppProcessInfo> getRunningAppProcesses() 248 throws RemoteException; 249 // Get device configuration 250 public ConfigurationInfo getDeviceConfigurationInfo() throws RemoteException; 251 252 // Turn on/off profiling in a particular process. 253 public boolean profileControl(String process, boolean start, 254 String path, ParcelFileDescriptor fd) throws RemoteException; 255 256 public boolean shutdown(int timeout) throws RemoteException; 257 258 public void stopAppSwitches() throws RemoteException; 259 public void resumeAppSwitches() throws RemoteException; 260 261 public void registerActivityWatcher(IActivityWatcher watcher) 262 throws RemoteException; 263 public void unregisterActivityWatcher(IActivityWatcher watcher) 264 throws RemoteException; 265 266 public int startActivityInPackage(int uid, 267 Intent intent, String resolvedType, IBinder resultTo, 268 String resultWho, int requestCode, boolean onlyIfNeeded) 269 throws RemoteException; 270 271 public void killApplicationWithUid(String pkg, int uid) throws RemoteException; 272 273 public void closeSystemDialogs(String reason) throws RemoteException; 274 275 /* 276 * Private non-Binder interfaces 277 */ 278 /* package */ boolean testIsSystemReady(); 279 280 /** Information you can retrieve about a particular application. */ 281 public static class ContentProviderHolder implements Parcelable { 282 public final ProviderInfo info; 283 public final String permissionFailure; 284 public IContentProvider provider; 285 public boolean noReleaseNeeded; 286 287 public ContentProviderHolder(ProviderInfo _info) { 288 info = _info; 289 permissionFailure = null; 290 } 291 292 public ContentProviderHolder(ProviderInfo _info, 293 String _permissionFailure) { 294 info = _info; 295 permissionFailure = _permissionFailure; 296 } 297 298 public int describeContents() { 299 return 0; 300 } 301 302 public void writeToParcel(Parcel dest, int flags) { 303 info.writeToParcel(dest, 0); 304 dest.writeString(permissionFailure); 305 if (provider != null) { 306 dest.writeStrongBinder(provider.asBinder()); 307 } else { 308 dest.writeStrongBinder(null); 309 } 310 dest.writeInt(noReleaseNeeded ? 1:0); 311 } 312 313 public static final Parcelable.Creator<ContentProviderHolder> CREATOR 314 = new Parcelable.Creator<ContentProviderHolder>() { 315 public ContentProviderHolder createFromParcel(Parcel source) { 316 return new ContentProviderHolder(source); 317 } 318 319 public ContentProviderHolder[] newArray(int size) { 320 return new ContentProviderHolder[size]; 321 } 322 }; 323 324 private ContentProviderHolder(Parcel source) { 325 info = ProviderInfo.CREATOR.createFromParcel(source); 326 permissionFailure = source.readString(); 327 provider = ContentProviderNative.asInterface( 328 source.readStrongBinder()); 329 noReleaseNeeded = source.readInt() != 0; 330 } 331 }; 332 333 String descriptor = "android.app.IActivityManager"; 334 335 // Please keep these transaction codes the same -- they are also 336 // sent by C++ code. 337 int START_RUNNING_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION; 338 int HANDLE_APPLICATION_ERROR_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+1; 339 int START_ACTIVITY_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+2; 340 int UNHANDLED_BACK_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+3; 341 int OPEN_CONTENT_URI_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+4; 342 343 // Remaining non-native transaction codes. 344 int FINISH_ACTIVITY_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+10; 345 int REGISTER_RECEIVER_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+11; 346 int UNREGISTER_RECEIVER_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+12; 347 int BROADCAST_INTENT_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+13; 348 int UNBROADCAST_INTENT_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+14; 349 int FINISH_RECEIVER_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+15; 350 int ATTACH_APPLICATION_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+16; 351 int ACTIVITY_IDLE_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+17; 352 int ACTIVITY_PAUSED_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+18; 353 int ACTIVITY_STOPPED_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+19; 354 int GET_CALLING_PACKAGE_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+20; 355 int GET_CALLING_ACTIVITY_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+21; 356 int GET_TASKS_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+22; 357 int MOVE_TASK_TO_FRONT_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+23; 358 int MOVE_TASK_TO_BACK_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+24; 359 int MOVE_TASK_BACKWARDS_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+25; 360 int GET_TASK_FOR_ACTIVITY_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+26; 361 int REPORT_THUMBNAIL_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+27; 362 int GET_CONTENT_PROVIDER_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+28; 363 int PUBLISH_CONTENT_PROVIDERS_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+29; 364 int SET_PERSISTENT_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+30; 365 int FINISH_SUB_ACTIVITY_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+31; 366 int SYSTEM_READY_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+32; 367 int START_SERVICE_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+33; 368 int STOP_SERVICE_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+34; 369 int BIND_SERVICE_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+35; 370 int UNBIND_SERVICE_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+36; 371 int PUBLISH_SERVICE_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+37; 372 int FINISH_OTHER_INSTANCES_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+38; 373 int GOING_TO_SLEEP_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+39; 374 int WAKING_UP_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+40; 375 int SET_DEBUG_APP_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+41; 376 int SET_ALWAYS_FINISH_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+42; 377 int START_INSTRUMENTATION_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+43; 378 int FINISH_INSTRUMENTATION_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+44; 379 int GET_CONFIGURATION_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+45; 380 int UPDATE_CONFIGURATION_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+46; 381 int STOP_SERVICE_TOKEN_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+47; 382 int GET_ACTIVITY_CLASS_FOR_TOKEN_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+48; 383 int GET_PACKAGE_FOR_TOKEN_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+49; 384 int SET_PROCESS_LIMIT_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+50; 385 int GET_PROCESS_LIMIT_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+51; 386 int CHECK_PERMISSION_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+52; 387 int CHECK_URI_PERMISSION_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+53; 388 int GRANT_URI_PERMISSION_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+54; 389 int REVOKE_URI_PERMISSION_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+55; 390 int SET_ACTIVITY_CONTROLLER_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+56; 391 int SHOW_WAITING_FOR_DEBUGGER_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+57; 392 int SIGNAL_PERSISTENT_PROCESSES_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+58; 393 int GET_RECENT_TASKS_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+59; 394 int SERVICE_DONE_EXECUTING_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+60; 395 int ACTIVITY_DESTROYED_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+61; 396 int GET_INTENT_SENDER_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+62; 397 int CANCEL_INTENT_SENDER_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+63; 398 int GET_PACKAGE_FOR_INTENT_SENDER_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+64; 399 int ENTER_SAFE_MODE_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+65; 400 int START_NEXT_MATCHING_ACTIVITY_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+66; 401 int NOTE_WAKEUP_ALARM_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+67; 402 int REMOVE_CONTENT_PROVIDER_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+68; 403 int SET_REQUESTED_ORIENTATION_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+69; 404 int GET_REQUESTED_ORIENTATION_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+70; 405 int UNBIND_FINISHED_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+71; 406 int SET_PROCESS_FOREGROUND_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+72; 407 int SET_SERVICE_FOREGROUND_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+73; 408 int MOVE_ACTIVITY_TASK_TO_BACK_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+74; 409 int GET_MEMORY_INFO_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+75; 410 int GET_PROCESSES_IN_ERROR_STATE_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+76; 411 int CLEAR_APP_DATA_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+77; 412 int RESTART_PACKAGE_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+78; 413 int KILL_PIDS_FOR_MEMORY_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+79; 414 int GET_SERVICES_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+80; 415 int REPORT_PSS_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+81; 416 int GET_RUNNING_APP_PROCESSES_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+82; 417 int GET_DEVICE_CONFIGURATION_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+83; 418 int PEEK_SERVICE_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+84; 419 int PROFILE_CONTROL_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+85; 420 int SHUTDOWN_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+86; 421 int STOP_APP_SWITCHES_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+87; 422 int RESUME_APP_SWITCHES_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+88; 423 int START_BACKUP_AGENT_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+89; 424 int BACKUP_AGENT_CREATED_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+90; 425 int UNBIND_BACKUP_AGENT_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+91; 426 int REGISTER_ACTIVITY_WATCHER_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+92; 427 int UNREGISTER_ACTIVITY_WATCHER_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+93; 428 int START_ACTIVITY_IN_PACKAGE_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+94; 429 int KILL_APPLICATION_WITH_UID_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+95; 430 int CLOSE_SYSTEM_DIALOGS_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+96; 431} 432