diff options
| author | Dianne Hackborn <hackbod@google.com> | 2012-04-26 18:56:09 -0700 |
|---|---|---|
| committer | Dianne Hackborn <hackbod@google.com> | 2012-04-26 18:56:09 -0700 |
| commit | ecc5a9cca000b62d2a649b795460fd791a206a89 (patch) | |
| tree | 02d52fd9ae44a0be72dda0a2890001f9f8fae118 /core/java/android/app/ActivityManagerNative.java | |
| parent | 16fb5d444cea1c978257807910b96d4e47b78dce (diff) | |
Add new Activity.finishAffinity() method.
It's cool!
Change-Id: I9fdcd9535b7f1ca2b311d3a1b23e5d058977b095
Diffstat (limited to 'core/java/android/app/ActivityManagerNative.java')
| -rw-r--r-- | core/java/android/app/ActivityManagerNative.java | 23 |
1 files changed, 22 insertions, 1 deletions
diff --git a/core/java/android/app/ActivityManagerNative.java b/core/java/android/app/ActivityManagerNative.java index 7e1589f6c9f7..2f2918d8ccbd 100644 --- a/core/java/android/app/ActivityManagerNative.java +++ b/core/java/android/app/ActivityManagerNative.java @@ -218,7 +218,7 @@ public abstract class ActivityManagerNative extends Binder implements IActivityM reply.writeInt(result ? 1 : 0); return true; } - + case FINISH_ACTIVITY_TRANSACTION: { data.enforceInterface(IActivityManager.descriptor); IBinder token = data.readStrongBinder(); @@ -243,6 +243,15 @@ public abstract class ActivityManagerNative extends Binder implements IActivityM return true; } + case FINISH_ACTIVITY_AFFINITY_TRANSACTION: { + data.enforceInterface(IActivityManager.descriptor); + IBinder token = data.readStrongBinder(); + boolean res = finishActivityAffinity(token); + reply.writeNoException(); + reply.writeInt(res ? 1 : 0); + return true; + } + case WILL_ACTIVITY_BE_VISIBLE_TRANSACTION: { data.enforceInterface(IActivityManager.descriptor); IBinder token = data.readStrongBinder(); @@ -1866,6 +1875,18 @@ class ActivityManagerProxy implements IActivityManager data.recycle(); reply.recycle(); } + public boolean finishActivityAffinity(IBinder token) throws RemoteException { + Parcel data = Parcel.obtain(); + Parcel reply = Parcel.obtain(); + data.writeInterfaceToken(IActivityManager.descriptor); + data.writeStrongBinder(token); + mRemote.transact(FINISH_ACTIVITY_AFFINITY_TRANSACTION, data, reply, 0); + reply.readException(); + boolean res = reply.readInt() != 0; + data.recycle(); + reply.recycle(); + return res; + } public boolean willActivityBeVisible(IBinder token) throws RemoteException { Parcel data = Parcel.obtain(); Parcel reply = Parcel.obtain(); |
