XXHDPI screens now make up 15% of all Android devices, so developers
should be encouraged to include assets at this density.
Change-Id: I9d845769233a71dd954b5f35246aabb774a1c40d
The package manager now keeps track of per ISA dex-opt state.
There are two important things to keep in mind here :
- dexopt can potentially be very slow. In cases where the target
package hasn't been dexopted yet, this can take multiple seconds
and may cause an ANR in the caller if the context is being
created from the main thread.
- We will need to remove the constraint that dexopt can only be
requested by the system (or root). Apps will implicitly be
requesting dexopt by asking for package contexts with code included.
It's important to note that unlike dalvik, the dexopt stage in ART
isn't optional. ART cannot load classes directly from dex files.
bug: 15313272
Change-Id: I0bd6c323a9c1f62f1c08f6292b7f0f7f08942726
Google play services client libraries construct native paths
using pm.getApplicationInfo().nativeLibraryDir.
This is a temporary workaround until we've switched all code
over to pm.createPackageContext().getApplicationInfo() or
whatever API we decide on to surface correct multi-arch
lib paths.
bug: 16013931
Change-Id: Ib719cf6f31da9a29b76e942cd2e28bda1f19b264
When we're creating a package context for a multi-arch app,
adjust the native library directory to match the bitness of
the process creating the context.
This change also removes apkRoot (which wasn't really being used)
and replaces it with a fully constructed secondary library path.
The secondary library path is a transitional measure until we
can reorganize the system image so that we can use nativeLibraryRoot
for system paths as well (nativeLibraryRootRequiresIsa will then
be true for all packages except for legacy installs).
bug: 16013931
Change-Id: I5ae090334b377b9e087aecf40075fab81b20b132
This provides a directory where apps can cache compiled or optimized
code generated at runtime. The platform will delete all files in
this location on both app and platform upgrade.
Bug: 16187224
Change-Id: I641b21d841c436247f35ff235317e3a4ba520441
PackageManagerService now skips dexopt for split APKs that don't
declare they have code. Also surface more detailed error messages
in logs.
Bug: 14975160
Change-Id: Ie6078dba724815020cee59b7fc52317e88ca097a
Allow split APKs to define activities, services, receivers,
providers, and metadata. However, support for many manifest items
are explicitly omitted.
Only dexopt split APKs that include code.
Bug: 14975160
Change-Id: I2fbf99e2a62328aa2185e5924755af33060282fc
Bug: 16208403
Bug: 15116722
Fixes many of the performance issues in the Camera2 API and
LEGACY mode CPU path, including:
- Only call getParameters/setParameters when the request has changed.
- Cache Request/Result objects.
- Cache object hashes for long-lived CameraMetadata, TypeReference,
and Key objects with frequently used hash methods.
- Switch to Command pattern instead of repeated if/equals calls.
in frequently hit CameraMetadata get/set methods.
- Move string construction for logging behind flags to avoid extra
StringBuilder calls in frequently acquired lock methods.
- Cache results from frequently used JNI calls in object Builders.
Change-Id: I77bc4a023d4fe8bc46efcf771ff18ee268dcb9a9
We need to go back to uninstalling system apps so we can
re-install non-default system applications through Play.
This reverts commit e3dbcd138c07f2d32ac84229d0a49052cc18d424.
Change-Id: I0a7af094614c4a10800971c82e10571f7312e079
- Use the persisted exit condition (and a new
persisted exit component) to immediately resubscribe
to the manual exit condition (if present)
- Fire false immediately for old countdown conditions.
- Add a new zen lens to noman dump, and a bit more info.
- Refresh the current exit condition when reopening the panel.
Bug:15844990
Bug:16212455
Change-Id: I8bfaf1b2a6cf3d8818002a9db5c527ad3aa4c05c
This changes shouldInterceptRequest to take an object containing the
following new parameters: isMainFrame, hasUserGesture, method, headers.
This also lets the embedder specify the following additional properties
of the response: status code, response phrase, headers.
BUG: 7589347
Change-Id: Id922c5e7023eb067db871e6f782f599492a2428f
This CL adjusts the example code in android.net.PSKKeyManager Javadoc
to no longer explicitly enable TLS-PSK cipher suites. These are now
enabled automatically if SSLContext is initialized with a
PSKKeyManager.
Bug: 15073623
Change-Id: I7f7f713478171491347cdfb9651fd9a095dc60ee
Documented the restrictions schema in RestrictionsManager docs.
Added a parser to read the meta-data and XML file on the device.
Added more types and methods in RestrictionEntry to accomodate some
new types and construction modes.
Added a styleable for restriction attributes.
Slight tweak to permission response params.
Bug: 14582645
Change-Id: I193d1162741d110c100831cab33b48e2baf7426c
The following functions are affected:
* CameraCharacteristics#getKeys
* CameraCharacteristics#getAvailableResultKeys
* CameraCharacteristics#getAvailableRequestKeys
The above keys will now only return keys whose tags are set in
android.request.available{Characteristics,Result,Request}Keys
This change makes it possible to detect if a key is guaranteed to be
available at a granular basis (without querying hardwareLevel or
capabilities).
Change-Id: Iaa34e8c24100339c215604ff49035527fae467cd
But wait, there's more!
- Keep track of sync durations in the aggregated stats.
- Add events for users that are running and in the foreground.
- Rework the activity manager's tracking of stuff using
battery in the background to be based on proc stats, which
allows it to be better about determing when it should reset
its tracking of background work.
- Also add tracking of scheduled job execution, like we are
doing for syncs.
- And once I started hooking battery stats in to
JobSchedulerService, I found a few things I couldn't stop myself
from changing: (1) make it very explicit that it doesn't start
scheduling jobs until we have reached the point in system boot
where third party apps are allowed to run, and (2) adjust
the various for loops to not use iterators.
Change-Id: I69d812e27bcfee9e58a614f0f6b1c7545d7530b1
- the old DatePicker widget is still there for obvious layout compatibility reasons
- add a new delegate implementation for having a new UI
- use the new delegate only for the DatePickerDialog (which does not need to be
the same)
- added support for Theming and light/dark Themes
- added support for RTL
- added support for Accessibility
- verified support for Keyboard
- verified that CTS tests for DatePicker are passing (for both the legacy and the
new widgets)
Also added a new HapticFeedbackConstants.CALENDAR_DATE and its related code for
enabling day selection vibration
Change-Id: I256bd7c21edd8f3b910413ca15ce26d3a5ef7d9c
This avoids NullPointerException crash when changing values without
first canceling a running animator.
Issue #16245303 KeyframeSet crash on null keyframe or evaluator
Change-Id: I50ce5223310fe87e3382c446e2d36d93ae38a8fe
Enable checkbox in settings and wire it to NotificationManagerSerivce.
Add RankingHelper to collect ranking configs and logic.
Bug: 15080024
Change-Id: Ib1d3b0b5ca4fcfdc52c2cb6838a009b9addf1094
Use ActivityOptions.makeLaunchTaskBehindAnimation() to launch tasks
behind the current task. Includes animations for launching and
launched tasks.
Fixes bug 16157517.
Change-Id: I0a94af70b4748592e94673b958ee824cfb3d7ec0