An AudioAttributes instance can either be built through the
Builder, or from unmarshalling: the mFormattedTags field
should always be in sync with the array of tags.
In toString() method, use the more compact mFormattedTags.
Change-Id: Ie06cd7758bf4f2d2693fedaa8c3ba4245802d921
The loop was initialising the boolean incorrectly causing the first
iteration to wait even when the condition was already true and have to
hit the timeout before loading continues.
Change-Id: I6a347cff2e4560b38c8aec3297e456b6f784a97e
Cherry-pick from aosp to lmp-dev.
When switching to a newly created user, the user may face this bug
when he opens the RecentTask screen.
A possible bug scenario is described as follows:
A user id of a removed user may be recycled when created a new user.
However, mRecentTasks is not correctly controlled so that old
information may still remain and be possibly mapped to wrong user.
This patch prevents this bug by explicitly removing old information
in mRecentTasks when removing existing user.
Change-Id: I1874dbd604598a5d740ae1e034981e21214c15c6
Signed-off-by: Eunae Kim <eunae.kim@lge.com>
Conflicts:
services/java/com/android/server/am/ActivityManagerService.java
Cherry-pick from aosp to lmp-dev
Sympton:
During testing, skip kill native crash process manually because it
will continue to die by default.
Root Cause:
Large process may take some time to do coredump.In auto test, crash
process will be killed immediately that results incomplete coredump
file.
Solution:
If the tester (IActivityController) will handle app crash event,
Do not kill native crashed process if the rom is debuggable.
Change-Id: Ia360af147d694125d440e5ba2f958c4759a50494
Conflicts:
services/java/com/android/server/am/ActivityManagerService.java
It was mistakenly re-added in 6feb729b686b902be2520a91281e1a000c055da2.
Change-Id: I99a41ed8e6f1975e9808d8063e594fbb996d4334
(cherry picked from commit a7d8d7bfa75b283588aacae16cce78f6161acce9)
Update to upstream version 2.001045, which adds fontcrunch to the font
production process and fixes a problem with uneven digit widths. Should fix
https://code.google.com/p/android-developer-preview/issues/detail?id=330.
The font footprint is reduced by 705KB, most of it due to the crunching, but
also by using a newer version of fonttools that removes extra unnecessary
paddings from the glyf table.
Bug: 15348046
Bug: 16296048
Bug: 16299966
Change-Id: I838711916f8c47db011cfe889b232e60e6f1aa0c
(cherry picked from commit 6feb729b686b902be2520a91281e1a000c055da2)
Cherry-picked from aosp into lmp-dev.
Sympton:
Next activity only adds to history but does not launch/resume then results ANR.
Root Cause:
In a rare timing, some windows are switched at the same time,
it will cause some finishing records on the top temporarily,
then set startIt to false that skip to resume the real top activty.
Solution:
If all activities in a task are finishing, do not use it to check.
The behavior/checking is the same concept as in JellyBean:
// If starting in an existing task, find where that is...
boolean startIt = true;
for (int i = NH-1; i >= 0; i--) {
ActivityRecord p = mHistory.get(i);
if (p.finishing) { // <--
continue;
}
Change-Id: I9d81a7b5182400c52e173da23eee61c74692beee
Conflicts:
services/java/com/android/server/am/ActivityStack.java
Fix bug where we kept a reference to the old Notification when
we re-use notification entries on updates.
Bug: 16513124
Change-Id: I066ff7447952516e27e122df57d4e6e67ee1cea3
* changes:
Cherry pick Cleanup debug messages in WebViewFactory and WebViewUpdateService DO NOT MERGE
Cherry pick Move startIsolatedProcess implementation in ActivityManagerService DO NOT MERGE
CHerry pick Find WebView package name from a config resource. DO NOT MERGE
Cherry pick Remove dependency on WebView native library path. DO NOT MERGE
Cherry pick Make WebViewUpdateService a SystemService. DO NOT MERGE
Cherry pick Refactor ActivityManagerService and make WebViewFactory more pedantic. DO NOT MERGE
Cherry pick Refactor native library path logic in WebViewFactory DO NOT MERGE
Cherry pick Append WebView assets to AssetManager when loading the WebView. DO NOT MERGE
Cherry pick Introduce startIsolatedProcess private API in ActivityManager DO NOT MERGE
Cherry pick Load the WebView Java code from an APK. DO NOT MERGE
This is just a cleanup CL which fixes:
- Some erroneous debug messages about the relro creator process.
- The condition checked in WebViewUpdateService, to prevent the
WebView to be used from the SystemServer (it now looks at the
process id, previously it was erroneously looking at the uid).
- Adds a 5s. timeout to the waitForRelroCreationCompleted.
Original BUG:16403706
Original Change-Id: I43a953949050d7df5fe334cfa7257315ee6db071
Bug: 16723226
Change-Id: I2f40be3622b8e6c68b2b52cae7f4d3a95e148cbf
This CL addresses the comments in CL 512432, moving the implementation
of startIsolatedProcess in the outer ActivityManagerService class and
making the entry point in the ActivityManagerInternal sublcass just
a proxy method.
This change also addresses a potential NPE, due to startProcessLocked
returning null in some failure cases.
Original BUG:16403706
Original Change-Id: I21eff88c23221653f552cfc171647a839e42a802
Bug: 16723226
Change-Id: I4af9fd7eea10b11e06a5c37d8160c220376b3ed1
Use a config resource to determine the package name for the WebView
implementation to allow it to be changed by a resource overlay.
Original Bug: 16329371
Original Change-Id: I5977691c0223347e0382d584c3d3ee4428660180
Bug: 16723226
Change-Id: Ib0b4245f26cbf93f364aa0f30b231786931f9f16
This CL removes the final use of the hardcoded WebView
library path from WebViewFactory. We now use a system
property to set the amount of address space to reserve
in the zygote rather than stat'ing the file.
See also I07ad5a774623c1899eb50474d999a2b1447783f0
Original Change-Id: Id3c1e3cc2e2a06c1021ad0260a37abcd07d78fd6
Bug: 16723226
Change-Id: I55acad96b6d9ee69f14b84d772abf7740ea96b94
Migrate WebViewUpdateService to the newer SystemService approach instead
of ServiceManager.addService.
Original Bug: 16403706
Original Change-Id: I21aa67a41c22c3c20ba9e82eb87e5d610fe130e8
Bug: 16723226
Change-Id: Id276b71ee547e683f0756bcee0f4978ce342c2af
This CL adds more robustness to the logic in WebViewFactory, checking
whether the isolated process did start at all and catching exceptions
in its java side.
Also, this addresses the refactor comments received in CL 509840.
Original BUG:16403706
Original Change-Id: Iaaea6d36142ece6d974c2438259edf421fce9f2e
Bug: 16723226
Change-Id: Id308f2ffde9b67a3eb4719c7b81b4f46421f0c2e
This CL changes the relro creation and loading logic.
Instead of using a hardcoded path, now WebViewFactory queries the
package manager to get the lib path, which will be either
/system/priv-app/webview/lib/ or /data/app/... depending on the
presence of an update apk.
Original BUG:16403706
Original Change-Id: Icceb95da98e69032a19ac2ae8fe72ba1439e50ad
Bug: 16723226
Change-Id: Ia3155f72a735d75a566a8cc4c8c892d43b6cd371
This makes the code loading the WebView Java code from the .apk
also load the WebView assets into the current AssetManager.
Original BUG: 11505352
Original Change-Id: Ib6203f79b98805012ffa20b233037b7da221624c
Bug: 16723226
Change-Id: Ie7b0b22df9727c72debfb9ccfcd84c95bf41e039
The new API spawns a isolated process, using a custom uid, entrypoint and
abi. Such API is used by the WebViewFactory to spawn its unpriviledged
but trusted process (hence the fixed uid) which rewrites the rerlo file
on boot / when an update occurs.
Since both the ActivityManager service and the WebViewUpdate service
live in the SystemServer their calls be dispatched locally and no
binder interface needs to be exposed for the new startIsolatedProcess API.
Original BUG:16403706
Original Change-Id: I327b59735c12698595e0dbcc4da5d759c9103b0a
Bug: 16723226
Change-Id: Iecb49888e11eec9d302d9712953fd498db5821af
Use the WebView APK to load the Java code via createPackageContext.
Original Bug: 16329371
Original Change-Id: I1292edab639d85c2027dc8ebb52def8c36d41cde
Bug: 16723226
Change-Id: I8e692a5e12706f91a8af0a8b385bac336ce60913
Crop out a notification_panel_width by notification_max_height
section of the screenshot for the preview.
This will only save about 25% of the bytes on a phone-like device over
the existing square crop, but on a tablet-like device the savings will be
more significant: above 75%.
Bug: 16631778
Change-Id: I05d4d402e44f7700f17b8b97018f6c00c3b0196d
Some API methods on DevicePolicyManager call underlying IDevicePolicyManager methods
that can be parameterised with a user id. DPM however only exposed methods for the current user.
This CL makes it possible to call them with any user id by introducing hidden methods on
DevicePolicyManager.
Bug: 15558397
Change-Id: I1786a64fa7cf5f6590ddd04cbf4527bb159f8795
Apps running on another profile of the same user were previously
considered to be running in the background, so their error dialogs
would not show unless ANR_SHOW_BACKGROUND was set.
@bug 15665024
Change-Id: I7e559c6b7f8befc1553bc0ec06e89e5d7906d198