Introduce a fairly general "store byte[] blobs as backup keys" helper, and
use that to integrate with the Notification Manager. The helper provides all
the machinery of managing prior state, compressing the blob on the wire, etc.
Bug 19848954
Bug 20105530
Bug 17755700
Change-Id: I4aa808172244af6db0ab2f4440cc266a797655d7
This means newly created volumes are at least created for other
platform components to start poking with.
Bug: 19993667
Change-Id: I561a5d0e3659ff9146832aeb6a31ab78fd9da580
Send limited broadcast intent when certain volume state changes
occur; the only customer for now is ExternalStorageProvider.
Change notification flow to be less bumpy. Pick USB icon based on
disk type, and avoid using "generic" disk labels.
Bug: 19993667
Change-Id: I263bc9e9aae2ae57eb4d1afe76da686aee5475fb
Since packages can be moved to other volumes, all relevant commands
to installd now require an explicit volume UUID parameter.
Bug: 20275577
Change-Id: Ie84f5bc43c7aada5800b8d71692c7928b42b965e
Adds logic to ExternalStorageProvider to scan non-visible volumes,
such as USB OTG devices. We use internal paths when surfacing these
volumes, which also optimizes around the FUSE daemon for public
devices. Also dumps internal state when requested.
VolumeInfo now directly contains DiskInfo, which means it's
snapshotted when sending events, avoiding teardown races. Switch
notifications to use this DiskInfo directly.
Finish wiring up new volume state, including helper methods to make
it readable/writable state clearer. Handle disks and volumes with
spaces in their labels.
Bug: 19993667
Change-Id: I5c75e5658a6415976811477aebafee7694bde0f4
This is cleaner and more direct than the reverse of having the disk
publish child volume membership. Rename state constants to match
public API. Add state representing bad removal. Make it clear that
volume flags are related to mounting.
Send new unsupported disk event when we finish scanning an entire
disk and have no meaningful volumes.
Splice disk labels into description when known. Only adoptable
slots are directly visible to apps.
Bug: 19993667
Change-Id: I12fda95be0d82781f70c3d85c039749052dc936b
Currently only one app can write to the SMS provider and it has to
be set as the default SMS app by the user in the UI. The default
SMS app is set by enabling the write SMS app op for it and keeping
this op off for other SMS apps. Hence, this permission does not
guard anything and can be taken out. The API change is fine as if
an app refers to the permission in the manifest as string it will
be ignored and if it was referred in Java the value is statically
compiled in the source.
Change-Id: I1128c3b034e6c7dda4baa051500ac1ef46a53575
The READ_PHONE_STATE permission protects PII information and
is in the Phone group. This change is adding the corrseponding
app op for gating access to the API guarded by READ_POHNE state
which will be used instead as an access control for legacy apps.
Change-Id: I2ff895a5a0e529f26ec0ad706266a30d829268ba
When PackageManager decides that FSTRIM is required at boot, we
can end up in deadlock. Work around this for now by kicking the
requested FSTRIM can down the road for a few seconds until we're
connected to vold.
Bug: 20228019
Change-Id: I47e422e618d99e59aed8a8b79227821a3012eb9f
This fixes several issues that were causing missing events in
enrollment and authentication.
Bug 20271180
Change-Id: Ic1c8ab35145de4d29d60238ef8ee71443a882348
Also removed some legacy bluetooth energy collection
that was never invoked.
Also fixed an issue with Wifi scan power estimation.
Bluetooth energy recording is still disabled as strange results
are still reported.
Change-Id: Iafa37eba285fd933ff221116b14af260e904fa4f
History now records when wifi data activity starts and "ends"
based on the triggers we get from the kernel used to determine
when to collect data. (Basically the same as the current cell
data, but of course when it ends is just an arbitrary x seconds
after the last data traffic.)
Re-arranged the state bits to make room for this data in the
right place and move some other things that make more sense to
have in states2.
Try to improve overflow handling, so when it happens we allow
the various bit states to drop to 0 instead of being stuck
active for an indeterminant amount of time.
Added recording of the points where we decide we want to
retrieve new power stats, giving the reason for doing so.
These are only recorded when full logging is turned on.
Change-Id: Ic5d216960a07e0eb658731cdfba7f49ad3acf67e
b/20127262
This change moves long running operations: such as IO and broadcast receivers registration
to its internal handler. This sets the time to execute GpsLocationProvider ctor() to ~14ms.
A significant improvement from the 285ms reported originally in the bug.
Change-Id: I4ee4183a1afea86117004c0a052957b8bc1e4ce5
This assumes the gesture used to initiate the drag and drop would be a
stylus touch + button press. This enables stylus users to drop an item
by releasing the button, if it was pressed at the beginning of the drag n
drop. Users could still lift the stylus from the screen to end the drop.
Bug: 19621008
Change-Id: I01051f541bedf006480d46e728498a20f153b322
The RecentTaskInfo object returned when getAppTasks#getTaskInfo
is called now contains baseActivity, topActivity, and numActivities.
Bug: 18723935
Change-Id: Ifc0cd68a57ed2c0823c23ac8d27e3b6ea6bc95e2