Defines a new PackageInstaller class that will be used for installing
and upgrading packages. An application desiring to install an
application creates a session, stages one or more package files in
that session, and then kicks off the install.
Previously, PackageManager would always make its own copy of a package
before inspecting it, to ensure the data could be trusted. This new
session concept allows the installer to write package data directly to
its final resting place on disk, reducing disk I/O and footprint
requirements. Writes are directed through an intermediate pipe
to ensure we can prevent mutations once an install has been initiated.
Also uses fallocate() internally to support optimal ext4 block
allocation using extents to reduce fragmentation.
Sessions are also the way we support installing multiple "split" APKs
in a single atomic operation. For a set of packages to form a valid
application, they must have exactly the same package name, version
code, and certificates. A session can also be used to add a small
handful of splits to an application by inheriting existing packages
when not performing a full install.
Add PackageParser support for extracting split names and certificates.
Bug: 14975160
Change-Id: I23d1bf4fbeb9f99a8c83be0c458900a0f0d1bccc
It's better not to cancel display lists updates. In the emulator, if we use
low precision clock source like refined-jiffies, the display list which
should be updated with a new frame, won't be updated due to the delta time
is 0 . And this makes all the hardware accelerated GUI out of order.
Change-Id: I41dba8965c96b6ad1b6d326ad1d6fa4a0a49173f
Signed-off-by: Tina Zhang <tina.zhang@intel.com>
Merge management of ortho projection matrix with the viewport size,
since they should always be changed together.
Change-Id: Iccb8f30828f4fb7848999ac54852e7ed2d6f2eb1
Fix a bug where the starting position was not properly updated for the
previous view's measured width.
Bug 14900794
Change-Id: I6064c5353abc83159cd4c7d6ccfce64640735791
In L we're bringing the notion of a device name, which centralizes a
concept that has been used in different part of the system already
(bluetooth and WifiP2p among others)
The settings entry has already been created, but there is no centralized
UI for setting the name yet.
This CL would define the activity action that would have to be
implemented to set the device name.
b/14970370 - Global Device Name
Change-Id: I6876e4ca1ad887fdea1bc88890ddfad547145011
Avoid AOT compilation/initialization in ART failing due to regex.Pattern
requiring native support.
Bug: 14646037
Change-Id: I9d9c7fd9ed9fab7e21d37f9b31c00d037fc5a691
These should have been reverted long ago. Additional cleanup will need
to happen, but this is a good first pass.
Change-Id: I6d3c2919299c0a0b9714ffecd30da68e5c880b6a