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
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
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
These are APIs that have @UnsupportedAppUsage but for which we don't
have any evidence of them currently being used, so should be safe to
remove from the unsupported list.
Bug: 170729553
Test: Treehugger
Merged-In: I626caf7c1fe46c5ab1f39c2895b42a34319f771a
Change-Id: I54e5ecd11e76ca1de3c5893e3a98b0108e735413
These are APIs that have @UnsupportedAppUsage but for which we don't
have any evidence of them currently being used, so should be safe to
remove from the unsupported list.
Bug: 170729553
Test: Treehugger
Merged-In: I8285daa8530260251ecad6f3f38f98e263629ca7
Change-Id: I626caf7c1fe46c5ab1f39c2895b42a34319f771a
Update docs to clarify some confusion over recommended behavior for
paste/autocomplete operations.
Bug: 171986522
Test: docs only
Change-Id: I0515319a1aff00640fb4557584b17f10126eb215
These are APIs that have @UnsupportedAppUsage but for which we don't
have any evidence of them currently being used, so should be safe to
remove from the unsupported list.
This is a resubmit of ag/12929664 with some APIs excluded that caused
test failures; see bugs 171886397, 171888296, 171864568.
APIs excluded:
Landroid/bluetooth/le/ScanRecord;->parseFromBytes([B)Landroid/bluetooth/le/ScanRecord;
Landroid/os/Process;->myPpid()I
Landroid/os/SharedMemory;->getFd()I
Landroid/hardware/input/InputManager;->INJECT_INPUT_EVENT_MODE_WAIT_FOR_FINISH:I
Bug: 170729553
Test: Treehugger
Change-Id: I8285daa8530260251ecad6f3f38f98e263629ca7
These are APIs that have @UnsupportedAppUsage but for which we don't
have any evidence of them currently being used, so should be safe to
remove from the unsupported list.
Bug: 170729553
Test: Treehugger
Change-Id: I4c8fd0006f950de9955242e93968fb0996ceb372
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
We need access to the DeviceIdleController, which is not currently
accessible via the PowerWhitelistManager due to restrictions with
components in the same SYSTEM process accessing public APIs (see
context#enforceCallingPermission).
To get around this, we need to wrap services only available as
LocalServices using Binder to pass these services to the Telecom
code. This is all in-process (no IPC allowed), so there should be
little to no impact.
Bug: 160724034
Test: miss call and verify `adb shell cmd deviceidle tempwhitelist` contains
default dialer.
Test: atest TelecomUnitTests; atest CtsTelecomTestCases
Change-Id: I6275b550d19743e576b93f5fcd2bd3aa9ea4e1a8
Merged-In: I3d71331cbc8f01f764cc0b9704416821007feeb5
Update documentation to reflect that the sort order extra
should contain integers.
Bug: 169153499
Test: docs only
Change-Id: Ic5269d577f007e01a0c9eaa95cd7e8814ab8f79a
Merged-In: Ic5269d577f007e01a0c9eaa95cd7e8814ab8f79a
Update documentation on PhoneAccount#EXTRA_SORT_ORDER to make it more
clear what the sorting order is in edge cases.
Make DisconnectCause#REASON_EMULATING_SINGLE_CALL public, since it might
get propogated up to dialer apps.
Fixes: 169153499
Test: docs only
Change-Id: I7f810f909a8a61b422283c3bafcc97307e4d863b
Merged-In: I7f810f909a8a61b422283c3bafcc97307e4d863b
Update API docs to make it clear what the verification status means and how
it can be used by CallScreeningService and CallRedirecitonService
implementations.
Test: Build API docs and view offline.
Bug: 150343312
Change-Id: I56f92f5e3ab544e31337a8147134baac33bb4ea9
* changes:
Upgrade AndroidFrameworkBinderIdentity to fatal.
Tighten up Binder.clearCallingIdentity() usage.
Tighten up Binder.clearCallingIdentity() usage.
Tighten up Binder.clearCallingIdentity() usage.