- Annotate everything with @NonNull, @Nullable
- Annotate a few @IntRange
- Annotate a few @IntDef
- Most metadata enums probably canont be annotated usefully,
since get/set() are generic and the annotation system
can't yet manage that.
- Plus metadata annotations need to be auto-generated anyway
- Also add explicit null check to prepare's surface argument
- Also update docs of getCameraCharacteristics to match reality
Bug: 21029463
Change-Id: Ifd81b2a782e29ad069fe25c7db4a1fda73dabcd7
This moves the non-public API classes backing Android Keystore from
android.security to android.security.keystore, a package specially
created for Android Keystore.
Bug: 18088752
Change-Id: Ibf04d6a26c54d310b0501fc5e34f37b1176324ad
Rename reprocessible to reprocessable and OPAQUE reprocessing to
PRIVATE reprocessing. Also fix a few broken links in reprocessing
APIs.
Bug: 21044522
Change-Id: I155b62d8743b036bd4b46f0da87749ce4e20b467
* Introduce a new "charger only" mode. In this mode, MTP is disabled,
and no file transfers can occur.
* Make charger only mode the default.
* Modify "persist.sys.usb.config" so it now only holds the adb status.
* Make the USB settings non-persistent. Unplugging the USB connection will
reset the device back to "charger only" mode.
* Fixup wording per UI guidelines.
TODO: Re-implement MDM restrictions for USB / MTP access controls.
Bug: 18905620
Change-Id: I99a50d9132a81e98187f431166fd9fef4d437e4f
Knowledge of the various modes of a display is now available to apps, and they can request a specific mode for their windows.
b/18241736
Change-Id: I8eb16ff713e878512faca3ca6662254f08a9be7f
(cherry picked from commit 5c7773d864)
Add the guaranteed stream configurations for creating
reprocessible capture sessions to the docs.
Bug: 20263562
Change-Id: Id46d6ec8ebe7a5fe7edcb7c15325c6b53f1bc589
Allow mixing regular and reprocess requests in burst requests.
Create RequestLastFrameNumbersHolder to store the last regular
frame number and the last reprocess frame number in a capture
request list which can be used to determine if the capture
sequence is completed.
Bug: 20537735
Change-Id: I0880f8c845380e1c7ffe504225a556829dfeccf6
- Update documentation for new arbitration behavior.
- Ensure an appropriate error is thrown when calling
open while an existing, higher-priority user holds
the camera device.
Bug: 19186859
Change-Id: I486193c14b7fd5dc6ce30c1b7471669c009d64b3
FingerprintManager internally creates a Handler which needs to be
bound to a Looper thread. Prior to this CL the Handler was bound to
the Looper of the current thread. This caused issues:
* Different instances of FingerprintManager could be bound to
different Looper threads.
* Callbacks from FingerprintManager were invoked on arbitrary
threads (or not at all if the Looper was there but wasn't running).
* FingerprintManager couldn't be obtained by apps on most non-main
threads leading to java.lang.RuntimeException: Can't create handler
inside thread that has not called Looper.prepare().
This CL fixes the issue by binding the FingerprintManager's Handler to
the Looper running on the main thread.
Bug: 20725228
Change-Id: I4a0382d6e11df9f23b8db9f0deec77369af31b5e
Write samples of the old and new state to the binary event log whenever
the user modifies the auto-brightness adjustment. We wait a few seconds
before logging to ensure that the user is satisfied with the adjustment.
Bug: 19786916
Change-Id: I41402decd1034d0839aa0f47495bc00907ab9c08
- Works around HAL issues where preview must be
explicitely stopped after takePicture call before
the surface can be reset.
Bug: 20553124
Change-Id: I403d8c09dfee0cd192d4831376f9f8ed3d6ba444