- while here remove unnecessary call to ackSms from
SmsImplBase as this is handled by ImsSmsDispatcher
Test: None, APIs not exercised yet.
BUG=69846044
Change-Id: Iec4bbd07a67502dbbfb2142a7bc95f51be0cb377
Integrates the new IMS Registration API into the framework
and add two APIs for feature parity.
1) Moves ImsRegistrationImplBase to the android.telephony.ims
namespace
2) Expose ImsRegistration AIDL in TelephonyManager as hidden
API.
3) Adds onVoicemailCountUpdate and
onSubscriberAssociatedUriChanged APIs for feature parity.
Bug: 63987047
Test: Telephony unit tests, manual IMS tests
Change-Id: I51a8ae5cf58b81708c21adc1b26a9eb59f6280fd
- Move from being a feature to being a capability
- Move format to the constructor and make final
- Initial hooking up of APIs provided by platform for ims providers.
- Add constants for send status result
- Rename SmsListener callbacks.
- Split acknowledgeSms for sms and sms reports.
- Add reason for onSendSmsResult
Bug: 69846044
Test: None
Change-Id: I861664264a117d5483e392d4aabff59bfaf4373e
-- Add interface in IImsUtListener to get data for
UNSOL_ON_SS.
-- Add new file ImsSsData to store the data received
as part of UNSOL_ON_SS.
-- Add approprate error codes and strings to support
to show error dialogs to user.
-- Add ImsUtInterface API's to indicate UNSOL_ON_SS
to ImsPhoneCallTracker.
Test: Manual
Bug: 64685331
Change-Id: I023c1af0d521e5b19ecce1576c4caa299ae468e3
- Adds public APIs that IMS providers will implement/use
- Adds aidl APIs for internal communications to support SMS over IMS.
- First pass at documentation of APIs.
Moving over from ag/3265442
Bug: 69846044
Test: None
Change-Id: Ic665a2a7d64a56417bcf2a159d6b88b05cdb832a
The ImsService was originally designed as a flat
interface, all ImsFeatures would be forwarded
through ImsService. This has been refactored to
using AIDL interfaces for each feature, as it
is more straightforward.
Test: Manual, Telephony IMS Unit Tests
Change-Id: Ibe065ddec6f180eabda03cf06f842c642a11114f
The ImsService feature interfaces were designed
to support a flat ImsService AIDL. This is not
necessary anymore, so this interface is being
removed as part of prep for the new ImsService
definition.
Test: Manual
Change-Id: Iefbcd168441ce2547523cf3e6a99ab3de5f3f823
A bad behaving service was causing the IMS registration
callbacks to block indefinetly waiting for the callback
binder implementation in another process to finish. Since
we update the IMS registration in a loop, we were never getting
to the updates for the other processes.
This change moves the AIDL definition to oneway. Since these
are callback AIDLs, the caller doesn't need to wait
for the callbacks to return before sending the others.
Bug: 63137625
Test: Manual
Merged-In: I0e049166ddf3604d312748b63a94fa6ebe77c29d
Change-Id: Id39b6b70aa20bb9986bf293abe2f9e683da4252e
Adding the callSessionMayHandover API that allows
for the lower layers to indicate that the call session
may handover based on actions taken by the user/UI
layer.
The API provides current and target RAT information
pertaining to the possible handover.
Bug: 62489988
Test: Manual
Change-Id: I006462ce5688bb99a94d5135574fb2c17878685a
A bad behaving service was causing the IMS registration
callbacks to block indefinetly waiting for the callback
binder implementation in another process to finish. Since
we update the IMS registration in a loop, we were never getting
to the updates for the other processes.
This change moves the AIDL definition to oneway. Since these
are callback AIDLs, the caller doesn't need to wait
for the callbacks to return before sending the others.
Bug: 63137625
Test: Manual
Change-Id: Id39b6b70aa20bb9986bf293abe2f9e683da4252e
Adding the callSessionMayHandover API that allows
for the lower layers to indicate that the call session
may handover based on actions taken by the user/UI
layer.
The API provides current and target RAT information
pertaining to the possible handover.
Bug: 62489988
Test: Manual
Change-Id: I006462ce5688bb99a94d5135574fb2c17878685a
Modifies ImsService to allow multiple status callbacks in
for one ImsFeature. This better handles one ImsFeature
for normal/emergency calling.
Bug: 38001858
Test: Unit Testing
Merged-In: I70ae6f5349aef75aa86d54fe37a3c32459ea3afa
Change-Id: I70ae6f5349aef75aa86d54fe37a3c32459ea3afa
Modifies ImsService to allow multiple status callbacks in
for one ImsFeature. This better handles one ImsFeature
for normal/emergency calling.
Bug: 38001858
Test: Unit Testing
Merged-In: I70ae6f5349aef75aa86d54fe37a3c32459ea3afa
Change-Id: I70ae6f5349aef75aa86d54fe37a3c32459ea3afa
Modifies ImsService to allow multiple status callbacks in
for one ImsFeature. This better handles one ImsFeature
for normal/emergency calling.
Bug: 38001858
Test: Unit Testing
Change-Id: I70ae6f5349aef75aa86d54fe37a3c32459ea3afa
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
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
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
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)
Change-Id: Id3466c178384158c788ab1d708ab108bb95866fc
Changing "setCamera" prototype to include the uid.
Test: Unit test, manual test.
Bug: 32747443
Merged-In: I7e6eb617d724972b0fcbd2f9a27f5c3ee91efd2d
Change-Id: I7e6eb617d724972b0fcbd2f9a27f5c3ee91efd2d
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
Add ImsRegistrationListener API to report registration failures in
the following scenarios:
1. Idle mode failures - new IMS registration.
2. Ims registration handover failures - Handover of IMS registration
from one radio technology to another.
Bug: 33430556
Test: m
Change-Id: Ie3bafec41c0198a66aa3ebca660a2a060e511c39
Draft API to report registration failures in the following
scenarios:
1. Idle mode failures - new IMS registration.
2. Ims registration handover failures - Handover of IMS registration
from one access technology to another.
Bug: 33430556
Change-Id: Ie3bafec41c0198a66aa3ebca660a2a060e511c39
This allows to register additional IMS connection listeners.
IImsService.open() is no longer supposed to be used for that purpose.
Bug: 28150730
Change-Id: I949e0c912de66e82864934a1ad9ec2ec36f57909
- Interface changes for MultiEndpoint
- Extra for CallPull in -
- TelephonyProperties
- ImsProfile
- Error codes in ImsReasonInfo
Change-Id: I9a497cf04a412dc9d2f80b489e3455d289c3dfb7
This callback will be used to pass list of associated URIs.
It is needed in case SIM doesn't have line1Number populated.
Bug: 24613146
Change-Id: I698ce58dbedb858dc59836069e6f10fec6d02ae6
Adding a parameter to the IMS registration complete
and progressing callbacks, allowing frameworks to be
notified of the radio access technology over which
IMS is registered.
Bug: 21902225
Change-Id: I271f2fca299585302a67d0f5476f6fac3e7099dd
Two arrays are passed from caller (in this case IMS service
implementation) to listener (in this case client of ImsManager).
Listener is not modifying arrays and caller is not expecting
data to be returned back.
Bug: 23749309
Change-Id: I6231cfd16852acfca88ee43e8538b2440058d774