summaryrefslogtreecommitdiff
path: root/telecomm/java/android/telecom/InCallService.java
Commit message (Collapse)AuthorAgeFilesLines
* Update InCallService API documentation to clarify role and binding req.Tyler Gunn2022-06-221-7/+18
| | | | | | | | | | | Update InCallService API docs to clarify what happens if an app no longer fulfils the requirement of the dialer role. Also update documentation to clearly indicate when the platform may show a warning to the user due to a null binding. Test: Docs only change. Fixes: 236864749 Change-Id: Ief6225513a7aefefa9c029a02cc1a3511b236d44
* Revert "Add API for cross device calling."Grace Jia2022-02-071-148/+0
| | | | | | | | | | | | | | Revert "Add cts tests for new cross device calling api" Revert submission 16308056-cross-api Reason for revert: Don't want to launch this in T now Reverted Changes: I731226c0b:Add cts tests for new cross device calling api I1a3aa6c1a:Add API for cross device calling. I40f78925b:Implement new TelecomManager API for cross device ... Change-Id: I687d94235b159d8daa20fe75de08394adc39f8c7
* Add API for cross device calling.Grace Jia2022-01-121-0/+148
| | | | | Test: CTS test Change-Id: I1a3aa6c1ae6d445a2f3b55e5f0d11918da5bed33
* Merge "API docs clarification for placing calls."Treehugger Robot2021-11-111-1/+8
|\
| * API docs clarification for placing calls.Tyler Gunn2021-10-121-1/+8
| | | | | | | | | | | | | | | | | | Clarifying that a dialer app should use TelecomManager to place calls instead of relying on the Intent#ACTION_CALL intent. Test: Docs only change. Fixes: 202033596 Change-Id: Iac9358c5cd069f120a167c96aa6b9462313b2268
* | Merge "Update API docs for InCallService." am: 733dd0f1e9Brad Ebinger2021-09-071-1/+6
|\| | | | | | | | | | | Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1818366 Change-Id: I54c94567fa6677f1cfe2ca818c889275d8cb6f1c
| * Update API docs for InCallService.Tyler Gunn2021-09-031-1/+6
| | | | | | | | | | | | | | | | | | Clarify that InCallService implementations should never indicate that they are non-exported. Test: Docs only fix Bug: 198003282 Change-Id: I85f925775b12c994a028e14d7644c744a252ec33
* | Merge "Clarify the video API "setZoom" ratio." am: 6cf21bae3b am: 9d0f657ddcTyler Gunn2021-06-151-2/+4
|\| | | | | | | | | | | Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1737273 Change-Id: Ib914f83b7029d2a2ef3d9584175d2f96944956cd
| * Clarify the video API "setZoom" ratio.Tyler Gunn2021-06-141-2/+4
| | | | | | | | | | | | | | | | | | This should ideally be a valid in terms of the reported camera characteristics. Test: Docs only change Bug: 190804553 Change-Id: I35e0148e6e9d90d991b556e5c6db4bbd77ce39a0
| * Companion InCallService API reviewsqian2021-02-251-0/+18
| | | | | | | | | | | | | | | | Test: atest; make docs Bug: 179116441 Change-Id: Id75e727f6c3fc42132a80f7258bf790be79acf19 Merged-In: Id75e727f6c3fc42132a80f7258bf790be79acf19 (cherry picked from commit d30bd60beb6e098b279ccb4a839c7ad89a1b6c64)
| * Suppress all hidden abstract methods in constructable classes.Aurimas Liutikas2020-11-131-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | 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 Merged-In: I758d12465fabc671be19bedeeceb16885de23c87 Exempt-From-Owner-Approval: large scale suppression of existing issues, no-op in terms of behavior
* | Companion InCallService API reviewShuo Qian2021-02-251-0/+18
| | | | | | | | | | | | | | Test: atest; make docs Bug: 179116441 Change-Id: Id75e727f6c3fc42132a80f7258bf790be79acf19 Merged-In: Id75e727f6c3fc42132a80f7258bf790be79acf19
* | Bulk apply PendingIntent.FLAG_MUTABLE_UNAUDITED.Ashwini Oruganti2021-01-121-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | 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
* | Suppress all hidden abstract methods in constructable classes.Aurimas Liutikas2020-11-111-0/+1
|/ | | | | | | | | | | | | 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
* Update InCallService API docs.Tyler Gunn2020-01-311-5/+32
| | | | | | | | | | | 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
* Telecom API doc cleanup.Tyler Gunn2019-04-111-60/+5
| | | | | | | | | | 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
* Add missing parts for renaming of the call redirection role.Hai Zhang2019-02-071-3/+2
| | | | | | | | Also drops the _APP suffix in role names, to be consistent with other roles. Test: manual Change-Id: Iee3566b353fdf49a916067dfffebcf3d5b87c326
* Call Screening / Caller ID API ChangesTyler Gunn2019-01-081-12/+95
| | | | | | | | | | | | | | | | | | | | | - 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
* Update InCallService API docs to explain how to show incoming call UI.Tyler Gunn2018-07-101-1/+73
| | | | | | | | | 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
* Change signature of requestBluetoothAudioHall Liu2018-04-021-4/+3
| | | | | | | | requestBluetoothAudio now takes a BluetoothDevice instead of a string. Bug: 74408978 Test: unable to CTS -- can't emulate bluetooth devices Change-Id: Id21e32b911da234f69a248e9937f9df0cf12a9a9
* Add InCallService docs to state prerequisites for be being a dialer app.Tyler Gunn2018-02-091-0/+20
| | | | | | | | | | 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
* Add handover permission, fill in some missing API gaps.Tyler Gunn2018-01-251-0/+11
| | | | | | | | | | | | | | | | | | | 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
* Implement Call handover initiation side APIs.Sanket Padawe2017-12-191-0/+12
| | | | | | | | | | | Bug: 65415068 Test: Manual Design doc: https://docs.google.com/document/d/1qY3oAzjff_4A1ttYb_CGrE_OwTRmXMG_KGsIuPT1ey8/edit# Change-Id: I692bb14fba66733154378c2dda525aa85c471a38 Merged-in: I692bb14fba66733154378c2dda525aa85c471a38
* Update Telecom APIs to include multi-hfpHall Liu2017-11-091-0/+18
| | | | | | | | | | | * 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
* Merge "API review cleanups/changes." am: 9324d6513b am: dd4bc7c69cTyler Gunn2017-03-071-1/+2
|\ | | | | | | | | | | am: c49b011151 Change-Id: Ib3d76474bef8c911b2ec6a61b916e38af0a3b861
| * API review cleanups/changes.Tyler Gunn2017-03-061-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - 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
* | Add further Connection-side APIs for RTT (part 2)Hall Liu2017-03-011-0/+12
|/ | | | | | | | | | 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
* Introduce APIs for RTT calls (part 1)Hall Liu2017-02-211-0/+12
| | | | | | | | Add signaling methods and data pipes for handling real-time text during a call. Change-Id: I876827c448252c5f786d7a4919c47891acb03877 Test: manual, through telecom testapps
* Perform camera permission and app ops check when setting camera for VT.Tyler Gunn2017-02-061-2/+4
| | | | | | | | | | | | | | | | | 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
* Update InCallService#onConnectionEvent comments.Tyler Gunn2016-08-251-2/+2
| | | | | | | | Update comments to indicate the method is unused and to point developers to the correct method. Bug: 31056610 Change-Id: I5d1da69914e0fccd3cf3c504b68acbcf0c70c9c4
* Un-@hide multi-endpoint APIs.Tyler Gunn2016-05-061-1/+0
| | | | | | Bug: 28621640 This reverts commit 1bf206b766654ea9c4e9bc7a703a9d5f1d30ab72. Change-Id: If8c85e4adeb017eec2b7e8199010deae2a920c6a
* Hide multi-endpoint APIs.Tyler Gunn2016-04-151-0/+1
| | | | | | | | Per feature council decision, the multi-endpoint APIs will be @hide for the N release. Bug: 28196918 Change-Id: Ia80b089bc754ce87ca208382eb79442b5265844d
* Add API support for multi-endpoint.Tyler Gunn2016-03-141-0/+36
| | | | | | | | | | | | | | | | | | | | | | | | | 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
* Expose a meta-data value to allow dialer ringingSailesh Nepal2016-01-261-0/+21
| | | | | | | | | | | 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
* Fix InCallService permission docSailesh Nepal2015-12-281-1/+1
| | | | | | Small typo in the docs for InCallService. Change-Id: I551248858723047d30061d164976fb2e3418ed67
* Fix @code escapesNeil Fuller2015-12-021-7/+7
| | | | | | | | | 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
* Telecom API council changes.Santos Cordon2015-06-291-1/+1
| | | | | | | | | - adding more javadocs. - fixing javadoc on isEnabled - renaming to CONFIGURE_PHONE_ACCOUNT Bug: 21573551 Change-Id: Ice035b8573a08ea18181a73c9e9a462520a934f1
* InCallService meta-data [2/4]Santos Cordon2015-06-231-1/+18
| | | | | | Bug: 21816241 Change-Id: I9af91a1287f652247ef590878759aa277bd925e5
* Add API docs for RemoteConnection VideoProvider/Callback.Tyler Gunn2015-06-041-2/+5
| | | | | Bug: 21573551 Change-Id: I434d83fa84f9515634776820b2e6a8004cf693ee
* Cleanup Video API javadoc.Tyler Gunn2015-05-291-61/+129
| | | | | | | | | - 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
* Rename AudioState to CallAudioStateYorke Lee2015-05-131-7/+35
| | | | | | | | | | | | | 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
* More video related API fixesYorke Lee2015-05-121-1/+2
| | | | | | | | | | | | | | | | | 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
* Fixes for APi reviewYorke Lee2015-05-121-1/+2
| | | | | | | | | Move CameraCapabilities into VideoProfile Make PhoneAccount and PhoneAccountHandle final Bug: 21040387 Bug: 21066505 Change-Id: I72453c89ae3765f9b9cf263938fce96d5978d2e0
* Add handler parameter for callbacks.Andrew Lee2015-04-301-1/+12
| | | | | Bug: 20160491 Change-Id: I94639b06b8c97b6585e169d667a67ce328e716af
* Doc fix - incorrect format (included argument) for function reference.Etan Cohen2015-04-241-1/+1
| | | | Change-Id: I2cdf7b4f078b1ab0556fcc3fad5287f86641c396
* Fix documentation - non-public API.Etan Cohen2015-04-241-1/+1
| | | | Change-Id: I418bf47b197936b2f50b231425312d5b6d272df8
* Rename removeVideoCallListener to unregisterCallbackEtan Cohen2015-04-241-1/+1
| | | | Change-Id: Ie6b5ac9131e81900efc7d3fa67056aa47d566a44
* Merge commit '7595842' into merge2Etan Cohen2015-04-241-0/+5
|\ | | | | | | Change-Id: I7e11e98e6d59562374195a8761d64a79dc0268e8
| * Support for multiple VideoCall.Listeners for a VideoCall.Tyler Gunn2015-04-161-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
| * DO NOT MERGE Make Telecom/InCallUI APIs publicJay Shrauner2015-04-151-6/+0
| | | | | | | | | | Bug:20260870 Change-Id: Ie3a2db0685664f2f1ceea8f40b1249d01e9385b8