Reorder TelephonyPermissions calls for carrier privileges

The SubscriptionManager APIs that return SubscriptionInfo objects are
often invoked by carrier privileged apps to obtain the details about
the subscription(s). Identifier and phone number access checks
currently verify requirements that typically cannot be satisfied by
carrier privileged apps first before verifying an app holds carrier
privileges. This commit invokes the carrier privileges check before
the generic PermissionManagerService check for identifier access
and moves the WRITE_SMS appop check after the READ_PHONE_STATE /
carrier privilege check for phone number access.

Bug: 157642567
Fixes: 73308711
Test: atest TelephonyPermissionsTest
Test: atest SubscriptionControllerTest
Change-Id: I0a446af5c2adaf1d6b06da221f9e236b1bdde146
1 file changed