diff options
Diffstat (limited to 'core/java/android/app/ApplicationThreadNative.java')
-rw-r--r-- | core/java/android/app/ApplicationThreadNative.java | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/core/java/android/app/ApplicationThreadNative.java b/core/java/android/app/ApplicationThreadNative.java index 437362b..3e726e0 100644 --- a/core/java/android/app/ApplicationThreadNative.java +++ b/core/java/android/app/ApplicationThreadNative.java @@ -575,6 +575,15 @@ public abstract class ApplicationThreadNative extends Binder reply.writeNoException(); return true; } + + case UNSTABLE_PROVIDER_DIED_TRANSACTION: + { + data.enforceInterface(IApplicationThread.descriptor); + IBinder provider = data.readStrongBinder(); + unstableProviderDied(provider); + reply.writeNoException(); + return true; + } } return super.onTransact(code, data, reply, flags); @@ -1163,4 +1172,12 @@ class ApplicationThreadProxy implements IApplicationThread { mRemote.transact(DUMP_DB_INFO_TRANSACTION, data, null, IBinder.FLAG_ONEWAY); data.recycle(); } + + public void unstableProviderDied(IBinder provider) throws RemoteException { + Parcel data = Parcel.obtain(); + data.writeInterfaceToken(IApplicationThread.descriptor); + data.writeStrongBinder(provider); + mRemote.transact(UNSTABLE_PROVIDER_DIED_TRANSACTION, data, null, IBinder.FLAG_ONEWAY); + data.recycle(); + } } |