1156 Commits

Author SHA1 Message Date
Sergey Poromov
d3665f1f0f Merge "Introduce BackupManager#requestBackup & BackupObserver API" 2016-01-21 18:55:28 +00:00
Sergey Poromov
fe06bf64d2 Introduce BackupManager#requestBackup & BackupObserver API
Introduces a way to request immediate backup for list of packages
and receive callbacks on backup progress.

Bug: 25688526
Change-Id: Ib826933d44f4ebf2b981f8be366215b2d37847e2
2016-01-21 19:15:33 +01:00
Rubin Xu
900fe2410d Merge "Add JNI bridge to the new logd security buffer." 2016-01-19 23:31:32 +00:00
Yao Chen
9941ab3cbb Merge "Changes in DeviceIdlecontroller and JobScheduler to support Auto GarageMode." 2016-01-15 20:09:11 +00:00
Yao Chen
ca5edbb6b5 Changes in DeviceIdlecontroller and JobScheduler to support Auto GarageMode.
Changes made in the cl:
1. Let DeviceIdleController take listeners on whether background
maintanence services are active. This currently includes JobScheduler,
SyncManager, DownloadService. Note this is the last known
states reported by these services.

2. In JobScheduler, make the idle threshold and alarm window configurable.
So in the car case, we don't need to wait 71 mins after screen off
to kick off any jobs that require device idle.

-------------------------------------------------------------------

* We are not going to suppress JobScheduler, DownloadService, SyncManager
entirely while user is driving. Because apps may not be working properly if
these services are suspended.

* The jobs that we don't allow to run while driving are the
jobs submitted to JobScheduler that require device idle.
And this is already taken care of, because
screen is ON and JobScheduler will not consider the device to be idle
while driving (unless user turns off the head unit).

* We will need to give the JobScheduler a chance to run the device idle
jobs when car is turned off. This is the scope of GarageMode. If
DownloadService and SyncManager want to run, we will allow them to run
too.

* The headunit is treated as wall power device, so it's always charging.
The charging state will not toggle.

Change-Id: I55b92cf92efd61c48dd6c9b8197c2b68078a4439
2016-01-15 12:06:30 -08:00
Rubin Xu
75431fbe36 Add JNI bridge to the new logd security buffer.
Bug: 26127031
Bug: 22860162
Change-Id: I14e08850ece7d9c0229b7213ee2e25cd089defc1
2016-01-15 17:18:49 +00:00
Etan Cohen
3da7357951 Merge "NAN: baseline NAN manager for discovery." into mm-wireless-dev
am: e540b64aaf

* commit 'e540b64aaf58460f7930a5e4937cee660215c948':
  NAN: baseline NAN manager for discovery.
2016-01-15 01:29:48 +00:00
Etan Cohen
20d329b08d NAN: baseline NAN manager for discovery.
Initial framework for user API (all @hide for now). Supports:
- NAN configuration
- Publish/Subscribe = Discovery
- Message passing
- Notifications

Bug: 26216681
Change-Id: I72e467756a02f7b80c52fae916b9a47c8174af42
2016-01-14 11:34:07 -08:00
Pavel Zhamaitsiak
14ef09514b Add ITelephonyDebug.aidl
(cherry picked from commit f91818ca3458f9c1f1d6b6d278f8d6cc2fc14511)

Change-Id: Ie3c846a90632e3afa793e6e60f5a3390a260c5a5
2016-01-13 15:09:16 -08:00
Samuel Tan
01208118b3 resolve merge conflicts of 3caecaec60 to master.
Change-Id: Ic3e9909c69f03a6ef1911a6b7589afbc02d7494f
2016-01-13 13:42:00 -08:00
Dongwon Kang
ab064b3b36 Merge "Add a way for SystemUI to receive media resource (e.g. A/V codec) usage" 2016-01-13 18:21:00 +00:00
Jean-Michel Trivi
d3c71f075b Audio recording notification API
AudioService can register a recording callback with AudioSystem.
Callbacks are handled in a new class, RecordingActivityMonitor.
This class notifies registered AudioManager instances
  of updates, only if this AudioManager has client callbacks.
Each AudioManager dispatches updates to its registered
  callbacks.

Bug 22876530

Change-Id: I95c6e5ec0631e53af53a490bcecca96089490089
2016-01-12 16:10:42 -08:00
Samuel Tan
239951a91e Remove PersistableBundle.aidl from Java framework
Remove PersistableBundle.aidl from the Java framework, since it
has been moved to the native libbinder.

BUG: 26292234
Change-Id: Ia3dc49a3ad92f4c579e6dff0606c1db8fb3be76b
TEST: aosp_arm builds successfully.
2016-01-12 14:43:32 -08:00
Dongwon Kang
2034a4c4c5 Add a way for SystemUI to receive media resource (e.g. A/V codec) usage
Bug: 26175834
Change-Id: If506a533c5c7b567e770217a9430bf68b539677a
2016-01-12 10:54:34 -08:00
Jorim Jaggi
a6c934e2a3 Use different asset when docked stack exists
- Add the ability to add a listener when the existence of the
docked stack changes.
- Register SystemUI as such a listener and switch the recents
button asset when docked stack exists.

Change-Id: I05350878c5adc7ad9f0399f0c42d8d1615d44d02
2016-01-05 13:49:41 +01:00
Pavel Zhamaitsiak
f91818ca34 Add ITelephonyDebug.aidl
Change-Id: I0f111a56b471bd8c8092d30e7157bc06b5da3769
2016-01-04 15:54:31 -08:00
Chris Wren
51017d0e23 implement assistant service connection
Added a guest-mode to ManagedServices.
Like system services, the lifecycle of a guest is not managed.
Unlike system services, guests are not considered privledged.

The Assistant gets all the usual listener events.
Implemented adjustImportance.
Future work: enqueued, clicked, visibility, removed, annotations

Bug: 22455414
Change-Id: Ic41c0bf625b5e98cb577b49098bba23a539bb507
2016-01-04 11:22:37 -05:00
Narayan Kamath
a70412b206 Use libcore/known_oj_tags for the javadoc stage.
Helps us process (and discard) OpenJdk specific javadoc tags.

(cherry picked from commit 2c4f2843f4aa904c27dc78086bff039dbd295959)

Change-Id: Ib90ce70509fefa24608067db18cfc21c6c5d0590
2015-12-22 13:10:55 +00:00
Piotr Jastrzebski
62ed63185c Add core-oj to the list of core library jars.
With some core classes moved to separate core-oj jar
we need to use the new jar.

(cherry picked from commit cfa292e1dad184648bf673167f3f35b4fb34fc93)

Change-Id: Iba481c3df029902a2bd0f9661d0819f4a191b2aa
2015-12-22 13:10:55 +00:00
Philip P. Moltmann
bb9f686b40 Allow a print service to specify per printer icons, description and
info-activities

The icon is loaded from the discovery session only when it is displayed
to avoid having to store too many icons in memory.

Also the icons are not maintained in the historical printers. Only if
the printers are available nice icons are shown. A historical printer is
updated with the appropriate properties (including icon) once it becomes
available.

Bug: 24135005
Change-Id: Iec389bab514b024634be8fb5fc8928371cba8740
2015-12-21 09:54:57 -08:00
Julia Reynolds
1ac1e3104c Merge "Aidl it all!" 2015-12-17 19:15:30 +00:00
Vladislav Kaznacheev
9149d2b117 Rename and simplify DropPermissionHolder
Rename DropPermissionHolder to DropPermissions and move
all server-side implementation details into a separate class.
Rename DragEvent.getDropPermissionHolder to
requestDropPermissions and make it take the permissions
implicitly.

Change-Id: Ia83f7cb8af07ce13ba9536d24b0f9d63331d8736
2015-12-16 17:10:36 -08:00
Julia Reynolds
7eba593b8d Aidl it all!
Change-Id: Ic12e2305a947749a714102a8133321ae07599950
2015-12-16 10:16:23 -05:00
Christopher Tate
4aa47e58c4 DO NOT MERGE Introduce direct listener API for alarm delivery
The Alarm Manager now supports a set() variant that takes a listener
callback to invoke at alarm trigger time rather than a PendingIntent.
This is much lower overhead and has guaranteed low delivery latency
from the trigger time.  The tradeoff is that the app must be running
*continuously* from the time the alarm is set to the time it is
delivered.  If the app exits for any reason before the alarm fires,
the listener becomes invalid and the alarm will be dropped.  This is
more or less equivalent to setting an alarm with a broadcast
PendingIntent that matches only a runtime-registered receiver.

The app's alarm listener can be any object that implements the new
AlarmManager.OnAlarmListener interface and implements its onAlarm()
method.  There is no data delivered at alarm trigger time: whatever
state needs to be associated with the specific alarm instance should
simply be packaged inside the OnAlarmListener instance.

An alarm using OnAlarmListener can request that the onAlarm() method
be called on an arbitrary handler.  If the program passes 'null' for
this parameter when setting the alarm, the callback occurs on the
application's main Looper thread.

Cherry-picked from 14a7bb0d370fffdf902a4e2345f46754ed2d7684
Bug 20157436

Change-Id: I2eb030a24efdd466a2eee1666c5231201b43684b
2015-12-10 16:06:50 -08:00
Jan Nordqvist
255d41dce1 DO NOT MERGE Hotspot 2.0 relase 2 first cut.
CP mods to take a URL as a parameter, and new ScanInfo object.

Cherry-picked from 52eb29f0822f129f2b14bacec23dd492f2260ac0
Change-Id: Idbb2d4751c575ba07a56942771e2b2955b624635
2015-12-10 16:06:50 -08:00
George Mount
9f93d375ce Remove accidentally left-in commented out line. am: 8e6fc083fe
am: 827902553d

* commit '827902553d2642a3ed82553e1e5b6214960c3986':
  Remove accidentally left-in commented out line.
2015-12-04 10:15:08 -08:00
George Mount
8e6fc083fe Remove accidentally left-in commented out line.
Change-Id: Ic49b371a5138591051cd10e302e27535b165b2b3
2015-12-03 10:53:15 -08:00
George Mount
e1abaa631e Adds a way to exclude test directories from javadoc. am: f6be993407
am: c26d7c378a

* commit 'c26d7c378a58f4f312b8385baf4d318c2df35478':
  Adds a way to exclude test directories from javadoc.
2015-12-03 18:38:48 +00:00
George Mount
f6be993407 Adds a way to exclude test directories from javadoc.
By adding a file named NO_DOCS to a directory, all
java files under that directory will be ignored for
javadoc builds. This is especially useful for marking
test projects as not participating in the javadoc
build.

Change-Id: I3b0259f4bb3c8460c3560fdcf97c6cac11d8001d
2015-12-03 10:12:52 -08:00
Filip Gruszczynski
64cdc1458b Remove dock divider surface when it's not visible.
We achieve the removal by notifying System UI about the visibility of
the dock divider. This way System UI can change visibility of the root
view, which in turn will cause the WMS to destroy or create the surface
as necessary.

Bug: 25844096
Bug: 25683717

Change-Id: Idbc33368db697a059af49106dfadb80c3d7d06c1
2015-11-30 15:21:48 -08:00
Michael Wright
b2b2c0e7d0 Add new TestApi annotation.
This allows us to build a special jar with methods exposed strictly
for CTS. An @TestApi should not be a public API or a system
API.

Bug: 25608286

Change-Id: Ifbc64bb6958d2deec5b9cf0b944acfd068f0f051
2015-11-25 13:01:03 +00:00
Jean-Michel Trivi
d4de20df2a AudioService: remove dead code
Remove dead code related to media button event receiver and
  remote control display, now handled by MediaSession*

Change-Id: I4bd621240ddddf4df079df8d551c72b232c3301d
2015-11-23 23:16:04 +00:00
Narayan Kamath
2c4f2843f4 Use libcore/known_oj_tags for the javadoc stage.
Helps us process (and discard) OpenJdk specific javadoc tags.

(cherry-picked from e03d5e477b47e4ac8e227d649afd4ffe89f23712)

Change-Id: I35287e9b56c148eb6cd8f37d7df81920d0d8a3bb
2015-11-21 14:50:58 +00:00
Piotr Jastrzebski
cfa292e1da Add core-oj to the list of core library jars.
With some core classes moved to separate core-oj jar
we need to use the new jar.

(cherry-picked from f898cda2f499b14f92bc7fb75f44110cdec7654f)

Change-Id: Ica148f11bcc77f57d22944ff78c501611a293167
2015-11-20 14:06:55 +00:00
Jason Monk
ee35d738f4 Merge "Add Quick Settings API" 2015-11-19 20:55:14 +00:00
Jason Monk
bbadff8603 Add Quick Settings API
It is a little bit limited right now, but it contains
the lifecycle of a tile getting added/removed, and
listening/not listening and clicks.

SysUI side will need some cleanup later on.

Change-Id: I4db803c8a271f8bf44f2ef710517969a84a95cf0
2015-11-19 14:57:11 -05:00
Todd Kennedy
b8a279ee83 Allow ephemeral provider/installer
The ephemeral provider is a service that simply determines whether or
not an ephemeral application is available. The ephemeral installer
does the heavy lifting of installing the ephemeral application.

Bug: 25119046
Change-Id: I591f4c2c3f2b149d299fa8b4f359f2582d9199cb
2015-11-19 10:25:53 -08:00
Jorim Jaggi
2f7d292596 Supply app transition specs with a future
Because we retain activity surfaces now, the app transition specs
which were calculated/generated after the onPause() call when going
from recents -> app were too slow. Instead, supply a cross-process
future, which gets fetched when the window manager is about to be
ready to execute the app transition. In practice, this still gets
executed immediately after the onPause call.

If we have a retained surface, this adds some latency, but since we
absolutely need the specs to execute the transition, we have that
latency no matter where exactly we generate the specs.

If we don't have a retained surface, the specs are not calculated on
the critical path, so it's faster.

Bug: 19940527
Change-Id: I80d2c6f6b3a6568a70339619ecefbc3bd8409bd8
2015-11-06 16:12:59 +01:00
Glenn Kasten
bd32753700 Merge "BLE-MIDI: change binding for BluetoothMidiService"
am: 5831944a6e

* commit '5831944a6e99eff746e70d6ee9532ec3e3f32918':
  BLE-MIDI: change binding for BluetoothMidiService
2015-11-02 23:04:42 +00:00
Phil Burk
ff23e1b4cb BLE-MIDI: change binding for BluetoothMidiService
Add a remote call addBluetoothDevice() using AIDL.
This was needed because onBind() is only called once.

Bug: 23219556
Bug: 23760886
Change-Id: Id7554ca55d596352d11dbd6ae3e403138a29c864
Signed-off-by: Phil Burk <philburk@google.com>
(cherry picked from commit 7cd06c0b9e087a555d2c5dd4cab5b7eac8497526)
2015-11-02 13:31:29 -08:00
Christopher Tate
14a7bb0d37 Introduce direct listener API for alarm delivery
The Alarm Manager now supports a set() variant that takes a listener
callback to invoke at alarm trigger time rather than a PendingIntent.
This is much lower overhead and has guaranteed low delivery latency
from the trigger time.  The tradeoff is that the app must be running
*continuously* from the time the alarm is set to the time it is
delivered.  If the app exits for any reason before the alarm fires,
the listener becomes invalid and the alarm will be dropped.  This is
more or less equivalent to setting an alarm with a broadcast
PendingIntent that matches only a runtime-registered receiver.

The app's alarm listener can be any object that implements the new
AlarmManager.OnAlarmListener interface and implements its onAlarm()
method.  There is no data delivered at alarm trigger time: whatever
state needs to be associated with the specific alarm instance should
simply be packaged inside the OnAlarmListener instance.

An alarm using OnAlarmListener can request that the onAlarm() method
be called on an arbitrary handler.  If the program passes 'null' for
this parameter when setting the alarm, the callback occurs on the
application's main Looper thread.

Bug 20157436

Change-Id: I2eb030a24efdd466a2eee1666c5231201b43684b
2015-10-30 12:14:15 -07:00
Bryce Lee
bc8654748f Merge "Revert "Declare new interface for headset client bluetooth profile to query."" into cw-e-dev am: 0a80294c81 am: 2adf45bee0
am: 8faa19c826

* commit '8faa19c8260d77c5ad7abc061bc06bc596be7c2b':
  Revert "Declare new interface for headset client bluetooth profile to query."
2015-10-29 18:17:41 +00:00
Bryce Lee
461ba0ce4a Merge "Declare new interface for headset client bluetooth profile to query." into cw-e-dev am: a841973dee am: 8b4f21b108
am: 2b47b6eed2

* commit '2b47b6eed247acc95a2d27980b2d20e43c852946':
  Declare new interface for headset client bluetooth profile to query.
2015-10-29 18:15:23 +00:00
Bryce Lee
8faa19c826 Merge "Revert "Declare new interface for headset client bluetooth profile to query."" into cw-e-dev am: 0a80294c81
am: 2adf45bee0

* commit '2adf45bee0b423fa6ca758b806a16b968c0a3c65':
  Revert "Declare new interface for headset client bluetooth profile to query."
2015-10-29 05:19:19 +00:00
Bryce Lee
70d4210e2e Revert "Declare new interface for headset client bluetooth profile to query."
This reverts commit 694251eaaa8ea70a9b0427d55e9ede437c83a6d5.

Change-Id: I588206d8aedb96254c27494dddb32ddc3b6ea0ea
2015-10-29 04:58:38 +00:00
Bryce Lee
2b47b6eed2 Merge "Declare new interface for headset client bluetooth profile to query." into cw-e-dev am: a841973dee
am: 8b4f21b108

* commit '8b4f21b108828c08833767c1f3f908e1cd7f8477':
  Declare new interface for headset client bluetooth profile to query.
2015-10-29 04:53:01 +00:00
Bryce Lee
694251eaaa Declare new interface for headset client bluetooth profile to query.
This is needed in order to allow implementations of the HFP HF side to
define when audio can be routed to the device. This allows for calls dialed
from an AG to be kept on the AG if desired.

Bug: 25332357
Change-Id: I35a554cfc53f88c7dd3059bf52df5c69df9c7415
2015-10-28 21:06:27 -07:00
Neil Fuller
108d04cccf Merge "Adjust for changes to libcore/Docs.mk" am: f5e3398596 am: c08debc23a
am: 144af426cd

* commit '144af426cde3ce336ed9f670ae596807a14ab809':
  Adjust for changes to libcore/Docs.mk
2015-10-26 10:24:00 +00:00
Neil Fuller
144af426cd Merge "Adjust for changes to libcore/Docs.mk" am: f5e3398596
am: c08debc23a

* commit 'c08debc23ab0dfa38cab168f4c631b15b2b17d64':
  Adjust for changes to libcore/Docs.mk
2015-10-26 10:17:55 +00:00
Neil Fuller
c08debc23a Merge "Adjust for changes to libcore/Docs.mk"
am: f5e3398596

* commit 'f5e33985964c3e7acf6b9cd16d94a110e4f9a42d':
  Adjust for changes to libcore/Docs.mk
2015-10-26 10:11:23 +00:00