summaryrefslogtreecommitdiff
path: root/core/java/android/app/ContextImpl.java
diff options
context:
space:
mode:
authorPhilip P. Moltmann <moltmann@google.com>2020-02-10 08:46:26 -0800
committerPhilip P. Moltmann <moltmann@google.com>2020-02-12 18:51:53 +0000
commitee29509ecd73c3910011b2bdc12d1ef28fcb5a3d (patch)
tree88289fe02f2ffd203dd0468e829e42b56ea9118f /core/java/android/app/ContextImpl.java
parent998c6ad176d4c419f52184842692c3009379d3f5 (diff)
Revert "Revert "Activity start: Send featureId from context->AppOpsManager""
This reverts commit e7421e92d947b09ca3cb9e6dfb66bbb27b9ed114. Exempt-From-Owner-Approval: revert-revert and only piping anyway Test: 1:1 revert-revert Bug: 136595429 Change-Id: I44e5fa2019f5604c6e2c08bdd1967129c64a90a7
Diffstat (limited to 'core/java/android/app/ContextImpl.java')
-rw-r--r--core/java/android/app/ContextImpl.java85
1 files changed, 43 insertions, 42 deletions
diff --git a/core/java/android/app/ContextImpl.java b/core/java/android/app/ContextImpl.java
index 57cd8941a398..6b5bfda92cd0 100644
--- a/core/java/android/app/ContextImpl.java
+++ b/core/java/android/app/ContextImpl.java
@@ -1020,7 +1020,7 @@ class ContextImpl extends Context {
public void startActivityAsUser(Intent intent, Bundle options, UserHandle user) {
try {
ActivityTaskManager.getService().startActivityAsUser(
- mMainThread.getApplicationThread(), getBasePackageName(), intent,
+ mMainThread.getApplicationThread(), getBasePackageName(), getFeatureId(), intent,
intent.resolveTypeIfNeeded(getContentResolver()),
null, null, 0, Intent.FLAG_ACTIVITY_NEW_TASK, null, options,
user.getIdentifier());
@@ -1102,8 +1102,8 @@ class ContextImpl extends Context {
String resolvedType = intent.resolveTypeIfNeeded(getContentResolver());
try {
intent.prepareToLeaveProcess(this);
- ActivityManager.getService().broadcastIntent(
- mMainThread.getApplicationThread(), intent, resolvedType, null,
+ ActivityManager.getService().broadcastIntentWithFeature(
+ mMainThread.getApplicationThread(), getFeatureId(), intent, resolvedType, null,
Activity.RESULT_OK, null, null, null, AppOpsManager.OP_NONE, null, false, false,
getUserId());
} catch (RemoteException e) {
@@ -1119,8 +1119,8 @@ class ContextImpl extends Context {
: new String[] {receiverPermission};
try {
intent.prepareToLeaveProcess(this);
- ActivityManager.getService().broadcastIntent(
- mMainThread.getApplicationThread(), intent, resolvedType, null,
+ ActivityManager.getService().broadcastIntentWithFeature(
+ mMainThread.getApplicationThread(), getFeatureId(), intent, resolvedType, null,
Activity.RESULT_OK, null, null, receiverPermissions, AppOpsManager.OP_NONE,
null, false, false, getUserId());
} catch (RemoteException e) {
@@ -1134,8 +1134,8 @@ class ContextImpl extends Context {
String resolvedType = intent.resolveTypeIfNeeded(getContentResolver());
try {
intent.prepareToLeaveProcess(this);
- ActivityManager.getService().broadcastIntent(
- mMainThread.getApplicationThread(), intent, resolvedType, null,
+ ActivityManager.getService().broadcastIntentWithFeature(
+ mMainThread.getApplicationThread(), getFeatureId(), intent, resolvedType, null,
Activity.RESULT_OK, null, null, receiverPermissions, AppOpsManager.OP_NONE,
null, false, false, getUserId());
} catch (RemoteException e) {
@@ -1149,8 +1149,8 @@ class ContextImpl extends Context {
String resolvedType = intent.resolveTypeIfNeeded(getContentResolver());
try {
intent.prepareToLeaveProcess(this);
- ActivityManager.getService().broadcastIntent(
- mMainThread.getApplicationThread(), intent, resolvedType, null,
+ ActivityManager.getService().broadcastIntentWithFeature(
+ mMainThread.getApplicationThread(), getFeatureId(), intent, resolvedType, null,
Activity.RESULT_OK, null, null, receiverPermissions, AppOpsManager.OP_NONE,
null, false, false, user.getIdentifier());
} catch (RemoteException e) {
@@ -1166,8 +1166,8 @@ class ContextImpl extends Context {
: new String[] {receiverPermission};
try {
intent.prepareToLeaveProcess(this);
- ActivityManager.getService().broadcastIntent(
- mMainThread.getApplicationThread(), intent, resolvedType, null,
+ ActivityManager.getService().broadcastIntentWithFeature(
+ mMainThread.getApplicationThread(), getFeatureId(), intent, resolvedType, null,
Activity.RESULT_OK, null, null, receiverPermissions, AppOpsManager.OP_NONE,
options, false, false, getUserId());
} catch (RemoteException e) {
@@ -1183,8 +1183,8 @@ class ContextImpl extends Context {
: new String[] {receiverPermission};
try {
intent.prepareToLeaveProcess(this);
- ActivityManager.getService().broadcastIntent(
- mMainThread.getApplicationThread(), intent, resolvedType, null,
+ ActivityManager.getService().broadcastIntentWithFeature(
+ mMainThread.getApplicationThread(), getFeatureId(), intent, resolvedType, null,
Activity.RESULT_OK, null, null, receiverPermissions, appOp, null, false, false,
getUserId());
} catch (RemoteException e) {
@@ -1200,8 +1200,8 @@ class ContextImpl extends Context {
: new String[] {receiverPermission};
try {
intent.prepareToLeaveProcess(this);
- ActivityManager.getService().broadcastIntent(
- mMainThread.getApplicationThread(), intent, resolvedType, null,
+ ActivityManager.getService().broadcastIntentWithFeature(
+ mMainThread.getApplicationThread(), getFeatureId(), intent, resolvedType, null,
Activity.RESULT_OK, null, null, receiverPermissions, AppOpsManager.OP_NONE,
null, true, false, getUserId());
} catch (RemoteException e) {
@@ -1263,8 +1263,8 @@ class ContextImpl extends Context {
: new String[] {receiverPermission};
try {
intent.prepareToLeaveProcess(this);
- ActivityManager.getService().broadcastIntent(
- mMainThread.getApplicationThread(), intent, resolvedType, rd,
+ ActivityManager.getService().broadcastIntentWithFeature(
+ mMainThread.getApplicationThread(), getFeatureId(), intent, resolvedType, rd,
initialCode, initialData, initialExtras, receiverPermissions, appOp,
options, true, false, getUserId());
} catch (RemoteException e) {
@@ -1277,9 +1277,10 @@ class ContextImpl extends Context {
String resolvedType = intent.resolveTypeIfNeeded(getContentResolver());
try {
intent.prepareToLeaveProcess(this);
- ActivityManager.getService().broadcastIntent(mMainThread.getApplicationThread(),
- intent, resolvedType, null, Activity.RESULT_OK, null, null, null,
- AppOpsManager.OP_NONE, null, false, false, user.getIdentifier());
+ ActivityManager.getService().broadcastIntentWithFeature(
+ mMainThread.getApplicationThread(), getFeatureId(), intent, resolvedType, null,
+ Activity.RESULT_OK, null, null, null, AppOpsManager.OP_NONE, null, false, false,
+ user.getIdentifier());
} catch (RemoteException e) {
throw e.rethrowFromSystemServer();
}
@@ -1299,8 +1300,8 @@ class ContextImpl extends Context {
: new String[] {receiverPermission};
try {
intent.prepareToLeaveProcess(this);
- ActivityManager.getService().broadcastIntent(
- mMainThread.getApplicationThread(), intent, resolvedType, null,
+ ActivityManager.getService().broadcastIntentWithFeature(
+ mMainThread.getApplicationThread(), getFeatureId(), intent, resolvedType, null,
Activity.RESULT_OK, null, null, receiverPermissions, AppOpsManager.OP_NONE,
options, false, false, user.getIdentifier());
} catch (RemoteException e) {
@@ -1316,8 +1317,8 @@ class ContextImpl extends Context {
: new String[] {receiverPermission};
try {
intent.prepareToLeaveProcess(this);
- ActivityManager.getService().broadcastIntent(
- mMainThread.getApplicationThread(), intent, resolvedType, null,
+ ActivityManager.getService().broadcastIntentWithFeature(
+ mMainThread.getApplicationThread(), getFeatureId(), intent, resolvedType, null,
Activity.RESULT_OK, null, null, receiverPermissions, appOp, null, false, false,
user.getIdentifier());
} catch (RemoteException e) {
@@ -1367,8 +1368,8 @@ class ContextImpl extends Context {
: new String[] {receiverPermission};
try {
intent.prepareToLeaveProcess(this);
- ActivityManager.getService().broadcastIntent(
- mMainThread.getApplicationThread(), intent, resolvedType, rd,
+ ActivityManager.getService().broadcastIntentWithFeature(
+ mMainThread.getApplicationThread(), getFeatureId(), intent, resolvedType, rd,
initialCode, initialData, initialExtras, receiverPermissions,
appOp, options, true, false, user.getIdentifier());
} catch (RemoteException e) {
@@ -1408,8 +1409,8 @@ class ContextImpl extends Context {
String resolvedType = intent.resolveTypeIfNeeded(getContentResolver());
try {
intent.prepareToLeaveProcess(this);
- ActivityManager.getService().broadcastIntent(
- mMainThread.getApplicationThread(), intent, resolvedType, null,
+ ActivityManager.getService().broadcastIntentWithFeature(
+ mMainThread.getApplicationThread(), getFeatureId(), intent, resolvedType, null,
Activity.RESULT_OK, null, null, null, AppOpsManager.OP_NONE, null, false, true,
getUserId());
} catch (RemoteException e) {
@@ -1444,8 +1445,8 @@ class ContextImpl extends Context {
String resolvedType = intent.resolveTypeIfNeeded(getContentResolver());
try {
intent.prepareToLeaveProcess(this);
- ActivityManager.getService().broadcastIntent(
- mMainThread.getApplicationThread(), intent, resolvedType, rd,
+ ActivityManager.getService().broadcastIntentWithFeature(
+ mMainThread.getApplicationThread(), getFeatureId(), intent, resolvedType, rd,
initialCode, initialData, initialExtras, null,
AppOpsManager.OP_NONE, null, true, true, getUserId());
} catch (RemoteException e) {
@@ -1476,8 +1477,8 @@ class ContextImpl extends Context {
String resolvedType = intent.resolveTypeIfNeeded(getContentResolver());
try {
intent.prepareToLeaveProcess(this);
- ActivityManager.getService().broadcastIntent(
- mMainThread.getApplicationThread(), intent, resolvedType, null,
+ ActivityManager.getService().broadcastIntentWithFeature(
+ mMainThread.getApplicationThread(), getFeatureId(), intent, resolvedType, null,
Activity.RESULT_OK, null, null, null, AppOpsManager.OP_NONE, null, false, true,
user.getIdentifier());
} catch (RemoteException e) {
@@ -1491,8 +1492,8 @@ class ContextImpl extends Context {
String resolvedType = intent.resolveTypeIfNeeded(getContentResolver());
try {
intent.prepareToLeaveProcess(this);
- ActivityManager.getService().broadcastIntent(
- mMainThread.getApplicationThread(), intent, resolvedType, null,
+ ActivityManager.getService().broadcastIntentWithFeature(
+ mMainThread.getApplicationThread(), getFeatureId(), intent, resolvedType, null,
Activity.RESULT_OK, null, null, null, AppOpsManager.OP_NONE, options, false, true,
user.getIdentifier());
} catch (RemoteException e) {
@@ -1526,8 +1527,8 @@ class ContextImpl extends Context {
String resolvedType = intent.resolveTypeIfNeeded(getContentResolver());
try {
intent.prepareToLeaveProcess(this);
- ActivityManager.getService().broadcastIntent(
- mMainThread.getApplicationThread(), intent, resolvedType, rd,
+ ActivityManager.getService().broadcastIntentWithFeature(
+ mMainThread.getApplicationThread(), getFeatureId(), intent, resolvedType, rd,
initialCode, initialData, initialExtras, null,
AppOpsManager.OP_NONE, null, true, true, user.getIdentifier());
} catch (RemoteException e) {
@@ -1612,9 +1613,9 @@ class ContextImpl extends Context {
}
}
try {
- final Intent intent = ActivityManager.getService().registerReceiver(
- mMainThread.getApplicationThread(), mBasePackageName, rd, filter,
- broadcastPermission, userId, flags);
+ final Intent intent = ActivityManager.getService().registerReceiverWithFeature(
+ mMainThread.getApplicationThread(), mBasePackageName, getFeatureId(), rd,
+ filter, broadcastPermission, userId, flags);
if (intent != null) {
intent.setExtrasClassLoader(getClassLoader());
intent.prepareToEnterProcess();
@@ -1687,9 +1688,9 @@ class ContextImpl extends Context {
validateServiceIntent(service);
service.prepareToLeaveProcess(this);
ComponentName cn = ActivityManager.getService().startService(
- mMainThread.getApplicationThread(), service, service.resolveTypeIfNeeded(
- getContentResolver()), requireForeground,
- getOpPackageName(), user.getIdentifier());
+ mMainThread.getApplicationThread(), service,
+ service.resolveTypeIfNeeded(getContentResolver()), requireForeground,
+ getOpPackageName(), getFeatureId(), user.getIdentifier());
if (cn != null) {
if (cn.getPackageName().equals("!")) {
throw new SecurityException(