OSDN Git Service

Better service management for QS 3rd party tiles
authorJason Monk <jmonk@google.com>
Mon, 21 Dec 2015 13:50:01 +0000 (08:50 -0500)
committerJason Monk <jmonk@google.com>
Mon, 4 Jan 2016 19:46:11 +0000 (14:46 -0500)
commitd5a204f16e7c71ffdbc6c8307a4134dcc1efd60d
tree1279c5e19d81ad210e6a320a59f8bc698da33395
parent56a99538193c66fb8abe07c5adb3bb46fde919e1
Better service management for QS 3rd party tiles

Better wrapper around the service that will handle rebinding
when it dies, binding when it becomes available, and forwarding
along all messages to the service once it binds.

Also better handling of too many services at a time.  Will only
ever bind to at most 3 tiles and will manage which ones are most
important to show based on pending clicks, last update, etc.

Change-Id: I5f4da0bc751f7eb25baa32e5c0bb9f1bc418f5bb
17 files changed:
core/java/android/service/quicksettings/TileService.java
core/java/com/android/internal/logging/MetricsLogger.java
core/res/AndroidManifest.xml
packages/SystemUI/src/com/android/systemui/qs/QSTileServiceWrapper.java [deleted file]
packages/SystemUI/src/com/android/systemui/qs/customize/CustomQSPanel.java
packages/SystemUI/src/com/android/systemui/qs/customize/TileAdapter.java
packages/SystemUI/src/com/android/systemui/qs/external/CustomTile.java [moved from packages/SystemUI/src/com/android/systemui/qs/tiles/CustomTile.java with 71% similarity]
packages/SystemUI/src/com/android/systemui/qs/external/QSTileServiceWrapper.java [new file with mode: 0644]
packages/SystemUI/src/com/android/systemui/qs/external/TileLifecycleManager.java [new file with mode: 0644]
packages/SystemUI/src/com/android/systemui/qs/external/TileServiceManager.java [new file with mode: 0644]
packages/SystemUI/src/com/android/systemui/qs/external/TileServices.java [new file with mode: 0644]
packages/SystemUI/src/com/android/systemui/statusbar/phone/QSTileHost.java
packages/SystemUI/src/com/android/systemui/tuner/TunerService.java
packages/SystemUI/tests/AndroidManifest.xml
packages/SystemUI/tests/src/com/android/systemui/qs/external/TileLifecycleManagerTests.java [new file with mode: 0644]
packages/SystemUI/tests/src/com/android/systemui/qs/external/TileServiceManagerTests.java [new file with mode: 0644]
packages/SystemUI/tests/src/com/android/systemui/qs/external/TileServicesTests.java [new file with mode: 0644]