Merge "Add method to enforce READ_PRECISE_PHONE_STATE permission"

am: 1be136dac6

Change-Id: I766af9b2b0b439924a678886cd934a54a3c3194e
This commit is contained in:
Rambo Wang
2020-01-15 19:10:08 -08:00
committed by android-build-merger

View File

@@ -562,13 +562,40 @@ public final class TelephonyPermissions {
}
if (DBG) {
Log.d(LOG_TAG, "No READ_PRIVILEDED_PHONE_STATE permission, "
Log.d(LOG_TAG, "No READ_PRIVILEGED_PHONE_STATE permission, "
+ "check carrier privilege next.");
}
enforceCallingOrSelfCarrierPrivilege(context, subId, message);
}
/**
* Ensure the caller (or self, if not processing an IPC) has
* {@link android.Manifest.permission#READ_PRIVILEGED_PHONE_STATE} or
* {@link android.Manifest.permission#READ_PRECISE_PHONE_STATE} or carrier privileges.
*
* @throws SecurityException if the caller does not have the required permission/privileges
*/
public static void enforeceCallingOrSelfReadPrecisePhoneStatePermissionOrCarrierPrivilege(
Context context, int subId, String message) {
if (context.checkCallingOrSelfPermission(Manifest.permission.READ_PRIVILEGED_PHONE_STATE)
== PERMISSION_GRANTED) {
return;
}
if (context.checkCallingOrSelfPermission(Manifest.permission.READ_PRECISE_PHONE_STATE)
== PERMISSION_GRANTED) {
return;
}
if (DBG) {
Log.d(LOG_TAG, "No READ_PRIVILEGED_PHONE_STATE nor READ_PRECISE_PHONE_STATE permission"
+ ", check carrier privilege next.");
}
enforceCallingOrSelfCarrierPrivilege(context, subId, message);
}
/**
* Make sure the caller (or self, if not processing an IPC) has carrier privileges.
*