When the screen is off, there are no guarantees about when
non-wakeup alarms will be dispatched. Historically they are
dispatched any time the device wakes up. With this change,
we will delay the dispatch until sometime later.
The amount of delay is determined by how long the screen has
been off. Currently there are three possible delays: up to
2 minutes if the screen has been off for less than 5 minutes;
up to 15 minutes if it has been off for less than 30 minutes;
and otherwise up to an hour.
When the screen is turned on or a wakeup alarm is dispatched,
all delayed alarms will also be dispatched.
Note that one of the things this delays is TIME_TICK, which
means the in many cases we won't deliver TIME_TICK until the
screen is in the process of waking up. The current
implementation causes this to be delayed until the SCREEN_ON
broadcast is sent; we probably want to improve this to have
the power manager tell the alarm manager about the screen
turning on before it sends that broadcast, to help make sure
things like the lock screen can update their current time
before the screen is actually turned on.
In addition, switch all of the alarm stats to use the new
PendingIntent "tag" identifier for its operations, instead
of the old code to try to construct a pseudo-identifier
by retrieving the raw Intent.
Also add a new package manager command to immediately write
packages.xml.
Change-Id: Id4b14757cccff9cb2c6b36de994de38163abf615
Kwd changed the name of WifiHotspotService to PasspointService; and
the reference to the name was moved in master. Merge ended up picking
up incorrect name WifiPasspointService. This change fixes that.
Bug: 15106138
Change-Id: Ib6d8aee53db39314a9d98abcbd8e0863210de1bb
This will be re-added as a Trustlet in a subsequent CL.
This reverts commit 38a7ed05f8fed0aa81f7214d827875f9876ffbe1.
Change-Id: I5aa36df42a7751f165b4ef184e0cda57e5568b59
RemoteInputs annotate actions and content intents to request
input from the user as part of an intent being sent. Results
are sent along using ClipData to avoid unparcel of developer
provided bundle values. A helper method is expexted to be used
to extract results.
Grouping allows notifications to be bundled together, with an optional
summary notification for display on older platforms. SortKey is an
important part of grouping since child notifications will likely have
a prescribed ordering. It is also useful in top level notifications
for apps that want to provide an ordering all other fields being equal.
Also provide a fluid way to to extend Actions and Notifications
using Extenders, e.g.:
Notification n = new NotificationCompat.Builder(context)
.setOption1()
.apply(new SomeExtender()
.setOption2())
.build();
This helps extension libraries provide a nice API experience for devs.
Change-Id: Ib3438ef854772c2c34d21bf1eb4ed7c9e032106f
Make the system refuse to show system navigation bar when immersive
mode is on before finishing setup.
Change-Id: Id6383e13bdb7e4c4b93b2fbaf83c154c387af694
FUL used to show on the notification shade when returning from
something that was occluding keyguard such as navigation or
secure camera. This fix makes FUL only display on the bouncer,
never on the notification shade.
Change-Id: I6b6dc1453a167161330132c1e2703c296050bf0e
Some Factories come and go (Telephony) and so they need to be able to unregister.
Also, debugging is tough when the factories are anonymous, so add names for logging.
Lastly, only send single set of NetworkRequests to a newly registered NetworkFactory
and only send the requests.
Change-Id: I717d63363f25c446f8ecf38d933b1a35d744af6e