2511 Commits

Author SHA1 Message Date
Jack Yu
f301dab471 Deprecated getDeviceId and added getMeid and getImei
Added two new public APIs getMeid and getImei. Deprecated the exisintg
getDeviceId API because it can't return a constant id when phone type
changes.

Test: CTS and manual
bug: 34233620, 10831289

Merged-In: Iad4c05d2fd2efc538214f466861497c973882dfe
Change-Id: Iad4c05d2fd2efc538214f466861497c973882dfe
2017-03-23 14:42:33 -07:00
Sanket Padawe
1df4c1ae54 Merge "Change 'idx' to 'index' in SubscriptionManager & TelephonyManager apis." 2017-03-22 21:27:22 +00:00
Sanket Padawe
90e022a73c Change 'idx' to 'index' in SubscriptionManager & TelephonyManager apis.
Bug: 35767068
Test: No build failure.
Change-Id: I3b15901ff18742b5e99f03e74a6412d352461458
Merged-in: I3b15901ff18742b5e99f03e74a6412d352461458
2017-03-21 22:29:12 +00:00
Jayachandran C
5cbadddff2 Add new precise call fail causes and OEM causes
Bug: 35609963
Change-Id: Ia0579721e7132950ccfafd7be38f43d1963c016c
2017-03-16 15:43:41 -07:00
youhei.x.miyoshi
b3cd7b51d3 Disable a phone number log for user build
A phone number is privacy data. Therefore, it should be prevented
from logging in user build.

Test: manual - checked log
Bug: 34582911
Change-Id: Id040653dbfd236250e7eb07c9c2e9587ded3d63f
2017-03-06 14:53:10 +09:00
Jack Yu
1bab118bed Added two new RIL commands support
Added RIL_REQUEST_SEND_DEVICE_STATE and
RIL_REQUEST_SET_UNSOLICITED_RESPONSE_FILTER RIL requests support.

Test: telephony sanity tests
bug: 32223897, 20125037, 28294587

Merged-In: I148a4322dfab2d8d84faf6505fb89dfc290411e3
Change-Id: I148a4322dfab2d8d84faf6505fb89dfc290411e3
2017-03-02 03:29:07 +00:00
Nathan Harold
6a7c9333b9 Provide a public API for TelephonyManager.getForbiddenPlmns()
Bug: 33296073
Test: none
Change-Id: I4f1bce663669c18098755c386456e6e9687a3cfb
2017-02-27 16:34:40 -08:00
Nathan Harold
f56cd70734 Add support for querying Forbidden PLMNs
Bug: 32277497
Test: Verified via public API for: missing SIM and working SIM
Change-Id: Ib7838a4be81853ef336e4f3d527c483b49cd2167
2017-02-27 16:01:57 -08:00
Chen Xu
fcb37ffc60 Merge "move ACTION_CARRIER_SETUP intent to public api" 2017-02-25 01:05:30 +00:00
fionaxu
6a5ac3b922 move ACTION_CARRIER_SETUP intent to public api
As per CDD: The "android.*" namespace for intent constants is reserved for public
Android API in AOSP. (Whether public to the full SDK, @SystemApi or
defined in AOSP support libraries.)
ACTION_CARRIER_SETUP intent is generally useful for carrier privileged
apps which is unbundled carrier apps, thus move to public APIs

Bug: 33679956
Test: Manual
Change-Id: I202398f868d35e7e9046e7cc41330a3c26dca0b0
Merged-in: Ie2b5d072406513f04676210d08c43d91623c3cd2
2017-02-24 10:34:07 -08:00
Treehugger Robot
b4234e6af8 Merge "Add a new ImsReasonInfo code" 2017-02-23 22:14:21 +00:00
Treehugger Robot
b60869db12 Merge "reates base implementation of ImsService AIDLs" 2017-02-23 20:03:43 +00:00
Abhishek Adappa
2134e14bda Add a new ImsReasonInfo code
For IKEv2 authentication failure during ePDG tunnel establishment.

Test: make
Change-Id: I1d10efac806abfaa80d9875b908385f7732f293a
2017-02-22 19:16:58 -08:00
Chen Xu
09c663a84c Merge "renaming telephony internal hidden intents" 2017-02-23 01:55:25 +00:00
Brad Ebinger
21013dcf1b reates base implementation of ImsService AIDLs
This change introduces "base classes" of the AIDL interfaces that are
implemented in vendor provided ImsServices. This allows for new APIs
to be added to the AIDL files, along with stub implementation of those
AIDLs in the base classes. By extending from the base class, older
implementations of the AIDL interfaces will not need to be updated
when the interface changes.

This change also moves some of the com.android.ims classes from
frameworks/opt/net/ims to frameworks/base. Any class that will be
used in the new unbundled ImsService system will need to be in
the framework, as opposed to the optional library that they are
in now.

Bug: 30290416
Test: Manual
Change-Id: I4a186d8e910d6d4f711e983ec8d717fc5cbdefab
2017-02-22 16:58:50 -08:00
Treehugger Robot
cbffe38631 Merge "Added telephony manager set sim power state API" 2017-02-22 02:45:18 +00:00
Jack Yu
e25a4dfb6a Added telephony manager set sim power state API
The new API can be used to power up/down the SIM. This is equivalent
to inserting and removing the card.

Test: Telephony sanity tests
bug: 32224755

Change-Id: Ib82ab1eff613946e7c31c9b2131183a40d09af80
2017-02-21 17:36:45 -08:00
Brad Ebinger
e63b35d0b2 Remove Session ID from ImsService APIs that do not need it.
Traditionally, to initiate a new call with the ImsService APIs,
you have to "open()" the interface, which returns a session ID.
This is not needed for querying other information, such as the
provisioning status of the ImsService slot.

Test: Manual
Change-Id: I155b291a49b9aa5ed9599f5a78b1e8d7ff9f8e1c
2017-02-17 14:50:48 -08:00
Treehugger Robot
2b879016d3 Merge "Adds @hide ImsService APIs" 2017-02-17 19:21:45 +00:00
Brad Ebinger
1639c21be6 Adds @hide ImsService APIs
Adds @hide ImsService API implementations to be used for the new
dynamic ImsResolver.

1) ImsService - The main class that all vendor ImsServices will implement.
ImsServices that implement this method must return their implementations
of MMTelFeature when onCreateMMTelFeature is called. The base ImsService
class also relays all method calls through itself as a proxy. So, when
Telephony calls a method, the ImsService figures out which MMTelFeature
should be called (by slot) and then calls that feature's method
implementation.

2) MMTelFeature/RcsFeature - Implements the I*Feature interfaces, which
are used on both sides of the interface. The vendor implemented ImsService
must implement all methods provided in the I*Feature interface in their
implementation of *Feature that they return to the ImsService.

3) ImsServiceProxy[Compat] - The Proxy interface in telephony that will be
called in ImsManager. When a method in this class is called, it will call
the respective AIDL function: Telephony -> IImsServiceController AIDL ->
vendor ImsService -> vendor ImsFeature implementation.
ImsServiceProxyCompat is there to provide backwards compatibility with
older ImsServices that do not use the new ImsService implementations.
It implements all of the methods that are defined in the new I*Feature
interfaces and translates them to the old ImsService AIDL calls.

Test: Adds Unit Tests (see frameworks/opt/telephony)
Merged-In: Id3466c178384158c788ab1d708ab108bb95866fc
Change-Id: Id3466c178384158c788ab1d708ab108bb95866fc
2017-02-16 11:14:26 -08:00
Jack Yu
866e9e3947 Added the new RIL request to set SIM power state
The new RIL request for powering up/down the SIM card.

Test: Telephony sanity tests
bug: 32224755
Merged-In: Ia20f824eb9a0bf6d5f63f782a8d42a22a0355938
Change-Id: Ia20f824eb9a0bf6d5f63f782a8d42a22a0355938
2017-02-16 05:11:41 +00:00
fionaxu
b80c879c91 renaming telephony internal hidden intents
The "android.*" namespace for intent constants is reserved for public
Android API in AOSP. (Whether public to the full SDK, @SystemApi or
defined in AOSP support libraries.) Implementation details of AOSP
components (subject to change by OEMs at will) should use the
"com.android.internal.*" as per CDD

Bug: 33679454
Test: manual
Change-Id: I72ed2760a6ddb0bba61cc8041cea57d5f28b7c15
2017-02-15 15:42:23 -08:00
Chen Xu
132842efc9 Merge "Add simActivationState to PhoneStateListener" 2017-02-14 01:26:19 +00:00
fionaxu
64eebba6bc Add simActivationState to PhoneStateListener
- new public SimActivationState
- hook with PhoneStateListener, notifying registrants when voice&data
  activation state changed

Bug: 31061369
Test: existing TC runtest --path frameworks/opt/telephony/tests/telephonytests
Test: new TC runtest --path
frameworks/opt/telephony/tests/telephonytests/src/com/android/internal/telephony/SimActivationTrackerTest.java

Merged-in: CHANGE-ID Ieefe2698fe6055a980d225f5ce74f52aef0daab4
Change-Id: Iac6418f66c9dad44dc7272ab19aa87f3eef232f8
2017-02-13 00:26:35 -08:00
Sooraj Sasindran
8fbf6a29d0 Merge "Expose api to retrieve wakelock information per client" 2017-02-10 05:38:41 +00:00
Sooraj Sasindran
335c89c22e Expose api to retrieve wakelock information per client
Expose api to retrieve wakelock information per client
Provide calling package name in cell info apis

BUG=31041780
Merged-In: Ie39fe59055eb7931bd179dd9e2537a7552c38af8
Change-Id: Ie39fe59055eb7931bd179dd9e2537a7552c38af8
2017-02-09 21:51:04 +00:00
Tyler Gunn
ca5cdb2d10 Change prototype for "setCamera" in IMS VideoProvider.
Changing "setCamera" prototype to include the uid.

Test: Unit test, manual test.
Bug: 32747443
Merged-In: I7e6eb617d724972b0fcbd2f9a27f5c3ee91efd2d
Change-Id: I7e6eb617d724972b0fcbd2f9a27f5c3ee91efd2d
2017-02-07 23:55:04 +00:00
Jack Yu
4dfa6d3630 Renamed voiceNetworkStateChanged and dataNetworkStateChanged
The misleading voiceNetworkStateChanged should be renamed
to networkStateChanged to reflect either voice or data
network changes will trigger this indication.
And dataNetworkStateChanged should be renamed to
dataCallListChanged as well.

Test: Build
Merged-In: Icf20ceb3718794f7aa62650816714ac8679d101a
Change-Id: Icf20ceb3718794f7aa62650816714ac8679d101a
2017-02-06 14:05:26 -08:00
Tyler Gunn
87f208b3b3 Add "wifi lost" disconnect cause.
New disconnect cause used when wifi call is dropped due to loss of wifi
connection.

Test: Manual, unit.
Merged-In: Iedaa9f54ff6dbfe90a6ce01fc9eb0aad126d05f0
Bug: 32571209
Change-Id: Iedaa9f54ff6dbfe90a6ce01fc9eb0aad126d05f0
2017-02-03 19:05:18 +00:00
Brad Ebinger
e6ec7d8b8f Adds @hide ImsResolver API and device overlays (2/3)
- Adds config_ims_package device overlay, which specifies the default
package name to bind to.
- Adds config_dynamic_bind_ims device overlay, which determines
whether or not the new dynamic binding system is used.
- Adds @hide TelephonyManager API to interface with the ImsResolver

Test: Manual
Merged-In: I82a41da00e6da34629a40db431f13b968dfafe2e
Change-Id: I82a41da00e6da34629a40db431f13b968dfafe2e
2017-01-27 13:09:37 -08:00
Brad Ebinger
024aaf2388 Adding Dynamic ImsService Binding (1/3)
Adds support for dynamic ImsService Binding (change 1/3). Included
in this change:
- AIDLs for ImsServiceController
- ImsFeature/ImsServiceBase definitions
- KEY_CONFIG_IMS_PACKAGE_OVERRIDE CarrierConfig option

Test: Unit Tests in opt/telephony
Bug: 30290416
Change-Id: Ic4cb1d85a29681b08a6a525c588a72209862dcc3
2017-01-25 15:12:28 -08:00
Hall Liu
4c01910cb0 Add logging to CallerInfoAsyncQuery
Add logging to CallerInfoAsyncQuery to help diagnose timeout errors

Bug: 31755827
Change-Id: If7cf34baf084ca8916952842585a32b3e93eba73
2016-10-05 16:56:17 -07:00
Amit Mahajan
923963ff31 Added new config to indicate read-only apn types.
Bug: 31074581
Change-Id: Ib0b19ef038d8c99380364eb81c4f7dd24bcc27fa
2016-09-16 12:35:36 -07:00
Tyler Gunn
34910458c4 Merge "Add ImsReason codes and DisconnectCauses for data disconnects." into nyc-mr1-dev 2016-08-12 14:54:27 +00:00
Tyler Gunn
ed21e8fc0c Add ImsReason codes and DisconnectCauses for data disconnects.
Adding reason code and disconnect causes for:
1. disconnects due to user disabling data.
2. disconnects due to data limit being reached.

Bug: 30702393
Change-Id: Id6ea5ee4f5aac1a8602094315f893e2f7b3cc8d6
2016-08-11 13:13:51 -07:00
Ta-wei Yen
20f2ebbf4d Add API to enable/disable the visual voicemail client
This CL gives the default dialer, apps with carrier privilege, and
apps with MODIFY_PHONE_STATE the ability to enable/disable the visual
voicemail client.

This is a system API for NMR1. It will be revised in O.

Bug: 30709089
Change-Id: Ic24af14a5e3433c13ba8d253ad8504c94bf71c8f
2016-08-10 11:28:32 -07:00
Jeff Davidson
24b9d96007 Add support for carrier "associated" apps.
The platform currently supports the notion of default carrier apps.
These apps are set to DISABLED_UNTIL_USED until a SIM is inserted
which grants them carrier privileges, at which point they are enabled.
Apps are not touched if they have been updated from the version on
/system or if their state has been modified externally (e.g. by the
user).

This CL extends this notion to associated apps, which may not have
carrier privileges themselves, but should be enabled/disabled
alongside a particular carrier app. This should include helper apps
that should not be visible to users who don't use the given carrier
unless the user explicitly enables the app.

As additional protection, we add a check to ensure that we never
disable apps after the first time we've run. Since we need to store
this information in secure settings, we also move the call site from
PackageManagerService#main() to PackageManagerService#systemReady(),
which enables use of secure settings but still occurs before
third-party apps can be started.

Bug: 30141427
Change-Id: Iee72ba4e70e5ca97999c9147a65af82c670a23e8
2016-07-26 14:54:53 -07:00
Youhan Wang
4eb5678ed8 Add getCdmaPrlVersion().
Bug:27612001
Change-Id: Icce9e99d360e30268d41bc063eeefc7484627df6
2016-07-19 10:21:15 -07:00
Pankaj Kanwar
9e73d82336 Merge "Add alternative EXTRA_CALL_RAT_TYPE definition for noncompliant modems." into nyc-mr1-dev 2016-07-15 15:10:27 +00:00
Tyler Gunn
853d8f68f9 Add alternative EXTRA_CALL_RAT_TYPE definition for noncompliant modems.
Some modems use a lowercase version of this extra, which is not correct.
Adding an alternate definition so ImsCall can still determine the radio
type.

Bug: 28933314
Change-Id: I61d13a2aa447877e1c89c3ae474a8614c29492a1
2016-07-13 17:25:37 -07:00
Jack Yu
8781b68e2b Disable VT when users turn off data or hit data limit
Disable VT when users turn off data or hit data limit. If
there are ongoing VT calls, we'll need to downgrade them
to VoLTE calls.

bug: 27316521
Change-Id: I89fe42f6cf6c419c21c4f2006e9cb43cf7e13503
2016-07-13 16:32:25 -07:00
Tyler Gunn
c96b5e0873 Finalize MEP functionality.
1) Finish plumbing of PULLING_CALL state.
2) Add new disconnect cause used when maximum number of calls across
all devices has been reached.
3) Add PII mask for toString of ImsExternalCallState.

Bug: 29522023
Change-Id: I78a0a9f3c3d846cfc58a1c5bcc6f105027602cbc
2016-07-11 10:33:37 -07:00
Jack Yu
b6587eac06 Added a virtual interface for Video Telephony call usage counting
1. Added a virtual VT interface.
2. Qeury VT usage from telephony service.

bug: 20888836
Change-Id: I3df0c22922f8394554230b53f8ae091e17c95595
2016-06-29 11:54:56 -07:00
Tyler Gunn
4b6614e576 Add support for dropping fg video call on answer of audio call.
Adding two new carrier config options:
1. treat_downgraded_video_calls_as_video_calls_bool - when there is an ongoing
call which was previously a video call (or is currently video call), some
carriers require that this is treated as if it is a video call for
telephony logic such as in (2).
2. drop_video_call_when_answering_audio_call_bool - if the user is in an
active video call (see (1)) over wifi, and an incoming audio call comes in,
when this carrier config option is "TRUE", the video call will be dropped
when the audio call is answered.

Adding new connection extra to indicate to the dialer app that answering
a ringing call will cause the current active video call to drop.

Bug: 29275420
Change-Id: Ied5dbabc8ff09045ba41c5eba2136adad10db80e
2016-06-23 12:48:43 -07:00
Chris Manton
95a6c899d6 Add global settings for cell radio state
Provide persistable state for cell radio
to handle airplane mode similar to any
other radio in the system.

Change-Id: I87398fe84de3f6a10b0e1002e9e5bf7e61f9441f
2016-06-22 16:44:53 -07:00
TreeHugger Robot
3f258857b5 Merge "Allow the phone process to hide outbound text SMS" into nyc-mr1-dev 2016-06-16 22:31:45 +00:00
Ta-wei Yen
1ecda97bdd Allow the phone process to hide outbound text SMS
Bug: 29095322
Change-Id: Ic6ce8aa18450815e91e8d819439b10ccc186fec7
2016-06-15 13:22:32 -07:00
Robert Greenwalt
eb17ccb608 Clean up PCO plumbing.
There's more data that needs to make it out to the carrier app.
Add the extras and correct some (it's a byte array, not an int, etc).

bug:28567303
Change-Id: I97ed41d9329ccc14851b8e171e8fa07919c8e38b
2016-06-08 20:25:39 -07:00
Chen Xu
ba3428f01b Merge "cold sim clean up" into nyc-mr1-dev 2016-06-04 05:48:47 +00:00
fionaxu
1bf6ec2f86 cold sim clean up
- add a new field: provisioningNotificationEnabled from NetworkMisc. set
  to false if we want to hide "sign in" notification and placed
  carrier-specific notification instead. it is set on connect, once set,
  it is carrier-app's responsibility to post new UI to users
- rework on the interaction between carrier app and framework
- code cleanup
- unit test support

Bug: 28567303
Change-Id: Ic84db7ffbb920d15344717f104496d3cb82e1a85
2016-06-03 11:45:12 -07:00