This reverts commit b4094993f7.
Reason for revert: Caused merge conflict. Need to come up with a better solution.
Change-Id: Id7b7f35c25775a7a095b77a90724cf3a0f8daf7e
These methods override the base class methods
and don't actually add any value. Removing them
as redundant.
Bug: 76153768
Test: telephony unit test - testCellIdentityTdscdma()
Change-Id: I98200a7198e182e6279851c51082bf625ee09fe9
In HAL 1.2 WCDMA and TDSCMA were updated to bring
them in line with the other CellInfo types. WCDMA
was missing support for Rscp and Ec/No; the former
being the primary measurement used for WCDMA signal
strength. TDSCDMA was missing support for RSSI, and
the definition for RSCP was incorrect, so it was fixed
to use the PCCPH RSCP.
Furthermore, TDSCDMA support was unavailable except
in the CellIdentity. This patch pipes support from the
HAL to the framework, adding CellInfoTdscdma, which is
primarily for Asia.
-Add RSCP and Ec/No fields to CellSignalStrengthWcdma
-Add CellInfoTdscdma and CellSignalStrengthTdscdma
-Add UARFCN and Alphas support for CellIdentityTdscdma
-Fix a bug in the equals() check for CellIdentity
-Update documentation for CellInfo<RAT> classes and
the getLevel() methods of CellSignalStrength<RAT>
Bug: 76153768
Test: RILTests added for TDSCDMA
Merged-In: I71e0998f1a9bd7656d495003a8ee5ef616ca4f43
Change-Id: I71e0998f1a9bd7656d495003a8ee5ef616ca4f43
(cherry picked from commit 88f44024bb)
- Addition of getTypeAllocationCode & getManufacturerCode to
android.telephony.TelephonyManager.
- The Type Allocation Code is the first eight characters of the IMEI.
The Type Allocation Code identifies a particular GSM device model.
- The Manufacturer Code is the first eight characters of the MEID.
The Manufacturer Code identifies the manufacturer of a CDMA device.
- The reasoning behind adding getTypeAllocationCode is to be
able to obtain the Type Allocation Code without requiring the
READ_PHONE_STATE permission. Currently in order to obtain the
Type Allocation Code a substring operation must be performed on
getImei which is protected by the READ_PHONE_STATE permission.
- The reasoning behind adding getManufacturerCode is to be
able to obtain the Manufacturer Code without requiring the
READ_PHONE_STATE permission. Currently in order to obtain the
Manufacturer Code a substring operation must be performed on
getMeid which is protected by the READ_PHONE_STATE permission.
- The reasoning that these additional methods do not require the
READ_PHONE_STATE permission is that neither the Type Allocation
Code nor the Manufacturer Code can identify a unique device.
The Type Allocation Code and the Manufacturer Code are analogous
to other device information such as device model or device
screen dimensions.
Test: run cts -m CtsTelephonyTestCases
Bug: 74613795
Change-Id: I5a586b5a362b39aae13357329efb19eb93f0434c
Signed-off-by: David Kelly <dkelly@afilias.info>
APN id is similar to ApnSetting.ApnType. We can just use the apn
type. No need to use APN id anymore.
Test: Telephony sanity tests + unit tests
Bug: 77511388
Merged-In: If41845604ea14f36272262da110d682eea0d5451
Change-Id: If41845604ea14f36272262da110d682eea0d5451
(cherry picked from commit f42d06010a)
This change permits the system uid and root uid to
access cellular location information via the binder.
Previously this was restricted to the phone uid, but
running with uid=system is a privileged situation,
which makes me think this this wasn't intentional.
Also add a few lines of debug code to make issues
in LocationAccessPolicy easier to track down in the
future.
Bug: 110806860
Test: manual - ran with SL4A as SYSTEM_UID and
verified access to getAllCellInfo.
Merged-In: Ie18be2cd72c49f1859d1434428f82f164bed8756
Change-Id: Ie18be2cd72c49f1859d1434428f82f164bed8756
For whatever reason, ServiceState used a
somewhat-convoluted check for null and
class type. Updating to use a canonical
and brief approach.
Bug: 8675309
Test: compilation
Change-Id: I0d635067a06093affff478e13c28bbbe2bfda7df
hashCode() was missing about 10 fields and was
using some unnecessary bespoke logic to generate
hashes for individual fields. This CL simplifies
the hashCode() implementation and adds the missing
fields.
Bug: 8675309
Test: compilation
Change-Id: I1424973b11fcc6480d6f8c83d5fd0eb1b5533c7f
Allow send sms over ims to emergency number when the device is in
lte/limited lte mode without normal ims registration.
Modem will use emergency ims pdn to submit sms to network.
Change-Id: I5762102c695fe309a4a5b318abccded5c50154e0
Bug: 110462046
Add comments to the docstrings to indicate optional
values that may not always be reported. Users are
still reporting bugs for missing fields, which we
consider optional. This should clarify which methods
are optional vs mandatory for LTE.
For signal strength, RSRP is mandatory, and TA is
mandatory while in LTE_ACTIVE. RSSNR, RSRQ, and CQI
are all optional.
Bug: 36995487
Test: compilation (docstring-only change)
Change-Id: I05af5d42cbf6836109efe6441e95223e81671534
Use the ImsFeature lock for concurrency in MmTelFeature
instead of declaring its own lock.
Also, fixed up some other concurrency code.
Bug: 110507525
Test: Manual, Telephony Unit Tests
Change-Id: I5a7ef1beca619873a7c228bed0e1b82843d4de63
-Propagate the local-identity field to AOSP to help differentiate
between local calls and calls on secondary devices
Change-Id: I78c8f721dcffa167c7d65c474f13a8a377e4cd39
The permission renaming was done in ag/3552774. Other places
need to be fixed accordingly.
Test: Unit tests
Bug: 73659459
Change-Id: Ic325d666c333eef22dba95f8d2488fb172810c2c
Updating the onDeregistered docs to make it clear that the ImsService
must report any feature capability changes to the framework prior to
de-registration.
Bug: 73076695
Test: Docs only change.
Merged-In: Ib9bc88bfb43670f04c8afde36d0947255399397a
Change-Id: Ib9bc88bfb43670f04c8afde36d0947255399397a
Doc-only change.
Also improved the class descriptions and fixed some typos.
Bug: 80238372
Test: make ds-docs with visual inspection of generated HTML
Change-Id: I460d70d692cc1a04cf0efd6b9d0b1e13a9403968
Merged-In: Id4a00c1a44dc3cbbaefc94c0438eb1a077f06e5e
When using Message across IPC, the message must be sent
with a Messenger. Update Docs to reflect this.
Bug: 77870347
Test: Telephony Unit Tests
Merged-In: Ie1a0be63d26136f14cd30c354b889ec0311cc7ee
Change-Id: I27977a13f7ccb6875b5fdb7eb6c6836a84166eeb
There are a few small classes that never got properly
exposed as @SystemApi. These classes were not caught
because vendors currently build against the source
directly and have access to hidden APIs. We can not
change the vendor code at this point (different vendor
code for each year for all supported devices), but
we can start pulling back the API for new devices.
1) Keep all public mutable fields @hide and put
todo (and file bug b/74402619) to make fields
private or final.
2) Add public constructor that populates all fields
so that @hide public mutable fields can be set to
private/final in the future.
3) Provide getters for fields that will not be
public in the future.
In this way, we can make minimal API changes for P,
support new vendor/3rd party ImsServices, and phase
out old ImsService implementations that still build
against the source instead of using the correct
@SystemApi.
Bug: 77278031
Bug: 74402619
Test: Manual
Merged-In: Idbf2a71018f1bd06f8445b07fc52bc65cb6776f6
Change-Id: Ifa3b6d0cbdb12e92efc699b760ca874768a89a7c
Fix the TODO from forever ago and update the docs for the listener
registration methods.
Change-Id: I1276d0afe430e1b50c0af1fdfacb12a89ea5aa38
Fixes: 80493663
Test: None, comments only
Adding an API in MmTelFeature to allow IMS
Service to report the reasons for implicit
call rejections by lower layers. Corresponding
ImsReasonInfo codes are also being added.
The call rejections are not related to any
call session or a call that Framework is aware
of.
Change-Id: Ie47a239856db21e84d199a7620edf7b6ceeb81bc
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
Everytime at boot-up, we check Sms raw table, and delete the rows
with any partial message that is too old. By default the expiration
age is 30 days, but we want to make it configurable.
Bug: 77910620
Test: sanity-test
Change-Id: Ibd2374324be5513cbd09c04889e7b96051c26fb4
Merged-In: Ibd2374324be5513cbd09c04889e7b96051c26fb4