summaryrefslogtreecommitdiffstats
path: root/core/java/android/app
diff options
context:
space:
mode:
Diffstat (limited to 'core/java/android/app')
-rw-r--r--core/java/android/app/ActivityManagerNative.java31
-rw-r--r--core/java/android/app/IActivityManager.java5
2 files changed, 36 insertions, 0 deletions
diff --git a/core/java/android/app/ActivityManagerNative.java b/core/java/android/app/ActivityManagerNative.java
index cc964c2..6a29552 100644
--- a/core/java/android/app/ActivityManagerNative.java
+++ b/core/java/android/app/ActivityManagerNative.java
@@ -1980,6 +1980,19 @@ public abstract class ActivityManagerNative extends Binder implements IActivityM
reply.writeNoException();
return true;
}
+
+ case GET_GRANTED_URI_PERMISSIONS_TRANSACTION: {
+ data.enforceInterface(IActivityManager.descriptor);
+ final String sourcePackage = data.readString();
+ final String targetPackage = data.readString();
+ final int modeFlags = data.readInt();
+ final int modeMask = data.readInt();
+ final Uri[] uris = getGrantedUriPermissions(
+ sourcePackage, targetPackage, modeFlags, modeMask);
+ reply.writeNoException();
+ reply.writeParcelableArray(uris, 0);
+ return true;
+ }
}
return super.onTransact(code, data, reply, flags);
@@ -4540,5 +4553,23 @@ class ActivityManagerProxy implements IActivityManager
reply.recycle();
}
+ public Uri[] getGrantedUriPermissions(
+ String sourcePackage, String targetPackage, int modeFlags, int modeMask)
+ throws RemoteException {
+ Parcel data = Parcel.obtain();
+ Parcel reply = Parcel.obtain();
+ data.writeInterfaceToken(IActivityManager.descriptor);
+ data.writeString(sourcePackage);
+ data.writeString(targetPackage);
+ data.writeInt(modeFlags);
+ data.writeInt(modeMask);
+ mRemote.transact(GET_GRANTED_URI_PERMISSIONS_TRANSACTION, data, reply, 0);
+ reply.readException();
+ final Uri[] uris = (Uri[]) reply.readParcelableArray(null);
+ data.recycle();
+ reply.recycle();
+ return uris;
+ }
+
private IBinder mRemote;
}
diff --git a/core/java/android/app/IActivityManager.java b/core/java/android/app/IActivityManager.java
index 3851eb3..6d1b6fc 100644
--- a/core/java/android/app/IActivityManager.java
+++ b/core/java/android/app/IActivityManager.java
@@ -399,6 +399,10 @@ public interface IActivityManager extends IInterface {
public void restart() throws RemoteException;
+ public Uri[] getGrantedUriPermissions(
+ String sourcePackage, String targetPackage, int modeFlags, int modeMask)
+ throws RemoteException;
+
/*
* Private non-Binder interfaces
*/
@@ -680,4 +684,5 @@ public interface IActivityManager extends IInterface {
int NOTIFY_ACTIVITY_DRAWN_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+175;
int REPORT_ACTIVITY_FULLY_DRAWN_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+176;
int RESTART_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+177;
+ int GET_GRANTED_URI_PERMISSIONS_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+178;
}