Making color hint's relative api @SystemApi.
For pre-installed live wallpaper apps, change to @SystemApi so:
1. apps can be build with gradle build tools.
(e.g.: PixelLiveWallpaper for app bundle feature).
2. apps can calculate and pass color hint information to interested system components.
(Such as passing dark text support to SystemUi)
Fixes: 111395593
Test: make system sdk and check if the wallpaper apps can compile with android_system.jar.
Test: check whether the wallpaper apps can pass correct color hint after build (dark text).
Change-Id: I2ecf6ff77ff7a823949c6e3253a077e6eba9683a
This CL:
- renames setForcePositionWithinWindowSystemInsetsBounds to
setClippingEnabled
- improves some of the docs
Bug: 120609112
Test: atest CtsWidgetTestCases:android.widget.cts.MagnifierTest
Change-Id: I14c774b432b4a0cff96066734758b9f937179d94
Test: manual.
Set up work profile and open an app that's only installed
there. This should change the user ID without triggering a
system-wide global switch, in which case the application info
would be null and cause the system service to crash.
In the current implementation, this shouldn't happen, and in
fact the foreground app should be properly inferred regardless
of the user. This can be visible by enabled and checking the
AutomaticBrightnessController logs with:
adb shell cmd display ab-logging-enable
adb logcat | grep AutomaticBrightnessController
Fixes: 122107873
Change-Id: I8161414a766c494ab0efadaa20fe6fcdf5067948
Binder.getCallingUidOrThrow is a pure java method which uses
Binder.isHandlingTransaction @CriticalNative method.
Binder.isHandlingTransaction itself is not exposed a public API.
Bug: 62253865
Fix: 62253865
Test: Added a testcase to BinderTest.java to verify ISE is thrown
Change-Id: I93a1b6c24a4747b8b70c32d291b4706b6159a3d0
The value of the field will be verified in CTS.
Bug: 112837428
Test: atest CtsActivityManagerDeviceTestCases
Change-Id: I7f8e4b20c75077c77f4d723946d6596737523479
Some countries or carriers require some emergency numbers that must
be handled with normal call routing or emergency routing.
Do not send service types from the database
as the emergency service categories
When searching for the corresponding service categories,
try to find the one that comes from the radio indication.
Test: Treehugger
Bug: 112657134
Change-Id: I95dadd07e9155c6e402a72339f307b4d7ef32fe4
This intent action will be used by Settings to launched the new
special app access list UI in PermissionController.
Bug: 110557011
Test: build
Change-Id: Ib3570cf8110d75e443e2c3d63eecea0aa6eaee5c
1. SelectionEvent will be still logged via SelectionSessionLogger
to make sure we don't break existing logs.
2. New features including language detection and conversation actions
are logged via TextClassifierEventTronLogger.
3. Added TYPE_ACTIONS_GENERATED to log when actions are generated.
This is used to calcuate the recall, i.e. among all the requests,
how many of them TextClassifier returns something.
Test: atest TextClassifierEventTronLoggerTest
Test: Turn on the DEBUG flag and observe the logging.
BUG: 120803809
BUG: 120828422
Change-Id: I33f2ce58885d90bc35316f54abcd42b137b42a13
* Mark all BluetoothHealth related APIs as deprecated
* Make BluetoothAdapter#getProfileProxy(context, BluetoothProfile.HEALTH)
always return false
* Remove all logic behind BluetoothHealth APIs and add deprecation error log
* Health Device Profile (HDP) and MCAP protocol has been largely
replaced by BLE. New applications should use Bluetooth Low Energy
instead of legacy Bluetooth Health Device Profile
Bug: 111562841
Test: make, unit test, use Bluetooth
Change-Id: If99a9d79e9e1b89b75b9b74bd3b1c965247a1892
The Usage Reporting Api allows apps to report usage within the app to
platform. Apps with the the OBSERVE_APP_USAGE permission may register
observers that use the reported in-app usage.
Test: manual (using the included Usage Reporter App)
Test: atest CtsUsageStatsTestCases:UsageReportingTest
Test: atest FrameworksServicesTests:AppTimeLimitControllerTests
Bug: 112486938
Change-Id: Iddd6f0993bbbf68a2032b34d473ef8d67da7747a
This change is required to show the signal level associated with service
name on UI for installed passpoint profile as picking strongest one up
from matching scanResults.
In order to get a map that consists of WifiConfiguration and a list of
ScanResults, three steps are required.
1) Gets a map that consists of FQDN(Fully Qualified Domain Name) of
a matching Passpoint profile and a list of ScanResults.
2) Gets a list of WifiConfigurations for Passpoint profiles matched a
provided list of FQDN.
3) Creates a new map that consists of WifiConfiguration and a list of
ScanResult.
Bug: 119514793
Test: ./frameworks/base/wifi/tests/runtests.sh
Test: tested with R1 AP for installing profile and R2 AP for connection
Change-Id: I0d56dbdddae4e365b909b9c8f3eff3b0121dc5de
Signed-off-by: Ecco Park <eccopark@google.com>
According to Android API council we shouldn't add a new semantic-action
flag to mark an action as contextual. Instead we should use a boolean
flag.
This CL adds that boolean flag.
Bug: 120842160
Test: build and run Notify app (in
vendor/google_experimental/users/cinek/), and ensure smart actions are
showing when the 'No Smart Actions' chooser is changed to
'Short Smart Actions'.
Change-Id: I5fc6dfa37ab28e3f29529cb6fda99c049783eb80
This CL makes MediaController.PlaybackInfo implement Parcelable, and
replaces ParcelableVolumeInfo with the class.
Bug: 122243794
Test: make update-api -j; make -j;
Change-Id: I89d3df721a43e8c1454dbb3bdcb0b34c943339ce
The frequency will be used for fast group connection and Wifi p2p metrics.
Bug: 119998319
Test: manuall test
* check this value in metrics dump
Change-Id: I5e153d3b022b2d27ddabf5f0fb43f499aeec924a
Entries from DownloadProvider are added to MediaStore Downloads
collection. COLUMN_MEDIASTORE_URI will be used to track corresponding
entries in MediaProvider. We can't re-use COLUMN_MEDIAPROVIDER_URI
for this purpose because it is updateable by apps.
Bug: 120876251
Test: atest DownloadProviderTests
Test: atest cts/tests/app/src/android/app/cts/DownloadManagerTest.java
Test: atest MediaProviderTests
Test: atest cts/tests/tests/provider/src/android/provider/cts/MediaStore*
Change-Id: Ifd252c54f4ee739a31be2866896efac6696a088e
The new isolated storage model we're building in Q introduces new
strongly-typed media permissions which replace the broad "Storage"
runtime permission.
That legacy "Storage" permission is marked as being "removed", and
it also splits into the new media permissions, but apps are confused
when they request the "Storage" permission, which no longer appears
as granted when the user accepts the new split media permissions.
After discussing with the permissions team, the best short-term
solution is to add special-case logic that grants the legacy
permissions when *any* of the new media permissions have also been
granted. Only when the user revokes *all* of the new media
permissions is the legacy permission then revoked. (MediaProvider
is already internally filtering the relevant content based on what
new media permissions the caller holds.)
Bug: 121227859
Test: manual
Change-Id: Ic87f7f93a816e91f7189509386255a260378c255
The "delete" operation is immediate and permanent, and users may wish
to instead mark content as being "trashed", so they can recover
accidentally trashed items before they're permanently deleted.
The default trash timeout is 48 hours, which should be enough time
to recover items the user cares about. Apps can also use a custom
timeout if desired.
This is implemented by recording an "expiration" time for trashed
items, and deleting expired items during the next idle maintenance
pass. Also use this expiration time to clean up pending items that
haven't been published; by default apps have a day to publish
pending items.
Bug: 121227045
Test: atest MediaProviderTests
Test: atest cts/tests/tests/provider/src/android/provider/cts/MediaStore*
Change-Id: I2e371b308dc135ad5363709a6f5385e4456bcb96
The manifest permission usage info declarations are limited in what they
allow the applications to specify. Applications can have an activity for
that handles this intent in order to provide free form application
specific details such as privacy policies, specific examples, etc.
Test: API definition, usage will follow
Bug: 111207567
Change-Id: I90b292e4c1cb8847a9a9d7b8071aaff2ee7d11fb