We're starting to see more instances of device features that will
increment separately from the SDK API level, such as camera HAL,
GPU capabilities, Bluetooth, and other hardware standards.
This change adds the ability for device features to specify a
version, which is defined to be backwards compatible. That is, apps
requesting an older version of a feature must continue working on
devices with a newer version of that same feature.
When a version is undefined, we assume the default version "0".
Bug: 27162500
Change-Id: If890bf3f3dbb715e8feb80e7059a0d65618482ea
According to the documentation, getStreamTypes() must return all streamable
MIME types. This CL takes the MIME types from COLUMN_MIME_TYPE as long as
the document is not virtual.
If the provider implements converters, then it should override
getDocumentStreamTypes.
Bug: 27156282
Change-Id: I9ab149e097600a470fc9be8f1270f68929fdf851
Allow launcher to see and attempt to launch non-crypto
aware application when profile is locked.
Hide unlock notification until parent user is unlocked.
Have unlock notitication use confirm credentials to unlock
the profile.
Updated notification strings as per suggestions in mocks
to make it clearer between users and profiles.
Bug: 27038260
Change-Id: If2d2c8148670d814544f4edd44193d15da32a289
Currently there is an internal hidden class named
ControlledInputConnectionWrapper which works as a proxy in the
application process to receive incoming binder calls from input method
and dispatch those method calls again on an appropriate thread.
Although this is a kind of implementation details, basically you can see
the same design everywhere in the Android.
Currently ControlledInputConnectionWrapper is initialized with
view.getHandler(), where the view here is the View which was used to
call View#onCreateInputConnection(). This is actually a reasonable
behavior because we have generally assumed that there the only
reasonable way to implement InputConnection is to extend
BaseInputConnection, which is designed to be able to work only on the
UI-thread associated with the target view.
However, on Android N and onward, we are going to ensure that
BaseInputConnection can be re-implemented on top of public APIs [1].
Although most of applications should not try to do that, for certain
applications such as web browsers and WebView it may make sense to let
custom InputConnection implementation run with a custom Handler so that
the application can respond to the IME without blocking the UI thread.
To do that, this CL introduces a new method
InputConnection#getHandler(), which changes nothing as long as it
returns null, but if it returns non-null Handler, InputMethodManager
will use it to initialize ControlledInputConnectionWrapper.
Note that InputConnection#getHandler() is not for IME developers.
It just returns null when called in the IME process.
[1] See Bug 24688781 for details.
Bug: 26945674
Change-Id: Id9e579bb3e2966986cdcb1c34bc8cacfeca2e1a9
Also clarify the expected behaviors when an error has occurred in a
recording session.
Bug: 27110861
Change-Id: I811197e45ea94b1b0e151d534a1f030a84b89d10
You can now associate an arbitrary Bundle of extras with a job,
as long as the job is not persisted.
Also implement deep-copy of Bundle.
Change-Id: I7890d627492b664d9b1f039e8cb82f8868de7be3
Removed classes come from openJdk 1.7 and were never
implemented before. We lack a testing suite to verify that
they are working correctly. Those clasess might by
re-added in further releases
Bug: 27117463
Change-Id: Ia7554a9182507b9fa1c1b6db9573ab68cb641f36
(cherry picked from commit 5fbc42d6a2)
Follow up for c343177bba,
forgot to update api/text-current.txt
Bug: 27117463
Change-Id: I4d3f26f60f880f9219f726b6ba7dffff9ebeae38
(cherry picked from commit c27649f25e)
It's protected, as it was before openJdk switch. Added
hidden public method getFD$ for tests.
Bug: 26689841
Change-Id: I18f53356a108c1f7e0525c6f2f8130eac173e81e
(cherry picked from commit ce41c4ee22)
This method shouldn't be public + can be replaced by
the #getAddress method
Bug: 26689841
Change-Id: Ic0f9e0b03979d141c5648772ad94ba2c651ba6e7
(cherry picked from commit 1f3148c27d)
Clients of the NetworkStatsManager public APIs may get UIDs belonging
to other users, and UIDs which don't actually represent applications.
These APIs allow clients to understand whether a given ID belongs to
the same user as themselves, and whether an ID represents an
application or something else (e.g. a system UID).
Change-Id: Ia56d5891521ce98e5594c41da8f9d756819deb66