summaryrefslogtreecommitdiff
path: root/telecomm/java/android/telecom/InCallService.java
AgeCommit message (Collapse)Author
2021-02-25Companion InCallService API reviewShuo Qian
Test: atest; make docs Bug: 179116441 Change-Id: Id75e727f6c3fc42132a80f7258bf790be79acf19 Merged-In: Id75e727f6c3fc42132a80f7258bf790be79acf19
2021-01-12Bulk apply PendingIntent.FLAG_MUTABLE_UNAUDITED.Ashwini Oruganti
We've been working hard to require PendingIntents explicitly declare if they allow their contents to be mutated or not, and to finish landing that work this change applies the new FLAG_MUTABLE_UNAUDITED flag to all remaining code locations until they can be manually inspected. Bug: 160794467 Test: manual Change-Id: I8d7ec64ac89755c14b5959bb6ef0bce203c92bf0
2020-11-11Suppress all hidden abstract methods in constructable classes.Aurimas Liutikas
Having a hidden abstract method for a class that can be extended means that public implementors cannot implement these hidden methods posing a risk that custom implementations will not have required abstract methods resulting in an exception. Bug: 151134792 Test: make update-api Change-Id: I758d12465fabc671be19bedeeceb16885de23c87 Exempt-From-Owner-Approval: large scale suppression of existing issues, no-op in terms of behavior
2020-01-31Update InCallService API docs.Tyler Gunn
Update the InCallService API docs to more clearly indicate what it means to be a dialer app, and to document the behavior when an InCallService fails. Also add a link from the dialer role in RoleManager to InCallService API. Bug: 148692337 Test: make -j offline-sdk-docs; verify the docs render correctly. Change-Id: Ibf06bb85e37236a65c60c86ae0385d5a21bb6e4b
2019-04-11Telecom API doc cleanup.Tyler Gunn
InCallService - remove references to roles cut in Q release. TelecomManager - make it more clear how to use the silenceRinger method and under which conditions it should be used. Test: Compile; docs only. Fixes: 130285730 Change-Id: I55f9c2df119140666f8167e8521a4372d1108e7a
2019-02-07Add missing parts for renaming of the call redirection role.Hai Zhang
Also drops the _APP suffix in role names, to be consistent with other roles. Test: manual Change-Id: Iee3566b353fdf49a916067dfffebcf3d5b87c326
2019-01-08Call Screening / Caller ID API ChangesTyler Gunn
- Fix bug in call identification parcelable; was reversing the app name and package name. - Add @hide RoleManager consts for the Telecom roles; this will be replaced by values in the library for public consumption as a later date. - Add new call direction attribute to the Call.Details class; this is needed so that a CallScreeningService can know if a call is incoming or outgoing. This way it knows whether it needs to perform call blocking or just caller ID. - Update CallScreeningService API docs to explain how to request the call screening role. - Update InCallService API docs to explain the 3 roles related to this service and how you declare an appropriate IncallService to fill each of them. Bug: 63966743 Test: Manual, CTS Change-Id: Ic4547b8ead791690305f7be58e43272c4155b7fb
2018-07-10Update InCallService API docs to explain how to show incoming call UI.Tyler Gunn
Updating InCallService API docs to give an example of how an InCallService should display a new incoming call notification. Test: make docs ; proof generated HTML Bug: 110916900 Change-Id: I6f3c8d0d9f14a916336d5a84897772ed4aba3105
2018-04-02Change signature of requestBluetoothAudioHall Liu
requestBluetoothAudio now takes a BluetoothDevice instead of a string. Bug: 74408978 Test: unable to CTS -- can't emulate bluetooth devices Change-Id: Id21e32b911da234f69a248e9937f9df0cf12a9a9
2018-02-09Add InCallService docs to state prerequisites for be being a dialer app.Tyler Gunn
The InCallService documentation does not clearly state that an app which wants to become the default dialer app also needs to handle the DIAL intent. This change updates the documentation to make this clear. Test: Built documentation and verified its contents. Bug: 72857373 Change-Id: I738a8475df37035a0a7f4ad1639df76d967f81dc
2018-01-25Add handover permission, fill in some missing API gaps.Tyler Gunn
Adding the ACCEPT_HANDOVER runtime permission which an app must have in order to accept handovers (this is per design). Adding missing onHandoverComplete method in the android.telecom.Connection API (per design). Finishing plumbing for android.telecom.Call#onHandoverComplete API. Fix issue where the new handover API methods would never get called; the legacy handover extra was being used in this case when it should not have been. Bug: 65415068 Test: Verified using new CTS tests Change-Id: If1558f6a23911862c02ac5b18fb62d86911ed7e2 Merged-In: If1558f6a23911862c02ac5b18fb62d86911ed7e2
2017-12-19Implement Call handover initiation side APIs.Sanket Padawe
Bug: 65415068 Test: Manual Design doc: https://docs.google.com/document/d/1qY3oAzjff_4A1ttYb_CGrE_OwTRmXMG_KGsIuPT1ey8/edit# Change-Id: I692bb14fba66733154378c2dda525aa85c471a38 Merged-in: I692bb14fba66733154378c2dda525aa85c471a38
2017-11-09Update Telecom APIs to include multi-hfpHall Liu
* Add bluetooth devices to CallAudioState * Add methods for specifying a bluetooth device to InCallService * Add methods for specifying a bluetooth device to Connection (for self-managed connections) Bug: 64767509 Test: unit tests Change-Id: I286b19b423dc2ee417dbc90eda7e8055b2da2444
2017-03-07Merge "API review cleanups/changes." am: 9324d6513b am: dd4bc7c69cTyler Gunn
am: c49b011151 Change-Id: Ib3d76474bef8c911b2ec6a61b916e38af0a3b861
2017-03-06API review cleanups/changes.Tyler Gunn
- Change onCreateIncomingConnectionFailed/onCreateOutgoingConnectionFailed to accept the connection mgr phone account as the first parameter. - For the video APIs, pass the target SDK of the caller into along so that the Telecom permission check can have fallback behavior for older API versions. - Add guidance for how UX should be shown in onShowIncomingCallUi API. API guidance follows how the Dialer app shows its notification and full screen UX. Test: Manual, CTS. Bug: 35767711 Bug: 35767096 Change-Id: Ib343f0eda1a4d067a38c553f33f140b4efcf3e48
2017-03-01Add further Connection-side APIs for RTT (part 2)Hall Liu
Add methods and callbacks to facilitate local and remote RTT initiation and termination in the middle of a call. Adds @hide Connection-side APIs to communicate with the ConnectionService, as well as plumbing for RemoteConnections. Test: manual, through telecom testapps Change-Id: Ia80604b7dff8586ff222dbccdbe55e91aab02178
2017-02-21Introduce APIs for RTT calls (part 1)Hall Liu
Add signaling methods and data pipes for handling real-time text during a call. Change-Id: I876827c448252c5f786d7a4919c47891acb03877 Test: manual, through telecom testapps
2017-02-06Perform camera permission and app ops check when setting camera for VT.Tyler Gunn
When a calling InCallService attempts to use the setCamera API on the VideoCall, Telecom will perform a permission check to ensure that the caller has the correct camera permission and passes the app-ops camera check. A failure to set the camera will result in a callback via the call session event API. This got a little messy as the app ops package name needs to come from the InCallService, and handler usage in the VideoProvider API means we had to pass around the uid/pid of the caller, obtained before we trampoline onto the handler. Test: Unit tests added, manual testing performed. Bug: 32747443 Change-Id: I555a04f9c3fb45e60bb811f64ba855ccf2e3b0e2
2016-08-25Update InCallService#onConnectionEvent comments.Tyler Gunn
Update comments to indicate the method is unused and to point developers to the correct method. Bug: 31056610 Change-Id: I5d1da69914e0fccd3cf3c504b68acbcf0c70c9c4
2016-05-06Un-@hide multi-endpoint APIs.Tyler Gunn
Bug: 28621640 This reverts commit 1bf206b766654ea9c4e9bc7a703a9d5f1d30ab72. Change-Id: If8c85e4adeb017eec2b7e8199010deae2a920c6a
2016-04-15Hide multi-endpoint APIs.Tyler Gunn
Per feature council decision, the multi-endpoint APIs will be @hide for the N release. Bug: 28196918 Change-Id: Ia80b089bc754ce87ca208382eb79442b5265844d
2016-03-14Add API support for multi-endpoint.Tyler Gunn
This CL includes changes required to support multi-endpoint (see the design doc linked off the bug). Main changes include: - support for indicating if a call/connection is "external" to the device. - support for indicating if an external call can be pulled from the remote device to the local device. - API used to initiate a pull of a call external to the current device to the current device. - Made the "connection event" API public (was previously @hide); this will be used to support passing some error events involving pulling calls to the incall ui. - Added new InCallService metadata which will be used to determine if an InCallService wants to be informed of external calls. - New disconnect causes which will be used to expose the fact that a multi-endpoint call was answered elsewhere and that a call ended because it was pulled to another device. - New call log call types to indicate if calls were answered elsewhere or pulled to another device. Bug: 27458894 Change-Id: I423f64ff965b5e50194635a51868c327782db2a1
2016-01-26Expose a meta-data value to allow dialer ringingSailesh Nepal
This CL exposes a new meta-data, IN_CALL_SERVICE_RINGING. If this is set to true then ringing is played by the dialer instead of Telecom. This CL also adds a new silenceRinger() API to InCallService. This is needed to implement ringer silence on volume key down. BUG: 22857261 Change-Id: I498538282eddbb727104f5b879f25adbef4e6cf6
2015-12-28Fix InCallService permission docSailesh Nepal
Small typo in the docs for InCallService. Change-Id: I551248858723047d30061d164976fb2e3418ed67
2015-12-02Fix @code escapesNeil Fuller
The body of {@code} must not be HTML escaped. This is one of several changes that fix the source in conjunction with a doclava fix. Bug: 25757239 Change-Id: Ib38a0fa2dd2a3d68e467f78a812071e763d7e881
2015-06-29Telecom API council changes.Santos Cordon
- adding more javadocs. - fixing javadoc on isEnabled - renaming to CONFIGURE_PHONE_ACCOUNT Bug: 21573551 Change-Id: Ice035b8573a08ea18181a73c9e9a462520a934f1
2015-06-23InCallService meta-data [2/4]Santos Cordon
Bug: 21816241 Change-Id: I9af91a1287f652247ef590878759aa277bd925e5
2015-06-04Add API docs for RemoteConnection VideoProvider/Callback.Tyler Gunn
Bug: 21573551 Change-Id: I434d83fa84f9515634776820b2e6a8004cf693ee
2015-05-29Cleanup Video API javadoc.Tyler Gunn
- Cleaned up documentation and added more details where possible. - Also added cross references from the VideoProvider and VideoCall APIs to make it more clear what the link is between the two. Bug: 21520606 Change-Id: I0a79450d69841df5850061311a523b37688efc49
2015-05-13Rename AudioState to CallAudioStateYorke Lee
Deprecate AudioState class and make methods @SystemApi where necessary to minimize impact to SystemApi Replace usages of AudioState inside Telecom sub-systems Fire both onCallAudioStateChanged and onAudioStateChanged callbacks for backward compatibility Support both setAudioState and setCallAudioState for all classes Bug: 21040387 Bug: 21088300 Change-Id: I3ec7b3afdaa344c6d639d1c421f1842d67f7d0f7
2015-05-12More video related API fixesYorke Lee
android.telecom.Connection.VideoProvider * onSetPauseImage takes Uri instead of String * changeCallDataUsage -> setCallDataUsage * add quality constants to changeVideoQuality() docs android.telecom.InCallService.VideoCall * setPauseImage takes Uri instea dof String android.telecom.VideoProfile.VideoState * Move constants to VideoProfile, prefix with STATE_ Bug: 21040387 Bug: 21066505 Change-Id: I764e72aced9d1e2d30d6d0cf0862100860d47c79
2015-05-12Fixes for APi reviewYorke Lee
Move CameraCapabilities into VideoProfile Make PhoneAccount and PhoneAccountHandle final Bug: 21040387 Bug: 21066505 Change-Id: I72453c89ae3765f9b9cf263938fce96d5978d2e0
2015-04-30Add handler parameter for callbacks.Andrew Lee
Bug: 20160491 Change-Id: I94639b06b8c97b6585e169d667a67ce328e716af
2015-04-24Doc fix - incorrect format (included argument) for function reference.Etan Cohen
Change-Id: I2cdf7b4f078b1ab0556fcc3fad5287f86641c396
2015-04-24Fix documentation - non-public API.Etan Cohen
Change-Id: I418bf47b197936b2f50b231425312d5b6d272df8
2015-04-24Rename removeVideoCallListener to unregisterCallbackEtan Cohen
Change-Id: Ie6b5ac9131e81900efc7d3fa67056aa47d566a44
2015-04-24Merge commit '7595842' into merge2Etan Cohen
Change-Id: I7e11e98e6d59562374195a8761d64a79dc0268e8
2015-04-16Remove deprecated VideoCallListener methods.Andrew Lee
These shouldn't be needed because the video call APIs were never previously made public. Bug: 20160491 Change-Id: Ic9c5d0d1e8618bfe61f8905d4afaeaa37f51c915
2015-04-16Merge "Fix comment typos. =("Andrew Lee
2015-04-16Merge "Unfinal getPhone."Santos Cordon
2015-04-16Unfinal getPhone.Santos Cordon
The change to make it final was breaking existing apps. ...and other changes. Bug: 20283873 Change-Id: I8db4243850ad15f688dbca59ff5427b4799cbd1b
2015-04-16Fix comment typos. =(Andrew Lee
Bug:20160491 Change-Id: I1782f6a0c5597f937c8882c6c94740c63cd63b53
2015-04-16Merge "Rename Call*Listener to Call*Callback."Andrew Lee
2015-04-16Rename Call*Listener to Call*Callback.Andrew Lee
Deprecate the existing Listener methods and interfaces so that they can be replaced. Bug: 20160491 Change-Id: I11c104c625b03751f3792fc4367883c18c6e2d54
2015-04-16Move Phone.java APIs into InCallServiceSantos Cordon
This change is one step in the right direction of getting rid of Phone.java. Phone.java was deemed superfluous and this change moves the methods previously exposed in Phone.java into InCallService. This was done by having InCallService listen to Phone and pipe the calls as appropriate. However, state still lives in Phone and we eventually want to move that code into InCallService. That will be done in a later CL. Bug: 20160495 Change-Id: Id142431c253c1f24f260da42e8bedd1eb2ce448b
2015-04-16Support for multiple VideoCall.Listeners for a VideoCall.Tyler Gunn
The current code assumes that only a single instance of VideoCall will be provided to the default system InCall UI. Ideally multiple InCallService implementations should be able to use the VideoCall APIs. Note: it only really makes sense for a single InCallService to get/set the video surfaces. - Fixed bug in ParcelableCall which would cause a new instance of VideoCallImpl to be created every time a call is updated from Telecom. Added a flag to ParcelableCall to indicate whether the parcel includes a change to the video provider information, which is used when unparceling to determine whether to set/create the video call impl. - Renamed "setVideoCallback" to "addVideocallback". - Modified Connection.VideoProvider code to keep a list of Video callbacks and fire off all of them when Video Provider changes occur. Bug: 20092420 Change-Id: Ic16b6afe1b7532cc64d006c133adbae57946d97d
2015-04-15DO NOT MERGE Make Telecom/InCallUI APIs publicJay Shrauner
Bug:20260870 Change-Id: Ie3a2db0685664f2f1ceea8f40b1249d01e9385b8
2015-04-15Make Telecom/InCallUI APIs publicJay Shrauner
Bug:20260870 Change-Id: Ie3a2db0685664f2f1ceea8f40b1249d01e9385b8
2015-04-15DO NOT MERGE Remove deprecated telecom APIs. Mark others final.Jay Shrauner
Bug: Change-Id: I8a04903052a964f3997b5bb36730b8b200c8e472
2015-04-14Remove deprecated telecom APIs. Mark others final.Jay Shrauner
Bug: Change-Id: I8a04903052a964f3997b5bb36730b8b200c8e472