b1c219725e29b7dd67b3b0bd705a409e5cb1e41d |
|
17-Nov-2016 |
Satish Kodishala <skodisha@codeaurora.org> |
Strip separators while sending CLCC response Usecase: 1. Pair and connect with Plantronics Voyager Legend headset. 2. Make MO call to a contact with "(" or ")" in the name. 3. End the call. 4. Redial from headset. Failure: Headset sends ATD with number it got as part of CLCC response for first call. Since number contains "(" and ")" characters, error is returned from BT stack to the headset. Rootcause: During the first call, headset sends AT+CLCC. We send number returned by Telephony as is which have "(" and ")" to headset in CLCC response. Headset uses ATD with this number for redial. We return error from stack when we see "(" or ")" so redial fails. Fix: Remove special characters like "(", ")", "-", " " from phone number before sending it in CLCC response. Issue is see with Plantronics Voyager Legend, Plantronics backbeat pro headsets. Bug:33000152 Change-Id: I589b64ebd56892dec33abe430cdf6d2eacdc9b99
/packages/services/Telecomm/src/com/android/server/telecom/BluetoothPhoneServiceImpl.java
|
3cab92aa08063db6f63e3bc032332c377eac1de5 |
|
19-Jul-2016 |
Hall Liu <hallliu@google.com> |
Answer video calls as audio through BT Bug: 30207310 Change-Id: I9d5bd714920f48e4554385d9ba2df4962be29840
/packages/services/Telecomm/src/com/android/server/telecom/BluetoothPhoneServiceImpl.java
|
1e37be5dd86a51b90e461f09dc8a89effe4aee21 |
|
11-Jul-2016 |
Tyler Gunn <tgunn@google.com> |
Finalize multiendpoint functionality. 1) Handle the PULLING state throughout telecom. 2) When parcelling calls to send to InCallServices, remap PULLING state to DIALING if an InCallService doesn't support external calls. This ensures compatibility for things like Android Wear/Auto. 3) Ensure add call isn't disabled because of external calls. 4) Modify InCallController to handle changes to whether a call is external or not. For IncallServices that do not support external calls, we will add the call when an external call becomes a regular call, and we will remove it when a regular call becomes external. Change-Id: I1bf6c1f7e182834c3ab1ed34cd119467a4698993
/packages/services/Telecomm/src/com/android/server/telecom/BluetoothPhoneServiceImpl.java
|
f15dc33f87f88e21ef745952a68af65c86e1bf1e |
|
08-Jun-2016 |
Tyler Gunn <tgunn@google.com> |
Filter external calls when InCallService doesn't support them. Use TelecomManager#METADATA_INCLUDE_EXTERNAL_CALLS metadata to check whether an InCallService supports external calls. Will only send external calls to an InCallService which has correct Metadata to indicate that it wants to be informed of external calls. This required some changes to how InCallController keeps track of the incallservices. I have added an InCallServiceInfo class which tracks the component name of an ICS as well as whether it supports external calls. The change to CallsManager#getFirstCallWithState and getNumCallsWithSate ensures that when TelecomServiceImpl checks to see if there are ongoing calls it doesn't consider external calls when checking if there is an ongoing call, and also when determining if room needs to be made for a call. Bug: 27458894 Change-Id: I69652877332be8527fb16a38c692b6f51a92e469
/packages/services/Telecomm/src/com/android/server/telecom/BluetoothPhoneServiceImpl.java
|
6916a88d04b40bc934bfd6059f3f3e701d7f7242 |
|
14-Apr-2016 |
Santos Cordon <santoscordon@google.com> |
Merge "Do not crash if label is null." into nyc-dev
|
1a40c4f4daf2cdfba3f67383c726f93b85a98b00 |
|
14-Apr-2016 |
Tyler Gunn <tgunn@google.com> |
Improvements to external call handling. Add onExternalCallChanged listener in Call to report when a call switches between being external and not. In CallAudioManager, BluetoothPhoneServiceImpl, HeadsetMediaButton, and PhoneStateBroadcaster, listen to changes in the external call state. This ensures that when a call becomes external or a call becomes non-external that the various modules updates themselves appropriately. Bug: 28179159 Change-Id: I44bc0b94f185c66aeddb68549223533249bb0b62
/packages/services/Telecomm/src/com/android/server/telecom/BluetoothPhoneServiceImpl.java
|
22403a76d81aa26fa7407a4070765e92a69d6cd0 |
|
13-Apr-2016 |
Santos Cordon <santoscordon@google.com> |
Do not crash if label is null. Bug: 27814178 Change-Id: Ic7adff34fbaeab80cc616b0f0a408ff8722bb6c1
/packages/services/Telecomm/src/com/android/server/telecom/BluetoothPhoneServiceImpl.java
|
7948f5b5aeae8e508ee4310595669c484c786dd7 |
|
16-Mar-2016 |
Hall Liu <hallliu@google.com> |
Fix tests breaking when bluetooth is on BluetoothPhoneServiceImpl now uses a BluetoothAdapterProxy so that it is now isolated from system bluetooth. Bug: 27686250 Change-Id: If27c9ba642b163ecde68ae8956bc76523a552d31
/packages/services/Telecomm/src/com/android/server/telecom/BluetoothPhoneServiceImpl.java
|
e091ab90e37845cf4771051a6d2ce0ebadee4fe7 |
|
19-Dec-2015 |
Hall Liu <hallliu@google.com> |
CallAudioManager refactoring Separates the handling of audio mode and audio focus into a state machine and brings ringing, tone generation, and ringbacks under the control of CallAudioManager. (cherry picked from commit fc2270137059e855756769752899d613e27d12a8) Change-Id: Idd765550c907150117b8b66f76e88868ae3785c2
/packages/services/Telecomm/src/com/android/server/telecom/BluetoothPhoneServiceImpl.java
|
3165d50d3fc688d632faecfae9c2f987e537941f |
|
16-Dec-2015 |
Brad Ebinger <breadley@google.com> |
Increase Logging to debug Accept/Reject Currently, it can be difficult to identify where Telecom events originate from. Logging messages have been added that better describe the conditions that occured to cause these Telecom events to occur. Bug: 25838961 Change-Id: I846a3125d000bef1d0e8796a7baadcfa8cd73d4f
/packages/services/Telecomm/src/com/android/server/telecom/BluetoothPhoneServiceImpl.java
|
712860276af91b649f2787a9a793521b16f091be |
|
10-Dec-2015 |
Brad Ebinger <breadley@google.com> |
Increase Unit Tests for BluetoothPhoneServiceImpl Adds tests to BluetoothPhoneServiceImpl in code areas that have been identified as important (76% -> 86%) as per: go/telecom-code-yellow-coverage Change-Id: I1294f5873ea0944c79878797e244db346b2ad9a4
/packages/services/Telecomm/src/com/android/server/telecom/BluetoothPhoneServiceImpl.java
|
240656f19c078b4f703d0502ce29114de0d45a50 |
|
04-Dec-2015 |
Tony Mak <tonymak@google.com> |
Methods in PhoneAccountRegistrar should ask for userhandle explicitly 1. Get calling user handle before calling clearCallingIdentity 2. Methods in PhoneAccountRegistrar asked for the user handle explicitly instead of trying both current user and calling user 3. Modify isVisibleForUser in PhoneAccountRegistrar, - PA with CAPABILITY_MULTI_USER is visible to all users including managed profile (We are still discussing this, but let's assume it works in this way and change it later if necessary) - For other PAs, they are only visible within the user they are registered to. - TelecomManager.getPhoneAccount is an exception case. The visibility checking of getPhoneAccount allowing a PhoneAccountHandle from other profiles in the same user. Reason: Telecom passes PhoneAccountHandle to incall UI and incall UI retrieves PhoneAccount from the handle. It is because we never bind to managed profile's incall UI, and bind to its parent user provided one instead. So phone account handle in managed profile is passed to it's parent user incall UI. And we need to allow parent user incall UI to retrieve the PhoneAccount from the handle. 4. Please notice that the default PA account related APIs does not really support multi-users. The backend (xml storage) does not include user as a key and it should be able to store one default only and is shared among all users. This problem is not fixed in this commit. Bug: 25936882 Change-Id: Ia371723d68247a208a0c1185f6d02f1b5897946a
/packages/services/Telecomm/src/com/android/server/telecom/BluetoothPhoneServiceImpl.java
|
3dfd3e916f1f5f1bd8fe811ab134422b8763bfa7 |
|
17-Nov-2015 |
Brad Ebinger <breadley@google.com> |
Merge "Add BluetoothPhoneServiceImpl testing"
|
5385513ae43b4d5896245bf076a83b27dbf32a25 |
|
30-Oct-2015 |
Brad Ebinger <breadley@google.com> |
Add BluetoothPhoneServiceImpl testing Adds unit tests for BluetoothPhoneServiceImpl.java, which manages telecom's interfacing with a headset, including headset events and connect/disconnect during a call. Change-Id: Ia692b02f8e4d3fc52b0e266409a4c5ed1ca2e7b8
/packages/services/Telecomm/src/com/android/server/telecom/BluetoothPhoneServiceImpl.java
|
b3979ee8e636820cc5e68f26562bc02987e5d489 |
|
12-Nov-2015 |
Hall Liu <hallliu@google.com> |
Fix test breakage when phone bluetooth is on When the phone's bluetooth is enabled, TelecomSystemTest will fail with a permission error in BluetoothPhoneServiceImpl. This change introduces a new factory to facilitate mocking of BluetoothPhoneServiceImpl. Change-Id: I58e1d5532a7f55580d37158fee27209e3de24988
/packages/services/Telecomm/src/com/android/server/telecom/BluetoothPhoneServiceImpl.java
|
d9f9006eafb1751f1b4ae1aa0954d445aa03fd3c |
|
28-Oct-2015 |
Santos Cordon <santoscordon@google.com> |
Show CONNECTING and SELECT_PHONE_ACCOUNT states as bluetooth-dialing. When a bluetooth device asks us to make a call, we make a new Call instance in the CONNECTING state and ask the ConnectionService to place the call. Once the ConnectionService places the call the state transitions to DIALING. The bluetooth device expects there to be a call after it asks us to place it, but we return zero calls if the device asks us prior to transitioning to DIALING. This is because we treat CONNECTING as an IDLE state for bluetooth devices. The reason we treated CONNECTING as an IDLE state was to accommodate aggressive end-call behavior from apps which rewrite a phone numbers when making phone calls. We have since fixed that problem in other ways and it is no longer necessary to treat CONNECTING or SELECT_PHONE_ACCOUNT as IDLE states. This should fix problems we are seeing where BT devices show zero calls if they query our system during the CONNECTING state. Bug: 24093455 Change-Id: I129711f6b9f6b7e32fc0bfa338b1e7fa5965e378
/packages/services/Telecomm/src/com/android/server/telecom/BluetoothPhoneServiceImpl.java
|
7d7cf27dd519c8910d98e942adc5a95675eba0c8 |
|
28-Aug-2015 |
Roshan Pius <rpius@google.com> |
Ensure BT headset state updation before connect. Two BT fixes here: 1. Correct the force updation of BT headset. Looks like one of the partner CL: ag/703545 inadvertently overrode the |force| flag that was added in ag/565413 to update the BT headset with correct phone state on query. Correcting the logic to update the BT headset with phone state to honor the |force| flag regardless of the other flags. 2. For outgoing calls, update the BT headset that there is an outgoing call being placed even before the call reaches the DIALING state. This helps in ensuring that the connect_audio invoked reaches after BT headset knows that there is an outgoing call being placed. BUG: 23324160 Bug: 22996930 Bug: 23595828 Change-Id: Ib19712fbf357b8355de2132be643585e24d9a59c
/packages/services/Telecomm/src/com/android/server/telecom/BluetoothPhoneServiceImpl.java
|
9365c274f5f3c0b1c289f54e855792bfb24096d6 |
|
29-Jun-2015 |
Tyler Gunn <tgunn@google.com> |
Update BluetoothPhoneServiceImpl to handle childless conference calls. - Changed so conference calls with no children (or possibility of having any children) are added to bluetooth device. Bug: 21085329 Change-Id: Ife16a048c5549aa3033018d53cd100f6da697668
/packages/services/Telecomm/src/com/android/server/telecom/BluetoothPhoneServiceImpl.java
|
3109262f814309b0c93464006ba29d6a53b3145b |
|
05-Jun-2015 |
Andre Eisenbach <eisenbach@google.com> |
Fix merge error in BluetoothPhoneServiceImpl Change-Id: I0a7a721eb510642858b3037af63c3bf271d9c7c0
/packages/services/Telecomm/src/com/android/server/telecom/BluetoothPhoneServiceImpl.java
|
49422b5771ff5bc45f032f40000697e6fd1bd3b5 |
|
01-Apr-2015 |
Mallikarjuna GB <gbmalli@codeaurora.org> |
Bluetooth: Send default value for CNUM. Use case: 1. Connect BT headset. 2. Make MO call. 3. Check for AT+COPS response and SCO establishment. Failure: No response sent for AT+COPS. Root cause: Telephony is returning null as operator name. Fix: - When null value is returned for operator's name and subscriber number from telephony APIs, add default values for those. Change-Id: I3d675e786bece1a18b651d5dba1207cf6603121d
/packages/services/Telecomm/src/com/android/server/telecom/BluetoothPhoneServiceImpl.java
|
8729c185e463f81639247e4a2c33ad723a60e353 |
|
04-Jun-2015 |
Mallikarjuna GB <gbmalli@codeaurora.org> |
BT: Don't answer video call as audio only call. Use case: 1. Connect BT headset. 2. Receive MT video call. 3. Answer using BT headset. Failure: Video call gets answered as audio only call. Root cause: When answering call from BT headset, we are not checking the if the call is video call and answering it as audio call. Fix: Check if the call is video call when answering with BT headset. Change-Id: I9f29fee5685302046b2ac3f87e4b844150152a49
/packages/services/Telecomm/src/com/android/server/telecom/BluetoothPhoneServiceImpl.java
|
0ae2df8877ab703fbdeb33c89bc7a694af5611ed |
|
04-Jun-2015 |
Mallikarjuna GB <gbmalli@codeaurora.org> |
BT: Send proper updates to headset for call swap Use case: 1. Connect BT headset. 2. Make MO/MT call. 3. Make another MO/MT call. 4. When one call is active, another is on hold, swap calls from headset. 5. Check call held indicators sent to headset. Failure: 1. Calls swapped and CIEV 7,2 and CIEV 7,1 is sent on GSM network. 2. For CDMA, calls swapped with in active CDMA conference but no held call indicator is sent. Root cause: 1. In gsm network, when active and held calls are swapped, firstly active call is put to hold making held call count as 2 and BluetoothPhoneService updates callheld indicator as no call active. After this, next update comes to make original held call as active and again callheld indicator as active and held is updated. 2. For CDMA, when calls are swapped, no call held indicator is sent from Telephony. Fix: 1. In gsm network, avoid unnecessary callheld indicator update as CIEV7,2 for call swapping. 2. In cdma network, send callheld indicator for call swap within active conference. Change-Id: I385e9b383c5c71cab2bf300669695d2fa66bd38c
/packages/services/Telecomm/src/com/android/server/telecom/BluetoothPhoneServiceImpl.java
|
ebf2d0f2b4f17e958b0b23d94edc6b0d05334e43 |
|
15-May-2015 |
Santos Cordon <santoscordon@google.com> |
Add a slew of clearCallingIdentity() invocations to telecom. We used to use Handlers to move things onto the telecom main thread when they came in through Binder calls. This also had the effect of switching to telecom's calling identity. Since we no longer do that, we need to manually reset the calling identity to avoid the permissions failures that we've been seeing lately. This change adds all the checks that are necessary today and checks which would help down the road if any code changes. Bug: 20830275 Change-Id: I73e3e2d310a505ac96abe3aed7f2118346c7be1f
/packages/services/Telecomm/src/com/android/server/telecom/BluetoothPhoneServiceImpl.java
|
6a2126477ce3f527ecaec807fe4f40cd13ff02b0 |
|
09-May-2015 |
Santos Cordon <santoscordon@google.com> |
Clean up PhoneAccountRegistrar. Cleanup lots of duplicate code and consolidate all phone account retrievals into a single method: getPhoneAccounts(...). Consolidate checks for capabilities, package-name, uri, and isVisibleForUser(...). This will be very helpful when implementing enable/disable for phone accounts. Bug: 20303449 Change-Id: I24d63cd313876f5d9390f2eb31c0ce79d7cb0ab2
/packages/services/Telecomm/src/com/android/server/telecom/BluetoothPhoneServiceImpl.java
|
92694519535c54f542b4ef3973e9c1934f2feeff |
|
23-Apr-2015 |
Santos Cordon <santoscordon@google.com> |
Move CallState and rename PRE_DIAL_WAIT. CallState was a public API only being used by Telecom so I've moved it into to Telecom and removed it from the public API. The translation from CallState to Call.STATE_* was happening on the public Call object which wasn't ideal (Call.java shouldn't have to know that other representations of state exist). So I moved the translation into InCallController.java and what we pass into ParcelableCall is now Call.STATE_* constants. Bug: 20532827 Bug: 20532435 Change-Id: I79ce36c7e971c1a49b857506c9a56cfe316069cf
/packages/services/Telecomm/src/com/android/server/telecom/BluetoothPhoneServiceImpl.java
|
8d5d9ddc66b55b6906364ab3c0e244dab4d58f13 |
|
12-Mar-2015 |
Ihab Awad <ihab@google.com> |
Make Telecom synchronous Remove main-thread handlers and add a systemwide lock object. Change-Id: I6334fdfa6c244836f6375bea302404f61c81301b
/packages/services/Telecomm/src/com/android/server/telecom/BluetoothPhoneServiceImpl.java
|
78a5e6b9c1595c81f72d7a822617cb78db224e48 |
|
06-Feb-2015 |
Ihab Awad <ihab@google.com> |
Refactoring for testability Refactor to a single app singleton, TelecomSystem, which owns the intialization of the rest of the app. Change-Id: I3036f200b56f710e7f830b469260a67145c327e7
/packages/services/Telecomm/src/com/android/server/telecom/BluetoothPhoneServiceImpl.java
|