f22cf3df132f50e7f949b0e6a90ec01acf8328f2
Using an implicit intent at the moment of picture-taking
usually goes unnoticed. But immediately after installing a
new camera, this behavior becomes incredibly frustrating to
users as they are presented with a puzzling resolver dialog
(or in the case of the secure camera, the authenticator).
And if, at this moment, the user chooses to make one of the
options a default, it's almost impossible to figure out how
to change this setting.
As a result, many OEMs simply hardcode the camera gesture to
launch a specific preinstalled camera, but this is poorly
supported by AOSP, leading to duplicate implementations and
bugs. This patch routes all camera intents in System UI
through a single utility class, creating a convenient spot
to insert a resource that contains the OEM's default
preinstalled camera app.
Note that this does not affect implicit intent resolution in
any way; any app may create a chooser for, e.g.,
MediaStore.INTENT_ACTION_STILL_IMAGE_CAMERA and allow the
user to pick from the available cameras.
Bugreport/dumpsys output to look for:
$ adb shell dumpsys activity service com.android.systemui | grep -C3 'Camera gesture' | tail -3
Camera gesture intents:
Insecure camera: Intent { act=android.media.action.STILL_IMAGE_CAMERA }
Secure camera: Intent { act=android.media.action.STILL_IMAGE_CAMERA_SECURE flg=0x800000 }
Override package: null
Bug: 171807357
Fixes: 154218868
Test: atest SystemUITests
Change-Id: I2c0033e52c8a3963768d29f2e76e555d405aaa7e
…
…
…
…
…
…
…
Merge "Keystore 2.0: Update to canonical service name." am:
5fdf93fc9d am: 615236ca66 am: d99097637f
…
…
…
…
…
…
…
…
…
Merge "Remove NetworkPolicyManager.isUidBlocked() API." am:
9cff99d059 am: 433c866186 am: 4b3348f115
…
…
Merge "Merge "split packagemanager_aidl from libbinder_aidl" am:
1f4ac9e0aa am: c644182c1e" into rvc-qpr-dev-plus-aosp am: 684c42187b
…
…
…
Merge "Use framework-annotation-libs for hwbinder-stubs-docs" am:
35f70208f8 am: b4f0aacecd am: ad8bcb3ac6
Description
No description provided
Languages
Java
73.7%
Kotlin
14%
PowerBuilder
5.8%
C++
5.2%
AIDL
1%