Incoming and outgoing call phone numbers are visible in the phone state
broadcast and via the PhoneStateListener. To enhance user privacy, change
to require the READ_CALL_LOG permission in order to receive the call
phone numbers.
This means to see phone numbers:
1. android.intent.action.PHONE_STATE - requires READ_PHONE_STATE and
READ_CALL_LOG permission.
2. PhoneStateListener#onCallStateChanged - now required READ_CALL_LOG
permission.
To support this new behavior, added sendBroadcastAsUserMultiplePermissions
method to context to allow sending the broadcast to all users while
requiring the two permissions.
Bug: 78650469
Test: Created PHONE_STATE broadcast receiver in test app and verified that
when no permissions are granted, the phone number is empty for incoming
and outgoing calls.
Test: Granted Phone state permission to test app and verified that phone
number is not populated.
Test: Granted test app read call log permission and verified that phone
number is populated.
Test: Created PhoneStateListener in test app and verified that when no
permissions are granted, phone number is empty for incoming and outgoing.
calls.
Test: Granted read call log permission to test app and verified that both
the incoming and outgoing numbers are populated.
Change-Id: I857ea00cc58a0abbb77960643f361dd6dd9c8b56
The current plan is to keep the OEM hook implementation in the framework
, this is for legacy device and old device upgrading (per b/78098059).
For P launching device, the OEM hook service is removed in hal, so the
OEM hook api in framework should return something dummy, and prevent
infinite loop to get service, but these parts should be done in seperate
CLs after this restore CL is merged.
This reverts commit f09bde2809.
Bug: 34344851
Change-Id: I2aea9be9aa7cecd4f7a1f1783391f0af173bfc59
Test: pass Treehugger tests; pass cuttlefish test RilE2eTests
Merged-In: I1f2117331a7f846b192c5f956f3841d58cb8154b
If a caller registers to listen() for a physical
channel config message, the beavior is to immediately
trigger an unsol. In the case that a list hasn't been
sent from the modem, we should send a default empty
list rather than a null. This is the preferred
approach for Android APIs because it reduces the
reliance on null checks by callers.
Bug: 78536847
Test: ¯\_(ツ)_/¯
Change-Id: I9e59195f5d64264ab473b2fd7e4f7eb6446c4829
The current plan is to keep the OEM hook implementation in the
framework, this is for legacy device and old device upgrading
(per b/78098059).
For P launching device, the OEM hook service is removed in hal,
so the OEM hook api in framework should return something dummy, and
prevent infinite loop to get service, but these parts should be done
in seperate CLs after this restore CL is merged.
This reverts commit cbfa614f60.
Bug: 34344851
Test: pass Treehugger tests; pass cuttlefish test RilE2eTests
Change-Id: I1f2117331a7f846b192c5f956f3841d58cb8154b
This reverts commit 7cfc5cda2f.
Reason for revert: Causes a critical error on Cuttlefish.
Bug: 78299964
Change-Id: Icb06aea5eb42fd156a967c4d4e39aefc51d91cf4
Extends the functionality of getNetworkCountryIso to support
no SIM/no service case. When no SIM/no service, it returns
the country code of nearby network (unregistered but cell info
is available to the device).
Test: Manual
Bug: 64335394
Merged-In: Ia32cbc9df9b9adf5d7c24c8b90be20063a94a514
Change-Id: Ia32cbc9df9b9adf5d7c24c8b90be20063a94a514
(cherry picked from commit ac36896f1a)
Extends the functionality of getNetworkCountryIso to support
no SIM/no service case. When no SIM/no service, it returns
the country code of nearby network (unregistered but cell info
is available to the device).
Test: Manual
Bug: 64335394
Change-Id: Ia32cbc9df9b9adf5d7c24c8b90be20063a94a514
We used the current RAT to load different carrier configuration to
determine whether the connection of a certain APN type is metered or
not. When the device is switched to IWLAN, the existing default
APN connection on cellular will be marked as unmetered based on
the current logic. This logic will be refactored when IWLAN full mode
is supported in Q.
For the short term workaround for P, we'll just mark default APN as
metered when the device is on IWLAN.
Test: CtsUsageStatsTestCases
Bug: 74540336, 77504652
Change-Id: Ib098e80d2bfd10e74c0b0dacf2cf2f217a66f7e4
Extends the functionality of getNetworkCountryIso to support
no SIM/no service case. When no SIM/no service, it returns
the country code of nearby network (unregistered but cell info
is available to the device).
Test: Manual
Bug: 64335394
Change-Id: Ic7c9e903cc497b7e43b557cb593407ff3e9305b5