Recently TelecomManager#getSelfManagedPhoneAccounts was updated
to allow callingPackages to get their PA's. However, API council
noted there was ambiguity with what was returned from the method.
Thus the method has been decoupled into 2 methods.
bug: 216640181
Test: CTS
Change-Id: Idbcb4740f5a5d7fdf5bedb9d9f6173eef0cb3f17
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
For API version 31+, ensure that READ_PHONE_STATE is checked on
APIs that retrieve/notify the call state of the device.
Bug: 157233955
Test: atest CtsTelecomTestCases2 CtsTelephony2TestCases
Change-Id: I9f8674a3075d3e0f75ee4f41eefce328c0fa6b91
Docs updates:
* setCallExtraParcelable must take a framework-defined parcelable
* EXTRA_PICTURE_URI takes an android.net.Uri
* Remove redundant documentation on setCallComposerStatus
Fixes: 182510687
Test: docs only
Change-Id: I43f776cf8bcb72c4121515536a3790cf44bf1638
Rename to EXTRA_PICTURE_URI, since we also need to set it for outgoing
calls in order to write to the call log correctly.
Bug: 177613111
Test: atest CallComposerTest
Change-Id: Ie171c8f978db7de30e81800c464b2bd68aff73f8
Merged-In: Ie171c8f978db7de30e81800c464b2bd68aff73f8
* Minor bugfix in call log to handle USER_CURRENT
* add TelephonyLocalConnection that allows frameworks/opt/telephony to
call code (indirectly) in packages/services/Telephony
Bug: 177613111
Test: atest CallComposerTest
Merged-In: I602b51da6009c884364a026781ca3c160978fbd1
Change-Id: I61af7553b4b3d71fe87c86fca62941747d43ef55
This change caches the results of getTelecomService() and implements a
death recipient that clears the cache when necessary.
Bug: 173460628
Bug: 173039862
Test: manual testing (phone calls, dialer tab transitions)
Change-Id: I438d479c78319eafa917ba661d7cbd49600fff2c
@SuppressLint("Doclava125") is a legacy way of suppressing
RequiresPermission check. Updating to the new style of suppression
so metalava no longer has to support the legacy mode.
sed -i "s/@SuppressLint(\"Doclava125/@SuppressLint(\"RequiresPermission/" \
core/java/android/app/admin/DevicePolicyManager.java \
core/java/android/hardware/hdmi/HdmiControlManager.java \
core/java/android/hardware/location/ContextHubManager.java \
core/java/android/hardware/usb/UsbDeviceConnection.java \
core/java/android/net/TrafficStats.java \
core/java/android/os/RecoverySystem.java \
core/java/android/os/storage/StorageManager.java \
core/java/android/service/persistentdata/PersistentDataBlockManager.java \
location/java/android/location/LocationManager.java \
media/java/android/media/AudioManager.java \
telecomm/java/android/telecom/TelecomManager.java \
telephony/java/android/telephony/CarrierConfigManager.java \
telephony/java/android/telephony/TelephonyManager.java \
wifi/java/android/net/wifi/RttManager.java \
wifi/java/android/net/wifi/WifiScanner.java
Test: make
Exempt-From-Owner-Approval: No-op change
Change-Id: I6d5df95cfca2950ea86872d2f0afc1ba828841dc
isServiceConnected() was being called before uses of getTelecomService()
to ensure that the service was connected before accessing it. However,
isServiceConnected() used getTelecomService() to check if the service
was connected, resulting in unnecessary binder calls.
Bug: 173036057
Bug: 173039862
Test: manual testing (switching between different tabs, calling)
Change-Id: I622464927826d8af1c6e75ed4557580d8723315c
Methods use @RequiresPermission annotation to declare permissions.
This CL removes redundant javadoc which also state the permission reqs;
the @RequiresPermission annotation results in autogenerated permission
docs.
Let some references in the javadoc in where a permission OR a role is a
requirement to use an API, or where permissions had specific API levels
noted in the javadoc.
Test: make docs
Fixes: 137633265
Change-Id: Id1ab7090def6b1d0dbdc8d2cc8586b5341e2eb7e
It retruns whether the caller has InCallService access for the companion
apps. A companion app is an app associated with a physical wearable
device via the {@link android.companion.CompanionDeviceManager} API.
Test: cts
Bug: 169595473
Change-Id: Id659bfae8556e965d3c31613848bde808f28a858
Expose Telecom constants that are used in Telephony in preparation for
mainline. Exposure is a combination of public/system -- those which made
sense for 3pty apps to access were made public.
Fixes: 168551099
Test: atest CtsTelecomTestCases
Change-Id: I688f04ba4ddf0498bad3463888fae71cdff2844a
The API contract for createLaunchEmergencyDialerIntent indicates that
the return value is @NonNull, however the code clearly can return a null
value if either:
1. Telecom is unavailable.
2. There is a remote exception.
Since the API just returns a new ACTION_EMERGENCY_DIAL intent with the
package name of the emergency dialer (from Telecom string resources), we
can provide a reasonable fallback behavior by just returning a new
ACTION_EMERGENCY_DIAL intent with no targeted package. The system will
still launch the emergency dialer in this case, but if there is a scenario
where multiple emergency dialers are installed on a device, the AOSP one
may get launched instead. This is, however, better than there being NO
emergency dialer launched.
Test: Comment out call to Telecom service and verify the AOSP emergency
dialer still launches.
Bug: 152187752
Fixes: 155097434
Merged-In: I1665d456dace8e41cc035e792f319d98dd07219c
Change-Id: I06f8a5bebace5b22822f7bb714e14915126b904f
These were previously being suppressed by doclava but with this change,
all failures are fixed and the suppression logic has been removed.
To fix the issues, there were a few possible changes made:
- broken reference to a public API (such as incorrect parameters): fixed
- unnecessary @link inside an @see tag: fixed
- @see referring to an @hide or @SystemApi: reference removed
- broken references to inner class constructors
- worked around by fully qualifying the constructor
Bug: 6963924
Test: make doc-comment-check-docs
Exempt-From-Owner-Approval: cherry-picked from master
Change-Id: Ifbdce2de96cdffa560bd90f549fa7184d1f9af85
Merged-In: Ifbdce2de96cdffa560bd90f549fa7184d1f9af85
(cherry picked from commit e0624c7a40)
These were previously being suppressed by doclava but with this change,
all failures are fixed and the suppression logic has been removed.
To fix the issues, there were a few possible changes made:
- broken reference to a public API (such as incorrect parameters): fixed
- unnecessary @link inside an @see tag: fixed
- @see referring to an @hide or @SystemApi: reference removed
- broken references to inner class constructors
- worked around by fully qualifying the constructor
Bug: 6963924
Test: make doc-comment-check-docs
Change-Id: Ifbdce2de96cdffa560bd90f549fa7184d1f9af85
Merged-In: Ifbdce2de96cdffa560bd90f549fa7184d1f9af85
The API contract for createLaunchEmergencyDialerIntent indicates that
the return value is @NonNull, however the code clearly can return a null
value if either:
1. Telecom is unavailable.
2. There is a remote exception.
Since the API just returns a new ACTION_EMERGENCY_DIAL intent with the
package name of the emergency dialer (from Telecom string resources), we
can provide a reasonable fallback behavior by just returning a new
ACTION_EMERGENCY_DIAL intent with no targeted package. The system will
still launch the emergency dialer in this case, but if there is a scenario
where multiple emergency dialers are installed on a device, the AOSP one
may get launched instead. This is, however, better than there being NO
emergency dialer launched.
Test: Comment out call to Telecom service and verify the AOSP emergency
dialer still launches.
Fixes: 152187752
Change-Id: I06f8a5bebace5b22822f7bb714e14915126b904f
Too late to @deprecate, but we can still at least indicate that the
broadcasts are dead-ends and help the developer know the right way to
go.
Test: make -j offline-sdk-docs; confirm docs look good.
Bug: 148268693
Fixes: 152915447
Change-Id: I88b03a62c812232cf0d5bbeb693cdaf3c2eed3e1