Merge "Always kill app when M_E_S is denied" into rvc-dev am: d7e1e4681e
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/12048548 Change-Id: I825adf2261904a8458d5cccc2722bf6110ae740f
This commit is contained in:
@@ -4736,7 +4736,7 @@ class StorageManagerService extends IStorageManager.Stub
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
private void killAppForOpChange(int code, int uid, String packageName) {
|
private void killAppForOpChange(int code, int uid) {
|
||||||
final IActivityManager am = ActivityManager.getService();
|
final IActivityManager am = ActivityManager.getService();
|
||||||
try {
|
try {
|
||||||
am.killUid(UserHandle.getAppId(uid), UserHandle.USER_ALL,
|
am.killUid(UserHandle.getAppId(uid), UserHandle.USER_ALL,
|
||||||
@@ -4753,7 +4753,7 @@ class StorageManagerService extends IStorageManager.Stub
|
|||||||
switch(code) {
|
switch(code) {
|
||||||
case OP_REQUEST_INSTALL_PACKAGES:
|
case OP_REQUEST_INSTALL_PACKAGES:
|
||||||
// Always kill regardless of op change, to remount apps /storage
|
// Always kill regardless of op change, to remount apps /storage
|
||||||
killAppForOpChange(code, uid, packageName);
|
killAppForOpChange(code, uid);
|
||||||
return;
|
return;
|
||||||
case OP_MANAGE_EXTERNAL_STORAGE:
|
case OP_MANAGE_EXTERNAL_STORAGE:
|
||||||
if (mode != MODE_ALLOWED) {
|
if (mode != MODE_ALLOWED) {
|
||||||
@@ -4762,12 +4762,7 @@ class StorageManagerService extends IStorageManager.Stub
|
|||||||
// results in a bad UX, especially since the gid only gives access
|
// results in a bad UX, especially since the gid only gives access
|
||||||
// to unreliable volumes, USB OTGs that are rarely mounted. The app
|
// to unreliable volumes, USB OTGs that are rarely mounted. The app
|
||||||
// will get the external_storage gid on next organic restart.
|
// will get the external_storage gid on next organic restart.
|
||||||
if (packageName != null) {
|
killAppForOpChange(code, uid);
|
||||||
killAppForOpChange(code, uid, packageName);
|
|
||||||
} else {
|
|
||||||
// TODO(b/158283222) this can happen, figure out if we need
|
|
||||||
// to kill in this case as well.
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
return;
|
return;
|
||||||
case OP_LEGACY_STORAGE:
|
case OP_LEGACY_STORAGE:
|
||||||
|
|||||||
Reference in New Issue
Block a user