Merge "Avoid triggering StrictMode for storage notifs." into qt-dev

This commit is contained in:
Jeff Sharkey
2019-04-28 17:04:03 +00:00
committed by Android (Google) Code Review
2 changed files with 14 additions and 6 deletions

View File

@@ -1284,13 +1284,15 @@ public final class StrictMode {
return oldPolicyMask;
}
private static ThreadPolicy allowThreadViolations() {
/** @hide */
public static ThreadPolicy allowThreadViolations() {
ThreadPolicy oldPolicy = getThreadPolicy();
setThreadPolicyMask(0);
return oldPolicy;
}
private static VmPolicy allowVmViolations() {
/** @hide */
public static VmPolicy allowVmViolations() {
VmPolicy oldPolicy = getVmPolicy();
sVmPolicy = VmPolicy.LAX;
return oldPolicy;

View File

@@ -29,6 +29,7 @@ import android.content.pm.PackageManager;
import android.content.pm.PackageManager.MoveCallback;
import android.os.Bundle;
import android.os.Handler;
import android.os.StrictMode;
import android.os.UserHandle;
import android.os.storage.DiskInfo;
import android.os.storage.StorageEventListener;
@@ -639,11 +640,16 @@ public class StorageNotification extends SystemUI {
}
private PendingIntent buildBrowsePendingIntent(VolumeInfo vol) {
final Intent intent = vol.buildBrowseIntentForUser(vol.getMountUserId());
final StrictMode.VmPolicy oldPolicy = StrictMode.allowVmViolations();
try {
final Intent intent = vol.buildBrowseIntentForUser(vol.getMountUserId());
final int requestKey = vol.getId().hashCode();
return PendingIntent.getActivityAsUser(mContext, requestKey, intent,
PendingIntent.FLAG_CANCEL_CURRENT, null, UserHandle.CURRENT);
final int requestKey = vol.getId().hashCode();
return PendingIntent.getActivityAsUser(mContext, requestKey, intent,
PendingIntent.FLAG_CANCEL_CURRENT, null, UserHandle.CURRENT);
} finally {
StrictMode.setVmPolicy(oldPolicy);
}
}
private PendingIntent buildVolumeSettingsPendingIntent(VolumeInfo vol) {