• Home
  • History
  • Annotate
  • only in /frameworks/base/core/java/android/os/
History log of /frameworks/base/core/java/android/os/
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
614f40ea0183e0a70a4f2f1aa66503a28182ed6e 02-Feb-2017 Justin Klaassen <justinklaassen@google.com> Remove experimental twilight-based automatic brightness

Bug: 31602449
Test: verified adaptive brightness no longer varies with twilight with
"brightness_use_twilight" set to "1".

Merged-In: I6b5f7310020b2128c2b292414a205b6052270a0a
Change-Id: Ife9bf6d0f76df791cb7e6a22505d9f551da19731
owerManager.java
37e63c705e827fe52b743f125875e61ce5cb74ce 24-Jan-2017 Jesse Hall <jessehall@google.com> Don't lower priority of EGL Init thread

The EGL Init thread spends a lot of time loading shared libraries,
which involves reading pages and adjusting VM pages. Previously it was
a low priority thread, which meant that when it blocked while holding
a VM lock, it might take a while to be scheduled again once ready, so
it would hold the VM lock longer than necessary, blocking other
threads waiting on soft faults, etc. Classic priority inversion.
Leaving the thread at normal priority causes it to interfere *less*
with critical-path Activity launch work.

Bug: 34611670
Test: go/platform-startup, specifically:
./tradefed.sh run google/template/local --template:map test
google/test/performance/app-launch-perf
--post-boot-command "service call persistent_data_block 6 i32 1"
--post-boot-command "service call persistent_data_block 7 i32 1"
--apps Clock alarmclock --trial-launch --launch-iteration 10
--launch-order cyclic --drop-cache --trace-directory sdcard
--trace-iteration 2 --simple-perf-cmd "simpleperf stat -a"
--report-metrics all --force-skip-system-props --alt-dir `pwd`

Change-Id: I17647c657da64d15f40f8f2b97ee3400e1f0be7f
raphicsEnvironment.java
fd104e7fde7f53700da58cbab57d73b938b837a7 20-Jan-2017 Jesse Hall <jessehall@google.com> Load EGL early in Activity launch, instead of in Zygote

Preloading EGL in Zygote was originally a memory footprint
optimization, but it turns out to be an important app startup time
optimization as well. Preloading EGL in Zygote is incompatible with
updatable graphics drivers, but we don't want to do it on-demand as
part of drawing the first frame either, since that increases
first-frame latency unacceptably.

This change removes Zygote preload, and instead loads EGL on a
low-priority background thread immediately after choosing which
graphics driver to use. This means it is usually done well before
drawing the first frame, without significantly disrupting other
activity launch work.

Test: observe systrace of Calculator launch on bullhead
Bug: 34404021
Change-Id: I6a0f6b90ade21848a10d51ddae62c936f70151b5
Merged-In: I887aa09bd35b088b16f53a89838a0c7c98f15761
raphicsEnvironment.java
79bf392dc6d50436ff16693267c808fc115ab07c 12-Dec-2016 Jesse Hall <jessehall@google.com> Create GraphicsEnvironment for communicating with driver loaders

The GraphicsEnvironment class is given information during application
start, and makes it available to EGL/GLES/Vulkan loaders that don't
have easy access to the VM or to the application Context. Currently
only the driver path is handled, but the existing support for setting
library paths (for Vulkan extensions) and cache directory information
should move here.

Bug: 33531483
Change-Id: I4e4e7fb21f1bcc67122e9173514af5f18c063991
Merged-In: I5820d3d1301d5461e10706f551b268c54d4f8926
raphicsEnvironment.java
d6a5660a2c9f70c9a363d388a091542a378d57d1 21-Sep-2016 Santos Cordon <santoscordon@google.com> Add Brightness setting for VR Mode.

This change saves and loads a different brightness setting when the user
goes in and out of VR Mode.

Bug: 30984614
Change-Id: If3c3e81b592e0c6fd037e5783559683e5cb58379
owerManager.java
966045d0702ca36df6e8c1e4597aaeb37436ca2f 27-Dec-2016 Selim Cinek <cinek@google.com> DO NOT MERGE Revert "Add Brightness setting for VR Mode."

This reverts commit 84980c7a93e93e7134c0198212e222e11eb5ccbd.

Bug: 33895226
Bug: 30984614
Change-Id: I2652e77512bc870190e2172a629abac9341b2c4f
owerManager.java
84980c7a93e93e7134c0198212e222e11eb5ccbd 21-Sep-2016 Santos Cordon <santoscordon@google.com> Add Brightness setting for VR Mode.

This change saves and loads a different brightness setting when the user
goes in and out of VR Mode.

Bug: 30984614
Merged-In: Ie5578bbd6ea346f0eb34fe4abbfd604a5d7c0c93
Change-Id: Ie5578bbd6ea346f0eb34fe4abbfd604a5d7c0c93
owerManager.java
c6bd4243a46acc85058fcad2eb6957c42f591006 10-Dec-2016 Kweku Adams <kwekua@google.com> Fixing issue in current and max duration calculations.

It looks like one operation was done out of order and some of the times used in
the calculations were leading to incorrect results.

BUG: 31023263
Test: bit FrameworksCoreTests:com.android.internal.os.BatteryStatsDurationTimerTest

Change-Id: I417cc28c5a55748067b6c7f682a66fe3dbc09f09
(cherry picked from commit 47db5a8bf74a77306b811d14e3c052cdf86ef704)
atteryStats.java
3c5965d3399e44a09ca56e49133c6c7cd68baa7a 12-Dec-2016 TreeHugger Robot <treehugger-gerrit@google.com> Merge "[DO NOT MERGE] Switch to using UMS.mUserStates" into nyc-mr2-dev
7a1e68279460cba8483ce289147284a27d38b648 05-Dec-2016 Fyodor Kupolov <fkupolov@google.com> [DO NOT MERGE] Switch to using UMS.mUserStates

UserManager.isUserUnlocked/isUserRunning/isUserUnlockingOrUnlocked now
return state from UMS.mUserStates that is pushed from ActivityManager.

Test: create managed profile using TestDPC and check Launcher3
Test: manually create unstarted managed profile and check launchers
Bug: 33232933
Change-Id: I6b619ba1880188eabdd6e3e4cc7eb60d3a22a977
UserManager.aidl
serManager.java
serManagerInternal.java
20db11cfdab0e2838308847e644d9e6d4c31079b 07-Dec-2016 Jeff Sharkey <jsharkey@android.com> Fix two StrictMode stack collection bugs.

When Binder calls are nested, we can quickly end up with a snowball
of stacktraces that can cause the original transaction to fail. This
CL makes two specific changes to alleviate this pressure:

-- Consider a nested Binder call from PID A -> B -> C. If both B and
C encounter dozens of StrictMode violations, then gatheredViolations
in B will end up with 10 ViolationInfo (5 from B and 5 from C). This
problem only grows with each successive nested call. To solve this,
always limit ourselves to only ever write out 3 ViolationInfo from
any given process.

-- CrashInfo already nicely truncates any large stack traces to 20kB,
but readAndHandleBinderCallViolations() blindly appends the entire
local trace, and never considers truncating again. Similar to the
first problem above, nested calls can quickly cause the stackTrace
value to explode in size. To solve this, we always re-truncate the
stackTrace value after appending our local stack.

Also fix some NPE bugs when missing crashInfo.

(cherry-picked from commit 58f27b5033542150a78fb050e2f85253a48efa67)

Test: builds, boots
Bug: 32575987
Change-Id: Ie8373ca277296f920f2b1c564d419c702a8ee0f2
trictMode.java
851ec49de73913547a51476e9c80cccfd7c15572 13-Oct-2016 Dianne Hackborn <hackbod@google.com> Fix issue #32125907: Intent.replaceUnsafeExtras() corrupts original bundle

We now recursively generate new Bundle objects if we need to
do any stripping.

Change-Id: I4ca7896a0771c25264591ae7c79df85816d630d4
undle.java
42a4aaab44de53ff692277d0fff74120c23724b8 10-Oct-2016 Jeff Sharkey <jsharkey@android.com> Set MIME type when building BROWSE intents.

If we created a BROWSE PendingIntent early during boot (while the
device was still locked), we would resolve the MIME type as "null"
meaning the intent would fail to launch.

Since we always know what the MIME type will be, set it explicitly.

Test: boot device while USB device attached
Bug: 30742481
Change-Id: I23c523cbe2660ca63a3b7df1f41300ab803b314c
torage/VolumeInfo.java
473b048cf730d9c10fe6b68ebb12ce1991135d49 01-Oct-2016 Tao Bao <tbao@google.com> Merge "Handle the race condition when calling uncrypt services." into nyc-mr1-dev
1eabf5343719aaebd0582c8b83b73f77bbd434dc 27-Sep-2016 Tao Bao <tbao@google.com> Handle the race condition when calling uncrypt services.

We call uncrypt services to setup / clear bootloader control block (BCB)
for scheduling tasks under recovery (applying OTAs, performing FDR).
However, we cannot start multiple requests simultaneously. Because they
all use the same socket (/dev/socket/uncrypt) for communication and init
deletes the socket on service exits.

This CL fixes the issue by a) adding synchronized blocks for the service
requests; b) checking the availability of the socket before initiating a
new one.

Note that adding synchronized blocks to RecoverySystem doesn't help,
because the calls could be made from different processes (e.g. priv-app,
system_server).

Bug: 31526152
Test: FDR works while a priv-app keeps calling clear BCB.

Change-Id: I95308989e849a9c98a9503ac509f2bc51ed3de19
(cherry picked from commit 794c8b0b3fe16051843c22232d58d6b184dde49b)
RecoverySystem.aidl
ecoverySystem.java
e422b0b29f9fc61ffca1578503a06b8d924a462a 29-Sep-2016 Tianjie Xu <xunchang@google.com> Merge "Log the error when uncrypt timeouts" into nyc-mr1-dev
5eb91a437c551ed0c66b38299f988f8159ada207 28-Sep-2016 Tony Mantler <nicoya@google.com> AsyncTask terminating with exception calls onCancelled

Test: cts/tests/tests/os/src/android/os/cts/AsyncTaskTest.java
b/30304893

Change-Id: Icb50cda8026ddd70d457b5e62eb29c81313ee47d
syncTask.java
2a03586998b857bb13f1119005be186e4a88ff02 25-Sep-2016 Tianjie Xu <xunchang@google.com> Log the error when uncrypt timeouts

Log the error code to uncrypt_status if uncrypt gets killed because
of timeout.

Test: We log the error code correctly in uncrypt_status when uncrypt timeouts.
Bug: 31603820
Change-Id: Ia623c333714295e68f4269257fbb4297a867e42b
(cherry picked from commit 036d08638e6a5f849847a32d794ad34d7dec1368)
ecoverySystem.java
4b17e984b6e41fbef80c9b0071b52f925567f0c9 26-Sep-2016 Christopher Tate <ctate@google.com> Don't leak wakelock instances

Bug 31247436

Change-Id: I7c2ad956c43233b37e53856e9321cb87b01c35da
owerManager.java
06b9b60c6dc7c3c4ed65e64a8151d6cff618cffa 24-Sep-2016 Vadim Tryshev <vadimt@google.com> Adding compatibility note for drag/drop in N.

Bug: 31702571
Change-Id: Ib4b839eec21ea8e1c2b3686595a45642eb8285ba
uild.java
2c89a4c170d05d82b81b7eba6b829aeb10aaa665 21-Sep-2016 Jeff Sharkey <jsharkey@android.com> Rename should behave like create: avoid conflict.

When we create a file that already exists, we try attaching a suffix
like "(1)" to the filename to avoid the conflict. The newly added
rename method should do the same, since developers may not have
access to delete the conflicting file.

Test: boots, rename via UI, new unit tests
Bug: 31545404
Change-Id: Ie397eebb0fbf98cf079eee3bbbb6c6b7ca627d91
ileUtils.java
f940aa3ea1db679568a29e69e9770d2cb62b4561 20-Sep-2016 Adrian Roos <roosa@google.com> Merge "Hold WakeLock while DreamService starts" into nyc-mr1-dev
492450c88ae3e4810b4e6b4856fb1fb1bc347fa1 09-Sep-2016 Tianjie Xu <xunchang@google.com> Collect status on uncrypt time cost

Read and report time cost of uncrypt (in seconds) from last_install.

Bug: 31383361

Change-Id: I283970c33b2a0324f2f51cde328e3e527eff7c58
(cherry picked from commit 3477efce30b1d7f6f8bd07e31d9f1befadda2a34)
ecoverySystem.java
d6f06df5ec178b1165783daf2fca7384a2fdd8d0 16-Sep-2016 Makoto Onuki <omakoto@google.com> Merge "Fix system crash due to mismatching begin/finishBroadcast()" into nyc-mr1-dev
4a0b061ff688f7e0bc275db05854b15c944679da 15-Sep-2016 Patrick Baumann <patb@google.com> Merge "Adding advanced pattern support to PatternMatcher" into nyc-mr1-dev
7bdb9ce97811782864d3b54616f233c041590c7e 15-Sep-2016 Makoto Onuki <omakoto@google.com> Fix system crash due to mismatching begin/finishBroadcast()

Bug 31449363

Change-Id: I514196355a2566c5e4f7f3af91fbf3c57cb67a48
emoteCallbackList.java
2baf095ca9e3827f721271a915d1e04db0718bf9 26-Aug-2016 Patrick Baumann <patb@google.com> Adding advanced pattern support to PatternMatcher

This change adds a new pathMatch attribute to the intent-filter tag
that supports a subset of regular expression syntax. Supported
tokens include dot (.) and set ([]) and supported modifiers include
zero-or-more (*), one-or-more(+) and ranges ({}).

Change-Id: I2ec3bc8a9eb3e94d21caf34a1ed0f3fd3fb33a35
Bug: 30805203
atternMatcher.java
7445c0bb86c57172eb88a4e37183634abce2e37b 07-Sep-2016 Adrian Roos <roosa@google.com> Hold WakeLock while DreamService starts

Fixes a bug where DozeService would not properly initialize
because the CPU went to sleep before onDreamingStarted completed,
causing the pickup gesture to not work.

Change-Id: I85955a2b7d6bad5171accbc336117a9660b1b198
Fixes: 31044352
owerManager.java
873a83af3fff6b0ac85489ebc0b3106d11e97ca6 07-Sep-2016 Felipe Leme <felipeal@google.com> Created a NETWORK trace tag.

Also applied it to a few critical paths on NetworkPolicyManagerService.

BUG: 31281543

Change-Id: If27240d86c21e5b49b9595bfcbc90214126cf489
race.java
c041f5a3b835242fee920c16b5ba6b48e72de007 23-Aug-2016 Jeff Sharkey <jsharkey@android.com> DO NOT MERGE. Clarify FileObserver docs for null value.

Change-Id: I7dc0b0d26220d6eb82f956a9860cfb6aeccfd12f
Test: none
Bug: 30511606
(cherry picked from commit 902316d5533632321a945651b1d044c4e23bf742)
ileObserver.java
86caa4aebfb7429105bcb3d98908a54d9851c229 26-Aug-2016 Mark Lu <marklu@google.com> docs: Fix typo and broken link in AsyncTask.java am: 53415ff24e
am: bae52ec98c

Change-Id: Idb695142488874d52dd406bede0fb4848f7663a9
bae52ec98c1a4b2008fa513641b1625d98b19a9a 26-Aug-2016 Mark Lu <marklu@google.com> docs: Fix typo and broken link in AsyncTask.java
am: 53415ff24e

Change-Id: I1fd10e79a2af2db5bc175dcc4126d3f88c35f4b1
97231323b714c344f70adb51222cbd332bd6285b 24-Aug-2016 Tony Mantler <nicoya@google.com> Merge "Fix AsyncTask to handle exceptions in doInBackground" into nyc-mr1-dev
19551a8d8d2e92a5eb07bbc64df1f57a37d851f5 22-Aug-2016 Fyodor Kupolov <fkupolov@google.com> Added getDataPreloadsMediaDirectory

Bug: 31015966
Change-Id: I8b4117daae2b1f7a59d6a192b34a105f91cbac55
nvironment.java
99f960f7daccb7bbbb24cb1a376836c770b15f84 19-Aug-2016 Narayan Kamath <narayan@google.com> Process: Fix communication with zygote.
am: 448be0a622

Change-Id: I530a1f04545a796d22ca59141aa8fe3de349388c
c1b607df712595ac4e010b3a86a72511a87f8756 13-Aug-2016 Dianne Hackborn <hackbod@google.com> Docs only: N is no longer a shrug.

Change-Id: I6fa8f77d93f53b7969ec6aab4c7e9ca27d17d01f
uild.java
53415ff24e73e3dd3b690ce2d9230c7c1455a992 12-Aug-2016 Mark Lu <marklu@google.com> docs: Fix typo and broken link in AsyncTask.java

Bug: 29323321
Change-Id: Ie3a62480bfee881083b5d266cbc1481fb148d237
syncTask.java
fd97e7bc8cac91d849bf40202870c2220fc04f7a 11-Aug-2016 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Do not toggle OEM unlock if bootloader unlocked" into nyc-mr1-dev
c48b20f8f1d3e07e8a931b195669b0ab8895006c 11-Aug-2016 Esteban Talavera <etalavera@google.com> Do not toggle OEM unlock if bootloader unlocked

Bug: 30681215
Change-Id: Ia0fd55dd7b6b731d6f5733fc733621e99bd7b153
serManager.java
5f1649e85293428850659e35a52d812416812704 10-Aug-2016 Dianne Hackborn <hackbod@google.com> A little more on issue #30766518: Document what targeting N does

Change-Id: I67f2bfd01261a4304b532495a0d3cc791726ed5e
uild.java
b34cbedb4e36f184232d7f40b093bdc9fd0cd752 09-Aug-2016 Dianne Hackborn <hackbod@google.com> Fix issue #30766518: Document what targeting N does

Also small documentation cleanup in a few other places.

Change-Id: I16581c751aa0ffa146faba3b140a8fa2170f4520
uild.java
448be0a62209c977593d81617853a8a428d013df 09-Aug-2016 Narayan Kamath <narayan@google.com> Process: Fix communication with zygote.

Don't write partial requests, and don't return (or throw) early after
partially reading a response.

bug: 30143607
Change-Id: I5881fdd5e81023cd21fb4d23a471a5031987a1f1
rocess.java
adbee556a9e8f399acda17958eed1ba33ad07218 25-Jul-2016 Joe Onorato <joeo@google.com> Have BatteryStats track and report the running wakelocks.

The times reported are in the screen off / on battery time base.

Bug: 29546924
Change-Id: I025b2959becb256a26cf531e944786d4e9a59149
atteryStats.java
78a8e9d2939dcb7be3d3a656c6ac630f17d73854 05-Aug-2016 Tony Mantler <nicoya@google.com> Fix AsyncTask to handle exceptions in doInBackground

When cancelling, the exception will be eaten by FutureTask, but
onCancelled would end up never being called due to the exception
causing the code to skip calling postResult.

b/30304893

Change-Id: I47d859d9ef77245889816b2b6e10bb380bc4979b
syncTask.java
407c0be727bb77360494f8cbc5aa879515e15484 01-Aug-2016 Jorim Jaggi <jjaggi@google.com> Only get trace name if tracing is enabled

String formatting creates new objects, so only do it if needed.

Bug: 30549756
Change-Id: I8035357c2b9c3066ef7663b938654f698a2321bc
ooper.java
0df1d34e6e1bb687205fa061b0ae60b34957b65a 25-Jul-2016 Tony Mak <tonymak@google.com> Merge "Persist master volume mute across reboot" into nyc-mr1-dev
c1205111a92b52283078f1a2e86c8d32c5928b92 22-Jul-2016 Tony Mak <tonymak@google.com> Persist master volume mute across reboot

Fix: 30133263

Change-Id: I53450a504e40e55516acc88550f369a74a244eaf
serManager.java
6c92c0eb5c8db2a3f3aee5bc73656a135b79d830 21-Jul-2016 Srinath Sridharan <srinathsr@google.com> Merge "Adding a new getThreadScheduler() method." into nyc-mr1-dev
6599ee8b968bd84039837104a04e01c77fe42f8e 17-Jul-2016 Erik Kline <ek@google.com> Support removing specific routes from local_network

Bug: 9580643
Change-Id: Id0aaf4bc7424797e2beef03fb18a2c1885a86509
NetworkManagementService.aidl
b84ce2e034223e35726222230db3a12f991f76a6 21-Jul-2016 Makoto Onuki <omakoto@google.com> Merge "Support multiple intents in ShortcutInfo" into nyc-mr1-dev
ebbbead91578c1e8883f3251b94aa502360cab46 20-Jul-2016 TreeHugger Robot <treehugger-gerrit@google.com> Merge "BatteryStats: Don't print empty platform idle state" into nyc-mr1-dev
440a1ea8e2204ecb171e0187318beb2f08f6012c 20-Jul-2016 Makoto Onuki <omakoto@google.com> Support multiple intents in ShortcutInfo

Also fix b/30230996.

TODO: Support the sourceBounds argument to LauncherApps.
startShortcut().

Bug 30218829
Bug 30230996

Change-Id: Ibb6c59d5b7c0a320c21d09436d016d0eac94644f
arcel.java
1b15d13243d7e7f672713f21f0c46d88c3c067a2 20-Jul-2016 Srinath Sridharan <srinathsr@google.com> Adding a new getThreadScheduler() method.

bug: 30226969
Change-Id: Icbd57e99740ebf6ba744a103e6fa69a3160c9422
rocess.java
f0de4da42f10492971d78f6ab1bc36eb84738705 20-Jul-2016 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Improved storage size detection." into nyc-mr1-dev
d0db6f00435b83c88f041ccf0cfcb9986ae8e6ef 18-Jul-2016 Dianne Hackborn <hackbod@google.com> Add reporting of long wake locks.

These appear as a new event in the battery stats history,
"longwake" in the long version and "Elw" in the checkin.

The power manager keeps track of which wake locks are held
for a long time and reports them to battery stats. Long
is currently considered 1 minute or more. Once it is long,
the start event will appear, and once if is released the
event will end.

In the case of a wake lock changing (typically its work
source changing), for purposes of this accounting this is
considering a pure release of the old state and start of
the new state... so the timer will reset back to one
minute until the wake lock is considered long. This is done
to prevent things that make lots of changes to wake lock
work sources from spamming the log.

Bug: 28753137

Change-Id: I33b6168c57a7ea6ea558273dec731704123124a5
atteryStats.java
179923a6117ebea8be46520ef5d63eacbc3465fd 19-Jul-2016 Felipe Leme <felipeal@google.com> Improved storage size detection.

The total storage size was calculating by reading and multiplying the
contents of /sys/block/mmcblk0/size and
/sys/block/mmcblk0/queue/hw_sector_size.

On some devices, such calculation doesn't work because:

1.The primary block is not /sys/block/mmcblk0 .
2.The sector size is not the right value to use.

These 2 issues are temporarily addressed by providing alternative
primary blocks and hardcoding the size (512 bytes). In the long term,
the size should be calculated by vold, so each device could provide its
own calculation if necessary.

BUG: 30216622
Change-Id: I8f9a9f4f753d3c92bab9257062b61ed2b9d665c5
Fixes: 24128505
torage/StorageManager.java
5f056f6d87b2b9f2abc1b37c5d8530d57c6230cd 15-Jul-2016 Adam Lesinski <adamlesinski@google.com> Record UID of wakeup packets

Bug:28931278
Change-Id: I50a3b6a8026b4d06aaa2730cd531658d280ddb73
atteryStats.java
9bc12a83b6768c15807c009441d486f82135d383 16-Jul-2016 Tim Murray <timmurray@google.com> Make sure StrictMode allows disk reads when calling isThreadInProcess.

If an application thread disables disk reads on the main thread,
isThreadInProcess will trigger a strict mode violation. This is bad if
the RenderThread is created after disk reads have been disallowed.

bug 30170339

Change-Id: I6918605d11f0c586c156f3168051376c3209b3f1
rocess.java
8568d8fd4f2cce8d68e80bc845dc20bedc47d4e1 16-Jul-2016 Adam Lesinski <adamlesinski@google.com> BatteryStats: Don't print empty platform idle state

Bug:28863586
Change-Id: Iac1fae2063498337c7325011603933aa4f6ebfdd
atteryStats.java
7366e8c16afb76ca1394385ab28be43e9ebb1898 14-Jul-2016 Nicolas Geoffray <ngeoffray@google.com> Merge changes I7a052a8e,Idb11b1c0 into nyc-mr1-dev

* changes:
[RFC] Special case system apps for profile optimizations
Compile core-apps according to their own "reason" for A/B
0bd776207999ccba17e5adb163710bd7b16ac907 12-Jul-2016 Calin Juravle <calin@google.com> [RFC] Special case system apps for profile optimizations

If the OTA updates a system app which was previously preopted to a non-
preopted state the app might end up being verified at runtime. That's
because by default the apps are verify-profile but for preopted apps
there's no profile.

Do a hacky check to ensure that if we have no profiles (a reasonable
indication that before the OTA the app was preopted) system apps get
compiled with a non-profile filter (by default interpret-only).

Bug: 30032273
Test: Andreas "has verified that Calin's change to A/B works as expected
and promotes things like SystemUI to speed. From my side, that's
ready to be merged"

Change-Id: I7a052a8ea76cab7f649dc993237ea05534d6c4b9
nvironment.java
695a1c50a274c4ba423d910d3d4167a7493a6ea1 13-Jul-2016 Mahaver Chopra <mahaver@google.com> Merge "Added UM.DISALLOW_OEM_UNLOCK, Removed Global.OEM_UNLOCK_DISALLOWED." into nyc-mr1-dev
3d9805d50281882b4420ee2d4ede8a8bdd94d455 07-Jul-2016 Mahaver Chopra <mahaver@google.com> Added UM.DISALLOW_OEM_UNLOCK, Removed Global.OEM_UNLOCK_DISALLOWED.

Currently we used global setting to restrict user from enabling oem
unlock. As global settings can be chagned using adb, using user
restrictions instead.

Bug: 29893399
Change-Id: Ic83112a4838b8279bf50408a29ae205e0b8639ee
serManager.java
b646ec13e182e71744361e18d17e57b1571dcd66 11-Jul-2016 Tim Murray <timmurray@google.com> Merge changes from topic 'stune' into nyc-mr1-dev

* changes:
Put bootanimation in top-app stune group.
Sets android.ui to be in the fg stune group.
4074ad01e898605c64a80a8cb14c10bdbedf1bdb 09-Jul-2016 Tim Murray <timmurray@google.com> Sets android.ui to be in the fg stune group.

setThreadGroup(TOP_APP) will place a thread in the fg stune group but
not the top_app cpuset. This allows android.ui to get more runtime to
render transitions between activities without impacting its CPU
placement.

bug 29512132

Change-Id: I95e031975f83290f88ac6e538abf1062aea27ed4
rocess.java
56177bf81b316f38695457add3a9a822bf6f1104 08-Jul-2016 Andreas Gampe <agampe@google.com> Merge "Revert "Frameworks/base: Refactor UserHandle and Environment a bit"" into nyc-mr1-dev
d281b4204a38d8cb542f2272b2d21203eafaff7b 08-Jul-2016 Andreas Gampe <agampe@google.com> Revert "Frameworks/base: Refactor UserHandle and Environment a bit"

Breaks monkey in root mode.

This reverts commit 6e16714c688ed9c52763696f5a5e7b90802a471b.

Bug: 29338430
Change-Id: I238f89dad77d7dcae6d02eccbda52eb9c6c6466c
nvironment.java
serHandle.java
a96d445aef1456398410e41e9c29d9181287edc5 07-Jul-2016 Tim Murray <timmurray@google.com> Merge changes from topic 'fifo' into nyc-mr1-dev

* changes:
Add new mode for SCHED_FIFO on UI and RenderThreads.
Add isThreadInProcess.
33eb07f5759b85a5617f8057d8a335019c7d24dd 10-Jun-2016 Tim Murray <timmurray@google.com> Add new mode for SCHED_FIFO on UI and RenderThreads.

Add a new mode, controlled by sys.use_fifo_ui property, that enables the
top app's UI and RenderThread to be SCHED_FIFO. This eliminates almost
all jank due to scheduling competition with non-UI critical
threads. This mode may not be suitable for all devices.

bug 24503801

Change-Id: I7b8a31830ad80f7efa00236928d5476998ed4e00
rocess.java
b89970e0fb11b71592e10570d387eac3bbb6f6d6 01-Jul-2016 Tim Murray <timmurray@google.com> Add isThreadInProcess.

Use this to make sure that the VR thread belongs to a given process when
it is assigned.

bug 28715706

Change-Id: I4e5b0d8493e69e443eb907f0a6f2a9482fb64bac
rocess.java
6e16714c688ed9c52763696f5a5e7b90802a471b 15-Jun-2016 Andreas Gampe <agampe@google.com> Frameworks/base: Refactor UserHandle and Environment a bit

Refactor slightly to forbid using myUserId in the zygote (uid == 0).
Also factor Environment to put user data (vs shared data) into its
own class, which should keep the page the shared data is on actually
shared between processes.

Bug: 29338430
Change-Id: I05d1306b57658a83299e38076171f56cb364ea80
nvironment.java
serHandle.java
4e37b7044018153bf294a0e9e834681c46c050d7 05-Jul-2016 Erik Kline <ek@google.com> [net mgmt svc] add method to retrieve INetd reference

Bug: 21859053
Bug: 28135208
Change-Id: Idfb5ca65788ae8c7aea91f12d9d461686ad836d6
NetworkManagementService.aidl
863ae3e51add3e7a81012734e8296102704a090c 29-Jun-2016 Michael Wright <michaelwr@google.com> N MR1 is API 25

Also, finalize resource IDs for N MR1

Bug: 29816674
Change-Id: Ie880adb2544f4e2e32b439fe975a68a3928e6fe5
uild.java
5e261441d3a5920bf69b827d8a2491848b91b50e 30-Jun-2016 Tim Murray <timmurray@google.com> Merge "Add a new API to improve VR thread scheduling." into nyc-mr1-dev
e535a5827b7b7c7c70f4701d74051c9bb5eb0b98 28-Jun-2016 Srinath Sridharan <srinathsr@google.com> Add a new API to improve VR thread scheduling.

Adds a new API that enables device-specific scheduler optimizations for
latency-sensitive VR threads.

BUG: 29163534
Change-Id: I58d7be0eb266eca452c804cd07004784fb7daf2b
rocess.java
6401217532e5357549988182b90bea28a86691e2 29-Jun-2016 Daniel Nishi <dhnishi@google.com> Merge "Use the Deletion Helper when system storage is low." into nyc-mr1-dev
1c41dc8ec59db15cfc050f420f857fcbf0ff2bf0 29-Jun-2016 Amith Yamasani <yamasani@google.com> An API to check if running in a demo user

Add an API to query if the calling app is running
in a demo user sandbox. This allows apps to customize
the starting experience to a potential customer.

Change-Id: I50e40f9a8c66da4b5672c1dc64606d7bedba3f8c
Fixes: 29833923
UserManager.aidl
serManager.java
7878e736f7d3e99829453684c30f4b673e71c1fd 28-Jun-2016 Svet Ganov <svetoslavganov@google.com> Merge \"Mark app pending intents in notification extras\" into nyc-dev
am: b2cd9c95bf

Change-Id: Idb515255f224c23d60a513713d9e4f93decd7a9c
ddb948896ca7059161e09d0063b3332352772c0a 24-Jun-2016 Svet Ganov <svetoslavganov@google.com> Mark app pending intents in notification extras

We need to make every peniding intent that went in the notification
system to allow special handling of such intents when fired by a
notification listener. If a pending intent from a notification
is sent from a notification listener, we white-list the source app
to run in data saver mode for a short period of time. The problem is
that actions and the notificaion can have extras which bundles may
contain pending intents but the system cannot look into the bundles
as they may contain custom parcelable objects. To address this we
keep a list of all pending intents in the notification allowing
the system to access them without touching the bundle. Currently
the pending intents are written to the parcel twice, once in the
bundle and once as the explicit list. We can come up with a scheme
to optimize this but since pending itents are just a binder pointer
it is not worth the excecise.

bug:29480440

Change-Id: I7328a47017ca226117adf7054900836619f5679b
arcel.java
690346b145b77b13951fbf27cbc792195f975b6a 17-Jun-2016 Daniel Nishi <dhnishi@google.com> Use the Deletion Helper when system storage is low.

A notification is posted when the system storage gets too low.
Currently, it redirects into the Storage Settings. Instead,
it should redirect into the Deletion Helper to directly let the
user clear out their storage.

Bug: 29437277
Change-Id: I4e35adf300d5e479d4171f1e6f090f2a757400f2
torage/StorageManager.java
580f2e159ec7cd4b00b80e9d189652d4e11ddd9c 21-Jun-2016 Dianne Hackborn <hackbod@google.com> Merge \"Reduce race when connecting to an existing content provider.\" into nyc-dev
am: 5f9afa968d

Change-Id: I7ca258416372dd251759aa920f51c2486d432f9c
5f9afa968dcb2477a992c4a95a898bca71b16c46 21-Jun-2016 Dianne Hackborn <hackbod@google.com> Merge "Reduce race when connecting to an existing content provider." into nyc-dev
4de5a3ac6655f76b67af38712ae5aeb6d7c15938 21-Jun-2016 Dianne Hackborn <hackbod@google.com> Reduce race when connecting to an existing content provider.

We lost the code that checks to see if the target process still
exists and aborts trying to use it if so. To reduce the race
there, we have a new explicit check of the state of the process.

Hopefully fixes some of issue #28737082.

Change-Id: I37a7a6e9767516d564168ef5e110c4adafe3fb76
rocess.java
a804fae3bef5c2113a572233a8257069bb0386dd 20-Jun-2016 Adam Lesinski <adamlesinski@google.com> Merge \"BatteryStats: record best estimated battery capacity\" into nyc-dev
am: c2e06a55f9

Change-Id: I4f590635c720ddbb6dfac292753606b9d3fe16e0
c2e06a55f961dfbed1142a02578809ecb75c3885 20-Jun-2016 TreeHugger Robot <treehugger-gerrit@google.com> Merge "BatteryStats: record best estimated battery capacity" into nyc-dev
f9b20a9ec4d92c542a0a38630a8b8c22729c5393 18-Jun-2016 Adam Lesinski <adamlesinski@google.com> BatteryStats: record best estimated battery capacity

Using the coulomb counter, record the estimated max battery
capacity.

Bug:28743761
Change-Id: I1270b062cf4a1e6fd69ea1da3de11a85a81b3663
atteryStats.java
b021fca31a69b6c2d4582bcf1cf1aad987f22557 16-Jun-2016 Dianne Hackborn <hackbod@google.com> Merge \"Fix issue #29371078: Foreground jobs should not count...\" into nyc-dev
am: 47cfac6803

Change-Id: I94a6674bcb0327bc55fbfc1d18c4a5d6d723a52e
47cfac6803c8f558d5f7310563be65f5944eede2 16-Jun-2016 Dianne Hackborn <hackbod@google.com> Merge "Fix issue #29371078: Foreground jobs should not count..." into nyc-dev
7ab4025474d3ce80b00fbc96962a585f918a0be1 16-Jun-2016 Dianne Hackborn <hackbod@google.com> Fix issue #29371078: Foreground jobs should not count...

...as active for idle maintenance

Nor jobs of whitelisted apps.

Now they don't.

Also remove the no longer used "active download" tracking code.

Change-Id: I553197801f6eabaf15716f3201dd65257a0d4e94
DeviceIdleController.aidl
c5ffdb9ee48905bacab0d5986d3eff2b399acd5e 16-Jun-2016 Amith Yamasani <yamasani@google.com> Merge \"More thorough cleansing of expired users\" into nyc-dev
am: 4f2b1b455e

Change-Id: I5714f73a9b90c0cb8fee653abf799374acfc6232
4f2b1b455e0f256ef9cb345d844ac89b6c3fd20c 16-Jun-2016 Amith Yamasani <yamasani@google.com> Merge "More thorough cleansing of expired users" into nyc-dev
ab1a5e456e0559b6d5e584833d1dc475169aaf79 15-Jun-2016 Tianjie Xu <xunchang@google.com> Merge \"Fix a naming typo for source_build\" into nyc-dev
am: dfa654edfe

Change-Id: I3eda6c97b34e6789a7450f737959fb22af9b1be4
5fabe69fc891278b1f70a136d9b47c50ec995f7f 15-Jun-2016 Tianjie Xu <xunchang@google.com> Fix a naming typo for source_build

When parsing the last_install, the variable name is supposed to be
*source_build* instead of *source_version*.

Bug: 28658632
Change-Id: I1e0ed7150e04885f904b6a3efa18bd5cfe17cc96
ecoverySystem.java
d04aaa323c3a788d26f18fc66e0a59b47e525b38 13-Jun-2016 Amith Yamasani <yamasani@google.com> More thorough cleansing of expired users

If any /data/system_[c|d]e folders were not erased
when the user was removed (maybe due to a reboot),
make sure they're cleaned up on restart as well
as when the userId is recycled later.

Mark the users' system folders with the correct
serial number for later verification.

AccountManager shouldn't be querying accounts of
partially created/destroyed users.

Change-Id: I4313756b7464f34cd5ce4fb296d61daa50b41fcb
Fixes: 29285673
nvironment.java
serManager.java
499ab43ce391d87fe4d84c2ed84d8f982fc6d38b 14-Jun-2016 Tomasz Mikolajewski <mtomasz@google.com> Merge \"Make CotentResolver#openInputStream handle errors from reliable pipes.\" into nyc-dev
am: ac3fe8fffe

Change-Id: Ib09cea9ca5c6bb18dc16ffac70f23fa4b3ffd974
ac3fe8fffe8321e4292983ca31b472e326f45f1d 14-Jun-2016 Tomasz Mikolajewski <mtomasz@google.com> Merge "Make CotentResolver#openInputStream handle errors from reliable pipes." into nyc-dev
9aa66d57c6a8440b0280f31f94b5e3c05980e6a2 13-Jun-2016 Tao Bao <tbao@google.com> Merge "Add RecoverySystem.rebootWipeAb() system API." into nyc-mr1-dev
860e09ddceb44a2d7ba0434146817983e7b6a1dc 11-Jun-2016 Adam Lesinski <adamlesinski@google.com> Merge \"BatteryStats: Fix read/write parcel order\" into nyc-dev
am: e8a442ccd6

Change-Id: I08f02adc6014ff9bcae60f60a091bba74695488d
e8a442ccd6dacebc47fe8df782258b004901dab2 11-Jun-2016 Adam Lesinski <adamlesinski@google.com> Merge "BatteryStats: Fix read/write parcel order" into nyc-dev
67c134f849711c30e8cfba375b9e3c8616b4b277 11-Jun-2016 Adam Lesinski <adamlesinski@google.com> BatteryStats: Fix read/write parcel order

Also moves discharge coulomb data to BATTERY_DISCHARGE_DATA checkin line.

Bug:29264326
Bug:28743761
Change-Id: I78881e166c11f40b2397e04d2cab8d5200c71eea
atteryStats.java
9331178a6d8c77da1b099a47ca2a645f1f01e3a8 10-Jun-2016 Tianjie Xu <xunchang@google.com> Merge \"Collect statistics of source build version\" into nyc-dev
am: 8872a604b9

Change-Id: Ic920aced4f17c31a09bea55480f92252f20d728d
8872a604b9d1d547ad48f82ecd097b79c189132c 10-Jun-2016 Tianjie Xu <xunchang@google.com> Merge "Collect statistics of source build version" into nyc-dev
d499d79b07a7f15df15d843242563e4282ecdd83 10-Jun-2016 Adam Lesinski <adamlesinski@google.com> Merge \"BatteryStats: Record fine grained battery discharge\" into nyc-dev
am: 094c40b2cc

Change-Id: Ie85fcfc2fa7aec5e7c15f57d605840c563c0e993
094c40b2cc70fefb29771fb90d7ea7437905b3a5 10-Jun-2016 TreeHugger Robot <treehugger-gerrit@google.com> Merge "BatteryStats: Record fine grained battery discharge" into nyc-dev
69a983dfec7140ee6aad5e2ffddc55fe3c5f170d 10-Jun-2016 Adam Lesinski <adamlesinski@google.com> Merge \"BatteryStats: Bump checkin format version to 18\" into nyc-dev
am: d75bc225ac

Change-Id: I70dbac4cb8002d8f216991ca78b18e9c1612eb89
b55d741c9a656387b145d7b3504836e24124506d 10-Jun-2016 Adam Lesinski <adamlesinski@google.com> BatteryStats: Bump checkin format version to 18

Bug:28811636
Change-Id: If2229c438e60f20746c91bccbcaa6d72ca5f0802
atteryStats.java
3ee3f63eb88741bb726c1481387ccf8a46fb57fb 08-Jun-2016 Adam Lesinski <adamlesinski@google.com> BatteryStats: Record fine grained battery discharge

For devices that report battery discharge via a coulomb counter,
record how much of the battery was discharged while the screen
was on/off.

Bug:28743761
Change-Id: Ie2d1708864352029ff466c1fed14fc057e19b93b
atteryStats.java
1327a97a076d67f296f338653678cc383ebfa002 02-Jun-2016 Tao Bao <tbao@google.com> Add RecoverySystem.rebootWipeAb() system API.

It reboots into recovery and securely wipes an A/B device.

Bug: 27253717
Bug: 29159185
Change-Id: I8252894db5c1df48bc4a8728b7f0e0f18aebc44c
ecoverySystem.java
c1ff246f1a37d6619c238cf392e486ca4cf299d3 09-Jun-2016 Tianjie Xu <xunchang@google.com> Collect statistics of source build version

Parse the last_install and report the source build version of an ota
update.
Related CL in: ag/1121141

Bug: 28658632
Change-Id: I5e835c144aabe97fda681f60397ebf4416f7bd4f
ecoverySystem.java
ebfa28ccf8abe0bb512a307f187874bdc5e7f00f 08-Jun-2016 Tianjie Xu <xunchang@google.com> Merge \"Change unit of I/O statistics to MiB\" into nyc-dev
am: 00681d0e78

Change-Id: I150ccc3c3164ee487bf4c726b080d885f8b39696
ba3676460a6f8d3f7766cf9768c275e6f8eda952 08-Jun-2016 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Added a getPrimaryStorageSize() method." into nyc-mr1-dev
a2fe5517bcd966c22827150287f55d683d493573 02-Jun-2016 Tianjie Xu <xunchang@google.com> Change unit of I/O statistics to MiB

I/O in bytes are too large and it may cause overflow. Moreover, data with
large numbers are grouped in the same bucket of the histogram. This adds
difficulty to the analysis. Changing unit of I/O to MiB so that we can
have a better data distribution.

Bug: 28658632
Change-Id: Id9913d71e62b36ce5d5d2e57676953f4dbd0c7c9
ecoverySystem.java
18202e00bd2f8bc6e197cbad02d17ab0510b68cd 12-May-2016 Felipe Leme <felipeal@google.com> Added a getPrimaryStorageSize() method.

BUG: 24128505

Change-Id: I0b75d3c5505dadedf5d06868614b3a01765cc5d3

** Cherrypicked from master **
torage/StorageManager.java
cc12064670c9e0ade3ffcb4ff2eed4ddd5d267a8 07-Jun-2016 Esteban Talavera <etalavera@google.com> Merge "Fix getApplicationRestrictions documentation" into nyc-dev
am: a86d6c4df3

* commit 'a86d6c4df3b193060b4b725e1abfed4f69689843':
Fix getApplicationRestrictions documentation

Change-Id: Ia552cc886a182f558b7479b1d2a0201061dc5cc6
953fe483298bff46558a4e0b2d891924c0c9c813 07-Jun-2016 Esteban Talavera <etalavera@google.com> Fix getApplicationRestrictions documentation

The method never returns null, only empty bundle

Bug: 29178626
Change-Id: Ic53154eafe94c6c501b59932441d7ae1c89cb689
serManager.java
3c826b160c724d38f49bb479aa13ab8cf685e2d2 01-Jun-2016 Benjamin Franz <bfranz@google.com> Merge "Add an intent extra to force master clear" into nyc-mr1-dev
f9d5e6a3db7eb8c378cc2ac78e976aa0312f2c6e 26-May-2016 Benjamin Franz <bfranz@google.com> Add an intent extra to force master clear

Currently, if a priv-app sends ACTION_MASTER_CLEAR, whilst
DISALLOW_FACTORY_RESET is set, the factory reset is blocked. This CL
introduces a new extra for master clear that let's the priv-app bypass
the user restriction.

Bug: 28689894
Change-Id: I4bf979a3826454e977f1abff4562f85c8d0eec4a
ecoverySystem.java
2ab4ac38350b51c239fe564bc89727b201036205 01-Jun-2016 Wei Wang <wvw@google.com> Merge "Trigger power hints for activity launch" into nyc-mr1-dev
98f03f98acb4bf8020be21be0f261f3d285b7d2e 18-May-2016 Wei Wang <wvw@google.com> Trigger power hints for activity launch

BUG: 28220567
Change-Id: Id2a0397efd1dd02ee50d5626edaed9e60ea6de8a
owerManagerInternal.java
ad3b61623ff5ad43be826bc0b05ef09b20984673 30-May-2016 Tomasz Mikolajewski <mtomasz@google.com> Make CotentResolver#openInputStream handle errors from reliable pipes.

Bug: 28967963
Change-Id: I3b1343e91e7b6616ea0d641888f5b41d1b83a8a5
arcelFileDescriptor.java
5df14a60cf4eb5340d9339244ca7ba2485495531 27-May-2016 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Helper method to check if current user is a demo user" into nyc-mr1-dev
d35a89cd80c6cdb4b61fc4c9d88d935ee26612e1 27-May-2016 Amith Yamasani <yamasani@google.com> Helper method to check if current user is a demo user

Bug: 27280140
Change-Id: I7f6ed3198a42b4f8b81b54764e0b73499a94f77c
serManager.java
aabbfc5565a6fee8b1fbdaa26f050ee6617b3370 27-May-2016 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Revert "Revert "Remove ActivityManager calls with PM.mInstallLock held""" into nyc-mr1-dev
e9f42318f61889133ad7fdcbe28bbd58f0c6739e 27-May-2016 Ruchi Kandoi <kandoiruchi@google.com> Merge "PowerManager: Adds Documentation to isSustainedPerformanceModeSupported()" into nyc-dev
am: 7730e57dc6

* commit '7730e57dc6624a66cdc35260f855a467fadc7b04':
PowerManager: Adds Documentation to isSustainedPerformanceModeSupported()

Change-Id: If4934466722851e9c7ca1443cae3e31f2b25c6c7
ea1b9d7958b4201ca288ea16ed8a8454de6bbca9 27-May-2016 Amith Yamasani <yamasani@google.com> Revert "Revert "Remove ActivityManager calls with PM.mInstallLock held""

Added the missing import.

This reverts commit c51e725644be6d46e25c29e8774b542d52c29400.

Change-Id: Icd63619a12e10dee628e568a6200d429a9936cf0
serManager.java
serManagerInternal.java
7730e57dc6624a66cdc35260f855a467fadc7b04 27-May-2016 Ruchi Kandoi <kandoiruchi@google.com> Merge "PowerManager: Adds Documentation to isSustainedPerformanceModeSupported()" into nyc-dev
c51e725644be6d46e25c29e8774b542d52c29400 27-May-2016 Bart Sears <bsears@google.com> Revert "Remove ActivityManager calls with PM.mInstallLock held"

This reverts commit ac06a4907bff7d5ee0612dbb85180222e1455791.

Change-Id: I27bedbd221a8d416b9040a96063e66a1ca69fe2e
serManager.java
serManagerInternal.java
5d531e4f6caedbcc2b6a9c7a549b83e37d694c7d 27-May-2016 Fyodor Kupolov <fkupolov@google.com> Merge "Remove ActivityManager calls with PM.mInstallLock held" into nyc-dev
am: a4dbdaf5e9

* commit 'a4dbdaf5e96273dccd474e31700d84a1ad907503':
Remove ActivityManager calls with PM.mInstallLock held

Change-Id: I3be800fc5de9fa3c06f0bf6158a0dbf2a05b165e
bda14dd987498d4c75dcbbe7b4bba73db165c1c8 27-May-2016 Jeff Sharkey <jsharkey@android.com> Merge "Cache IMountService for isUserKeyUnlocked() calls." into nyc-dev
am: 36cbf5ca37

* commit '36cbf5ca378523bfa4f5394e39f5fcff2b2461de':
Cache IMountService for isUserKeyUnlocked() calls.

Change-Id: I1ad2d1eba64a89e7a22dc86c7241f6f85a5f2a0b
2c5cbd4012aef736c94a7afc84a778623c639d10 27-May-2016 Fyodor Kupolov <fkupolov@google.com> Merge "Clean up demo dir when leaving demo mode" into nyc-mr1-dev
a4dbdaf5e96273dccd474e31700d84a1ad907503 26-May-2016 Fyodor Kupolov <fkupolov@google.com> Merge "Remove ActivityManager calls with PM.mInstallLock held" into nyc-dev
c45908d19612e6ccc014b19f5963d06dbe066028 16-May-2016 Ruchi Kandoi <kandoiruchi@google.com> PowerManager: Adds Documentation to
isSustainedPerformanceModeSupported()

Bug: 28775592
Change-Id: Iea4f77d2508141ac0748165f68e6e1ca235ab804
Signed-off-by: Ruchi Kandoi <kandoiruchi@google.com>
owerManager.java
36cbf5ca378523bfa4f5394e39f5fcff2b2461de 26-May-2016 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Cache IMountService for isUserKeyUnlocked() calls." into nyc-dev
4815ed4500ac5480a6843a8cd7a6a3518ffddf4a 26-May-2016 Jeff Sharkey <jsharkey@android.com> Cache IMountService for isUserKeyUnlocked() calls.

This avoids doing a ServiceManager lookup for every call through
this hot code-path.

Bug: 28946245
Change-Id: I210ce34b33e5b40a5ab4e92ddce87fc5e9964be2
torage/StorageManager.java
528a5bd466a18f2d955ae364b0e8600b74fa790f 26-May-2016 Adam Powell <adamp@google.com> Merge "N is API 24" into nyc-dev
am: bc983c4431

* commit 'bc983c443139c7b4605f98d56bd9ad7652a9938b':
N is API 24

Change-Id: Ic45d31eb721e9831fafd5413ce60947eb7fbad7e
43ec62af45bb286dcc1e79afba7475aafb5ceb84 26-May-2016 Adam Powell <adamp@google.com> N is API 24

Change-Id: Ifea71ccff96c3c70f9f3e60ecdcb2b56af82bb08
uild.java
ac06a4907bff7d5ee0612dbb85180222e1455791 25-May-2016 Fyodor Kupolov <fkupolov@google.com> Remove ActivityManager calls with PM.mInstallLock held

UserController now pushes user state to UMS.

PM now checks user running/unlocking/unlocked state by calling
UserManagerInternal.

Bug: 28090199
Change-Id: I20e62b37f78238f28dd81f49f876732bbd3c6b34
serManager.java
serManagerInternal.java
88257587cea33b84bb682f9eb30aa954a4b6bb29 25-May-2016 Fyodor Kupolov <fkupolov@google.com> Clean up demo dir when leaving demo mode

Delete contents of demo dir when device is provisioned and demo_mode is
disabled

Bug: 28855287
Change-Id: I6e1826ec23a2ff92402fe079a9e7b565a2fe04d7
nvironment.java
f33737d6463baad82681bf253419ac4fe25b4bf9 25-May-2016 Chet Haase <chet@google.com> Merge "Remove hidden LocaleList default constructor" into nyc-dev
am: ba2cc82399

* commit 'ba2cc82399b89d92f766bbee3b2504a5cdf56215':
Remove hidden LocaleList default constructor

Change-Id: Ia9416e9e318104dc0a29ce8b092036cf4d2b53a8
f3d5ec05b438905ea9bb1a6a5b6fee989000efc8 25-May-2016 Chet Haase <chet@google.com> Remove hidden LocaleList default constructor

Previous change hid this constructor. Now removing it entirely for completeness.

Issue #28296200 API Review: LocaleList

Change-Id: I43476994070b101999d338ec1f5d1a1a0a2a7658
ocaleList.java
acf91cd6c59ddf59e864411638eaf64506ff69bf 24-May-2016 Tianjie Xu <xunchang@google.com> Merge "Report OTA time statistics" into nyc-dev
am: 86f97177e9

* commit '86f97177e959cb40229010b90f066fd602d6a06f':
Report OTA time statistics

Change-Id: I271c156232c49a861579acd9ce90c91fbc7e5a4f
86f97177e959cb40229010b90f066fd602d6a06f 24-May-2016 Tianjie Xu <xunchang@google.com> Merge "Report OTA time statistics" into nyc-dev
5e5e871fdc0b51ba5b0903169451e9401b98f1f3 24-May-2016 Adam Lesinski <adamlesinski@google.com> Merge "Improve performance of LocaleList with Resources" into nyc-dev
am: bb26248bbb

* commit 'bb26248bbba6e4014ea89a97b86618b7289a5f29':
Improve performance of LocaleList with Resources

Change-Id: I307b4a7c78ff04797fda041afa8106b082951bc9
dcd3644f224da72ec95c590394ed656915bba481 13-May-2016 Tianjie Xu <xunchang@google.com> Report OTA time statistics

Read time and I/O for OTA update from last_install, and report the
statistics using MetricsLogger.histogram.

Bug: 28658632
Change-Id: I7fd06a82cbabd346d6d44f81ebad08f6baf4b8d0
ecoverySystem.java
b61e405397200f78b1c652143cba7c751df05a00 20-May-2016 Adam Lesinski <adamlesinski@google.com> Improve performance of LocaleList with Resources

We allow each individual Resources object to select the best
Locale for the given APK. This allows one update to the configuration
instead of multiple updates, once the locale is chosen.

The Java locale is selected from the app context's locale.

Bug:28625993
Bug:27325465
Change-Id: I99e1e53f522e560f3b80bbd1e1c605f552dbdff0
ocaleList.java
43fbfbf94c5b8ae4353b73c36d85ff02fd36fc67 19-May-2016 Robin Lee <rgl@google.com> Merge "Lock down networking when waiting for always-on" into nyc-dev
am: d171df660e

* commit 'd171df660e19bdba4d188beeb8b6023874712413':
Lock down networking when waiting for always-on

Change-Id: I34fffb119eecef0052be673f307ef63c94fc58ee
d171df660e19bdba4d188beeb8b6023874712413 19-May-2016 Robin Lee <rgl@google.com> Merge "Lock down networking when waiting for always-on" into nyc-dev
17e6183b85ba3038acb935aaa01415058b2e6ddd 09-May-2016 Robin Lee <rgl@google.com> Lock down networking when waiting for always-on

Fix: 26694104
Fix: 27042309
Fix: 28335277
Change-Id: I47a4c9d2b98235195b1356af3dabf7235870e4fa
NetworkManagementService.aidl
2a1076339ecb7ba9b7c8829bb3c3285df29a67e3 19-May-2016 Paul Crowley <paulcrowley@google.com> Merge "Two phases to set the password for disk encryption" into nyc-dev
am: 56a9395aeb

* commit '56a9395aeb198e0a7db5e9666cc81ba7ce5f8e0d':
Two phases to set the password for disk encryption

Change-Id: I76b3b1351ea85d8a5e42da523f57a291b3a1b0d9
56a9395aeb198e0a7db5e9666cc81ba7ce5f8e0d 19-May-2016 Paul Crowley <paulcrowley@google.com> Merge "Two phases to set the password for disk encryption" into nyc-dev
dbf0dbd8c216e801b3d95f83d13ae05c1ba0ea39 18-May-2016 Amith Yamasani <yamasani@google.com> Merge "Retail mode flag and some clients for it" into nyc-mr1-dev
31884efd13b3ac60078edaa0b7e8a4b75d995538 18-May-2016 Yohei Yukawa <yukawa@google.com> Merge "Move LocaleList to avoid layering violation." into nyc-dev
eb437d4dffb310857e19bb619778dc5b6b7febff 29-Apr-2016 Amith Yamasani <yamasani@google.com> Retail mode flag and some clients for it

Bug: 27280140
Change-Id: Ide33e941b9c71eb925b5977d0b0d62198537ca14
serManager.java
23cbe85610f780134cc77dd4a54732a22ed6e86e 18-May-2016 Yohei Yukawa <yukawa@google.com> Move LocaleList to avoid layering violation.

Since LocaleList needs to depend on android.os.Parcelable, we cannot let
that class belong to "android.util" package, which causes layering
violation.

Bug: 28819696
Change-Id: Ia8de2ee9df3dd0a42b1fe84574439519b680fe18
ocaleList.aidl
ocaleList.java
22cfef381d437bd26d23909f733ddc537a44530f 18-May-2016 Joe Onorato <joeo@google.com> @hide SystemHealthManager.from

Bug: 28820055
Change-Id: Idd434c196428178e2c66facea36a7e010246611c
ealth/SystemHealthManager.java
cc70155f3bf18341296aaa2163bd2e7df6997b11 17-May-2016 Paul Crowley <paulcrowley@google.com> Two phases to set the password for disk encryption

Revert "Revert "Two phases to set the password for disk encryption""

This reverts commit a1eb750e75ff7c7ef7698deed4442449c33334c8.

Bug: 28154455
Bug: 28694324
Change-Id: I8106bfba28da401b9fd38349c6a9fa9a24f54712
torage/IMountService.java
690c2ea117f90b7759ac280a1c84f5966b1e7938 17-May-2016 Zoltan Szatmary-Ban <szatmz@google.com> Merge "Introduce system API to get source of user restriction" into nyc-dev
fec0d188c166e5a2c517f4494e83c1db11b31c68 13-May-2016 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Don't show new-window item in Downloads per Gabe." into nyc-dev
b3edcd78d25372a2a1e7520b63da1d5d38fbe59f 12-May-2016 Dianne Hackborn <hackbod@google.com> Merge "Fix issue #28400000: Settings memory UI still showing z-ram..." into nyc-dev
ef0a402f5811d326e4e8d35758ab5c348297f9f4 11-May-2016 Dianne Hackborn <hackbod@google.com> Fix issue #28400000: Settings memory UI still showing z-ram...

...but probably shouldn't.

Keep track of whether zram is being included in per-process pss and,
if so, don't add it on separately.

Change-Id: Ic945fc3deca8412272bb6019fe1be4b878cb763a
ebug.java
fdc675968c818a1913b870dd16077f6fe785ee3f 11-May-2016 Fyodor Kupolov <fkupolov@google.com> Merge "Push unlocking/unlocked state to UserManager" into nyc-dev
f570c771f23792837fb63f708bfa5c948d5fcad7 11-May-2016 Steve McKay <smckay@google.com> Don't show new-window item in Downloads per Gabe.

Also, fix regression...don't show "internal storage" option in Downloads.
All other modes, fix inconsistencies in presentation of
internal-storage/new-windows commands by eliminating launch mode inference.
Update VolumeInfo and MTP provider to send correct launch mode extra.

Bug: 28691735,28695347
Change-Id: Ic480925f4c8f1beee4da104a2259c1ce5f28a6a1
torage/VolumeInfo.java
f829c1463b4805545d15924ad6243b9405eb83d6 10-May-2016 Paul Crowley <paulcrowley@google.com> Merge "Revert "Two phases to set the password for disk encryption"" into nyc-dev
a1eb750e75ff7c7ef7698deed4442449c33334c8 10-May-2016 Paul Crowley <paulcrowley@google.com> Revert "Two phases to set the password for disk encryption"

This reverts commit 17e5dce5112fece2d2b9cd070c2f96bf65108e40.

Bug: 28694324
Change-Id: I6d89bc26cb429b195c9bcf640666c495617257b7
torage/IMountService.java
6c915ead38db0a2a6393c40d4fbac959399439c5 10-May-2016 Fyodor Kupolov <fkupolov@google.com> Push unlocking/unlocked state to UserManager

Push unlocking/unlocked state to UserManagerInternal when it's changed in
UserController. Use UserManagerInternal.isUserUnlockingOrUnlocked when
updating flags for filtering in PackageManager.

Bug: 28629076
Change-Id: I8440af090f533f93870d0cff0e3871e114c37efa
serManager.java
serManagerInternal.java
3b25fd081d6af21b16ab4b96ead70766b3d78d06 10-May-2016 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Fix a couple bad links in the javadoc for android.os.health." into nyc-dev
9aa6bb5a4a8bd00a175e8a9c338b52bc24a162b4 09-May-2016 Paul Crowley <paulcrowley@google.com> Merge "Two phases to set the password for disk encryption" into nyc-dev
168638c5949fcff8d28aa4d4dd918cbeaf95f301 09-May-2016 Joe Onorato <joeo@google.com> Fix a couple bad links in the javadoc for android.os.health.

Bug: 28295754
Change-Id: I3b21e204bec626e4d1c6fb8f07580c2854e364eb
ealth/PackageHealthStats.java
ealth/SystemHealthManager.java
181cada18a9feab90627ab27070bc00c29ec337a 09-May-2016 Joe Onorato <joeo@google.com> Flesh out the docs for the android.os.health package.

Bug: 28295754
Change-Id: I04301fbdbfb0708172adb4fd4b4a3658d5ea14eb
ealth/HealthStats.java
ealth/PidHealthStats.java
ealth/ProcessHealthStats.java
ealth/ServiceHealthStats.java
ealth/SystemHealthManager.java
ealth/TimerStat.java
ealth/UidHealthStats.java
17e5dce5112fece2d2b9cd070c2f96bf65108e40 22-Apr-2016 Paul Crowley <paulcrowley@google.com> Two phases to set the password for disk encryption

In one phase, we make the new password work, and in the second we make
it the only one which works ("fixation"). This means that we can set
the password in Gatekeeper between these two phases, and a crash
doesn't break things. Unlocking a user automatically fixates the
presented credential.

Bug: 28154455
Change-Id: I18812f9ce753486ce4e33b4fe2cca392b006b39c
torage/IMountService.java
1476d32b87d85885838fb066bcca48f1df9750b6 05-May-2016 Joe Onorato <joeo@google.com> Add the individual wakeup alarm counts to the batterystats checkin.

Bug: 28601365
Change-Id: I94ad69eeb575f75d62bd45076184f521bd11052d
atteryStats.java
e783460274047ab38e3b9c4294339ff130fe566c 08-Apr-2016 Zoltan Szatmary-Ban <szatmz@google.com> Introduce system API to get source of user restriction

Clients can query who has set a particular user restriction on a user.
Currently the result can be a combination of none, system/user, or admin.

Bug: 27830375
Change-Id: I50ea9db0a59ffe3abbdcbb1a436d9ace7a35a851
UserManager.aidl
serManager.java
d8e877d27d8e5a87446b9e1030325edad268d9e3 04-May-2016 Dianne Hackborn <hackbod@google.com> Maybe fix issue #28457907: Pebble app crash + reboot

Fix this long-standing multi-threading issue in Bundle
when multiple threads are trying to read from a Bundle
and conflict to due unparceling.

There are two critical sections this protects: writing
the bundle in to a parcel (when it is doing this from
the bundle's already parcelled representation), and
unparcelling a bundle into its map of entries.

Change-Id: I5470002f090e63dd623a573da6c204d3b5b661f4
aseBundle.java
a8018ac47a0c0725882a041a1c42e67f52129f02 03-May-2016 Adam Lesinski <adamlesinski@google.com> BatteryStats: Fix units on battery charge counter

The unit for the battery charge counter is in micro-Ampere-hours, not coulombs.
We store the value as uAh but display it in dumpsys as mAh.

Bug:27174034
Change-Id: Ib5cc1ee1c5c191336a3e1f18dbb12c38e833f8d0
atteryStats.java
8ebedfd0d9b22893d2e87e246347d67881f0f848 02-May-2016 Tianjie Xu <xunchang@google.com> Merge "Set security update label in framework" into nyc-dev
4a992cbde834fdf3770e34b21361b47f4786f65f 02-May-2016 Lorenzo Colitti <lorenzo@google.com> Merge changes I86257bc8,I5c2221c5 into nyc-dev

* changes:
Use Netd's binder interface to set resolver configuration.
Add Gservices settings for resolver configuration.
8e48e67827dd2da40e0b28977a9afca0f43de73d 21-Apr-2016 Pierre Imai <imaipi@google.com> Add Gservices settings for resolver configuration.

BUG: 25731675

Change-Id: I5c2221c5a2478fe2fa0fdf9ceeb13a932d758d33
NetworkManagementService.aidl
3cb7f6bdcda2697eff10853360396d8635d66120 30-Apr-2016 TreeHugger Robot <treehugger-gerrit@google.com> Merge "BatteryStats: Keep track of coulomb counter" into nyc-dev
926969b411ca52eeefd6b01c0c7970d8a65ee526 29-Apr-2016 Adam Lesinski <adamlesinski@google.com> BatteryStats: Keep track of coulomb counter

Bug:27174034
Change-Id: Ica66817faa20b9788536f28f0e593483f033904b
atteryStats.java
ac75f1effae79d4bccd3faf65f9a281824a2803e 29-Apr-2016 Tianjie Xu <xunchang@google.com> Set security update label in framework

GmsCore will use different filenames to distinguish a security update
from a normal update. (update.zip for normal update and update_s.zip for
security update.) So, if framework observes the filename as
"update_s.zip", write command "--security" to BCB. This cmd ask the
recovery image to choose the right background string for update.

Bug: 27837319
Change-Id: I2ef12267a6be57d8a81f7f9f34c09aea54530c1f
ecoverySystem.java
0693fd85f69db553204168eeb342e6bf0b5fe7b5 29-Apr-2016 Andreas Gampe <agampe@google.com> Frameworks/base: Use holder in FileUtils

Use a holder for an uncommon Pattern instance in FileUtils.

Allows to compile-time initialize:
* android.os.FileUtils

Bug: 28174137
Change-Id: I4a7a388795a96678b4b26e4f2c02b1117d6a67f6
ileUtils.java
ce18c8167766f92856f94a8e88e19de4698960e6 28-Apr-2016 Jeff Sharkey <jsharkey@android.com> Introduce "unlocking" vs "unlocked" nuance.

There is a narrow window of time during user unlock where we're
reconciling user storage and dispatching the "unlock" status to
various internal system services. While in this "unlocking" state,
apps need to be told that the user still isn't actually "unlocked"
so they don't try making calls to AccountManager, etc.

The majority of internal services are interested in merging together
both the "unlocking" and "unlocked" state, so update them.

Clarify naming in AccountManagerService to make it clear that a local
list is being used, which mirrors the naming in MountService.

To match UX/PM requested behavior, move PRE_BOOT_COMPLETED dispatch
after the user is unlocked, but block BOOT_COMPLETED dispatch until
after all PRE_BOOT receivers are finished to avoid ANRs.

Bug: 28040947, 28164677
Change-Id: I57af2351633d9159f4483f19657ce0b62118d1ce
serManager.java
torage/StorageManager.java
68cdf1997f7b007e4c81089bc402a0356292f4c2 04-Apr-2016 Badhri Jagan Sridharan <Badhri@google.com> Add low power stats to batteryhistory

Exports SOC specific low power state info to batterystats service.
BatteryStats service queries the powerHAL module whenever and
updates the HistoryStepDetails whenever setBatteryState is called by the
BatteryService. The stats get appended to the battery history whenever
there is a change in the battery level.

Bug: 26564574
Change-Id: I02b4db00aec0c69d1558492224f3a4dc1c386fa6
atteryStats.java
5b2747e1338a1a4c59597cfa29e612b858b4a810 25-Apr-2016 Kweku Adams <kwekua@google.com> Removing extraneous field from batterystats dumpsys.

Accidentally introduced in ag/851920.

Change-Id: I89ac490cef1735defa7165e6d27beae20490091d
atteryStats.java
7881cf8f818317cc6efe4d6a4c42da94d6bab223 15-Apr-2016 Ricky Wai <rickywai@google.com> Make "work mode on dialog" show personal challenge in unified work lock

Bug: 28183335
Change-Id: Ib212b283b9561f88899f6e7ea130944391b6e558
serManager.java
ae0e03a9e03de34e37b768b971d7596d7220a053 26-Feb-2016 Svet Ganov <svetoslavganov@google.com> Cleanup of the PackageInstaller API - Frameworks

The PackageInstaller app manages side-loading apps as well
as permission management. It should be updatable, hence
should rely on system APIs to talk to the platform. This
is the first step of defining an API boundary.

Change-Id: I9814eafd0b22ae03b4b847a7007cdbf14c9e5466
uild.java
emoteCallback.java
a2689dcf71d8c2774c8682cc8281135f01a748c7 21-Apr-2016 Ruchi Kandoi <kandoiruchi@google.com> fix build: remove SUSTAINED_PERFORMANCE_WAKE_LOCK link

Change-Id: Ic12b98cbafcc8c81eadba119ab416a9eddb7214a
Signed-off-by: Ruchi Kandoi <kandoiruchi@google.com>
owerManager.java
9c36c02f0ea5f54bcb7cdf2a6175f4b8f92205a2 20-Apr-2016 Ruchi Kandoi <kandoiruchi@google.com> Revert "PowerManager: Adds the Sustained performance API."

This reverts commit 0abc001275d6cf0af4990f521ccff7346a7cd2bf.

Bug: 28150358
Change-Id: I99c71b3d6641310a33e898d6fd475d37c79ba9d0
Signed-off-by: Ruchi Kandoi <kandoiruchi@google.com>
owerManager.java
a645c9753ff004e616a6df4a15c9d2e999508d91 20-Apr-2016 Ruchi Kandoi <kandoiruchi@google.com> Merge "window: Adds a Sustained Performance Mode window flag." into nyc-dev
58f20726e99947a0f2781b5d4be3052be6eb94dd 20-Apr-2016 Andreas Gampe <agampe@google.com> Merge "Frameworks/base: Add holder to BaseBundle" into nyc-dev
43e38de2530fecbbdea81c52d0fde90333432356 15-Apr-2016 Ruchi Kandoi <kandoiruchi@google.com> window: Adds a Sustained Performance Mode window flag.

Adds setSustainedPerformanceMode(boolean) API for applications to set
the mode for a given window. The mode will be disabled automatically when the
window is no longer in focus.

Bug: 28150358
Change-Id: Ibe8bc564eeaaccbcaad5c4f792cda16da931dffd
Signed-off-by: Ruchi Kandoi <kandoiruchi@google.com>
owerManagerInternal.java
52764cba5968888180ceedf717d85e08ffd747cc 20-Apr-2016 Andreas Gampe <agampe@google.com> Frameworks/base: Add holder to BaseBundle

Move EMPTY_PARCEL into an inner holder class. Add holder to
preloaded-classes. Clean up dependencies.

Allows to compile-time initialize:
* android.os.BaseBundle
* android.os.Bundle
* android.os.PersistableBundle
* android.telephony.CarrierConfigManager

Bug: 27265238
Change-Id: Ib8017aa419c2985963b3c68a8046462a38652ef2
aseBundle.java
undle.java
ersistableBundle.java
bee44ae8e5da109cd8273a057b566dc6925d6a71 19-Apr-2016 Joe Onorato <joeo@google.com> Consolidate the HealthStats UI to only use milliseconds.

BatteryStats uses a mix of microseconds and milliseconds, and keeping
which one is which straight is difficult. The internal bookkeeping
is left using us where it already does, for the extra precision. But
having the API be mixed will only make it harder for developers, and
lead them to make the same mistake that I did in the API where I
missed some conversions.

Bug: 28197858
Change-Id: I99114bae259b9bdd47ce5c22e724d87bbd63336d
ealth/UidHealthStats.java
d3a25ad4b98d717673cb3a81ae1344ff90107d8c 19-Apr-2016 Jeff Sharkey <jsharkey@google.com> Merge "Disable "defusable" logging for now." into nyc-dev
0d47f4b6463077074abd6bed489a5f9243615c64 19-Apr-2016 Adam Lesinski <adamlesinski@google.com> Merge "BatteryStats: Introduce Async external stats requests" into nyc-dev
cb45951cad9d403fd9933d723657d6d5838f5e59 18-Apr-2016 Jeff Sharkey <jsharkey@android.com> Disable "defusable" logging for now.

Bug: 28240784
Change-Id: I2c259867a8169eef220fb9faea6cdcafdde675b8
aseBundle.java
ad14b884f4110e03ec7b5ba7b913be25d19aa95c 18-Apr-2016 Jeff Sharkey <jsharkey@google.com> Merge "Consistent creation/destruction of user data." into nyc-dev
a09b4d2a611a7606e8fc8c73a24bd941b6fc173f 15-Apr-2016 Narayan Kamath <narayan@google.com> Remove unnecessary allocation+unboxing of objects.

Transforming String->int can be done with 0 allocations
using Integer.parseInt.

bug: 28078871
Change-Id: I8d9f322d7154728849dde61ef282046032858d60
trictMode.java
010bf374d8145528f8733dfa6ef101b15de23a8d 11-Apr-2016 Adam Lesinski <adamlesinski@google.com> BatteryStats: Introduce Async external stats requests

Instead of calling out to external processes with a blocking IPC,
pass along a Binder on which the external process can pass back
the response. The calling process can then wait for the reply with
a timeout.

This eliminates watchdog restarts of the system_server when an external
process like telephony or bluetooth hangs.

Bug:26842468
Change-Id: I1b242e4ed22a63f1a4a0be8c78de8ac4d7bf56c5
atteryStats.java
ynchronousResultReceiver.java
0696434c623dced9fe9ed3873f59b64334f240e7 15-Apr-2016 Amith Yamasani <yamasani@google.com> Address API review for UserManager user creation

Don't return null from createUserCreationIntent()
Provide a way for apps to query if the device
supports multiple users.

Some additional documentation for UserManager class to
make things clear about the types of users and relationship
with accounts.

Change-Id: I768d816e73a1d7f61cdc415f9e482adc79e2715a
Fixes: 28150359
serManager.java
fcf1e55821b694df3b8434f40aa3b6d3c3e7ea50 15-Apr-2016 Jeff Sharkey <jsharkey@android.com> Consistent creation/destruction of user data.

Preparing and destroying users currently needs to be split across
installd, system_server, and vold, since no single party has all the
required SELinux permissions.

When preparing user directories on a storage device, always enforce
the serial number and destroy data if we run into a mismatch. When
deleting a user, write the updated user list first before we start
destroying data. Also start reconciling users on internal storage
at boot, so we can recover from stale data left behind from partially
destroyed users.

Check both CE and DE user directories when reconciling user storage
on a newly mounted storage device.

Bug: 27896918
Change-Id: I4536c82b0196e2720628c4f73fccb742c233350b
ileUtils.java
torage/IMountService.java
torage/StorageManager.java
f02420c5e1bcc8b2c278f272aca633fe6d2b4e88 04-Apr-2016 Benjamin Franz <bfranz@google.com> Maybe decrypt user when quiet mode is disabled

When quiet mode is disabled for a user and that user is not currently
decrypted, we show a confirm credentials screen to trigger decryption
of that user. Only if that was successful, do we actually disable quiet
mode.

Bug: 27764124
Change-Id: Ib1f649194d89e225dad62c14f3ddba1fa3d79da2
UserManager.aidl
serManager.java
cadfc77d0355ef57308ef1bf8bf43560d2b2e245 13-Apr-2016 Jeff Sharkey <jsharkey@google.com> Merge "Fix broken javadoc." into nyc-dev
f82c2f08541481cae814e88a2b35f6d59d8d42aa 12-Apr-2016 Jeff Sharkey <jsharkey@android.com> Fix broken javadoc.

Change-Id: I9f2050fd6040234bb1d759ab346f79fc41247aa9
torage/StorageManager.java
93c442e44f3aa6bd7a27ef74770aeeb2dfb4880d 12-Apr-2016 Felipe Leme <felipeal@google.com> Merge "Make getStorageVolume(File file) public." into nyc-dev
ba9d893976f02e003debd14b8685fb60fce7ef8e 12-Apr-2016 Adam Lesinski <adamlesinski@google.com> BatteryStats: Don't log BluetoothScanTimer when it doesn't exist

Bug:27998591
Change-Id: I80ca8a2353141c16595b4be0b0aed195f40e366a
atteryStats.java
c250e45eda7ab38c88b3e5e7e302917cd001d3af 12-Apr-2016 Felipe Leme <felipeal@google.com> Make getStorageVolume(File file) public.

BUG: 27951594
Change-Id: I354f6a29b3fa3374ea07bcbe14096e9673d282c5
torage/StorageManager.java
4c74334c4425e43dfb53bc2ef707eebb1bef7d5b 11-Apr-2016 Fyodor Kupolov <fkupolov@google.com> Merge "Added getProfileIds method returning array of userIds" into nyc-dev
0f36ba81e7a8c05d6500ce32197989c6fc3c30fc 08-Apr-2016 Ruchi Kandoi <kandoiruchi@google.com> Merge "batteryService: Add Charge Counter." into nyc-dev
6361e22feae7cdb0968f1056c7834e2825eeae31 07-Apr-2016 Ruchi Kandoi <kandoiruchi@google.com> batteryService: Add Charge Counter.

Bug: 27174034
Change-Id: Ib8bc8f617288c0ad543c67e0fa609c5a0c87b5fd
Signed-off-by: Ruchi Kandoi <kandoiruchi@google.com>
atteryManager.java
atteryProperties.java
7f98aa4aa93497692f200c553d2d6fff402e3de2 07-Apr-2016 Fyodor Kupolov <fkupolov@google.com> Added getProfileIds method returning array of userIds

Previously many usages of UserManager.getProfiles and getEnabledProfiles
were only using ids of returned users. Given that the list of users needs
to be parceled and unparceled for Binder calls, returning array of ids
minimizes memory usage and serialization time.

A new method getProfileIds was introduced which returns an array of userIds.
Existing method calls were updated where appropriate.

Bug: 27705805
Change-Id: Ic5d5decd77567ba0f749e48837a2c6fa10e812c0
UserManager.aidl
serManager.java
8b704d4474caf9fa0c7a734582fb6cce55248de4 07-Apr-2016 Jeff Sharkey <jsharkey@google.com> Merge "Revert "Remove old FUSE bypass now that we have sdcardfs."" into nyc-dev
8575da1cc0e3c9449e21bae270b489b8e815fccb 07-Apr-2016 Jeff Sharkey <jsharkey@google.com> Revert "Remove old FUSE bypass now that we have sdcardfs."

This reverts commit feef8b62ee60c8418bd7238522c06098e61eecff.

Change-Id: I90a3b8edf95cb5b631a85168671cf8b5a406d9ea
torage/StorageManager.java
33dd156ed0ed839c5e77beb116f6f1a9566416e3 07-Apr-2016 Jeff Sharkey <jsharkey@android.com> Give users and devices control over sdcardfs.

Instead of relying only on kernel support for sdcardfs, give each
device the ability to quickly toggle between sdcardfs and FUSE. Also
add the ability to users to explicitly enable/disable the behavior
for testing and debugging purposes.

Bug: 27991427
Change-Id: Ia57f12f6ead888ab85101004bdd8c8003537b116
torage/StorageManager.java
74cd3de6f4889d54a3da930de5e7ad00b97f03e9 07-Apr-2016 Jeff Sharkey <jsharkey@android.com> Automatically trace messages on shared loopers.

There are a handful of looper threads in the system_process that
are shared by dozens of different internal services. To help track
down what these operations are, tag the processing of each message
with a string that tries describing where it originated from: the
class name of the Handler, and the message number or class name of the
Runnable.

Bug: 28046299
Change-Id: I409ec43fea8daaae4fd70df05d4fed929a7249ae
andler.java
ooper.java
feef8b62ee60c8418bd7238522c06098e61eecff 06-Apr-2016 Jeff Sharkey <jsharkey@android.com> Remove old FUSE bypass now that we have sdcardfs.

This forces everyone to go through sdcardfs, instead of letting them
around the back door.

Bug: 27992761
Change-Id: If1d4d5daa4b32bb3be7de10102bab24d63552b65
torage/StorageManager.java
94887874e385797ac5290e867fe412b9d6fc2f9c 05-Apr-2016 Erik Kline <ek@google.com> Don't flush DNS cache on route changes.

Since Lollipop, routes are isolated within Networks. Flushing a
Network's DNS cache whenever that same Network's routes are updated
doesn't provide any benefit. Any system components depending on this
behaviour need to uncovered and fixed.

Additionally, clean up no-longer-used flushNetworkDnsCache(). This
should be replaced, when needed, by a proper binder interface to netd.

Change-Id: I34bf79e4839da014d466058a876d754209d0c007
NetworkManagementService.aidl
434590405071b462573273637899599332c34187 05-Apr-2016 Dianne Hackborn <hackbod@google.com> Merge "(Docs only) Make battery stats process state docs more clear." into nyc-dev
a0200e37026ef3fd0b3e677d3ecb73a16e108ce5 31-Mar-2016 Dianne Hackborn <hackbod@google.com> (Docs only) Make battery stats process state docs more clear.

Change-Id: I7e86705ec5fa7be8d6a74e708bbf166bec17494f
atteryStats.java
5cb05f810b618112443271fdc8f1cf731593657e 05-Apr-2016 Glenn Kasten <gkasten@google.com> Merge "Fix typo" into nyc-dev
570f1c8b2395127a966832e1e2d8a8521cdb90f6 04-Apr-2016 Glenn Kasten <gkasten@google.com> Fix typo

Change-Id: I973dfaa17adbb7dce4ceda2e6985937823ef039c
owerManager.java
b4aa2e9c37881197fa939d8ee29d21dfdc962e40 30-Mar-2016 Ruchi Kandoi <kandoiruchi@google.com> PowerManager: Adds isSustainedPerformanceModeSupported()

isSustainedPerformanceModeSupported() returns true if the device
supports the mode. It checks for the boolean config
"config_sustainedPerformanceModeSupported" to be set.

Bug: 22864186
Change-Id: I0f9f0bcbb8c02b19f37e9c87570d88e8f78f7992
Signed-off-by: Ruchi Kandoi <kandoiruchi@google.com>
owerManager.java
250985f556a0cb60ced826b8c9a34a11e29db008 31-Mar-2016 Christopher Tate <ctate@google.com> Handle interaction of Bundle.hasFileDescriptors() with removal

Removing entries from a Bundle may change its has-FDs state, so now
induce a recheck after removals. In support of that, make the
recheck set the known state in all cases, not just in the has-FDs
case; and note that filterValues() inherently produces a result that
is known to have no FDs.

Bug 26676151

Change-Id: Ida07b77ad2046aeafb98e0b164cd571ce45d064f
undle.java
ee1062e4c011578906edf08d340eff5a55ebe085 31-Mar-2016 Ruben Brunk <rubenbrunk@google.com> Merge "Include VR throttling limit in hardware properties." into nyc-dev
2c0ae91f2d22b2c9a3b506d3a7f60bc31f72c57d 31-Mar-2016 Jeff Sharkey <jsharkey@google.com> Merge changes Ifecff4f1,Ia302de46 into nyc-dev

* changes:
Make preferred activities direct-boot aware.
Make Parcelable classes final, API cleanup.
70168dde6e1da06042818350fc6e258188d001ae 31-Mar-2016 Jeff Sharkey <jsharkey@android.com> Make Parcelable classes final, API cleanup.

Remove some Context methods that leaked through. Add lint rule to
recommend using List<? extends Parcelable> instead of Parcelable[].

Bug: 27932224, 27930145, 27932911
Change-Id: Ia302de46cdb0c5101fa175a09316df91aeefcf0d
ealth/TimerStat.java
ac4dfec1c6d684b7d0d8ce09a5cba8fa9003e3a4 31-Mar-2016 Adam Lesinski <adamlesinski@google.com> Merge "BatteryStats: Add ble scans to checkin data and start global ble scan timer" into nyc-dev
27c49d5790647cc0bb81cc76a999ae65fe4a34cc 31-Mar-2016 Jeff Sharkey <jsharkey@google.com> Merge "Fix a deadlock due to wtf in BaseBundle" into nyc-dev
d9b99be587962e5cb696327cf837f8b82ecd6b5c 31-Mar-2016 Adam Lesinski <adamlesinski@google.com> BatteryStats: Add ble scans to checkin data and start global ble scan timer

Bug:27930206
Change-Id: Ieb81eddeb0ac54ad93615f3abdc18cbcab19a729
atteryStats.java
93cfef460c4d15c706bfb03456a00f6e6086b989 31-Mar-2016 Ruchi Kandoi <kandoiruchi@google.com> Merge "Revert "PowerManager: Hide the SUSTAINED_PERFORMANCE API."" into nyc-dev
2387932b74699c4d5baa493271e999e31b09d2b8 31-Mar-2016 Amith Yamasani <yamasani@google.com> Fix a deadlock due to wtf in BaseBundle

Use Slog.wtf instead of Log.wtf, so that it is
asynchronously reported.

Mark incoming application restrictions as defusable
since they are being unparceled.

Bug: 27811728
Change-Id: I166de69a74417e439ec5ef9159fbbfbfe711dde6
aseBundle.java
2ac876945bfb388fed8b796c6d8c8e7f2e97f0d4 30-Mar-2016 Felipe Leme <felipeal@google.com> Minor tweaks on Scoped Directory Access:

- Only allow entire directory access on non-primary volumes.
- Do not display primary storage label on scoped access.

BUG: 27743842
BUG: 27676858
Change-Id: I9884fb1e2df3534fceebc5d5bef44adfb758724c
torage/StorageVolume.java
7ef20dd340708f6a542aa0859b3dd2652a0e9385 30-Mar-2016 Ruchi Kandoi <kandoiruchi@google.com> Revert "PowerManager: Hide the SUSTAINED_PERFORMANCE API."

This reverts commit 302710deaa02ad5fba5e39d9f0f652d3587b8b91.

Change-Id: I3e7e071838bae9460e126aac099b31f5213e3c6c
owerManager.java
9971d02c38151a4289552d5b1cfb7b3c7c0acec6 28-Mar-2016 Tao Bao <tbao@google.com> Merge "UpdateEngine: Add resetStatus() as system API." into nyc-dev
c02bfae73e139f2a1c56cc6b051bfc7877b8cf1d 27-Mar-2016 Jeff Sharkey <jsharkey@android.com> Include "invisible" volumes in new storage API.

The purpose of the new StorageVolume API is to grant access to
volumes that aren't typically "visible" to a developer, so include
them in the returned results.

Also return the real mounted state instead of augmenting based on
the caller's storage permissions. Clean up API naming slightly and
return as List.

Bug: 27615770
Change-Id: Ida921a4b91e5af81e418e76f672d9108f45a9781
torage/StorageManager.java
torage/StorageVolume.java
bd91e2f3f6aca512a02be645b2515b5e3331e177 22-Mar-2016 Jeff Sharkey <jsharkey@android.com> Update PRE_BOOT_COMPLETED for FBE.

Now that CE data isn't available until after a user is unlocked, we
need to delay the PRE_BOOT_COMPLETED broadcasts. This is done by
adding a new RUNNING_UNLOCKING user state to the UserController
lifecycle.

We now track the last fingerprint a user was logged in under, and we
dispatch PRE_BOOT receivers when that fingerprint changes. To work
around battery pull issues, we only persist the updated fingerprint
once all PRE_BOOT receivers have finished. This is less granular
than the original solution, but it's still correct. We only consider
a user as "logged in" once it transitions into the RUNNING_UNLOCKED
state.

When starting a process, track if the user was "unlocked" when
started, so that we only spin up unaware providers in processes
started before user unlock.

Add generic IProgressListener to communicate PRE_BOOT progress and
strings up to lock screen. For now, LockSettingsService just blocks
until finished, but it could display these strings in the future.

Bug: 27220885
Change-Id: I349439776b885acd32f6a578d8951ffd95640be2
ProgressListener.aidl
946ef6417b0b9ba18d509843146e5a1a28ed1049 25-Mar-2016 Ruben Brunk <rubenbrunk@google.com> Include VR throttling limit in hardware properties.

Bug: 27549685
Change-Id: I0e7f06c772c6547bb3357218c1ebf295cbd1dbd2
ardwarePropertiesManager.java
771d0c2be4c6a38e7d99beda03b7618d7188eac4 25-Mar-2016 Felipe Leme <felipeal@google.com> Merge "Refactored NetworkManagerService to support Data Saver." into nyc-dev
65be3025fd07d53137f5434794d1d1b3a0933aab 22-Mar-2016 Felipe Leme <felipeal@google.com> Refactored NetworkManagerService to support Data Saver.

Netd provides 2 bandwidth control rules to restrict which uids can use
metered networks:

- bw_penalty_box is a blacklist-based firewall chain used to determine
which uids do not have access to metered interfaces.

- bw_happy_box is whitelist-based firewall chain used to determine which
uids have access to metered interfaces.

Currently, both NetworkManagerService (NMS) and
NetworkPolicyManagerService (NPMS) uses just the bw_penalty_box rule,
which makes turning Data Saver mode on / off too slow (since NPMS needs
to build the bw_penalty_box on demand); this CL adds support for both
rules on NMS, although NPMS doesn't take advantage of it yet (it will be
refactored in a separate CL).

BUG: 27127112
BUG: 26685616
Change-Id: Ib954574f7c86269fc9b4cf8ce4ba72ba5878c23d
NetworkManagementService.aidl
d3c454db291e2780c4ad5fe8b5d9e8ce3fbea114 25-Mar-2016 Griff Hazen <griff@google.com> Detect ranchu as emulator

Bug: 27780791

Change-Id: I23e5511acfba22260714874baf5e9380480b22bf
uild.java
966f1c93487b8bc9e259de11e1aaf0fb35b11dc2 25-Mar-2016 Dianne Hackborn <hackbod@google.com> Merge "Fix issue #25817435: Batterystats missing UIDs for secondary users" into nyc-dev
41f02e5d50bd9d13e17f44939b9499eab9404e90 25-Mar-2016 Ruben Brunk <rubenbrunk@google.com> Merge "Allow current VrListenerService to read thermal info." into nyc-dev
9cfba3502079f5919ec065da2f8d86fe35c475da 25-Mar-2016 Dianne Hackborn <hackbod@google.com> Fix issue #25817435: Batterystats missing UIDs for secondary users

Change-Id: I9ad907571f04b5825d234758347659544a4de6ab
atteryStats.java
541af9b119b7312aaa4545a9c103e7ed1365345b 24-Mar-2016 Felipe Leme <felipeal@google.com> Removed obsolete @NonNull.

BUG: 27676858
Change-Id: Ic3916769c1fa9d557294bcdbbc94e00c68376a5d
torage/StorageVolume.java
9eb5555aa6788ec948e7af8666a9155792b684f8 23-Mar-2016 Felipe Leme <felipeal@google.com> Merge "Allow Scoped Directory Access on whole volume." into nyc-dev
8f1d5cbabb3bc4ef61b9c2edc70fcfd5d75efec8 23-Mar-2016 Ruben Brunk <rubenbrunk@google.com> Allow current VrListenerService to read thermal info.

Bug: 27549685
Bug: 22855417
Change-Id: I2d0cb85b54767876bcbf503b5f198bd7f4065680
ardwarePropertiesManager.java
b7e47ae84f6fbfb082f5a286db2e5f0bae50c1a1 22-Mar-2016 Tao Bao <tbao@google.com> UpdateEngine: Add resetStatus() as system API.

It calls update engine to reset an already applied payload.

Also change all the RemoteExceptions in UpdateEngine class to be
rethrown as RuntimeExceptions according to API guidelines [FW9].

Bug: 27123767
Change-Id: I936331019cdb00f4f225f5605e51cc94bb491e24
pdateEngine.java
5f7d673f3b69019288adcf11325f71aeb2b8af49 22-Mar-2016 Aga Wronska <agawronska@google.com> Merge "Add config flag to show/hide internal storage. Hide internal storage by default." into nyc-dev
8673b2899e775014336efff44ea88dcac2b25bdd 21-Mar-2016 Tony Mak <tonymak@google.com> Revert getUserInfo change and add isManagedPorfile(int userId)


Bug: 26469166
Change-Id: I60b70170ddc80432fc8f638b1f63c4e9f5212785
UserManager.aidl
serManager.java
a17b7d0163fc1309b40ed1c38056b71ef9d147fb 22-Mar-2016 Jeff Sharkey <jsharkey@google.com> Merge "Store trace files in app-specific dirs." into nyc-dev
bf4a6574b17efd9d7ad6623f61a3c608b1664055 22-Mar-2016 Lorenzo Colitti <lorenzo@google.com> Delete dead code.

Change-Id: If8052efaa00f15e5c7eb038435be33206d54276a
NetworkManagementService.aidl
1719b3555dc9bff5394045585051e7d5684bceb1 21-Mar-2016 Aga Wronska <agawronska@google.com> Add config flag to show/hide internal storage.
Hide internal storage by default.

Revert "Always show intern storage."

This reverts commit 7c4395804e450533afb553ab992c47f737da8a9b.

Bug: 27683276

Change-Id: I04ea8b9a307babcea003f9bec200d41265a42c7f
torage/VolumeInfo.java
3a6e0ec223637530679e6c4ab132cbf1d221aec1 21-Mar-2016 Jeff Sharkey <jsharkey@android.com> Store trace files in app-specific dirs.

The previous default location of "/sdcard" became painful to use
starting in M, because it required a runtime permission. So now we
default to storing trace files in app-specific directories on shared
storage, which apps always have write access to with no additional
permissions.

Update docs to be consistent between all overloads.

Bug: 22807654
Change-Id: If4feca7c8778dfdf4ccce8cfb68418dc416260b5
ebug.java
db892b84e513f174d29f67d293435407a0ac7c6c 18-Mar-2016 Felipe Leme <felipeal@google.com> Allow Scoped Directory Access on whole volume.

There are some scenarios where an app needs access to the whole SD Card,
not subdirectories. For example, user might have a SDCard with
directories like vacation_pictures (instead of Pictures/vacation);
another example is a file management app.

BUG: 27676858
Change-Id: I20ef713de7e4dfa7e2d7d07bab11898af186d673
torage/StorageVolume.java
eb84552ef0135c1069f67a12f2e9985d4191880f 01-Mar-2016 Polina Bondarenko <pbond@google.com> Added skin temperature, thresholds to HardwarePropertiesManager

Bug: 27425887
Change-Id: I13f69ae37906b71d93edbf6bea6daf809d97cfd5
ardwarePropertiesManager.java
HardwarePropertiesManager.aidl
2fefbcf0d1b91f37684387971721c90112a9ac89 18-Mar-2016 Dianne Hackborn <hackbod@google.com> Fix issue #27653326: Sync doesn't work in doze maintenance

Add a (configurable) delay between when we start a maintenance
window until the minimum time we will end it.

Also switch to using the alarm manager callback API. (Yay!)

Also fix a little printing problem in the alarm manager dump
so we put the package name and not some class hash in the
summary string of an alarm entry.

Change-Id: I4281e5c80bc8b26ebc1fb6f603ec33ec0e379daa
atteryStats.java
620a28bad2b1ddabddf2d78b5a20a762ebc29205 18-Mar-2016 Jeff Sharkey <jsharkey@google.com> Merge "Mark more Bundles as being defusable." into nyc-dev
e6e08b4a5aa6da2bd8234632e030023bcdb7e9e7 18-Mar-2016 Tony Mantler <nicoya@google.com> Merge "Add safe-mode reboot to PowerManager" into nyc-dev
b8009fddd85aa5ecd6b2321f92a1ae0568089a54 14-Mar-2016 Tony Mantler <nicoya@google.com> Add safe-mode reboot to PowerManager

b/12787723

Change-Id: If7e6ff63532b49b9e758db290a877f7dbfa8a8b7
PowerManager.aidl
owerManager.java
a04c7a7c6442b8c6f87f5dd11fc5659cdb92decc 18-Mar-2016 Jeff Sharkey <jsharkey@android.com> Mark more Bundles as being defusable.

They're destined for the system, so they're okay to look inside.

Bug: 27726127
Change-Id: Ic85c308a8efe6f9b8652952717c72b3c663d328a
undle.java
2a4e495448a048bef9d3b2a756816a622abd57b0 18-Mar-2016 Jeff Sharkey <jsharkey@google.com> Merge "Update direct boot related documentation." into nyc-dev
cf3f0a11a83e7a798e0586a78efdafc82a7f3d08 18-Mar-2016 Jeff Sharkey <jsharkey@android.com> Update direct boot related documentation.

Also hide a few APIs as requested by council. Add a method to
easily determine if a given File would already be encrypted at rest
by the OS.

Bug: 27531029
Change-Id: Icad5f1cd56411ad3ac707db85fd7449acdcc4b94
eadSystemException.java
nvironment.java
serManager.java
torage/StorageManager.java
6fdd3afdcc43c1dec03ee82e9e1d69e88170d932 17-Mar-2016 Phil Weaver <pweaver@google.com> Merge "Treat accessibility actions as user activity" into nyc-dev
8a372a0a280127743ce9a7ce4b6198c7a02d2a4f 16-Mar-2016 Jeff Sharkey <jsharkey@android.com> Refactoring FBE APIs based on council feedback.

Mostly consists of removing the word "encryption" from most APIs,
since we can't actually make promises about the data being encrypted.

Bug: 27531029
Change-Id: Iace9d7c4e64716abf86ed11847c40f3947e1d625
serManager.java
da80d676c70fa07d4efe566b2c74b3fbc61805b0 16-Mar-2016 Phil Weaver <pweaver@google.com> Treat accessibility actions as user activity

Resurrecting ag/665912.

Bug: 19531976
Change-Id: Ibdddd507215e61b9f4313c36eab8845e9940a7ac
atteryStats.java
owerManager.java
1360868de8a2eb724bd82bc30858c2e345c83482 17-Mar-2016 Daichi Hirono <hirono@google.com> Merge "Add suffix number when copying a file." into nyc-dev
fc7fb7533f46b53247d1e6e6edca6e6c9ac676fe 15-Mar-2016 Daichi Hirono <hirono@google.com> Add suffix number when copying a file.

If we have an existing file in the destination directory, which has the
same name with the source file, adding suffix number is
DocumentsProvider's responsibility.

Because MTP does not provide a way to check existance of files with
given name, the logic is implemented as try-and error strategy. The CL
lets If we MtpDocumentsProvider assume we have a file that shares the
same name with the source file if it failed to invoke
MtpDevice#sendObjectInfo. In this case MtpDocumentsProvider retry to
invoke sendObjectInfo with new name with suffix number.

BUG=26991190

Change-Id: I223ac5031f079bc91eb27709b0356f621a1ed55b
ileUtils.java
7410fb4b394c46fcaa195ba1071750469f776c80 17-Mar-2016 Jeff Sharkey <jsharkey@android.com> Oops, missed a default Bundle flag.

Bug: 27706598
Change-Id: Idde1c25ea1b5944657075cd5f0da65396280f757
undle.java
d136e51a99df5275eaafdde407e89e78c02b829b 10-Mar-2016 Jeff Sharkey <jsharkey@android.com> Defuse Bundles parsed by the system process.

It's easy for apps to throw custom Parcelables into Bundles, but
if the system tries peeking inside one of these Bundles, it triggers
a BadParcelableException. If that Bundle was passed away from the
Binder thread that delivered it into the system, we end up with a
nasty runtime restart.

This change mitigates this trouble by "defusing" any Bundles parsed by
the system server. That is, if it encounters BadParcelableException
while unpacking a Bundle, it logs and delivers an empty Bundle as
the result.

Simultaneously, to help catch the system process sticking its
fingers into Bundles that are destined for other processes, a Bundle
now tracks if it's "defusable." For example, any Intents delivered
through ActivityThread are marked as being defusable, since they've
arrived at their final destination. Any other Bundles are considered
to be "in transit" and we log if the system tries unparceling them.

Merges several Parcel boolean fields into a flags int. Add better
docs to several classes.

Bug: 27581063
Change-Id: I28cf3e7439503b5dc9a429bafae5eb48f21f0d93
adParcelableException.java
aseBundle.java
undle.java
ersistableBundle.java
4dc008cda2980fabb6acbf8a3b7096d1090ee36f 16-Mar-2016 Tony Mak <tonymak@google.com> Fix NotificationListenerService fail to mirror work notification

1. Instead of getting application info in runtime, just retrieve the
one in the context to avoid cross user operation.

2. Functions in PackageManager that retrieve badged icon now return
badged icon if the targer user is managed profile instead of checking
whether target user is a managed profile of the user in mContext.

3. Relax the restriction of getUserInfo, if the caller is asking a user
in the same profile group or having the manage user permission, we let
it go.

Bug: 26469166

Change-Id: Ia1ffc5743f7d94bd489cdb7571eaed51499ebdd9
serManager.java
36baafe92cdf9139ec9c2215cbe62d6df1b32b3f 15-Mar-2016 Tao Bao <tbao@google.com> Don't reboot into recovery if block map file is missing.

We added a third parameter to RecoverySystem.installPackage() to let the
caller to indicate the package has been processed (uncrypt'd). We need
to ensure the caller's claim is true by checking the existence of the
block map. Otherwise the device will fail for sure when booting into
recovery.

Bug: 27620932
Change-Id: I6325455253480055f14eb0cf020689ac37328602
ecoverySystem.java
f9b941f528e28f4afa7c6e09b9dff6f65d72f26c 11-Mar-2016 Makoto Onuki <omakoto@google.com> Add a flag to log service side runtime exception

Often during development I get runtime exceptions from system
server but I only see client side stacktrace on logcat, which is
pretty much inconvenient.

Change-Id: I9c60fd92f6008d2c3a7eaf848b89ce3f1dffbe8a
inder.java
839ff816a516a6eb806aee2cef681ad3b3c14b56 10-Mar-2016 Dianne Hackborn <hackbod@google.com> Merge "DO NOT MERGE: Add separate information about user whitelist." into nyc-dev
262ae5c8eb1579bccaa0f6953b39e6fd65ff2288 11-Feb-2016 Dianne Hackborn <hackbod@google.com> DO NOT MERGE: Add separate information about user whitelist.

Use this in the alarm manager to allow user whitelisted apps
to have free access to scheduling alarms.

Coming next: lifting sync/job restrictions.

Bug #26851107: Allow user whitelist apps more freedom

(Cherry-picked to nyc since it got lost in the branch from master.)

Change-Id: I4dc9f07514627ebdb6b6eff7c7a749f2c51a3797
DeviceIdleController.aidl
04a72a2a51ce3d128959b2ba53b5c22576322e59 10-Mar-2016 Joe Onorato <joeo@google.com> Merge "Add an API for apps to get their System Health / Battery Stats data." into nyc-dev
713fec85b8612256211f09c62b8958a99fe5b9db 04-Mar-2016 Joe Onorato <joeo@google.com> Add an API for apps to get their System Health / Battery Stats data.

Change-Id: Ib27e1be469b826f6d83d73ce6024102bbdb1d47a
atteryStats.java
ealth/HealthKeys.java
ealth/HealthStats.java
ealth/HealthStatsParceler.aidl
ealth/HealthStatsParceler.java
ealth/HealthStatsWriter.java
ealth/PackageHealthStats.java
ealth/PidHealthStats.java
ealth/ProcessHealthStats.java
ealth/ServiceHealthStats.java
ealth/SystemHealthManager.java
ealth/TimerStat.java
ealth/UidHealthStats.java
ealth/package.html
93720d572971115b4968acc8f64529b5698bfd11 10-Mar-2016 Jeff Sharkey <jsharkey@google.com> Merge "Log when pre-N apps send too much to DropBox." into nyc-dev
b8e8a91f54f9f11a5936611c00d198ed21824854 10-Mar-2016 Jeff Sharkey <jsharkey@android.com> Log when pre-N apps send too much to DropBox.

Once they target N, they'll start getting exceptions, which is
intended to make sure they pay attention to data that would have
otherwise been dropped on the floor.

Bug: 27571535
Change-Id: I49163679c629cd0788327d2c3a654e757ecdcb99
ropBoxManager.java
4a07c34ca86fddb75332eba22a4d7b9bd48205db 09-Mar-2016 Makoto Onuki <omakoto@google.com> Merge "ShortcutManager: add remaining APIs." into nyc-dev
d5a3f3df4097e4a57e0d31fba994c91d8996abf8 09-Mar-2016 Paul Lawrence <paullawrence@google.com> Merge "Add API to IMountService to get encryption state" into nyc-dev
2612bbc0f5ae5422ba3e8e685ae375b2b8626fda 09-Mar-2016 Martijn Coenen <maco@google.com> Merge "API to query which cores are exclusively assigned." into nyc-dev
5504622fb01ab9774b5e73d05f86ee03a8b68ab7 08-Mar-2016 Makoto Onuki <omakoto@google.com> ShortcutManager: add remaining APIs.

- Icons are now persisted. (under /data/system_ce, as PNGs)
- the "load icon" APIs in LauncherApps are supported.
- Implement updateShortcuts()

- Addressed all the comments on the previous CL
- @hide the newly added constructor for PersistableBundle

- Enhance incoming shortcut validation
- A lot of internal clean-up.

Bug 27548047

Change-Id: I8e3c1ccd3e0a997a6d271c84d81170f0c022b60e
ersistableBundle.java
20be5d62471d520eed3a52d90c11944464a71c07 26-Feb-2016 Paul Lawrence <paullawrence@google.com> Add API to IMountService to get encryption state

Bug: 18002358
Change-Id: If7d9c9a5ed38ac37849fcf638ec10c76d2f419a1
torage/IMountService.java
torage/StorageManager.java
cd4bdf3eb91c1cc2757d32a86fc90745d0dff990 03-Mar-2016 Martijn Coenen <maco@google.com> API to query which cores are exclusively assigned.

On devices with cpuset support, the foreground app
may have a core exclusively assigned to it. Add an
API that allows apps to query which core that is,
so it can use that to set scheduling affinity.

Bug: 27381794
Change-Id: Iea148776da6d7abb745ccf9e6ad5ad46491e340a
rocess.java
6f7362d92573e4ae693bc513dca586d6a4eb087b 04-Mar-2016 Makoto Onuki <omakoto@google.com> Introducing ShortcutManager

What's supported:
- Most APIs are implemented, except for SM.updateShortcuts(),
the icon APIs in LA, and LA.startShortcut().
- Persisting information, except for icons
- Throttling

In addition, now PersistableBundle has a public copy
constructor from a Bundle. (Do we want to @hide it?)

TODOs:
- Add icon support
- Implement missing APIs
- Listen to PACKAGE_* broadcasts and do clean-up
- Support multi-launcher apps (pinned shortcuts per launcher)
- Dev option to reset throttling
- Load throttling config from Settings
- Backup & restore
- Figure out LauncherApps permissions (BIND_APPWIDGETS??)
- Other minor TODOs in the code
- Better javadoc

Note: This requires Idf2f9ae816e1f3d822a6286a4cf738c14e29a45e

Bug 27325877

Change-Id: Ia5aa555a4759df5f79a859338f1dc5e624cd0e35
aseBundle.java
ersistableBundle.java
ef1971ffc505f75ca71f7ba78d52fb3ed323fa16 03-Mar-2016 Dianne Hackborn <hackbod@google.com> Merge "Add APIs to find out the time when a process was created." into nyc-dev
d98885c128e7045da244098d82751da6e792d677 02-Mar-2016 Dianne Hackborn <hackbod@google.com> Add APIs to find out the time when a process was created.

Change-Id: Id0d12c377f278fec6e31a98eab0c865a23c006ec
rocess.java
c9f0a1103ea307e5e157e63e7915b38f83d27ca3 03-Mar-2016 Vadim Tryshev <vadimt@google.com> Merge "Adding getManagedUserBadgedDrawableForDensity() to PackageManager." into nyc-dev
66ae66a7f74ee835807a141a216afbb254664510 19-Feb-2016 Vadim Tryshev <vadimt@google.com> Adding getManagedUserBadgedDrawableForDensity() to PackageManager.

It allows badging an image regardless of of the user (no
user id parameter). The styling for managed users is applied.

This is useful for new cases where the existing functions
wouldn't badge the icon, but we need it.

Bug: 25192539
Change-Id: I2fd2f226f626fb2e6cda1cfe072013350e12b41c
serManager.java
74989b4d3ffdcd3def599e1f973d481062ba8e6f 02-Mar-2016 Eino-Ville Talvala <etalvala@google.com> Merge "Camera2: Switch to auto-gen C++ binder interfaces" into nyc-dev
b4672ef6dfbaf416981539d515ad1489d7d0bc87 02-Mar-2016 Steve McKay <smckay@google.com> Merge "Always show intern storage." into nyc-dev
7c4395804e450533afb553ab992c47f737da8a9b 02-Mar-2016 Steve McKay <smckay@google.com> Always show intern storage.

Only show debug root when devel mode is enabled.
Remove all traces of "advanced".

Bug: 27297398

Change-Id: Ie7e8be282531bd245351d56ababa8ca625c10fd2
torage/VolumeInfo.java
c53962d4ede82a03b62f0c8bb86bd0da090a15eb 02-Mar-2016 Jeff Sharkey <jsharkey@android.com> When system server goes down, crash apps more.

Apps making calls into the system server may end up persisting
internal state or making security decisions based on the perceived
success or failure of a call, or the default values returned.

The reality is that if the system process just died, init will be
along shortly to kill all running apps, so we should have no problem
rethrowing the RemoteException as a RuntimeException.

Bug: 27364859
Change-Id: Ife0bcb079636c88d54c44d17eb580409fd79028b
atteryManager.java
ardwarePropertiesManager.java
owerManager.java
5d2d7788f1759b0f3d2c057af0b3ea61b0354fee 18-Dec-2015 Eino-Ville Talvala <etalvala@google.com> Camera2: Switch to auto-gen C++ binder interfaces

- Move camera AIDL files to frameworks/av
- Update makefiles to point to new AIDL locations
- Adjust camera2 implementation to match modifications to AIDL needed
for native AIDL auto-generation
- Move Surface.aidl to frameworks/native to allow use in
native AIDL. Use android::view::Surface in Surface JNI to
serialize Surface objects to ensure parceling compatibility.
- Adjust service binder tests to new interface

Bug: 25091611
Change-Id: I85b817374b34a4540fa145328dbe4bbf7f746baf
erviceSpecificException.java
285bec2641292abc37c5ad230bd309cede754a70 02-Mar-2016 Fyodor Kupolov <fkupolov@google.com> Merge "Disable switching users if the user is in a call" into nyc-dev
c50bf8e33e67c26b5dc4fd18ec665d2985fd42e7 01-Mar-2016 Felipe Leme <felipeal@google.com> Merge "Created metric events for scoped directory access API." into nyc-dev
3e166b27fcf67dedc1ca1507266484763c7e15ea 24-Feb-2016 Felipe Leme <felipeal@google.com> Created metric events for scoped directory access API.

BUG: 27334821
Change-Id: I8a1bfc328dcd26b42bb66884d14b34ad11aa232f
nvironment.java
e1ac71fe9924add9368d118932e6c2bf0dfb2d70 01-Mar-2016 Calin Juravle <calin@google.com> Merge "Restrict the cases when we profile guided compile an apk" into nyc-dev
753c347efd0a03ee0187e9c98c9978e43104c257 01-Mar-2016 Jeff Sharkey <jsharkey@google.com> Merge "Parcelable classes should always be final." into nyc-dev
50d1c044b5ce4b6fef532dc6e083cef903f554b2 01-Mar-2016 Jeff Sharkey <jsharkey@android.com> Parcelable classes should always be final.

Also hide ConnectivityMetricsEvent which isn't being used yet.

Bug: 27415331
Change-Id: Iacdccddda504f3f669185f807b4f35b8dc2b0212
torage/StorageVolume.java
414c529a4f3d8aa50df6e3615d2084ac1089de85 29-Feb-2016 Colin Cross <ccross@android.com> Merge "Add dumpsys meminfo --unreachable" into nyc-dev
523c404612c634f6901205fee4f4cae594f62982 25-Feb-2016 Fyodor Kupolov <fkupolov@google.com> Disable switching users if the user is in a call

Also disable "Remove guest" option, which switches the user.

Bug: 20652663
Change-Id: Id3ada14c0b3bfe70e9e1ab7034d27098924d7b45
serManager.java
00970773960de9f81dafcc7e864f3e278fe53662 29-Feb-2016 Polina Bondarenko <pbond@google.com> Merge "Removed IAE from HardwarePropertiesManager." into nyc-dev
f8880561e67e1da246970b49b14285efd4164ab1 26-Feb-2016 Jeff Sharkey <jsharkey@android.com> When system server goes down, crash apps more.

Similar to first patch, but now using new "rethrowFromSystemServer()"
method which internally translates DeadObjectException into
DeadSystemException. New logic over in Log.printlns() now
suppresses the DeadSystemException stack traces, since they're
misleading and just added pressure to the precious log buffer space.

Add some extra RuntimeInit checks to suppress logging-about-logging
when the system server is dead.

Bug: 27364859
Change-Id: I05316b3e8e42416b30a56a76c09cd3113a018123
eadSystemException.java
ropBoxManager.java
emoteException.java
trictMode.java
serManager.java
torage/StorageManager.java
49607029bef037d162f64f841468d7b99d862489 26-Feb-2016 Jeff Sharkey <jsharkey@google.com> Merge "When system server goes down, crash apps." into nyc-dev
227d7854cc0fa5c76a61df727c97edb618f17046 26-Feb-2016 Andreas Gampe <agampe@google.com> Merge "Frameworks/base: Refactor android.os.Debug" into nyc-dev
725844d05f65c7dd935da21b4abe4615d6097ecb 26-Feb-2016 Polina Bondarenko <pbond@google.com> Removed IAE from HardwarePropertiesManager.

If unknown temperature type is passed to getDeviceTemperatures, returns
empty array.

Bug: 27365463
Change-Id: I223b5e4e0642aee7b32e44fea84e8dc465b7e90b
ardwarePropertiesManager.java
8b9f49415f7c95f6e8949a3987cde59bf9a89169 26-Feb-2016 Andreas Gampe <agampe@google.com> Frameworks/base: Refactor android.os.Debug

Refactor some static fields into a holder. This allows to statically
initialize the class in the boot image. It also has some minimal
positive impact on the class size, a net benefit when tracing is
not used.

Bug: 27248115
Change-Id: I0cdfb6acf916ad8d9a7d82bba32929dba15d4200
ebug.java
27b2e6978716f9886db40f4fcf2e060b50637ac5 26-Feb-2016 Jeff Sharkey <jsharkey@android.com> When system server goes down, crash apps.

Apps making calls into the system server may end up persisting
internal state or making security decisions based on the perceived
success or failure of a call, or the default values returned.

The reality is that if the system process just died, init will be
along shortly to kill all running apps, so we should have no problem
rethrowing the RemoteException as a RuntimeException.

Bug: 27364859
Change-Id: If632cc36f68cd399a34de513b2d979abaa36fcaa
serManager.java
302710deaa02ad5fba5e39d9f0f652d3587b8b91 26-Feb-2016 Ruchi Kandoi <kandoiruchi@google.com> PowerManager: Hide the SUSTAINED_PERFORMANCE API.

Bug: 27365880
Change-Id: Ia84a5af85f6e8ef0740ce4b41dbc5bab4cbeef05
owerManager.java
d479b52d12fc782f18df6b5ae15c19e022f0ec14 24-Feb-2016 Calin Juravle <calin@google.com> Restrict the cases when we profile guided compile an apk

Do not use profile guided compilation if the apk is loaded by another
app. The decision if an apk was used or not by another app is done
by looking into the foreign profile directory. Apks which where
loaded in others apps will have a file marker in the profile directory.
The marker is named after the canonical location of the apk file where
'/' is replaced by '@'.

Also, refactor the profile paths to the Environment.

Bug: 27334750
Bug: 26080105
Change-Id: Ic2ac5a7a231670ecb4462166c34fdd5b4c631178
nvironment.java
1ddda4793c26fd249590fd3549cf060ecb7c157b 12-Feb-2016 Lenka Trochtova <ltrochtova@google.com> Prevent ephemeral user from being re-entered after stop.

Once the ephemeral user stops, the user's deletion is scheduled.
It takes a while before the user actually disappears and it is not
desirable for the user to be re-entered in the meantime.
Mark the user as disabled on stop and check this flag
in the activity manager to prevent the user from being switched
to again. Also hide the user from user-switching UI.

BUG: 26795729
BUG: 26780152

Change-Id: I83a61674958954b5a210114b88ffa5ae55922c1f
serManager.java
serManagerInternal.java
abded113bde548734600dc1b6e4ce2e94f48e32e 09-Feb-2016 Joe Onorato <joeo@google.com> Add unit tests for BatteryStatsImpl.

- Add a Clocks interface to wrap SystemClock.uptimeMillis and
SystemClock.elapsedRealtime.
- Make the inner classes static so they can be created independently,
which meant passing explicit pointers to the BatteryStatsImpl and
the Uid objects in a lot of places.
- Make several fields protected so they can be accessed by the tests (they are
still @hidden)
- Add a test suite for the battery stats.
- Add the tests

Change-Id: I4e45afedc64f7050985c28a7eb4f5c1ddbaa63fa
atteryStats.java
38e638696a054a23150aadf72c9c98e335bb8d9e 23-Feb-2016 Tony Mak <tonymak@google.com> Merge "Update javadoc of DISALLOW_OUTGOING_CALLS" into nyc-dev
9de7952aa945eb06148f82b9f30d7d11a2de5d74 22-Feb-2016 Tao Bao <tbao@google.com> Merge "Add support for update-on-boot feature." into nyc-dev
eb83ab52b28766adf1743db76484515bc9b9e08a 22-Feb-2016 Tony Mak <tonymak@google.com> Update javadoc of DISALLOW_OUTGOING_CALLS

It is no longer true that we always forward the intent to personal side
after the introcution of work dialer.

Change-Id: I07b247c15d366278a07afab76b23c9d8847b01ef
serManager.java
280c5b2155feae857ad514dff81adbfe73e398e9 22-Feb-2016 Polina Bondarenko <pbond@google.com> Merge "Added hardwareproperties SystemService" into nyc-dev
2208e743e4c2da29008f6503c2d678c7e28e7812 19-Feb-2016 Adam Lesinski <adamlesinski@google.com> Remove extraneous field from batterystats dumpsys

Change-Id: Iea913e993e61d114c499e6218ad0abf9a8e80690
atteryStats.java
e8a403d57c8ea540f8287cdaee8b90f0cf9626a3 31-Dec-2015 Tao Bao <tbao@google.com> Add support for update-on-boot feature.

Add a separate system service RecoverySystemService to handle recovery
related requests (calling uncrypt to de-encrypt the OTA package on the
/data partition, setting up bootloader control block (aka BCB) and etc).

We used to trigger uncrypt in ShutdownThread before rebooting into
recovery. Now we expose new SystemApi (RecoverySystem.processPackage())
to allow the caller (e.g. GmsCore) to call that upfront before
initiating a reboot. This will reduce the reboot time and get rid of the
progress bar ("processing update package"). However, we need to reserve
the functionality in ShutdownThread to optionally call uncrypt if
finding that's still needed.

In order to support the update-on-boot feature, we also add new
SystemApis scheduleUpdateOnBoot() and cancelScheduledUpdate() into
android.os.RecoverySystem. They allow the caller (e.g. GmsCore) to
schedule / cancel an update by setting up the BCB, which will be read by
the bootloader and the recovery image. With the new SystemApis, an
update package can be processed (uncrypt'd) in the background and
scheduled to be installed at the next boot.

Bug: 26830925
Change-Id: Ic606fcf5b31c54ce54f0ab12c1768fef0fa64560
RecoverySystem.aidl
RecoverySystemProgressListener.aidl
owerManager.java
ecoverySystem.java
f8754ac2127f8adf40bd4731f39b16340acdb2f7 12-Feb-2016 Polina Bondarenko <pbond@google.com> Added hardwareproperties SystemService

Add HardwarePropertiesManagerService which call native methods to
get CPU, GPU, battery temperatures, CPU usage info, fan speeds.
Restrict hardware properties retrieval only for device and profile
owners.

Bug: 26945055
Change-Id: I4d6b30b78e575532d5e9cfa59ef6cd81355439d4
puUsageInfo.aidl
ardwarePropertiesManager.java
HardwarePropertiesManager.aidl
c4fb5f9d4b8012bc007f0c7e472d4ff4801254f5 03-Feb-2016 Colin Cross <ccross@android.com> Add dumpsys meminfo --unreachable

dumpsys meminfo --unreachable will search the native heap for
allocations that are unreachable.

Bug: 27208635
Change-Id: I40ab1c261cb222ca71d04ab8408f355bcb18ed94
(cherry picked from commit 84b1e3554b36b7fbccf57330c93bf484985ae3d6)
ebug.java
2271ba3627d18b65ed5ea63218cee7f9562acd31 02-Feb-2016 Jeff Sharkey <jsharkey@android.com> Push mapping of package name to appId to kernel.

The new sdcardfs kernel driver needs to know this mapping for
deriving UID permissions, so push the data through /config when
supported by the kernel. This also has the nice benefit of letting
us push only the deltas of what actually changes, instead of
re-parsing the entire "packages.list" file.

The mappings for newly installed apps are pushed before the app is
allowed to run, removing some latent race conditions. Also cleans
up stale mappings when packages are uninstalled, and whenever the
system server reboots.

Bug: 19160983
Change-Id: Iace92efb69616c96b34c0d9d911e4b54e5fd8a67
ileUtils.java
79c11a8c550090436fed7ad540b5d5d20e1faeb2 17-Feb-2016 Felipe Leme <felipeal@google.com> Merge "Fixed typo on Storage Access Framework." into nyc-dev
53fcc756d06ed382e7b02b266631f7848d1b9c4f 17-Feb-2016 Felipe Leme <felipeal@google.com> Fixed typo on Storage Access Framework.

BUG: 26742218
Change-Id: I9b695ebe2176f186fc63b20f624e40dd9e257bc3
torage/StorageVolume.java
014a0d11c7ac521b77c62278d31ce4d41c5f33b7 17-Feb-2016 Felipe Leme <felipeal@google.com> Merge "Removed Intent.OPEN_EXTERNAL_DIRECTORY." into nyc-dev
3c3770d8fe9f64fc92de02f3e52901748e1f30de 17-Feb-2016 Felipe Leme <felipeal@google.com> Merge "Initial implementation of StorageManager.getVolumesList()." into nyc-dev
34a9d5271915fb82c22811e6d17691a34b6c52c1 17-Feb-2016 Felipe Leme <felipeal@google.com> Removed Intent.OPEN_EXTERNAL_DIRECTORY.

Such intent is now encapsulated by StorageVolume.createAccessIntent().

BUG: 26742218

Change-Id: I2e2bd71126ecd74981f77b0af7d069f51aaece74
torage/StorageVolume.java
04a5d40cf35fb2c2fca2c1bfd573e5916d804ef6 09-Feb-2016 Felipe Leme <felipeal@google.com> Initial implementation of StorageManager.getVolumesList().

This change makes StorageManager.getVolumesList(),
StorageManager.getPrimaryVolume(), and StorageVolume public and adds a
buildAccessIntent() in the latter to automatically generate the
ACTION_OPEN_EXTERNAL_DIRECTORY intent, but it doesn't change the
ACTION_OPEN_EXTERNAL_DIRECTORY implementation yet (i.e., it still takes an URI with the physical path of the directory, instead of a StorageVolume and
a directorny name).

BUG: 26742218

Change-Id: I36c59c42b6579e125ec7f03c3af141260875a491
nvironment.java
torage/StorageManager.java
torage/StorageVolume.java
ab3b8936dc1f4a24cffea422baf9ef51f0de05e7 16-Feb-2016 Steve McKay <smckay@google.com> Remove "HOME" directory. Use "Documents" instead.

Use "Folder" as home icon for now.

Bug:27148009
Change-Id: I9f57bba1c8e51ae7887861923f5baa8f69ec2e6e
nvironment.java
09f856805902078931aa5de006bc5e2c5403dfa6 11-Feb-2016 Philipp Weiß <phweiss@google.com> Merge "DPM.createAndManageUser should work even with DISALLOW_ADD_USER set" into nyc-dev
e9c440638e27a123a82feb5e4677ce1242785288 10-Feb-2016 phweiss <phweiss@google.com> DPM.createAndManageUser should work even with DISALLOW_ADD_USER set

For this, the DPM calls a new function
UserManagerInternal.createUserEvenWhenDisallowed() instead of
UserManager.createUser(). This calls
UserManagerService.createUserInternalUnchecked().

Also, only the system user is allowed to call this method, otherwise
a security exception is thrown.

Bug: 26952210
Bug: 26786199
Change-Id: I69c16354898d68592d13f5f53b840551f7ad4779
serManager.java
serManagerInternal.java
7f036f8bce5c2f70b2cbc5e252220909bba69b5d 11-Feb-2016 Jeff Davidson <jpd@google.com> Merge "Expose APIs to analyze UIDs in UserHandle/Process." into nyc-dev
48aa86bd0b30815f4c02561f713bd33b032ef2b7 10-Feb-2016 Jeff Davidson <jpd@google.com> Expose APIs to analyze UIDs in UserHandle/Process.

Clients of the NetworkStatsManager public APIs may get UIDs belonging
to other users, and UIDs which don't actually represent applications.
These APIs allow clients to understand whether a given ID belongs to
the same user as themselves, and whether an ID represents an
application or something else (e.g. a system UID).

Change-Id: Ia56d5891521ce98e5594c41da8f9d756819deb66
rocess.java
serHandle.java
8212ae0aee1700b9c287ebadf15af8dacdc8eae6 10-Feb-2016 Jeff Sharkey <jsharkey@android.com> Consistent naming for internal storage APIs.

Also completely remove a few confusingly named deprecated APIs.

Change-Id: Ia7e4ea3190a97f0a7dfa9bebf2118da0866ec38f
nvironment.java
6af1d75a0c1cf814404e5142c3a7932ff9deade9 08-Feb-2016 Tao Bao <tbao@google.com> Merge "Add system APIs for A/B update." into nyc-dev
43cd1bcb10930c3e948f3d52278a986597672b29 08-Feb-2016 Tao Bao <tbao@google.com> Add system APIs for A/B update.

Add android.os.UpdateEngine and UpdateEngineCallback classes that
communicate with the update engine via binder APIs for A/B update.

Bug: 26695366
Change-Id: I2471858d28df5443bc0b56d9a20281ccebde4484
pdateEngine.java
pdateEngineCallback.java
faeb3eb0ba190e6d6cfe2b82ce20af587848de57 08-Feb-2016 Paul Crowley <paulcrowley@google.com> Password security for FBE disk encryption keys

Add the means to protect FBE keys with a combination of an auth token
from Gatekeeper, and a hash of the password. Both of these must be
passed to unlock_user_key. Keys are created unprotected, and
change_user_key changes the way they are protected.

Bug: 22950892
Change-Id: Ie13bc6f82059ce941b0e664a5b60355e52b45f30
torage/IMountService.java
torage/StorageManager.java
25222f55f28221d49a984db465f94e9716635ad8 06-Feb-2016 Tamas Berghammer <tberghammer@google.com> Merge "Add flag to "am start" to enable native debugging"
2068bb8bb06303997697ecaaa2e7063835a972b6 06-Feb-2016 Adam Lesinski <adamlesinski@google.com> Merge "Track BLE scans in BatteryStats"
47f7108c1270a9e81d9560b6b0570c659bb93a71 02-Feb-2016 Jeff Sharkey <jsharkey@android.com> Prepare user storage just before using it.

Wire up preparing of user-specific app storage to existing user
lifecycle hooks. This way we're sure the storage is ready to roll
just before we start reconciling app data directories.

This also has the nice property that we only prepare storage when
we know that keys are unlocked.

Bug: 25796509
Change-Id: Ic7df9ddbcfb1e20649d11b6cf68d424e3c365ee1
serHandle.java
torage/IMountService.java
torage/StorageManager.java
c17d8b79afd02133b021d89b536c812578308329 04-Feb-2016 Filip Gruszczynski <gruszczy@google.com> Infrastructure for animating of maximizing pip activity.

Bug: 25672053
Change-Id: Ie8a83c626680e01ff7115f40731ab9e6c13769c0
hellCommand.java
c7861d65c4a5e2beb7c842028a10652a0fb0d03c 03-Feb-2016 Tao Bao <tbao@google.com> Merge "Condionally remove the block map file."
4ee5d5d5cf219266ea1a5385e50222c65451ffc5 02-Feb-2016 Steve McKay <smckay@google.com> Merge "Decouple SD card from ADVANCED storage toggle."
efa1761776160376278fa467ea31d8e3f621a286 30-Jan-2016 Steve McKay <smckay@google.com> Decouple SD card from ADVANCED storage toggle.

A variety of related fixes:
- don't force size enable when browsing from device mounted notifications.
- don't show settings menu item as action (put in overflow).
- add sd card icon (not quite yet used, need to suss that out).

Bug:26880985,26883578,26771127
Change-Id: I36f153c42217f8092f157ded2a756c02525593ab
torage/VolumeInfo.java
086e09ff605f7ca26c6562f4c00b1fe0c647909f 02-Feb-2016 Tim Murray <timmurray@google.com> Merge "Add specific category for TOP_APP in ActivityManager."
9f55cc71b9b0a27604d448b5c54e3c377b7a067f 28-Jan-2016 Adam Lesinski <adamlesinski@google.com> Track BLE scans in BatteryStats

Distribute the power used by apps scanning with BLE.

Bug:22718669
Change-Id: I626d8a459fc28fdd7dac682c9ac7c8434945109d
atteryStats.java
e8217ff4a725004e495ed1506928334f97e5bbf1 02-Feb-2016 Tao Bao <tbao@google.com> Condionally remove the block map file.

We used to unconditionally remove the block map file on boot. Because
the package might be half-way uncrypt'd in a corrupt state. CL in [1]
changes uncrypt to ensure that block.map only gets created at the end of
a successful uncrypt. So we can change to keep the fully uncrypt'd
package and the block map. This is to reduce the work for GmsCore to
avoid re-downloading everything again.

[1]: commit 25dd0386fe69460cd1d39de116197dd2c7bf9ec2.

Bug: 26883096
Change-Id: I58ca22064141bf5d42fa48146a980712c8ce21d9
ecoverySystem.java
0ffbfea423e37f924d1e6d5a1023b848218f5623 19-Jan-2016 Fyodor Kupolov <fkupolov@google.com> Self closing tags are not allowed as of Java 8

Self closing tags are not legal in HTML and javadoc was updated to better
enforce valid javadoc comments.
https://bugs.openjdk.java.net/browse/JDK-8020619

Change-Id: Ia7644b79be559a2e88fc9850eab570bd926f9a4b
serManager.java
a7dbccff7791d747abf4623d670b984a7a67f505 02-Feb-2016 Steve McKay <smckay@google.com> Merge "Create "Home" dir instead of "home" to match other default dirs."
5c462a0e31dc75527d55a26f9cabf45d2ab874b3 30-Jan-2016 Steve McKay <smckay@google.com> Create "Home" dir instead of "home" to match other default dirs.

Add DIRECTORY_HOME to android.os.Environment...use that for dir name,
so we don't use a localized name when creating directory.
Mark all of the DIRECTORY_* fields final.

Bug: 26814341
Change-Id: I5a11bcb180674c619de2f5ce9ed598521e60cc25
nvironment.java
f2519814cc7136773a115b770d20cf4c92945952 26-Jan-2016 Oleksandr Peletskyi <peletskyi@google.com> Added restriction that disallows ability to set wallpaper.
BUG: 24890474

Change-Id: I424aa80d914e3b6f3f9eba8ccb4802bad6f54907
serManager.java
c4bab9843ab936f9a9f134e2088a5bd891eb55c2 01-Feb-2016 Jeff Sharkey <jsharkey@android.com> Only create custom database paths.

If the getDatabasePath() caller is using the default getDatabasesDir()
path, that method already handles possible path creation, so no
need for us to retry.

Also fix two small bugs that would have NPE'ed when listing files in
a directory that wasn't created.

Bug: 26895777
Change-Id: Iced16b05cfe95062717da8d0414c48daefcb5648
ileUtils.java
df6cb282937e5f804686ebbc952ae9f2290d93c7 29-Jan-2016 Tamas Berghammer <tberghammer@google.com> Add flag to "am start" to enable native debugging

Specifying the new flag will enable several features in the runtime
required by the native debugger to debug Java and C++ code at the same
time.

The enabled features:
* Force JIT (never use the interpreter)
* Debug info generation
* Disbale some optimizations

Change-Id: Iaf5ab649715a0c274bd1b0fc64e483705da53cd0
rocess.java
35871f2c2bb114806b4e3f109960b7f863d7885c 30-Jan-2016 Jeff Sharkey <jsharkey@android.com> Offer to migrate databases and SharedPreferences.

Databases and SharedPreferences often involve multiple files under
the hood, so developers wanting to migrate them between different
storage contexts should ask us to make sure all relevant files are
migrated correctly.

This makes a best-effort attempt to recover from battery pulls
during migration, while still trying to alert developers to
conflicting files.

Bug: 26668510, 25860525
Change-Id: I9ffa3e8cb6191dfd4237b9466a081d6d77df3ba0
ileUtils.java
311cbe1b83acc0c8c31ce1ecbde1902a7103d0d1 29-Jan-2016 Dianne Hackborn <hackbod@google.com> Merge "Some small binder shell command improvements."
d7085a40bd8e14346fb589b0564580210ebfdad3 29-Jan-2016 Chien-Yu Chen <cychen@google.com> Merge "Correct cameraserver UID"
b8b4e85879e93db2ba7821b7fe54710cb6a6de71 29-Jan-2016 Chien-Yu Chen <cychen@google.com> Correct cameraserver UID

Bug: 24511454
Change-Id: I967c50c781d03754a093bae6a64b2e35a023f046
rocess.java
344744b49633a7f8aa0c8e43469bbfcf9d8e2cab 29-Jan-2016 Jeff Sharkey <jsharkey@android.com> Exposing file:// beyond your app is bad, m'kay?

For several releases now we've told developers that sharing raw files
between apps is a recipe for trouble. There are at least three major
problems with sending raw files:

-- Apps sending generic intents can't know who is at the other end,
so they may not have access to shared storage locations. This is
more likely now that runtime permissions require apps to explicitly
ask users for permission.

-- Apps making files in their private storage world-readable has been
deprecated for several releases, and now in N it's fully blocked. If
we let these intents through, the receiving app would fail to open
the file, when the real blame rests on the sending app.

-- Devices with user profiles can't share raw files when using
cross-profile intent filters, since filesystem access is fully
locked down between users.

The time has finally come to communicate clearly that if you're
sharing content between apps, you need to use content:// Uris. We
added the simple FileProvider several years ago to give apps a clean
way to migrate with minimal work on their part.

Bug: 26860922, 9069185
Change-Id: I075f627f6a0d6c7fca2c090ca133b9aae9801c64
ileUriExposedException.java
trictMode.java
2e931f56c77cf53df9daf99d5afdd7bc4c109a54 28-Jan-2016 Dianne Hackborn <hackbod@google.com> Some small binder shell command improvements.

- Improve documentation.
- Add low-level access to input/output streams.

Change-Id: I3892be222d6fd919b164fa4e4882185940947f70
inder.java
hellCommand.java
7b9f2e1d86e5017dbf5530356ec30d090f703a67 28-Jan-2016 Fyodor Kupolov <fkupolov@google.com> Merge "Added SystemApi for getting serial numbers of users"
940e8577a1569140521fb605336997863529f7ad 26-Jan-2016 Fyodor Kupolov <fkupolov@google.com> Added SystemApi for getting serial numbers of users

Also added UserHandle version of queryBroadcastReceiversAsUser.

Bug: 25844894
Change-Id: I78ecbef186e4ced10425ae2899db72c2d91c5792
serHandle.java
serManager.java
8484459717a26ecf7fabb84dd071fa18101cd83e 28-Jan-2016 Amith Yamasani <yamasani@google.com> Merge "Tweaks to user creation intent text and error codes"
37ed8d1ce0ffa1e570e868a357b6cb6d509c4e91 27-Jan-2016 Amith Yamasani <yamasani@google.com> Tweaks to user creation intent text and error codes

Return error codes in some cases.
Tweak the message to the user.

Bug: 22776757
Change-Id: Ieff0caf0add9542287b5629d7d97331df0cada1e
serManager.java
bd098d4ed3240b5beb5c0d1c1c8d87d2aa708dd7 28-Jan-2016 Chien-Yu Chen <cychen@google.com> Merge changes from topic 'camera-hardening'

* changes:
Add cameraserver process
Camera: update connect call
72c3927f864ddd8cc2fb02c868a576e4171606d3 28-Jan-2016 Adam Lesinski <adamlesinski@google.com> Merge "Record ModemActivityInfo and distribute power blame to apps"
21f76aa77075be5e057c36040d7d6e695c669b72 25-Jan-2016 Adam Lesinski <adamlesinski@google.com> Record ModemActivityInfo and distribute power blame to apps

Telephony expsoses a getModemActivity() method, which BatteryStats
will poll when a change in network activity occurs (on the modem).

The time spent in various states (tx, idle, rx) are distributed amongst
the apps that did rx/tx traffic during that window.

Bug:23147562
Change-Id: I480a85df95786f87c382b96816fe2ed4bb2d5a42
atteryStats.java
a0d65dc0db93c63e1a1dd19ca0bfff6f1fef14a9 27-Jan-2016 Ruchi Kandoi <kandoiruchi@google.com> Merge "PowerManager: Adds the Sustained performance API."
0abc001275d6cf0af4990f521ccff7346a7cd2bf 12-Jan-2016 Ruchi Kandoi <kandoiruchi@google.com> PowerManager: Adds the Sustained performance API.

Adds a new type of wakelock - SUSTAINED_PERFORMANCE_WAKELOCK. This
wakelock can only be acquired when the application is in the foreground.
And it is not effective when the application is no longer in the
foreground.

Acquiring this wakelock enables the Sustained performance mode which
guarantees a certain level of performance.

Bug: 22864186

Change-Id: Id0ececc756fe014779db6efde7aede23ea181dc5
Signed-off-by: Ruchi Kandoi <kandoiruchi@google.com>
owerManager.java
f348e8e22bed4b56fdb0c02702d12b36467dedd7 07-Jan-2016 Lenka Trochtova <ltrochtova@google.com> Add policy for enforcing that all users are ephemeral.

BUG: 24883058

Change-Id: I8e53ca677c935a6c828dd6ece00b345d0eff182a
serManagerInternal.java
10f673a2ff4e08cf18bc15efa96609c3becdf70a 27-Jan-2016 Felipe Leme <felipeal@google.com> Merge "Initial implementation of OPEN_EXTERNAL_DIRECTORY."
b012f913cbb3e91572817914537ec16e6138a6db 23-Jan-2016 Felipe Leme <felipeal@google.com> Initial implementation of OPEN_EXTERNAL_DIRECTORY.

It opens a an alert dialog that tells user application X is requesting
access to folder Y on volume Z; if user accepts, it returns the proper
URI, otherwise it returns RESULT_CANCELED.

The requested path must satisfy the following requirements:

1.It's directory (getName()) must be one of the pre-definied folders on
Environment.
2.It's root (getParent()) must be a valid external storage root.

In order to satisfy #2, DocumentsUI calls the ExternalStorageProvider,
through a custom call() implementation.

BUG: 23011462
Change-Id: I8e491e82ae320df88f7b8923286c4c1ad050ae80
nvironment.java
8b8b242985d3b12d21be11e8f0efb74d3236ea74 27-Jan-2016 Polina Bondarenko <pbond@google.com> Merge "HardwarePropertiesManager: Add API for hardware properties retrieval"
21f255dea9c7831b2764c3f7d418a88d64a46aa3 22-Jan-2016 Felipe Leme <felipeal@google.com> Merge "Created a new API to grant scoped directory access to applications."
c7b1f89e9e86fcea8e4d334cebbf427dbd278ae1 16-Jan-2016 Felipe Leme <felipeal@google.com> Created a new API to grant scoped directory access to applications.

The Storage Access Framework currently provides an
API (OPEN_DOCUMENT_TREE) that lets the user pick a directory to be used
by the application. Although this APIs is very powerful (for example, it
allows the user to create sub-directories, delete and share files,
etc...), it's too complex for simpler use cases like a camera
application trying to have access to the standard Pictures directory.

The new API (OPEN_EXTERNAL_DIRECTORY) simplifies this scenario by
letting the application select a standard, pre-defined directory (as
defined by android.os.Environment). The user still needs to grant access
to the requested directory, but the resulting UI will be simpler and
more straightforward.

Usage example:

// ...
int requestCode = 42;
Intent intent = new Intent(Intent.ACTION_OPEN_EXTERNAL_DIRECTORY);
intent.setData(Uri.fromFile(
new File(Environment.getExternalStorageDirectory(),
Environment.DIRECTORY_PICTURES)));
startActivityForResult(intent, requestCode);
// ...

@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
if (resultCode != Activity.RESULT_OK) {
return;
}
Uri uri = data.getData();
int modeFlags = data.getFlags()
& (Intent.FLAG_GRANT_READ_URI_PERMISSION
| Intent.FLAG_GRANT_WRITE_URI_PERMISSION);
getContentResolver().takePersistableUriPermission(uri, modeFlags);
}

BUG: 23011462
Change-Id: Ie832026532f74e681ef220b761667eb66ff3c8b0
nvironment.java
965ecbbb3eb19007690c333ab3aa05e380deb633 13-Nov-2015 Polina Bondarenko <pbond@google.com> HardwarePropertiesManager: Add API for hardware properties retrieval

Add serive "hardwareproperties" and methods getDeviceTemperatures,
getCpuUsages and getFanSpeeds to retrieve hardware properties:
device temperatures (CPU, GPU and battery), CPU usages and fan speeds.
This is a public API.

Bug: 22407109
Change-Id: If7efcbba7b160256d41704b60d93a7218dcc79d7
puUsageInfo.java
ardwarePropertiesManager.java
b7cc096fd49e99c01a9e963a895f6d26d685e474 21-Jan-2016 Oleksandr Peletskyi <peletskyi@google.com> Merge "Added restriction if a user is allowed to change the icon. BUG: 25305966"
7f1f1dfc8713fbecbab60cfbe14ab4d97d27deee 18-Jan-2016 Oleksandr Peletskyi <peletskyi@google.com> Added restriction if a user is allowed to change the icon.
BUG: 25305966

Change-Id: I3d527224f00087b2bd959879ebb143e2ecb9c914
serManager.java
serManagerInternal.java
ece6a22f00de4ab815588e2f7951203adcd2b9c4 14-Jan-2016 Tim Murray <timmurray@google.com> Add specific category for TOP_APP in ActivityManager.

Differentiate the top app from other foreground apps in
ActivityManager. This lets us place the top app in its own cpuset, where
it can have its own exclusive core.

Change-Id: I90f5c39272724db37f0da226785b03d08e2e04c4
rocess.java
50e4760214dc3bab81b5ccf6df4d5ce5fa34d723 05-Dec-2015 Adam Lesinski <adamlesinski@google.com> Record bytes transferred for bluetooth

Bug:26039657
Change-Id: Iec42459d12f4106d5733f55313e8544d58930285
atteryStats.java
12747879b0204b9dfee997eddc981d09289e8b77 07-Dec-2015 Amith Yamasani <yamasani@google.com> User creation with an intent

New API for an app to request creating a new user with
a given user name and seed account information for the
SetupWizard to use when that user is switched into.

Also adds system APIs to read the seed account data from
UserManager.

Bug: 22776757
Change-Id: I0bc3f11ee19c15e0ee2a908c88d98b13296cc30d
UserManager.aidl
serManager.java
12cde00dc03ec802801b8fd7611c1706ab7d4363 16-Jan-2016 Jeff Sharkey <jsharkey@google.com> Merge "Prepare app data only when storage is available."
0e62384ccbd00e9f78851929ca88b919679ee32e 14-Jan-2016 Jeff Sharkey <jsharkey@android.com> Prepare app data only when storage is available.

Before this change, scanning a package aggressively tried checking
to ensure that private app data was prepared. However, in an FBE
world we may not have access to that data at scan time. So this
change shifts the preparing of private app data until later: it
prepares DE storage when a user is started, and CE storage when a
user is unlocked. Wire ourselves into the user lifecycle so we can
prepare storage at both user start and unlock.

When DE/CE storage becomes available, this change reconciles any
found packages against known installed apps, and deletes any orphaned
data directories.

We now need to store the last-restorecon hash in an xattr on a
per-user directory basis, since we can't restorecon CE storage until
it's unlocked, or adopted storage until it's mounted. Remove a
bunch of used logic for loading dynamic SELinux policy at runtime;
our policy always comes from the system image.

Bug: 26466827, 26544104
Change-Id: I8d0a4ef862c35f4e4ef5c7f20d3bb8f12ba3fd4b
serManager.java
9941ab3cbb91bffe3b06d3a77a68bb97bcaba381 15-Jan-2016 Yao Chen <yaochen@google.com> Merge "Changes in DeviceIdlecontroller and JobScheduler to support Auto GarageMode."
ca5edbb6b5300e07a5f7bfbec36f08df65d8f6e7 13-Jan-2016 Yao Chen <yaochen@google.com> 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
DeviceIdleController.aidl
MaintenanceActivityListener.aidl
01208118b3ba5bfa3a79725bc4d15d3924ec1a5d 13-Jan-2016 Samuel Tan <samueltan@google.com> resolve merge conflicts of 3caecaec60 to master.

Change-Id: Ic3e9909c69f03a6ef1911a6b7589afbc02d7494f
3caecaec6082c59bc1605c86be692b2ae0f85ee1 13-Jan-2016 Samuel Tan <samueltan@google.com> Merge "Remove PersistableBundle.aidl from Java framework"
am: 2e37bfd2d2

* commit '2e37bfd2d2f629ca50ecf0e6674484cd30560d26':
Remove PersistableBundle.aidl from Java framework
239951a91eedfc4c45b80f01264da8ec1ef10e3a 06-Jan-2016 Samuel Tan <samueltan@google.com> 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.
ersistableBundle.aidl
e076485754dc30f9f798fb1242e6f7d5a0b6d39b 08-Jan-2016 Martijn Coenen <maco@google.com> Report SwapPss usage if available as part of Pss

Parse "SwapPss:" lines from /proc/pid/smaps if it exist, and store them
in a seperate stat entry.
Report SwapPss if made available by kernel, otherwise we fall back to
legacy Swap.

Fix getTotalSwappablePss documentation.

Change-Id: I361928c0f44c7dc9b959b91c127c916215063866
Signed-off-by: Thierry Strudel <tstrudel@google.com>
ebug.java
75cade0a5fd5ec432870de9977f81091ab389423 11-Jan-2016 Chien-Yu Chen <cychen@google.com> Add cameraserver process

Add UID and permissions for cameraserver process.

Bug: 24511454
Change-Id: Iccbda4b42e5584a1f56f9afe5e15a16f40dd2922
rocess.java
cd65448ccd13c4c2d0fe9e9623fec3a898ab9372 09-Jan-2016 Jeff Sharkey <jsharkey@android.com> Even more PackageManager caller triage.

Finish moving all UID/GID callers to single AIDL method that requires
callers to provide flags.

Triage AppWidgets and PrintServices, which currently can only live on
internal storage; we should revisit that later.

Fix two bugs where we'd drop pending install sessions and persisted
Uri grants for apps installed on external storage.

Bug: 26471205
Change-Id: I66fdfc737fda0042050d81ff8839de55c2b4effd
serHandle.java
torage/StorageManager.java
0ab0bdde2b39c77175d9e0d69d6631e130e4b5ac 09-Jan-2016 Jeff Sharkey <jsharkey@google.com> Merge "More progress on triaging PackageManager callers."
c5967e9862489024c932b0c7fcb84ed0af2a7fd7 08-Jan-2016 Jeff Sharkey <jsharkey@android.com> More progress on triaging PackageManager callers.

Catch a bunch of simple cases where the PackageManager flags are
obvious. Add the ability to use the MATCH_SYSTEM_ONLY flag on
PackageInfo and ApplicationInfo queries.

Re-examine recent tasks after a user is unlocked, since some of the
activities may now be available and runnable.

Bug: 26471205, 26253870
Change-Id: I989d9f8409070e5cae13202b47e2c7de85bf4a5b
torage/StorageManager.java
dea471ef548f09e04e178c5ec2d71a4b79bdb8f8 17-Dec-2015 Mahaver Chopra <mahaver@google.com> Added Data roaming user restriction

Added new user restriction DISALLOW_DATA_ROAMING, can only be set
by device owners.

Bug: 24890464
Change-Id: Ic4cb37dd5f9bbffa35f921751488ef7c7ff99452
serManager.java
5a5d6aeec0ee6b3f9ffea55a4f015edc84828b1e 07-Jan-2016 Jason Monk <jmonk@google.com> Merge "Add internal power mode changed broadcast"
e7565ad9593df7f4b1ef37bca2d88cb2f25aa02d 07-Jan-2016 Alex Klyubin <klyubin@google.com> Merge "[1/3] Remove unnecessary throws statement in ServiceManager" am: d1240219aa
am: 4a06b7ea7e

* commit '4a06b7ea7e493bf7b575da5219429e2cbeb5b3e8':
[1/3] Remove unnecessary throws statement in ServiceManager
4a06b7ea7e493bf7b575da5219429e2cbeb5b3e8 07-Jan-2016 Alex Klyubin <klyubin@google.com> Merge "[1/3] Remove unnecessary throws statement in ServiceManager"
am: d1240219aa

* commit 'd1240219aadedc867b50158c67d1737a27fa7c6f':
[1/3] Remove unnecessary throws statement in ServiceManager
8588bc1ef1f020bbe4a24d46874f675708149a57 07-Jan-2016 Jeff Sharkey <jsharkey@android.com> Add flags to requests for package UID/GIDs.

This gives callers the ability to request details for missing
packages. Also add annotations for userId and appId variables and
start tagging their usage.

Change-Id: I63d5d7f870ac4b7ebae501e0ba4f40e08b14f3f6
serHandle.java
serManager.java
9ccebbfc370b24bfc4bba1ed65f254b2ed9d4e07 06-Jan-2016 Umair Khan <omerjerk@gmail.com> [1/3] Remove unnecessary throws statement in ServiceManager

The exception is already caught by the try-catch block.

Change-Id: I0c10fe51d12a10cbc02a25c719d03a4ba6497767
Signed-off-by: Umair Khan <omerjerk@gmail.com>
erviceManager.java
a73b8fd1f4faaad00d8a49d6e496aaf249fa7003 07-Jan-2016 Jeff Sharkey <jsharkey@android.com> Add some TestApis to fix build.

Change-Id: Icf0d8d63f3a41d99e46ebe96003863bae637bd9d
serHandle.java
f59c02a65e9fd529467c4e5083d94ed6453e70f7 24-Dec-2015 Narayan Kamath <narayan@google.com> Merge changes from topic \'aosp-merge-24-12\'
am: e0e81bf407

* commit 'e0e81bf407508ec096c752948f8794af5fd480ca':
Special case system_server to not create the JIT code cache.
Don't use IntegralToString
Track libcore commit 85d69e16fe1e59e50c1ad228e754abf325088362.
Track API changes to java.lang.ref.Reference.
Remove merge markers from preloaded-classes
Move StrictJarFile from libcore to framework
Switch RecoverySystem impl to use sun.security.pkcs
API update for OpenJdk based libcore
Use libcore/known_oj_tags for the javadoc stage.
Stop preloading fortress classes
Use HexDump instead of java.lang.IntegralToString
Add core-oj to the list of core library jars.
b6c0ce4ac915cd5ab9a308cb0a4861c4e2cd7dfb 05-Nov-2015 Benjamin Franz <bfranz@google.com> Allow device and profile owner to modify accounts

The user restriction DISALLOW_MODIFY_ACCOUNTS and the policy
DPM.setAccountManagementDisabled can now be circumvented by a device
or profile owner. This allows the device or profile owner to add
accounts without briefly having to remove the policy.

Bug: 22030831
Change-Id: I2b59c4b3ad354287d7a00f21b2afef072d12517d
serManager.java
62671eaa465a8968d543e91129a976f27e500cb3 09-Jul-2015 Przemyslaw Szczepaniak <pszczepaniak@google.com> Switch RecoverySystem impl to use sun.security.pkcs

Due to org.apache.harmony.security package removal,
RecoverySystem#verifyPackage was rewritten to use
sun.security.pkcs package for verifining package
signature.

(cherry picked from commit 9ad08ec5be0d1e225c9f463fd395ba852b6b5bba)

Change-Id: I04848ad8f045f87224f9d30ff8dd745aac6d08fd
ecoverySystem.java
e442872eaa1684d6aa7461642911f12931b2e7b5 22-Dec-2015 Daichi Hirono <hirono@google.com> Merge "Unmount appfuse when the device FD is closed."
91e3b50636f48f0860fa7576f185fb36ec4e6dc7 16-Dec-2015 Daichi Hirono <hirono@google.com> Unmount appfuse when the device FD is closed.

The CL lets MountService to observe device FD, and request unmount to
vold when the device FD was closed, or remote application providing
appfuse is crashed.

BUG=25756420

Change-Id: I7990694d32affa7f89e3f40badb25098d74d744d
arcelFileDescriptor.java
5b0e5207e1b2de9fd533fa444b8d9a0acadd1513 19-Dec-2015 Jeff Sharkey <jsharkey@android.com> Point "unlocked" logic at lower level.

There is a race when starting a non-encryption-aware launcher before
we've gone through the user lifecycle to enter the "running unlocked"
state. This can cause the launcher to choke when it's denied access
to widgets that are still considered locked.

For now, relax the notion of a user being unlocked to reflect the
on-disk state, instead of looking at the user lifecycle.

Also add logging of encryption commands.

Bug: 26267450
Change-Id: Ie330d07418cf10413e0b4380f6d6781684f01952
serManager.java
2527e2bf1589c0ff3248ab5f041c39d4b3fc76e2 18-Dec-2015 Jeff Sharkey <jsharkey@google.com> Merge "Allow library spec and app configs to be read from odm partition"
0999c0d6e9c83873d9595ee764b6388dbc49dcb8 17-Dec-2015 Jeff Sharkey <jsharkey@android.com> Make printing framework encryption-aware.

Only create UserState objects when a user has been unlocked, meaning
we can connect to the spooler. Ignore package events that occur
while a user is locked, since we'll kick off updateIfNeededLocked()
when that user is eventually unlocked.

In all other cases, throw if someone tries obtaining UserState for
a still-locked user. This should help catch any edge cases in the
system, and communicate clearly through public APIs that printing
isn't available until the user is unlocked.

Bug: 26246836
Change-Id: If15744621890baee206d355484fe20933afc65d8
serManager.java
a6d4744e894fe2d580f0a0ec0970f171d29ae40b 17-Dec-2015 Samuel Tan <samueltan@google.com> Merge "Add comments to keep Java and native binder PersistableBundle in sync" am: 6de926a7d6
am: 4981ae9083

* commit '4981ae908349767fee7976cc82c54a7fb00ee4fd':
Add comments to keep Java and native binder PersistableBundle in sync
76d3072dd691666f451e8101d1053f66bd800e33 17-Dec-2015 Samuel Tan <samueltan@google.com> Merge "Fix PersistableBundle handling in Parcel.writeValue" am: d12959193c
am: d3decff052

* commit 'd3decff052c4f7471a21fbbb116b32586181b391':
Fix PersistableBundle handling in Parcel.writeValue
33d5888d7a9f833cb16b8580e4a71ed61ba73813 17-Dec-2015 Samuel Tan <samueltan@google.com> Merge "Specify path for native PersistableBundle implementation" am: 477fa220b1
am: 0bc7647f63

* commit '0bc7647f63bcdf2d63ee71d770f9514a239eaba8':
Specify path for native PersistableBundle implementation
bdc9d58d06ce9ffd836eb299d38f1d594da36ad6 20-Nov-2015 Hung-ying Tyan <tyanh@google.com> Allow library spec and app configs to be read from odm partition

Currently only feature specs are allowed to be read from /oem/etc/permissions.
ODM may want to add their own library specs and app configs (ie, "app-link",
"system-user-whitelisted-app" and "system-user-blacklisted-app") but they can
only add them to /system/etc/permissions and thus polluted the system.img.
With the fine-grained permission flag introduced in this change, we also tighten
the permission for OEMs so they can only customize the feature specs.

Bug: 25759900
Change-Id: I44ef1380b160c2b6a53f2af6de0c5f5eae27a859
nvironment.java
4981ae908349767fee7976cc82c54a7fb00ee4fd 17-Dec-2015 Samuel Tan <samueltan@google.com> Merge "Add comments to keep Java and native binder PersistableBundle in sync"
am: 6de926a7d6

* commit '6de926a7d6439745cd0f01a69a5dd75b006b923d':
Add comments to keep Java and native binder PersistableBundle in sync
d3decff052c4f7471a21fbbb116b32586181b391 17-Dec-2015 Samuel Tan <samueltan@google.com> Merge "Fix PersistableBundle handling in Parcel.writeValue"
am: d12959193c

* commit 'd12959193c60254b6b03b2a60a9c6e598e9da2e5':
Fix PersistableBundle handling in Parcel.writeValue
0bc7647f63bcdf2d63ee71d770f9514a239eaba8 17-Dec-2015 Samuel Tan <samueltan@google.com> Merge "Specify path for native PersistableBundle implementation"
am: 477fa220b1

* commit '477fa220b1766a3822171fa514983198e09daabb':
Specify path for native PersistableBundle implementation
6de926a7d6439745cd0f01a69a5dd75b006b923d 17-Dec-2015 Samuel Tan <samueltan@google.com> Merge "Add comments to keep Java and native binder PersistableBundle in sync"
d12959193c60254b6b03b2a60a9c6e598e9da2e5 17-Dec-2015 Samuel Tan <samueltan@google.com> Merge "Fix PersistableBundle handling in Parcel.writeValue"
477fa220b1766a3822171fa514983198e09daabb 17-Dec-2015 Samuel Tan <samueltan@google.com> Merge "Specify path for native PersistableBundle implementation"
1ce53bc571563d8bf448a81a38da342ed5413ee4 14-Dec-2015 Mahaver Chopra <mahaver@google.com> Adding DPM.reboot

Adding new policy in DPM to trigger reboot on the device.
Requirement: Device owner can reboot the device if it is stuck or is
not useable due to some unresponsive UI.

Bug: 25304994
Change-Id: I7a6d5c8ad611de9c1cf6619378e492a306b41626
owerManager.java
c063603d9bd2ef03884a70d35ca446942a4fca4f 16-Dec-2015 Esteban Talavera <etalavera@google.com> Merge "Only system can set application restrictions via UserManager"
3cefe6a991ba650375e663e7095266e2273d2372 14-Dec-2015 Samuel Tan <samueltan@google.com> Add comments to keep Java and native binder PersistableBundle in sync

Add comments stating that certain methods of the Java binder framework
should be kept in sync with the corresponding methods mirrored in the
native PersistableBundle implementation.

BUG: 25815410
Change-Id: I475b2e9a527291eea58c8178cd733c444dfcfed5
aseBundle.java
arcel.java
ceafe5ed8a9968752c9454ae67428caf8c6719e6 12-Dec-2015 Samuel Tan <samueltan@google.com> Fix PersistableBundle handling in Parcel.writeValue

Previously, in Parcel.writeValue, PersistableBundle objects
would be handled as Parcelable types, since we check for
the Parcelable type before the PersistableBundle type (and
PersistableBundle implements the Parcelable interface).

Fix this by moving the PersistableBundle type "if" condition
above the Parcealble type "if" condition. Also, add a comment
that explicitly states this nuance, in order to prevent future
regressions.

BUG: 25815410
Change-Id: Ia86aa5fc39423422342df0609a0d37e7f38d7ddd
arcel.java
0bae77b8f0cdc6272abf56a831c8ebfa0e9ed6a0 01-Dec-2015 Samuel Tan <samueltan@google.com> Specify path for native PersistableBundle implementation

Specify path for native PersistableBundle implementation in
PersistableBundle.aidl.

BUG: 25815410
Change-Id: If29b06604b938805d5250fe80e54ef9ea1e88365
ersistableBundle.aidl
afae4bd437563c3997740ff6a537108409f7884c 15-Dec-2015 Jason Monk <jmonk@google.com> Add internal power mode changed broadcast

This broadcast allows settings to be (rarely) be started by a power
change event.

Settings will have a conditional item informing the user of battery
saving mode, when they dismiss it, the item will not show up again
until after power saving mode has been exited and re-entered.
Settings will catch the exit of power saving mode by enabling a
receiver for this broadcast only when in this state.

Change-Id: I62385413e4b8b004d4e1e0e5ba250730848ba013
owerManager.java
5b9f167a8e7395ca54fc0ef78af4523858de87a7 11-Dec-2015 Esteban Talavera <etalavera@google.com> Only system can set application restrictions via UserManager

Preventing apps with MANAGE_USERS from managing application
restrictions via UserManager. Application restrictions should
only be set via DevicePolicyManager.setApplicationRestrictions,
or via Settings (for restricted profiles).

Bug: 22541936
Change-Id: Ieed51ef54b4c23a73f383465e9af9b3bcf18a514
serManager.java
40aa9f1b989a7896fb683a5a7dd664aa3174012d 14-Dec-2015 Greg Hackmann <ghackmann@google.com> Merge "Trace SQLite operations" am: 6fe06606c4
am: 0f13ddfdff

* commit '0f13ddfdffacffe1c8bcce3adba87dd32b0ab92a':
Trace SQLite operations
0f13ddfdffacffe1c8bcce3adba87dd32b0ab92a 14-Dec-2015 Greg Hackmann <ghackmann@google.com> Merge "Trace SQLite operations"
am: 6fe06606c4

* commit '6fe06606c4df39487d240cc1fa4ac6d944b33137':
Trace SQLite operations
e12350faf7ede07ebc7242dc55be2b4a3a86b532 01-Dec-2014 Greg Hackmann <ghackmann@google.com> Trace SQLite operations

Inefficient SQLite use can have non-obvious effects on performance. For
example, insert and update operations can trigger a surprising number of
fsync() calls, especially if they're not grouped together into
transactions.

Add tracepoints around SQLite operations, to make it easier to pinpoint
their effects on the rest of the system.

Change-Id: I30cc3d02eca264e46dcc09ca7512a32519543834
Signed-off-by: Greg Hackmann <ghackmann@google.com>
race.java
1aba5230c531152aaffffc68bbb9e6c6fb3a5a2d 11-Dec-2015 Andy Hung <hunga@google.com> Merge "Add Android permissions for audioserver"
b642387b43417e2f342a1bc16e4f639b5d6c4b97 11-Dec-2015 Jeff Sharkey <jsharkey@android.com> Cleaner API for requesting locked status.

Change-Id: I1a5a6703737fb838347eaa292004430f2b9d29c3
serManager.java
98cb23dccfb65ddd2802c49d8714979f7dbae1df 09-Dec-2015 Jeff Sharkey <jsharkey@google.com> Merge "Slight API renaming, better behavior."
e13529a4adb60e5a18c2e36ce6c5bf8f2d1db78f 09-Dec-2015 Jeff Sharkey <jsharkey@android.com> Slight API renaming, better behavior.

Rename APIs to reflect that they're storage-related. Also move
credential-storage APIs to be system API.

Return a null Context when device-encrypted storage isn't
supported. This is the easiest way to keep legacy apps working when
upgrading from M to N.

Reduce strictness of path checking so we don't crash when working
with special packages like "android".

Bug: 22358539, 26104027
Change-Id: I38c24fc003488186210a6ae3b64270f86e1efe56
serManager.java
ed0ea40a41aae8e65bc189efe6b631ca78259383 30-Oct-2015 Andy Hung <hunga@google.com> Add Android permissions for audioserver

audioserver has the same permissions as mediaserver.

TBD: Pare down permissions.

Bug: 24511453
Change-Id: Id7abddd79a730ad95b554a94207df3aa4b676f2a
rocess.java
f26709c7aff4d8a87021f9cb0d09e64fb4f1e5ac 09-Dec-2015 Christopher Wiley <wiley@google.com> Merge "Rethrow remote\'s ServiceSpecificException" am: 85eaca25fe
am: b7b3415899

* commit 'b7b341589929b9d8c46f772c253803c97ac1ffb0':
Rethrow remote's ServiceSpecificException
b7b341589929b9d8c46f772c253803c97ac1ffb0 09-Dec-2015 Christopher Wiley <wiley@google.com> Merge "Rethrow remote\'s ServiceSpecificException"
am: 85eaca25fe

* commit '85eaca25fe2a89f883e9a87d8f411cfb315f3e03':
Rethrow remote's ServiceSpecificException
85eaca25fe2a89f883e9a87d8f411cfb315f3e03 09-Dec-2015 Christopher Wiley <wiley@google.com> Merge "Rethrow remote's ServiceSpecificException"
13b80b2303f4cd183e5f1ec4956c6770fea64cfb 08-Dec-2015 Xiaohui Chen <xiaohuic@google.com> Merge "UserManager: get/set user account name"
c4dd021322d38ea32ac49930e904b6d08ce6490c 18-Nov-2015 Lenka Trochtova <ltrochtova@google.com> Introduce ephemeral users.

BUG: 24883058

Change-Id: I2e1d6aa184142c2a3dc0415c0cd407573453cf41
serManager.java
torage/IMountService.java
torage/StorageManager.java
ed6c8cd6ca377ba51243c70844c6dd074abbd0fc 08-Dec-2015 Zoltan Szatmary-Ban <szatmz@google.com> Merge "Make base user restrictions queriable for system apps"
e0b2f2e270ae14b9deaaa31acd7ef535ff963e32 08-Dec-2015 Jeff Sharkey <jsharkey@google.com> Merge "Mount storage after unlock, fix leaving emulation."
ce14cd01411c384b3b979a9f662bf3cd5f9e7183 07-Dec-2015 Jeff Sharkey <jsharkey@android.com> Mount storage after unlock, fix leaving emulation.

Delay mounting of storage devices until after the user is unlocked,
which means any emulated storage areas will be ready for use. Track
separate per-user unlocked states for local versus system lifecycle
state.

Switch to explicitly lock or unlock user keys during boot of a
device without native FBE support. This allows us to recover when
the user has disabled emulated FBE.

Force reboot when changing FBE emulation state.

Bug: 26010607, 26027473
Change-Id: Idaf8b63e69f886ddbd848a9fab6d143a5fd10500
torage/StorageManager.java
650c4af010447e652b9bb0245d8452b268a1d638 08-Dec-2015 Samuel Tan <samueltan@google.com> Merge "Add support for reading and writing double array values" am: 61c0b7cd4d am: ff8ef28e73
am: e769f25fa4

* commit 'e769f25fa496827bf1ba9d74518bafd40082ceb6':
Add support for reading and writing double array values
e769f25fa496827bf1ba9d74518bafd40082ceb6 08-Dec-2015 Samuel Tan <samueltan@google.com> Merge "Add support for reading and writing double array values" am: 61c0b7cd4d
am: ff8ef28e73

* commit 'ff8ef28e73c0959a4993fea975d0bdefbc27a20b':
Add support for reading and writing double array values
ff8ef28e73c0959a4993fea975d0bdefbc27a20b 08-Dec-2015 Samuel Tan <samueltan@google.com> Merge "Add support for reading and writing double array values"
am: 61c0b7cd4d

* commit '61c0b7cd4d73381a2f4e3d3836389b130b5006d9':
Add support for reading and writing double array values
cc586c5ab12cb713a499766875933947019b73fa 07-Dec-2015 Rubin Xu <rubinxu@google.com> Merge "Introduce quiet mode state to managed profile users"
b3b9258ab6a01af5e0df4b8385b73084cd9ec530 07-Dec-2015 Xiaohui Chen <xiaohuic@google.com> UserManager: get/set user account name

Bug: 25935510
Change-Id: I0b621fb300be74209534e08a11f1d1a7c049cd5a
UserManager.aidl
serManager.java
61c0b7cd4d73381a2f4e3d3836389b130b5006d9 07-Dec-2015 Samuel Tan <samueltan@google.com> Merge "Add support for reading and writing double array values"
0a29ecd8a53b5ac63b628e870a344650ff34c4b0 04-Nov-2015 Rubin Xu <rubinxu@google.com> Introduce quiet mode state to managed profile users

Quiet mode means the user will be free from visual and audio interruptions
from apps inside the managed profile, including notifications, widgets and
others. This CL adds the underlying state bit to users and exposes various
APIs to control and query the quiet mode state.

Bug: 22541941
Change-Id: If5f8e5a897843050e83b6ec26cb39561098f12b9
UserManager.aidl
serManager.java
c72b3101ee368d2a9943e4436ede679acfa38f92 07-Dec-2015 Todd Kennedy <toddke@google.com> Merge "Add ephemeral installs"
3bbceddb94d627495c0022d6e3f92a5cb16aebea 26-Nov-2015 Zoltan Szatmary-Ban <szatmz@google.com> Make base user restrictions queriable for system apps

Needed by e.g. Settings > Location

Bug:22541939
Change-Id: I6cdd5f1c32cde143232eb53f531bbf3a737d8a9a
UserManager.aidl
serManager.java
80fd1208b99fbb88f24faa5d55183cdbbdeb6777 23-Nov-2015 Christopher Wiley <wiley@google.com> Rethrow remote's ServiceSpecificException

Certain system services would like to throw exceptions
with specific error codes, so that the framework can catch
these specific conditions and express them appropriately.

Bug: 25800533
Change-Id: I94b3d30fa131f5e14bba893c971615840085459f
arcel.java
erviceSpecificException.java
9d8a1048bb666c68402dce031bebfa07c92a42db 04-Dec-2015 Jeff Sharkey <jsharkey@android.com> Handle non-encryption-aware accounts and sync.

The system can now boot in a "locked" state where only encryption
aware (EA) components can be safely started. When in this state,
PackageManager already filters away non-EA components, but system
services like AccountManager and SyncManager need to carefully handle
these temporarily "missing" components.

As a guiding principle, all known Accounts are still present when
the device is locked, but communication with underlying non-EA
authenticators is blocked.

To keep things simple for now, all SyncManager requests are kept
dormant until the user enters the unlocked state.

The core of this logic is that RegisteredServicesCache now works
with all components regardless of EA status, which prevents us from
accidentally thinking a service was removed when the user is locked.

Bug: 25945136
Change-Id: I8714121f6236b00821769023c4df7de1c8a99944
serManager.java
2699f065558ba78066887210b0c7346105959860 20-Nov-2015 Todd Kennedy <toddke@google.com> Add ephemeral installs

* Add a new --ephemeral argument to 'adb install'
* Add plumbing to internally track ephemeralness
* Create new app directory for ephemeral installs

Bug: 25119046
Change-Id: I1d379f5ccd42e9444c9051eef2d025a37bd824fe
nvironment.java
f4a6dc52b1aa8a2eb216d1893741904228e1d9fe 03-Dec-2015 Jeff Sharkey <jsharkey@android.com> Merge "StrictMode: fix deserialization of ViolationInfo on large stacks" am: 29e0b6e789 am: af588a31bc
am: 630f658108

* commit '630f65810860cbd15012a1d5e83a275695e332cd':
StrictMode: fix deserialization of ViolationInfo on large stacks
c16918174710098b91cf3f390de63e4628528a49 03-Dec-2015 Chris Tate <ctate@android.com> Merge "Improve docs for Parcelable.describeContents()"
630f65810860cbd15012a1d5e83a275695e332cd 03-Dec-2015 Jeff Sharkey <jsharkey@android.com> Merge "StrictMode: fix deserialization of ViolationInfo on large stacks" am: 29e0b6e789
am: af588a31bc

* commit 'af588a31bc62b791014b3cc4e655107e9446e3d0':
StrictMode: fix deserialization of ViolationInfo on large stacks
af588a31bc62b791014b3cc4e655107e9446e3d0 03-Dec-2015 Jeff Sharkey <jsharkey@android.com> Merge "StrictMode: fix deserialization of ViolationInfo on large stacks"
am: 29e0b6e789

* commit '29e0b6e7891091614a9e9dd6083017d0c9d454ae':
StrictMode: fix deserialization of ViolationInfo on large stacks
29e0b6e7891091614a9e9dd6083017d0c9d454ae 03-Dec-2015 Jeff Sharkey <jsharkey@android.com> Merge "StrictMode: fix deserialization of ViolationInfo on large stacks"
568f4de11a87308cbcb888083f02818a8290a7d7 03-Dec-2015 Neil Fuller <nfuller@google.com> Merge "Fix @code escapes"
d1f09e2b43f4765a4e5c647e1212ce61f66a36f3 02-Dec-2015 Christopher Tate <ctate@google.com> Improve docs for Parcelable.describeContents()

Make the meaning of CONTENTS_FILE_DESCRIPTOR more explicit, and
emphasize that describeContents() applies to the current object
instance, not to the class generically.

Change-Id: Ie5010e24c2e57bdc6c982249adb9d4c871d46f5a
arcelable.java
f23b5d3d6d6d6d72876603c8f72b82d5de022735 02-Dec-2015 Jeff Sharkey <jsharkey@google.com> Merge "API to determine user locked/unlocked state."
0825ab284c01402d030a24471ac5a6491d79d28b 02-Dec-2015 Jeff Sharkey <jsharkey@android.com> API to determine user locked/unlocked state.

Bug: 25946804
Change-Id: I2b8c8c75fda161a446d79fac811fdd446aa3a4db
serManager.java
a864049aae717c0af8693b19822fe84d1102c08b 02-Dec-2015 Dianne Hackborn <hackbod@google.com> Merge "Fix reporting of uid state in battery stats."
9cbfc9e212151e84910a22387365644916dde446 08-Oct-2015 Fyodor Kupolov <fkupolov@google.com> Added DISALLOW_RUN_IN_BACKGROUND user restriction

It forces the user to stop instead of going into the background. Also
changed behavior of stopUser method. Now it also attempts to stop related
users along with the specified userId.

Based on ag/807976, with the only difference that it's now a user restriction.

Bug: 24579258
Bug: 24708668
Change-Id: I357298908816fc58feeed83b7e9979fc33d25da6
serManager.java
71fbb81b14958b80fe55738607740c6630e4e9da 30-Nov-2015 Neil Fuller <nfuller@google.com> Fix @code escapes

The body of {@code} must not be HTML escaped. This is one of
several changes that fix the source in conjunction with a
doclava fix.

Bug: 25757239
Change-Id: Ib38a0fa2dd2a3d68e467f78a812071e763d7e881
owerManager.java
9c165d76010d9f79f5cd71978742a335b6b8d1b4 02-Dec-2015 Svet Ganov <svetoslavganov@google.com> Add optional permission review for legacy apps - framework

For some markets we have to allow the user to review permissions
for legacy apps at runtime despite them not supporting the new
permission model. This is achieved by showing a review UI before
launching any app component. If an update is installed the user
should see a permission review UI for the newly requested
permissions.

To allow distinguishing which permissions need a review we set
a special flag in the permission flags that a review is required.
This flag is set if a runtime permission is granted to a legacy
app and the system does not launch any app components until this
flag is cleared. Since install permissions are shared across all
users the dangerous permissions for legacy apps in review mode
are represented as always granted runtime permissions since the
reivew requirement is on a per user basis.

Whether the build supports permission review for legacy apps is
determined by a build constant allowing us to compile away the
unnecessary code for markets that do not require a permissions
review.

If an app launches an activity in another app that has some
permissions needing review, we launch the permissions review
UI and pass it a pending intent to launch the activity after
the review is completed.

If an app sends a broadcast to another app that has some permissions
needing review, we do not deliver the broadcast and if the sending
app is in the foreground plus the broadcast is explicit (has a
component) we launch the review UI giving it a pending intent to
send the broadcast after the review is completed.

If an app starts a service in another app that has some permissions
needing review, we do not start the service and if the calling app
is in the foreground we launch the review UI and pass it a pending
intent to start the service after the review is completed.

If an app binds to a service in another app that has some permissions
needing review, we schedule the binding but do not spin the target
service's process and we launch the review UI and pass it a callback
to invoke after the review is completed which spins the service
process and completes the binding.

If an app requests a content provider in another app that has some
permissions needing review we do not return the provider and if
the calling app is in the foreground we show the review UI.

Change-Id: I550f5ff6cadc46a98a1d1a7b8415eca551203acf
uild.java
emoteCallback.java
e7f24e229143c2b94aa9223833b81e0f34446157 02-Dec-2015 Chong Zhang <chz@google.com> Merge "AMS: add API to IProcessInfoServive for retrieving oom scores"
58c270c01b51b3c40e2548857cbac4aee011d0ec 01-Dec-2015 Chong Zhang <chz@google.com> AMS: add API to IProcessInfoServive for retrieving oom scores

bug: 25853091
Change-Id: Ic915191b959afd34d31e8731a7e4aa631a78e45e
ProcessInfoService.aidl
a8d10945a608ac6f85a6ab85b69b9a118d7853d8 20-Nov-2015 Dianne Hackborn <hackbod@google.com> Fix reporting of uid state in battery stats.

Now that the activity manager keeps track of per-uid process states,
we can push that already rolled-up data into battery stats to directly
track the times in those states.

The problem with the reporting was actually that we weren't dealing
correctly with negative process states, which is now fixed. (It was
interpreting them as FOREGROUND rather than not running.)

Also split out a number of new states -- TOP, FOREGROUND_SERVICE,
TOP_SLEEPING -- from FOREGROUND. This should allow us to get a much
better idea of how much an app has been actively in use: TOP is when
it is directly visible to the user or in use by such, FOREGROUND_SERVICE
is when it is running in the background in a way the user is aware of.
Also when reporting these numbers, they are no longer added together as
reported but kept as separate times.

Change-Id: I6d307503a4b4ad5c0d5d49305ef63f8eb858e2c9
atteryStats.java
8286a6d85fc01a972f6ee0ffab459364e68c5d8a 01-Dec-2015 Fyodor Kupolov <fkupolov@google.com> Merge "Correctly set default restrictions when creating guest"
e04462caa46803c64dac5107a8d7b07894e23b9d 01-Dec-2015 Fyodor Kupolov <fkupolov@google.com> Correctly set default restrictions when creating guest

Use restrictions from mGuestRestrictions when creating a guest. Initially
phone calls, SMS and installing from unknown sources is not allowed.

Bug: 25904144
Bug: 25729516
Change-Id: I461c492ad64842d3707f73dfd83b533aa31b63ef
serManager.java
2b0ebb3d5d101895ebdcd394c53025391c360763 01-Dec-2015 John Reck <jreck@google.com> Tweak AsyncTask#THREAD_POOL_EXECUTOR settings

Bug: 24821101
Bug: 23722178
Change-Id: I73741eb4f812e754d5823b27efec98fca9938329
syncTask.java
a8036660ea522e8509e4fd5c79bd4466ac6d9179 23-Nov-2015 Samuel Tan <samueltan@google.com> Add support for reading and writing double array values

Add support for reading and writing double arrays in
Parcel.readValue() and Parcel.writeValue.

Also, remove some trailing whitespaces in Parcel.java.

BUG: 25848659
Change-Id: Ib5430f492df4195051b83d9bf2b5163ec684bbff
arcel.java
e7927da1b6dc4f96714aa9bc4fbb71b3659f8cea 25-Nov-2015 Makoto Onuki <omakoto@google.com> Don't call DPM from UserManager to avoid lock inversion

- Also make sure DPMS.mOwners is always guarded with DPMS.this.
(and remove synchronization from Owners.)

Bug 25796840

Change-Id: I83f7b78e7b437d9c2a2b1d6e714346cd15f95330
serManagerInternal.java
42490c074dc8ff568d0459ed0f9247d55ad95c2f 23-Nov-2015 Makoto Onuki <omakoto@google.com> Merge "Remove UserManager.setSystemControlledUserRestriction()"
ac65e1e1dba1cf0ea237a389220ec818ade07a16 21-Nov-2015 Makoto Onuki <omakoto@google.com> Remove UserManager.setSystemControlledUserRestriction()

Now that we don't have UM.setUserRestriction*s*() that could remove
all existing restrictions, there's almost no point handling
DISALLOW_RECORD_AUDIO differently.

Now DISALLOW_RECORD_AUDIO is handled just like other restrictions,
except we don't persist it.

Bug 24954662

Change-Id: I27875b4a74dd95a3ce6bb774081eeaf718eaec15
UserManager.aidl
9ad08ec5be0d1e225c9f463fd395ba852b6b5bba 09-Jul-2015 Przemyslaw Szczepaniak <pszczepaniak@google.com> Switch RecoverySystem impl to use sun.security.pkcs

Due to org.apache.harmony.security package removal,
RecoverySystem#verifyPackage was rewritten to use
sun.security.pkcs package for verifining package
signature.

(cherry-picked from 84acbd76f7e1300e8404ac1b94f008826f9cc0fb)

Change-Id: I3a2058982beadab1aaae793c25db5c6f7387a72b
ecoverySystem.java
1fae502824dfb77a109fedd80dad61fe094d8284 19-Nov-2015 Makoto Onuki <omakoto@google.com> Merge "More work on layered user restrictions."
1a2cd74526113b45d9108b6997609122c4311fb1 16-Nov-2015 Makoto Onuki <omakoto@google.com> More work on layered user restrictions.

- Now when DO/PO sets a user restriction, DPMS pushes it to UMS and
then UMS persists it, in order for UserManager.hasUserRestriction()
to never have to talk with DPMS, which would cause lock inversion.

- Also apply user restrictions when a user start.

- This is an updated version of the abandoned CL -- the difference
is, ActivityManager no longer has to call DPMS.

- Also removed an unnecessary write to userlist.xml in UMS.
upgradeIfNecessaryLP().

Bug 23902097
Bug 25388912
Bug 25354031
Bug 25641040

Change-Id: I0948aea06ad7d0f45fe612a431d765faddfe3c58
serManagerInternal.java
ba51235ef5c598d845b77fcf14491329493da34f 13-Nov-2015 Jeff Sharkey <jsharkey@android.com> More file-based encryption work.

Add new "am unlock-user" command so we can trigger changes from the
command line.

Move FBE check to static method so it can safely be called early
during boot before the mount service is ready. Move FBE emulation
to persisted system property, and start reading/writing that value.

Change default permission grants to ignore current encryption-aware
flags, since many of the target apps aren't crypto aware.

Always prepare package data directories, which is how we create the
new "user_de" paths during boot.

Bug: 22358539
Change-Id: I6f58ea2d34b3a466d3775d614f8a13de92272621
torage/IMountService.java
torage/StorageManager.java
84cebbeb69e5b473f0cb4d1575bdc57aac48e32e 25-Sep-2015 Ben Kwa <kenobi@google.com> Open the destination dir when a copy notification is tapped.

- Cleanup: rename the "open copy destination" action to "pick copy
destination", which better reflects what it does.
- Move DocumentsIntent from BaseActivity to Shared.
- Rename ACTION_BROWSE_DOCUMENT_ROOT to ACTION_BROWSE for general browsing.
- Use the new ACTION_BROWSE to open the copy destination when copy
notifications are tapped.

BUG=23137963

Change-Id: I10480b45a16ce716febac5453cb5015d26bb0062
torage/VolumeInfo.java
5462e46d23800bc480d31d73c21d6089ce299d25 18-Nov-2015 Nicolas Geoffray <ngeoffray@google.com> Merge "Remove DEBUG_JIT from Zygote flags." am: cf49583bd0
am: 5485d81578

* commit '5485d815788e4037829d70d041fe4fc1a35416f3':
Remove DEBUG_JIT from Zygote flags.
5485d815788e4037829d70d041fe4fc1a35416f3 18-Nov-2015 Nicolas Geoffray <ngeoffray@google.com> Merge "Remove DEBUG_JIT from Zygote flags."
am: cf49583bd0

* commit 'cf49583bd02d01b5d7aa57912d5469b466722c65':
Remove DEBUG_JIT from Zygote flags.
245ec92b653ce51278498f10fddbb0f089404f1d 05-Nov-2015 Nicolas Geoffray <ngeoffray@google.com> Remove DEBUG_JIT from Zygote flags.

The flag is being obsolete by the move to JIT.

(cherry picked from commit 9abbf45c8dcdb2e5b13b615e5138ad996fe8afa3)

Change-Id: I3ce4577e81f91e9dd55d44116e0f9e2014bd00b8
rocess.java
7d1428d7f3005abe23328c629ad33998f23cb575 18-Nov-2015 Rom Lemarchand <romlem@android.com> resolve merge conflicts of 5032e49f9e to mnc-dr2-dev-plus-aosp.

Change-Id: If4a565a262befdc3d6e206c892e2be9711d52c0f
0283d44c0856499b5aabc3212487a44d6f4b2f63 17-Nov-2015 Nicolas Geoffray <ngeoffray@google.com> Merge "Remove DEBUG_JIT from Zygote flags."
0fe13b1f7001f5e2f23062a97140784258f3423e 17-Nov-2015 Daichi Hirono <hirono@google.com> Merge "Add a mehtod definition to StorageManager for appfuse."
354c3bc3945cd0d676c403039c528c5f45d8a091 17-Nov-2015 Dianne Hackborn <hackbod@google.com> Merge "Some debugging improvements."
627dfa1ddafc96b912ae938677a48a16f7ab255c 12-Nov-2015 Dianne Hackborn <hackbod@google.com> Be smarter about determining when we can stop idle maintenance.

The device idle service now knows when the system is actively
doing significant things (syncs, jobs, alarms, downloads). It
uses this, when in an idle maintenance window, to determine when
it can end that window early -- when such work is no longer
happening.

For now this just allows us to shorten the windows. In the future
we should use this to allow us to expand the windows to a longer
potential time, adjusting future windows to shorter durations if
earlier ones use more time. This will allow us to batch occasional
long operations (such as downloads) into one window, making up
for that with much shorter later windows.

Change-Id: Ie482abd50bc43be9a8917a769a5175851eee4ec4
DeviceIdleController.aidl
9e8d9e250b4e3fe8e57072072ed84b5dea0a19d3 13-Nov-2015 Daichi Hirono <hirono@google.com> Add a mehtod definition to StorageManager for appfuse.

BUG=25091416

Change-Id: Id4d4a000daf89fab4917528fcd0d1270547fbfa4
torage/IMountService.java
torage/StorageManager.java
4f72447fbfdf950d76050840efeab3e57f55cefe 27-Oct-2015 Badhri Jagan Sridharan <Badhri@google.com> BatteryService: Add Max charging voltage

Bug: 25229483
Change-Id: Ibeba97eb145c3d59a763bd8632ab7fcc43118e4b
(cherry picked from commit f92fcfe36ad841cba4774e7f2129e8dab7ac784a)
atteryManager.java
atteryProperties.java
cc26b35bb4f19fe87359ba86afc1e513057fb97b 13-Nov-2015 Casey Dahlin <sadmac@google.com> Merge "Add hidden support for arrays of raw file descriptors" am: 376d5f350c am: 7a38be6112
am: 2c19dbeff5

* commit '2c19dbeff5ef15aaa6e4bfb23dc1fb44631e5036':
Add hidden support for arrays of raw file descriptors
7a38be61124fb1d75ed73cdd4050ba25047d2b03 13-Nov-2015 Casey Dahlin <sadmac@google.com> Merge "Add hidden support for arrays of raw file descriptors"
am: 376d5f350c

* commit '376d5f350c6618d915338a9927b5d0f5fb61eba8':
Add hidden support for arrays of raw file descriptors
2f974b252f819405a54798c9736f448f979a095f 05-Nov-2015 Casey Dahlin <sadmac@google.com> Add hidden support for arrays of raw file descriptors

Change-Id: I4013e0700369764a26485d8620ebf16d8bea1951
Test: Built and ran Android in an emulator
Bug: 25242023
Signed-off-by: Casey Dahlin <sadmac@google.com>
arcel.java
3cdb56efea044112bfe1b97b3ed78ee05e0dba46 11-Nov-2015 Dianne Hackborn <hackbod@google.com> Some debugging improvements.

- Fix dumping of package manager intent filters so the option
to print the filter detail works again.
- Extend dump resolvers to allow you to specify the specific
types of resolvers you'd like to dump.
- Add new package manager commands for querying activities,
services, receivers.
- Move the code for parsing a command line into an intent to
the framework, so it can be used by the new package manager
commands and later elsewhere.

Change-Id: I56ea2bb8c3dd0e5198ee333be8f41ad9dcdb626f
hellCommand.java
serHandle.java
f9fc6d6cc05595241bc7ced6d4cab97b45f9b901 09-Nov-2015 Jeff Sharkey <jsharkey@android.com> More file-based encryption work.

Add granular StorageManager APIs for key creation/destruction and
unlocking/locking. Start passing through an opaque token as part
of the unlock command, but leave it empty for now. We now have a
separate "prepare" method that sanity checks that user directories
are correctly setup.

Define a handful of system properties used for marking devices that
should be operating in FBE mode, and if they're emulating FBE. Wire
a command to "sm", but persisting will come later.

Start using new "encryptionAware" flag on apps previously marked with
coreApp flag, which were apps running in the legacy CryptKeeper
model. Small tweaks to handle non-encryptionAware voice interaction
services. Switch PackageManager to consult StorageManager about the
unlocked state of a user.

Bug: 22358539
Change-Id: Ic2865f9b81c10ea39369c441422f7427a3c3c3d6
torage/IMountService.java
torage/StorageManager.java
72cfcd02b89838264b018e9b9417d2829c87b7e2 04-Nov-2015 Todd Kennedy <toddke@google.com> Move 'un/install' to cmd

Move the implementation of the install variants and uninstall to the cmd
command. Additionally, make two other important changes: 1) replace calls
to the legacy PackageManager#installPackageAsUser with the PackageInstaller
2) allow streaming package bits for 'pm install'

Change-Id: I5680f57208d377daadb69b2cc09c233c02fe5016
hellCommand.java
f49bec047a69859190c8331b46eb454d88521420 09-Nov-2015 Guang Zhu <guangzhu@google.com> Merge "Revert "Move 'un/install' to cmd""
18bc3305e43a040018add48c97cfbc7b3d9ecf7c 09-Nov-2015 Todd Kennedy <toddke@google.com> Revert "Move 'un/install' to cmd"

This reverts commit ec059d839de6d061085dcfd85ce6565dcf4d5b69.

Change-Id: Ieaa1373e96fb4cc20aa41c3159518bd9e86c572b
hellCommand.java
d59262667cbcdfedd9b03dccaa26a9a000486350 09-Nov-2015 Nicolas Prévot <nprevot@google.com> Merge "Add method to tell the dpc if provisioning is allowed."
e17ac1569793c333bb4dce86607a342e7c982ae7 07-Nov-2015 Jeff Sharkey <jsharkey@android.com> More APIs for encryption-aware apps.

Apps can mark manifest components as being encryption-aware, which
means they can safely be run before the credential encrypted storage
is available.

Start adding filtering logic so that we only return these components
when a user is running "with amnesia." That is to say, only device
encrypted storage is available, so the user is running but with only
partial knowledge of its data.

To avoid calling into ActivityManager with the PackageManager lock
held, we quickly determine user state and splice the state into the
flags for later per-component evaluation.

Bug: 22358539
Change-Id: Idc56ec29f1ef04da8963e004314d7f5e47400997
serManager.java
15447798a38d2b5acb1998731340255f4203f294 06-Nov-2015 Jeff Sharkey <jsharkey@android.com> Initial file-based encryption public APIs.

Define two explicit directories where device-encrypted and
credential-encrypted data will be stored. Third-party apps only
need access to the device-encrypted directory, so that's the only
API exposed for now.

General cleanup in how ApplicationInfo details are derived.

Bug: 22358539
Change-Id: If0a0108721a4aa1c3052b4912e08604bbf24e1ae
nvironment.java
ileUtils.java
86cd001e364d0d0a8253cf4ee14acd13915cbd9a 06-Nov-2015 Makoto Onuki <omakoto@google.com> Merge "Have AudioService listen to DISALLOW_UNMUTE_MICROPHONE and"
ec059d839de6d061085dcfd85ce6565dcf4d5b69 04-Nov-2015 Todd Kennedy <toddke@google.com> Move 'un/install' to cmd

Move the implementation of the install variants and uninstall to the cmd
command. Additionally, make two other important changes: 1) replace calls
to the legacy PackageManager#installPackageAsUser with the PackageInstaller
2) allow streaming package bits for 'pm install'

Change-Id: Ia49dac0ccd6470f9d1c1964bdeb3c0b22b856075
hellCommand.java
6bcc32504f3b9c40b33718599a6ff8186a9669f4 05-Nov-2015 Paul Lawrence <paullawrence@google.com> Fix build

Change-Id: I0ebff8e41c2aa5bec2466d075d9143a5a525e02d
torage/IMountService.java
9548b380d98cf5fe2e3b0102e283e5e3b39a8968 05-Nov-2015 Paul Lawrence <paullawrence@google.com> Merge "Add developer option to convert from FDE to FBE"
9abbf45c8dcdb2e5b13b615e5138ad996fe8afa3 05-Nov-2015 Nicolas Geoffray <ngeoffray@google.com> Remove DEBUG_JIT from Zygote flags.

The flag is being obsolete by the move to JIT.

Change-Id: Ifb9fab7c561c7f5137aa78c34dd55c552a9505f5
rocess.java
d45a4a2ecb18701b4cfadcb4a26663f2eab642fe 03-Nov-2015 Makoto Onuki <omakoto@google.com> Have AudioService listen to DISALLOW_UNMUTE_MICROPHONE and

... DISALLOW_ADJUST_VOLUME, instead of UserManager pushing
new settings to AudioService.

Also:
- Allow PO to set these two restrictions.

- Now AS.setMasterMuteInternal() respects mUseFixedVolume to make
it consistent with readPersistedSettings().

- When a user switches and restores the mute state in
AS.readPersistedSettings(), also check the current user restrictions
in addition to system settings. Because of the delay in AudioService
before persisting the mute settings in setMasterMuteInternal() and
setMicrophoneMute(), there's was an edge case
DISALLOW_UNMUTE_MICROPHONE and DISALLOW_ADJUST_VOLUME would be ignored
when the user switches right after they are set.

Bug 24981972

Change-Id: I4d9b709a0a0e6812319204568c6e44d6664bdeb4
serManagerInternal.java
3806d9c562c4391dd523a18145a76c8e359061c3 29-Oct-2015 Paul Lawrence <paullawrence@google.com> Add developer option to convert from FDE to FBE

This set of changes adds the screen that offers this conversion,
and the plumbing so the option is only available on suitable
devices.

It does not implement the conversion mechanism.Add conversion from FDE to FBE

Change-Id: Idf7bc834f30b3d1b0473e0a53c985ef01dd0ad18
torage/IMountService.java
07387fedfafa72bcb68defd801eef82f1f494d7c 30-Oct-2015 Nicolas Prevot <nprevot@google.com> Add method to tell the dpc if provisioning is allowed.

The DPC can use it to tell if provisioning a managed profile or for
device owner would work or not.

BUG:25338478
Change-Id: I09ea6a9f23a8e88e4ed37c048170b2a68213086e
UserManager.aidl
serManager.java
965da39942f9a8736f785f7c57a6c351a8c89d6b 28-Oct-2015 Clara Bayarri <clarabayarri@google.com> Create a File Based Encryption check API

Change-Id: Ibf41f98818ea801b9f690200c340be80c3b9bf31
torage/IMountService.java
torage/StorageManager.java
82402753815ff4633cc572713ae490a17d9129e5 28-Oct-2015 Fyodor Kupolov <fkupolov@google.com> Introduced short-term lock for UMS internal state

Added mUsersLock - short-term lock for internal state, when interaction and
synchronization with PM is not required. Modifications to mUsers and
mRemovingUserIds must be guarded by 3 locks: mInstallLock, mPackagesLock and
mUsersLock. While reads can use mUsersLock.

Testing revealed that the following methods in UMS often cause contention:
- exists
- getUserInfo
- getProfileParent

They all now use a short-term lock mUsersLock for reads.

Bug: 24979571
Change-Id: Ie3a22ea7cbb450c7969800fe2a4a2b2516165e5b
serManagerInternal.java
5263492de62c4dac099d0aa0f70056dbc729b06b 02-Nov-2015 Makoto Onuki <omakoto@google.com> Merge "Allow DO to disable camera device-wise."
759a763f5f03fda86b96d238faedb870fbee24ec 29-Oct-2015 Makoto Onuki <omakoto@google.com> Allow DO to disable camera device-wise.

Bug 24538855

Change-Id: I421690f14ee57fa818d2b233fe48a90a0a575a9e
serManager.java
2b2e24c2ab77475ac9b22b4eecdee10db578800c 02-Nov-2015 Badhri Jagan Sridharan <badhri@google.com> Merge "BatteryService: Add Max charging voltage"
8f18dd4dfa45e27cd5dbe6135da1b5b4985283bb 30-Oct-2015 Amith Yamasani <yamasani@google.com> Merge "Don't store a static instance of UserManager"
c0688301de5feea94c8456b3b9b42c41d0045f03 30-Oct-2015 Amith Yamasani <yamasani@google.com> Don't store a static instance of UserManager

Otherwise the context within it can't be GCed.
It's better to leave the caching to the ContextImpl.

Bug: 25308506
Change-Id: I9be3ba5b1bb6cdc88b77520b2fbd72d9b72ef30d
serManager.java
2e44107bf7d9ad97833933422ccd241bf53ff50c 29-Oct-2015 Dianne Hackborn <hackbod@google.com> Implement shell commands for battery and activity services.

The battery service just implements the existing commands that
are available through dump.

The activity service implements the small set of commands that
are available through dump (not the rest of the dump commands),
and also introduces some of the simple "am" shell commands as
a proof-of-concept of moving those into the service implementation.

Change-Id: If5ff80930dde787703e2682e43c36ce1dab05d69
hellCommand.java
a3c1250a2fc36e7315b377b1babe9d03ae41721a 28-Oct-2015 Makoto Onuki <omakoto@google.com> Fix javadoc

Change-Id: Iade890cd14bcac844f8ccc1ddde90120600fd64a
serManager.java
f92fcfe36ad841cba4774e7f2129e8dab7ac784a 27-Oct-2015 Badhri Jagan Sridharan <Badhri@google.com> BatteryService: Add Max charging voltage

Bug: 25229483
Change-Id: Ibeba97eb145c3d59a763bd8632ab7fcc43118e4b
atteryManager.java
atteryProperties.java
068c54a5be697c3df4657dcda33cd17c4b547710 13-Oct-2015 Makoto Onuki <omakoto@google.com> Layer user restrictions

- Now DPMS remembers user restrictions set by DO / PO in their ActiveAdmin.

- User restrictions set by DO/PO will no longer be saved by UserManger. Instead,
when needed, UMS will consult DPMS to build "effective" user restrictions.

- UM.getUserRestrictions() will now always return "effective" user restrictions.

- DPMS migrates existing user restrictions per the eng spec.

- Also now UM.setUserRestrictions() will crash. UMS.setUserRestrictions() has
been removed.
This was needed because UM.setUserRestrctions(UM.getUserRestrictions()) will no
longer be a valid use like it used to be.

- Also introduced a fined-grained lock for user restrictions in UM to avoid
deadlock between DPMS and also for better performance.

Bug 23902097

Change-Id: If0e1e49344e2f3e9226532d00777976d1eaa7df3
UserManager.aidl
serManager.java
serManagerInternal.java
f8ae610e8ccdc22a843a062507508ee1ed040e88 23-Oct-2015 Adrian Roos <roosa@google.com> Merge "Revert "Revert "Track ashmem memory usage in Parcel""" into mnc-dr-dev am: 93a6b4c129 am: a53bbb652b am: 5e5f718d23
am: 989b719e64

* commit '989b719e649266f41353ff5266cabd5b42a297a5':
Revert "Revert "Track ashmem memory usage in Parcel""
989b719e649266f41353ff5266cabd5b42a297a5 23-Oct-2015 Adrian Roos <roosa@google.com> Merge "Revert "Revert "Track ashmem memory usage in Parcel""" into mnc-dr-dev am: 93a6b4c129 am: a53bbb652b
am: 5e5f718d23

* commit '5e5f718d236234f3a4bc5826dc805b6b8c53283c':
Revert "Revert "Track ashmem memory usage in Parcel""
a53bbb652b875e02ce8e5cfd55591adeac033417 23-Oct-2015 Adrian Roos <roosa@google.com> Merge "Revert "Revert "Track ashmem memory usage in Parcel""" into mnc-dr-dev
am: 93a6b4c129

* commit '93a6b4c12904bd1804a540d006c183851b0aea33':
Revert "Revert "Track ashmem memory usage in Parcel""
0450565d9a6de0f0828c9ad8ce16c8645c6f394c 23-Oct-2015 Adrian Roos <roosa@google.com> Revert "Revert "Track ashmem memory usage in Parcel""

This reverts commit e2adb2cf0f2c90c77fab3f09285a92e05e70b567.

Bug: 25004154
Change-Id: I9b432d1ebc39f3bbcd7afdefc403f0fb6ced8158
arcel.java
ab49c51342effda610a6c5b151fd7705bf67e136 23-Oct-2015 Ian Pedowitz <ijpedowitz@google.com> Merge "Revert "Track ashmem memory usage in Parcel"" into mnc-dr-dev am: 09fd4ecf90 am: b402735fc0 am: 07129d53b5
am: d3511518f9

* commit 'd3511518f927eead41fb33c56803104672dcffc2':
Revert "Track ashmem memory usage in Parcel"
d3511518f927eead41fb33c56803104672dcffc2 23-Oct-2015 Ian Pedowitz <ijpedowitz@google.com> Merge "Revert "Track ashmem memory usage in Parcel"" into mnc-dr-dev am: 09fd4ecf90 am: b402735fc0
am: 07129d53b5

* commit '07129d53b5380ec556fa14c7506a26b6776e629a':
Revert "Track ashmem memory usage in Parcel"
b402735fc0eb246233814bce76118fba99bb9f87 23-Oct-2015 Ian Pedowitz <ijpedowitz@google.com> Merge "Revert "Track ashmem memory usage in Parcel"" into mnc-dr-dev
am: 09fd4ecf90

* commit '09fd4ecf90c7ae2536a6848e8c88c4878e0e0c24':
Revert "Track ashmem memory usage in Parcel"
e2adb2cf0f2c90c77fab3f09285a92e05e70b567 23-Oct-2015 Ian Pedowitz <ijpedowitz@google.com> Revert "Track ashmem memory usage in Parcel"

This reverts commit ab3f9724035046d65124a72db2a09c824b3d5c67.

Bug: 25169267
Bug: 25191602
Bug: 25004154
Change-Id: Ic51e62515273e4687359dfd9ff770a4d06c0c667
arcel.java
b531762c89e45b9ac5c401a2e90f9330bcdf629e 22-Oct-2015 Adrian Roos <roosa@google.com> Merge "Track ashmem memory usage in Parcel" into mnc-dr-dev am: 33e1d376eb am: 655c12edb0
am: fda65d780e

* commit 'fda65d780eea9f696b087deb8d532b87e44877b6':
Track ashmem memory usage in Parcel
655c12edb0312933249659ab6b23191adcba4fa3 22-Oct-2015 Adrian Roos <roosa@google.com> Merge "Track ashmem memory usage in Parcel" into mnc-dr-dev
am: 33e1d376eb

* commit '33e1d376ebd643cba5b507d0005b87d49e246bb5':
Track ashmem memory usage in Parcel
ab3f9724035046d65124a72db2a09c824b3d5c67 21-Oct-2015 Adrian Roos <roosa@google.com> Track ashmem memory usage in Parcel

Bug: 25004154
Change-Id: Id9d5656dd0605f1b50525596b75601309f67ebdc
(cherry picked from commit 4701a496a5477a7de01fbc9eaf4af9812f83770c)
arcel.java
bc14a194e0d21232e41a86fcc2a014bec05a536b 22-Oct-2015 Adrian Roos <roosa@google.com> Merge "Track ashmem memory usage in Parcel"
4701a496a5477a7de01fbc9eaf4af9812f83770c 21-Oct-2015 Adrian Roos <roosa@google.com> Track ashmem memory usage in Parcel

Bug: 25004154
Change-Id: Id9d5656dd0605f1b50525596b75601309f67ebdc
arcel.java
48d7b31b4b5b4d68be4b5362950965fb85fae1c7 21-Oct-2015 Tao Bao <tbao@google.com> Merge "Clean up the uncrypted OTA package on bootup." am: 5d562d4d2f am: ac140e7f76
am: db33bfc2a9

* commit 'db33bfc2a96c38eba5b67c82cb4fee69c52b80ad':
Clean up the uncrypted OTA package on bootup.
db33bfc2a96c38eba5b67c82cb4fee69c52b80ad 21-Oct-2015 Tao Bao <tbao@google.com> Merge "Clean up the uncrypted OTA package on bootup." am: 5d562d4d2f
am: ac140e7f76

* commit 'ac140e7f7690979378897546e7934381f62922ab':
Clean up the uncrypted OTA package on bootup.
ac140e7f7690979378897546e7934381f62922ab 21-Oct-2015 Tao Bao <tbao@google.com> Merge "Clean up the uncrypted OTA package on bootup."
am: 5d562d4d2f

* commit '5d562d4d2fe5697468e5b93b183ed8ea42e115a2':
Clean up the uncrypted OTA package on bootup.
ccbf4e421189f60f94edbc6957a3ef125fb5e0b4 20-Oct-2015 Dianne Hackborn <hackbod@google.com> Merge "Initial implementation of light-weight idle mode."
08c47a5dece977a55d250d98bda9e2a8df8b6ed0 15-Oct-2015 Dianne Hackborn <hackbod@google.com> Initial implementation of light-weight idle mode.

This mode turns on after the screen has been off for 15 minutes,
and then cycles through 15 minutes of idle and 1 minute of
maintenance, ragardless of whether the device is moving around.

It currently only impacts network access and sync/job scheduling.
It does not remove access to wake locks or alarms for any apps.
It also doesn't report in the public API that the device is in
idle mode (since it isn't modifying the behavior of the power
manager) -- this is probably what we desire, since we don't want
stuff like GCM to be reporting these frequent changes.

We'll probably at least want to have the alarm manager do some
kind of more aggressive batching of alarms in this most (not allowing
more than one wakeup every minute?). That's for the future.

Also updated batterystats to include this new information, which
means the format of some of the data has changed -- device_idle
is no longer a flag, but an enum of (off, light, full), and there
is no information about time spent in light modes.

Also added new data about the maximum duration spent in both light
and full idle modes, to get a better understanding of how those
are behaving.

And did a little cleanup of DeviceIdleController, removing the
sensing alarm which was redundant with the regular alarm.

Change-Id: Ibeea6659577dc02deff58f048f97fcd9b0223307
atteryStats.java
PowerManager.aidl
owerManager.java
owerManagerInternal.java
87212ad6a86088f9b6342aadc480934e2f6548f7 19-Oct-2015 Tao Bao <tbao@google.com> Clean up the uncrypted OTA package on bootup.

An OTA package needs to be uncrypted before rebooting into recovery if
it sits on an encrypted /data partition. Once uncrypt gets started, we
cannot re-run it on the package again. Because the file may have been
fully or particially uncrypted and we may end up with a corrupt file
under recovery. Always clean up the package when the device boots into
the normal system to avoid that.

Bug: 24973532
Change-Id: I91682c103d1f2b603626c4bf8d818bced71e3674
ecoverySystem.java
e1ed980d4c8461b7622eaf88ca1a816532f59cc1 16-Oct-2015 Jeff Sharkey <jsharkey@google.com> am de0b34ea: am d56756fd: am 535726f6: am 0c15693e: Merge "Update docs to reflect adoptable behavior." into mnc-dr-dev

* commit 'de0b34ea14cfd5a5d219ee6e3d15ca4b04b6ce2e':
Update docs to reflect adoptable behavior.
de0b34ea14cfd5a5d219ee6e3d15ca4b04b6ce2e 16-Oct-2015 Jeff Sharkey <jsharkey@google.com> am d56756fd: am 535726f6: am 0c15693e: Merge "Update docs to reflect adoptable behavior." into mnc-dr-dev

* commit 'd56756fdee9fce3d08bea769710d7173bcbc263a':
Update docs to reflect adoptable behavior.
f04f3005b06d0b6dd079f93cea2f58aaa6370e11 16-Oct-2015 Xiaohui Chen <xiaohuic@google.com> Merge "Add UserHandle.isSystem() api"
535726f637d952f172e7758e4f0faf725a838add 16-Oct-2015 Jeff Sharkey <jsharkey@google.com> am 0c15693e: Merge "Update docs to reflect adoptable behavior." into mnc-dr-dev

* commit '0c15693e8de6f89fab7ca3d582f0a8605a54df9f':
Update docs to reflect adoptable behavior.
0c15693e8de6f89fab7ca3d582f0a8605a54df9f 16-Oct-2015 Jeff Sharkey <jsharkey@google.com> Merge "Update docs to reflect adoptable behavior." into mnc-dr-dev
06af46922ee5ad46f9269713f7a11ddbb6e748b6 16-Oct-2015 Gavin Li <git@thegavinli.com> StrictMode: fix deserialization of ViolationInfo on large stacks

When a large stack trace is encountered, one too many ViolationInfo
objects would be drained, which may cause a system_server crash
when readStringArray() is called on incorrect data.

Change-Id: Icb30d0402638ea5b6d63004b598d2f0bb276d685
trictMode.java
fd5b77444edaec88895344a629d071ecf352cf36 15-Oct-2015 Xiaohui Chen <xiaohuic@google.com> Add UM.isSameProfileGroup()

This optimizes the performance to check if two users are in the same
profile group.

Change-Id: I493a3475b848487836f4dbe01529c63165ace483
UserManager.aidl
serManager.java
1fa7680c9cd2d6a8ae44ce9e90f2ba5dee47b219 13-Oct-2015 Xiaohui Chen <xiaohuic@google.com> Add UserHandle.isSystem() api

This is added in order to deprecate the isOwner() api.

Bug: 24869636
Change-Id: I80a7a5559525faf261b9d9c7a8593e6ff5db4b22
serHandle.java
85525040dd002ec43ad776e3f43c7db6911ef0e2 15-Oct-2015 Dianne Hackborn <hackbod@google.com> am 1e46ee93: am 522222bc: am f96ca344: am 75765dbe: am e34445f1: Merge "Docs only change: update build version docs." into mnc-dev

* commit '1e46ee937c94247ab0fe2b0ff1e2b9b26a9f02fa':
Docs only change: update build version docs.
1e46ee937c94247ab0fe2b0ff1e2b9b26a9f02fa 15-Oct-2015 Dianne Hackborn <hackbod@google.com> am 522222bc: am f96ca344: am 75765dbe: am e34445f1: Merge "Docs only change: update build version docs." into mnc-dev

* commit '522222bc9bbfb6d62e101eaa6af2668277143e19':
Docs only change: update build version docs.
f96ca3441ea1a22e4d9e4402942ddce4a3234860 15-Oct-2015 Dianne Hackborn <hackbod@google.com> am 75765dbe: am e34445f1: Merge "Docs only change: update build version docs." into mnc-dev

* commit '75765dbe48ed38d7044f458062510a9082750049':
Docs only change: update build version docs.
75765dbe48ed38d7044f458062510a9082750049 15-Oct-2015 Dianne Hackborn <hackbod@google.com> am e34445f1: Merge "Docs only change: update build version docs." into mnc-dev

* commit 'e34445f11a6a14dd30ba0e018b82e852ef82ecbc':
Docs only change: update build version docs.
59d28dc82000b1696ed9ef7ef2c0d7fbb2834100 14-Oct-2015 Jeff Sharkey <jsharkey@android.com> Update docs to reflect adoptable behavior.

Update storage related docs on Context to be consistent, and to call
out relevant Environment methods. Start calling it "shared" storage,
and only mention external for historical reasons. Mention that there
isn't much benefit to using emulated storage over private data
directories to help guide developers to safer locations.

Point out which paths can change over time, so developers know to
only persist relative paths.

Update Environment docs to reflect how they behave for the new
class of adopted storage devices.

Bug: 24251945
Change-Id: Ie5ab337649b4740dfd7594997bbb19c4969cfd2f
nvironment.java
c890c560857c3bd08ac173a020cbc9a87bbd6d21 13-Oct-2015 Dianne Hackborn <hackbod@google.com> am a7036ce1: am 05222c34: am 829920ed: am 34c120dc: Merge ""Fix" issue #24357296: Debug.getMemoryInfo doesn\'t include EGL mtrack..." into mnc-dr-dev

* commit 'a7036ce15a4a540fd556e220a89feffb3b88b11a':
"Fix" issue #24357296: Debug.getMemoryInfo doesn't include EGL mtrack...
a7036ce15a4a540fd556e220a89feffb3b88b11a 13-Oct-2015 Dianne Hackborn <hackbod@google.com> am 05222c34: am 829920ed: am 34c120dc: Merge ""Fix" issue #24357296: Debug.getMemoryInfo doesn\'t include EGL mtrack..." into mnc-dr-dev

* commit '05222c3440d1ba207fe6f87037a8297f33f3318a':
"Fix" issue #24357296: Debug.getMemoryInfo doesn't include EGL mtrack...
829920ede03dbfd51f803940faa27fa7bf15063c 13-Oct-2015 Dianne Hackborn <hackbod@google.com> am 34c120dc: Merge ""Fix" issue #24357296: Debug.getMemoryInfo doesn\'t include EGL mtrack..." into mnc-dr-dev

* commit '34c120dc6142c861cb131c900cdee3c19f81ce51':
"Fix" issue #24357296: Debug.getMemoryInfo doesn't include EGL mtrack...
b02ce291445069435fad621fe3d0ccce5609c22a 13-Oct-2015 Dianne Hackborn <hackbod@google.com> "Fix" issue #24357296: Debug.getMemoryInfo doesn't include EGL mtrack...

...due to lack of permissions

Still doesn't, but an alternative is now offered.

Change-Id: I7b9da709c96ed7790c70d686c30c7855f3979778
ebug.java
9461b6f91f37fd32207da1bd734d9ea9629eb8e5 08-Oct-2015 Dianne Hackborn <hackbod@google.com> Add new "shell command" feature to Binder objects.

IBinder has a new common interface for sending shell commands
to it. This can be implemented by system services to provide
a shell interface to the service, without needing to have separate
shell java code.

This includes changes to DeviceIdleController to implement the
shell interface for all of the commands it has been providing
through dumpsys.

Change-Id: I76518ea6719d1d08a8ad8722a059c7f5fd86813a
inder.java
Binder.java
hellCommand.java
012904e43acca9dcb84cbf93f3c2c32e10829344 06-Oct-2015 Wale Ogunwale <ogunwale@google.com> Merge "Added SDK version code for N."
79113108a821217bf5a5d63e19ee396adb88364d 06-Oct-2015 Wale Ogunwale <ogunwale@google.com> Added SDK version code for N.

Change-Id: Id0ca002650842299f076a3f181b3455cd8a0f06b
uild.java
2102dcb9e7da98a87c95549355ddbf2c8fa8203d 03-Oct-2015 Xiaohui Chen <xiaohuic@google.com> Do not check consistency on eng build.

Change-Id: I2fe728a970753131473b98676fb0b763e774ab1c
uild.java
1619ed4706a0bf906d967ab7987cd4c475ac3462 22-Sep-2015 Adam Lesinski <adamlesinski@google.com> Fix security issues when using Parcel.setDataPosition() with untrusted input

When seeking forward in the Parcel, adding the extracted size to the Parcel.dataPosition()
can result in an overflow. Guard against this.

Bug:23909429
Change-Id: If37cdebbf05a92810300363d1a6ecd8b42b6da26
aseBundle.java
arcelableParcel.java
85f3402d31b0d00dc352ecae92cf2bd078166fcd 30-Sep-2015 Fyodor Kupolov <fkupolov@google.com> Merge "Check multi-user support in isUserSwitcherEnabled"
12f63ce616329417e4ce1ba1f47eac9828c3558f 30-Sep-2015 Daniel Erat <derat@google.com> am f0e87446: am d3e3d889: am c3f37589: Merge "Update instructions in IPowerManager.aidl."

* commit 'f0e8744620cc95464dcb7622f3582d70cb7bc364':
Update instructions in IPowerManager.aidl.
f0e8744620cc95464dcb7622f3582d70cb7bc364 30-Sep-2015 Daniel Erat <derat@google.com> am d3e3d889: am c3f37589: Merge "Update instructions in IPowerManager.aidl."

* commit 'd3e3d8896ea0f2eba1424b57ac8a5b5d9287000c':
Update instructions in IPowerManager.aidl.
d3e3d8896ea0f2eba1424b57ac8a5b5d9287000c 30-Sep-2015 Daniel Erat <derat@google.com> am c3f37589: Merge "Update instructions in IPowerManager.aidl."

* commit 'c3f37589e04a52c109c63f6411db444500d4f92c':
Update instructions in IPowerManager.aidl.
cd86ebf1c965c191f46b6480145c9d217a7d841e 30-Sep-2015 Fyodor Kupolov <fkupolov@google.com> Check multi-user support in isUserSwitcherEnabled

isUserSwitcherEnabled now returns false if multi-user is disabled(
supportsMultipleUsers() returns false).

Removed GUEST_USER_ENABLED setting and replaced with DPM.getGuestUserDisabled
check. It currently always returns false, but will be replaced with an actual
policy check.

Bug: 17571233
Change-Id: I41853e8b321b2537952cac5d92e88bfdb8cbd9a8
serManager.java
22f58762e120c71cdf94a8d5d9b9343ad5534321 30-Sep-2015 Daniel Erat <derat@google.com> Update instructions in IPowerManager.aidl.

Clarify IPowerManager.aidl's instructions for keeping the
C++ implementation in sync.

Change-Id: Ic51a3844483031e71fe2cfa1d3e8a065df86d119
PowerManager.aidl
1c36315a36962321dfe870b07e28b04a1d6777e9 02-Sep-2015 Fyodor Kupolov <fkupolov@google.com> Fixed VPN support for restricted profiles in split system user model

In a new split system user model, owner of a restricted profile is not limited
to just user0. restrictedProfileParentId field should be used to get an owner.

Bug: 22950929
Change-Id: I928319a9450e543972237a42267eb2404e117c83
UserManager.aidl
serManager.java
02cb6e773b323a0d54b21f43460a23f668b7727c 19-Sep-2015 Fyodor Kupolov <fkupolov@google.com> Added --restricted option for create-user command

Also moved restricted profile create/setup logic from Settings to
UMS.createRestrictedProfile.

Bug: 24212155
Bug: 24303609
Change-Id: I0346a3368de53f4bb4b6e054349f19adac959d7f
inder.java
UserManager.aidl
rocess.java
serHandle.java
serManager.java
9249a9097707bb57ae0a7d114eff54bc82ad462d 26-Sep-2015 Bart Sears <bsears@google.com> Revert "Added --restricted option for create-user command"

This reverts commit 737b216b5c28f7d7162f219136d4e8a9eb1a486b.

Change-Id: I4c43967933bb2e46cdb8ad6e643d7037d722cab2
inder.java
UserManager.aidl
rocess.java
serHandle.java
serManager.java
737b216b5c28f7d7162f219136d4e8a9eb1a486b 19-Sep-2015 Fyodor Kupolov <fkupolov@google.com> Added --restricted option for create-user command

Also moved restricted profile create/setup logic from Settings to
UMS.createRestrictedProfile.

Bug: 24212155
Bug: 24303609
Change-Id: I5f0d48bcbd3c0b51927926b874fd057c15ac5219
inder.java
UserManager.aidl
rocess.java
serHandle.java
serManager.java
e7a3435c91c7ada95f2bab0221d1bbedafda6b0f 17-Sep-2015 Dianne Hackborn <hackbod@google.com> Docs only change: update build version docs.

Change-Id: I30f55549394693ea04cd390b1ae66347ae212123
uild.java
a316536528e94743cbda09e82aba325de7a869cf 24-Sep-2015 Ryo Hashimoto <hashimoto@google.com> Merge "Use the proper variant of String#substring to report broken strict mode stacks"
b0a3cc16f8e24cbdc4c6c694eaafc248fd275685 24-Sep-2015 Steve McKay <smckay@google.com> Merge "Merge BROWSE and BROWSE_ALL actions."
83df8c072ddd01a5adc11da0869103c4645e6d76 17-Sep-2015 Steve McKay <smckay@google.com> Merge BROWSE and BROWSE_ALL actions.

Open Files app when exploring from settings.
Force visibility of file size in this mode.
Don't hide empty media providers.

Bug: 24136618, 24140864
Change-Id: I6f238586725f9b6255812e3082bb8d8655219a7d
torage/VolumeInfo.java
e4de5a0d3b6e0c897c1cea0912b58e11db962365 23-Sep-2015 Xiaohui Chen <xiaohuic@google.com> Cleanup OWNER references.

Bug: 19913735
Change-Id: I2150c6baaab80fe11312e4401394a2a8da52e595
ecoverySystem.java
36743412ac6155c063afe8436580466c145d971e 18-Sep-2015 Adam Lesinski <adamlesinski@google.com> am 4092eeb7: am 069594f9: am 4e86aae6: am 68055395: Merge "BatteryStats: Better big-little CPU accounting" into mnc-dr-dev

* commit '4092eeb7f7b079a87c4583c713c0e6d2e208b3c4':
BatteryStats: Better big-little CPU accounting
4092eeb7f7b079a87c4583c713c0e6d2e208b3c4 18-Sep-2015 Adam Lesinski <adamlesinski@google.com> am 069594f9: am 4e86aae6: am 68055395: Merge "BatteryStats: Better big-little CPU accounting" into mnc-dr-dev

* commit '069594f96a3c70b01119f689f2195e0d933c0700':
BatteryStats: Better big-little CPU accounting
4e86aae667116b36536653746fd9f580da5f8974 18-Sep-2015 Adam Lesinski <adamlesinski@google.com> am 68055395: Merge "BatteryStats: Better big-little CPU accounting" into mnc-dr-dev

* commit '680553957e4ff47343334881c34de6969b2ed977':
BatteryStats: Better big-little CPU accounting
680553957e4ff47343334881c34de6969b2ed977 18-Sep-2015 Adam Lesinski <adamlesinski@google.com> Merge "BatteryStats: Better big-little CPU accounting" into mnc-dr-dev
e13fb40ecb1579ad9686f1a45fceca3c633db724 17-Sep-2015 Tim Kilbourn <tkilbourn@google.com> resolved conflicts for 0816319a to master

Change-Id: Ie89ccd479a2eccc95839c162a9b7367349d3886f
b4982b20cde31e4c507c762c448e00ac820e6264 17-Sep-2015 Ryo Hashimoto <hashimoto@google.com> Use the proper variant of String#substring to report broken strict mode stacks

substring(int start) returns everything after |start|.
To get the front part, substring(int start, int end) should be used.

Change-Id: I4dfde175f607091b48f90afe92ef3b957ffd1c6b
trictMode.java
0816319a29709ed746682b17400b34b6f540ca56 17-Sep-2015 Tim Murray <timmurray@google.com> am 4816ea0e: am a02f9823: am 952d5b33: Merge "Send power hint on fling gestures." into mnc-dr-dev

* commit '4816ea0e120fd4e2892d372f33c8ca21e4b2efb6':
Send power hint on fling gestures.
a02f98239ea683b802ede31382f51eb88eda05d3 17-Sep-2015 Tim Murray <timmurray@google.com> am 952d5b33: Merge "Send power hint on fling gestures." into mnc-dr-dev

* commit '952d5b334ccdf9cab0f56673861906e59d4e9933':
Send power hint on fling gestures.
a4d22d718affbc7145d1012157feb819557b5c06 17-Sep-2015 Michael Wright <michaelwr@google.com> Send power hint on fling gestures.

Use the existing PointerEventListener infrastructure to listen for
gestures that look like flings and hint to the power system when they
happen. Since we don't actually have a bound for the fling like a
regular application would, limit them to five seconds and refresh
every time a new fling is seen until the five second time period is
up.

bug 24059298

Change-Id: I5757a1e88f2ab2ef08cccefa8221d809ae71bb6f
owerManagerInternal.java
eecb98197c4115744b6c4285758f6575e13e4f96 16-Sep-2015 Xiaohui Chen <xiaohuic@google.com> Refactor UserHandle.java

Remove the "final" keyword on methods, since the class is already
"final".

Change-Id: Ided5813d8a5417c492fd2bf73f9d8018140e5594
serHandle.java
7c69636c9a406265e1da368f3edfd8fb9651132c 16-Sep-2015 Xiaohui Chen <xiaohuic@google.com> Cleanup USER_OWNER in various services

Bug: 19913735
Change-Id: I980370bab18e1b9ccf4043eed2b9fd721a940f72
serHandle.java
b91167620904eb439d0e8c09eab532fe7524ff6d 10-Sep-2015 Christopher Tate <ctate@google.com> Avoid parceling redundant ApplicationInfo objects within PackageInfo

Two benefits:

1) marshaling one flattened ApplicationInfo as part of a PackageInfo parcel
rather than one per included ComponentInfo; and

2) producing one ApplicationInfo at unmarshaling time and sharing the
reference to it among all included ComponentInfo instances, rather
than the previous implementation that generated a separate
ApplicationInfo instance for each ComponentInfo.

In some cases there can be many hundreds of ComponentInfo objects embedded
in a single PackageInfo, so coalescing duplicates is a significant win
for both payload size and object pressure.

Bug 19519502
Bug 20453802

Change-Id: Ib888810dad4471084fab9ead1ebb5e0b932905f1
arcelable.java
6832f39416cbe2cc9655af4eabefe39c5d272254 06-Sep-2015 Adam Lesinski <adamlesinski@google.com> BatteryStats: Better big-little CPU accounting

Generalize cpu clusters so we can measure frequency
and power usage across heterogeneous cpu clusters.

This also brings back reading of cpu-times for power calculation.

Bug:22773176
Change-Id: I9c794ae9756c782c0e971c7f5fcebbe70374b269
atteryStats.java
9fb0b5b12c9e7acfc9890c5f2e5719dc1992d2f2 08-Sep-2015 Nick Armstrong-Crews <strongarm@google.com> am 13d2fa50: am 740cf71c: am 56ecfcce: Handle KEYCODE_SOFT_SLEEP from Ungaze.

* commit '13d2fa50b0815c63d2d289c27d8edacf1ace01eb':
Handle KEYCODE_SOFT_SLEEP from Ungaze.
13d2fa50b0815c63d2d289c27d8edacf1ace01eb 08-Sep-2015 Nick Armstrong-Crews <strongarm@google.com> am 740cf71c: am 56ecfcce: Handle KEYCODE_SOFT_SLEEP from Ungaze.

* commit '740cf71c9978e5dcb0a68b6558531a52dc26d44f':
Handle KEYCODE_SOFT_SLEEP from Ungaze.
dc6aa5fc53a85a3fcf98c1a01f766d9c16891765 08-Sep-2015 Nick Armstrong-Crews <strongarm@google.com> am d70377b5: am 36afc2b7: am 9b8f82a3: Merge "Revert "Handle KEYCODE_SOFT_SLEEP from Ungaze."" into cw-e-dev

* commit 'd70377b537450d03d5cdc2efb15977d48e5cfebd':
Revert "Handle KEYCODE_SOFT_SLEEP from Ungaze."
56ecfcce6c88fc80cf509effcebb124bbe0c79f8 08-Sep-2015 Nick Armstrong-Crews <strongarm@google.com> Handle KEYCODE_SOFT_SLEEP from Ungaze.

Needed for Ungaze to trigger "soft sleep" (respecting wake locks); operates by
sending new KEYCODE_SOFT_SLEEP to PhoneWindowManager, which calls
PowerManagerService's new method setUserInactiveOverride (thereby
causing immediate sleep, modulo wakelocks, upon next iteration of
PowerManagerService's main loop).

BUG: b/23589870
Change-Id: Iddafdde923605d119075e890eeda5d3fd3fd2bc7
owerManagerInternal.java
d70377b537450d03d5cdc2efb15977d48e5cfebd 08-Sep-2015 Nick Armstrong-Crews <strongarm@google.com> am 36afc2b7: am 9b8f82a3: Merge "Revert "Handle KEYCODE_SOFT_SLEEP from Ungaze."" into cw-e-dev

* commit '36afc2b76743b2b2803da20dc6a8b2142d1f9b17':
Revert "Handle KEYCODE_SOFT_SLEEP from Ungaze."
b331bf951499396111cb47b477ac35e82c805322 08-Sep-2015 Nick Armstrong-Crews <strongarm@google.com> Revert "Handle KEYCODE_SOFT_SLEEP from Ungaze."

This reverts commit 677adf1e66ba83b8fb2c849c181303b35bd489bc.

Hiding new keycode to prevent change to public API before resubmitting.

Change-Id: Ic43273dd0c7ade1d51a36b77f363543f1df466e8
owerManagerInternal.java
e097d341a46a8c40c7e9e1e7e028088b7725b243 04-Sep-2015 Nick Armstrong-Crews <strongarm@google.com> am 7f37402d: am 43c4459d: am 6f0ba402: Merge "Handle KEYCODE_SOFT_SLEEP from Ungaze." into cw-e-dev

* commit '7f37402d8c5667f72c1ef02a20112d49d7a149b8':
Handle KEYCODE_SOFT_SLEEP from Ungaze.
7f37402d8c5667f72c1ef02a20112d49d7a149b8 04-Sep-2015 Nick Armstrong-Crews <strongarm@google.com> am 43c4459d: am 6f0ba402: Merge "Handle KEYCODE_SOFT_SLEEP from Ungaze." into cw-e-dev

* commit '43c4459d995ce7a723d92945a7e4ccb81d48e224':
Handle KEYCODE_SOFT_SLEEP from Ungaze.
677adf1e66ba83b8fb2c849c181303b35bd489bc 27-Aug-2015 Nick Armstrong-Crews <strongarm@google.com> Handle KEYCODE_SOFT_SLEEP from Ungaze.

Needed for Ungaze to trigger "soft sleep" (respecting wake locks); operates by
sending new KEYCODE_SOFT_SLEEP to PhoneWindowManager, which calls
PowerManagerService's new method setUserInactiveOverride (thereby
causing immediate sleep, modulo wakelocks, upon next iteration of
PowerManagerService's main loop).

BUG: b/23589870
Change-Id: I24a96bd6db8ff28674c907f2898e49c4f6140209
owerManagerInternal.java
6d444185e55315a0111162609b1f619ee268bf3a 02-Sep-2015 Yasuhiro Matsuda <mazda@google.com> resolved conflicts for merge of fcf9ab5a to master

Change-Id: I69ad6e525430c5c4fc3c274b8bf6ebf653716124
fcf9ab5ab3e158cea2559ed4e7274dbfeb0a6e77 02-Sep-2015 Yasuhiro Matsuda <mazda@google.com> am ebf9465d: resolved conflicts for merge of ef57e5e0 to stage-aosp-master

* commit 'ebf9465d213336819b15e3b21d02afce64470d4f':
Add trace code to system server.
ebf9465d213336819b15e3b21d02afce64470d4f 02-Sep-2015 Yasuhiro Matsuda <mazda@google.com> resolved conflicts for merge of ef57e5e0 to stage-aosp-master

Change-Id: I1c31b38936dc74619dea27f0d5eecab43360bb8c
ef57e5e03b042065e69c65e910065df7306d930c 02-Sep-2015 Yasuhiro Matsuda <mazda@google.com> Merge "Add trace code to system server."
54c070ef14b87bdc65cda01172905f701cb92114 01-Sep-2015 Adam Lesinski <adamlesinski@google.com> am f7ce28fa: am d0ce1fbb: am 69e17f59: am da43a3aa: Merge "BatteryStats: Start using cpu power from kernel" into mnc-dr-dev

* commit 'f7ce28fad5d76267a9e69a05f6a2147c6baae827':
BatteryStats: Start using cpu power from kernel
f7ce28fad5d76267a9e69a05f6a2147c6baae827 31-Aug-2015 Adam Lesinski <adamlesinski@google.com> am d0ce1fbb: am 69e17f59: am da43a3aa: Merge "BatteryStats: Start using cpu power from kernel" into mnc-dr-dev

* commit 'd0ce1fbbba497e9b5082c69d8da7260e85b0b579':
BatteryStats: Start using cpu power from kernel
da43a3aacaba069e79f1dbfa491f6bc0b6f7fa95 31-Aug-2015 Adam Lesinski <adamlesinski@google.com> Merge "BatteryStats: Start using cpu power from kernel" into mnc-dr-dev
3f1099b062fb353850b78c22d7d815c811926557 28-Aug-2015 Fyodor Kupolov <fkupolov@google.com> Merge "Non-system users can now have restricted profiles"
56d4ce51c2434a290d8cc0b86409beb2a4c61498 28-Aug-2015 Ashish Sharma <ashishsharma@google.com> am b804f413: am fec26a37: am 7c388b0f: am ffa3d040: am 3883e72a: Merge "BatteryStats: Bump checkin version" into mnc-dev

* commit 'b804f4134a21989c94ead728b6d36f93a647ce36':
BatteryStats: Bump checkin version
b804f4134a21989c94ead728b6d36f93a647ce36 28-Aug-2015 Ashish Sharma <ashishsharma@google.com> am fec26a37: am 7c388b0f: am ffa3d040: am 3883e72a: Merge "BatteryStats: Bump checkin version" into mnc-dev

* commit 'fec26a37a15dc406ae6a3aee67059cb93ef2ae5a':
BatteryStats: Bump checkin version
ffa3d0408f9c3ffb5ab3ee45ef6c466d795fb2c8 28-Aug-2015 Ashish Sharma <ashishsharma@google.com> am 3883e72a: Merge "BatteryStats: Bump checkin version" into mnc-dev

* commit '3883e72aeda7dcc5f76eba7ad2e95ad2cb041687':
BatteryStats: Bump checkin version
06a484adb93c6c969321147b07112684383305f6 22-Aug-2015 Fyodor Kupolov <fkupolov@google.com> Non-system users can now have restricted profiles

In the non split system user, only USER_OWNER is allowed to have restricted
profiles. This is now changed in split user mode, where multiple secondary
users can have restricted profiles.

Added UserInfo.restrictedProfileGroupId field, which defines parent/child
relationship between secondary users and linked restricted profiles. Adjusted
shared accounts handling logic to not assume that USER_OWNER is the only owner.

Bug: 23191995
Change-Id: I5f3fc2aa4f229103d6e75ec2c3dfce866b8007de
serManager.java
1ab43d5978813f56899dbd3115fd7d9f96b4fe55 30-Jun-2015 Yasuhiro Matsuda <mazda@google.com> Add trace code to system server.

- Add TRACE_TAG_SYSTEM_SERVER for tracing system server code.
- Add a few more tracing code to the code paths related to boot.

BUG: 21739901
BUG: 22207144
Change-Id: I08b424d2f83783f512c3818394099909cd55f327
race.java
ab7672d45a66613e23c7769208fc5bc62fe6b363 21-Aug-2015 Adam Lesinski <adamlesinski@google.com> BatteryStats: Start using cpu power from kernel

This allows us to stop using approximate methods of attributing
cpu frequency time across apps and to use a more precise kernel
method that is aware of the time spent by a process on a given core
at a given frequency.

Bug:22773176
Change-Id: I3c34365fa8c73204f178a5610423901b13453d06
atteryStats.java
bb5ac7976d4df640dbe9800d2a47425180082470 21-Aug-2015 Adam Lesinski <adamlesinski@google.com> BatteryStats: Bump checkin version

Bug:23391894
Change-Id: I2af980531e07b106cc560c877fa128bbd9c2f18e
atteryStats.java
be8b98b939639a579444de64ce2fd86cccf91daf 20-Aug-2015 Nicolas Prévot <nprevot@google.com> Merge "Allow non-owner users to have managed profiles."
b818681dcae157412b897587ff856cd0c531c3f4 06-Aug-2015 Nicolas Prevot <nprevot@google.com> Allow non-owner users to have managed profiles.

In the split system user model:
The only users that are not allowed to have managed profiles are:
- purely system user (user 0)
- guest users
- restricted profiles
- managed profiles

In the non-split system user model, the behavior does not change:
only the primary user can have managed profiles.

BUG:22956426
Change-Id: If908c30f110fd3e740770174f050c9b6cf87ce1b
UserManager.aidl
serManager.java
36d4aaeb6edddc995620c491e8a2d61a0a700c59 20-Aug-2015 Jeff Sharkey <jsharkey@google.com> am 39c49625: am e6983e87: am cd6ba412: am bbb5717d: am f3ad1eab: Merge "Pass underlying volume UUID to StorageVolume." into mnc-dev

* commit '39c4962580a52d5ca07f3576009564dddc8f4624':
Pass underlying volume UUID to StorageVolume.
39c4962580a52d5ca07f3576009564dddc8f4624 20-Aug-2015 Jeff Sharkey <jsharkey@google.com> am e6983e87: am cd6ba412: am bbb5717d: am f3ad1eab: Merge "Pass underlying volume UUID to StorageVolume." into mnc-dev

* commit 'e6983e877888dd51abe090b75fa568a64e9fc16e':
Pass underlying volume UUID to StorageVolume.
bbb5717dee12ec37e0fcc6c186e1f80b9890e987 20-Aug-2015 Jeff Sharkey <jsharkey@google.com> am f3ad1eab: Merge "Pass underlying volume UUID to StorageVolume." into mnc-dev

* commit 'f3ad1eabc1fa5252165bfe1516690d1026507f0a':
Pass underlying volume UUID to StorageVolume.
746aee22e872581607fc1bc9a6425ba924e73393 20-Aug-2015 Jeff Sharkey <jsharkey@google.com> am f3ad1eab: Merge "Pass underlying volume UUID to StorageVolume." into mnc-dev

* commit 'f3ad1eabc1fa5252165bfe1516690d1026507f0a':
Pass underlying volume UUID to StorageVolume.
8e2ea2a9f15217bd5e44665650251f83f3f70313 19-Aug-2015 Jeff Sharkey <jsharkey@android.com> Pass underlying volume UUID to StorageVolume.

To help MediaProvider uniquely identify storage devices, pass through
the UUID of the underlying private storage volume.

Bug: 23329611
Change-Id: I22ee7ea98fcb208d7797310acb3396a3f074f09b
torage/VolumeInfo.java
53c217f6c497b02a223f9547a8693a27f61795fc 19-Aug-2015 Tao Bao <tbao@google.com> am efb71f44: am 2e3746ab: am 9bcb0fcc: Merge "Recursively delete directories in handleAftermath()."

* commit 'efb71f442c6dbdb75113d29df49106217f22cea3':
Recursively delete directories in handleAftermath().
efb71f442c6dbdb75113d29df49106217f22cea3 19-Aug-2015 Tao Bao <tbao@google.com> am 2e3746ab: am 9bcb0fcc: Merge "Recursively delete directories in handleAftermath()."

* commit '2e3746abc7d70dd72f60a7912cd45472f3032acb':
Recursively delete directories in handleAftermath().
9d995335f0c8d5090ba6c774853fe261037177eb 19-Aug-2015 Tao Bao <tbao@google.com> am 2e3746ab: am 9bcb0fcc: Merge "Recursively delete directories in handleAftermath()."

* commit '2e3746abc7d70dd72f60a7912cd45472f3032acb':
Recursively delete directories in handleAftermath().
5065e12dbe9918b3558f4fc0e0497580d5840171 18-Aug-2015 Tao Bao <tbao@google.com> Recursively delete directories in handleAftermath().

RecoverySystem.handleAftermath() is called to clean up recovery-related
files. It needs to handle non-empty directories as well such as leftover
stashes from failed OTAs.

Bug: 23199081
Change-Id: I33fb326d376d04c793ad7b5948a10e8c1c572812
ecoverySystem.java
e789fc02ae0259932f5738cca15b623038f8ff94 14-Aug-2015 Adam Lesinski <adamlesinski@google.com> am c852a3e3: am eb694bb6: am 546909c9: am 479c482c: am 504600bb: Merge "Fix UserHandle.getAppIdFromSharedAppGid to allow system UIDs" into mnc-dev

* commit 'c852a3e39c1bbb112e2705edc6714b6b687cb55d':
Fix UserHandle.getAppIdFromSharedAppGid to allow system UIDs
c852a3e39c1bbb112e2705edc6714b6b687cb55d 14-Aug-2015 Adam Lesinski <adamlesinski@google.com> am eb694bb6: am 546909c9: am 479c482c: am 504600bb: Merge "Fix UserHandle.getAppIdFromSharedAppGid to allow system UIDs" into mnc-dev

* commit 'eb694bb6e69dd382e9ed114dde604c6a0942c3c2':
Fix UserHandle.getAppIdFromSharedAppGid to allow system UIDs
479c482ca1788235afc776125eb6a79f1d9281c8 14-Aug-2015 Adam Lesinski <adamlesinski@google.com> am 504600bb: Merge "Fix UserHandle.getAppIdFromSharedAppGid to allow system UIDs" into mnc-dev

* commit '504600bb09e51f0187d81cacb1dc2de77c6256b6':
Fix UserHandle.getAppIdFromSharedAppGid to allow system UIDs
4fe0a44658461cd35df0f85f03bea1c6ee1e9d37 14-Aug-2015 Adam Lesinski <adamlesinski@google.com> am 504600bb: Merge "Fix UserHandle.getAppIdFromSharedAppGid to allow system UIDs" into mnc-dev

* commit '504600bb09e51f0187d81cacb1dc2de77c6256b6':
Fix UserHandle.getAppIdFromSharedAppGid to allow system UIDs
621e06a64d0a18f357a874de15a84c3ec1d64d49 14-Aug-2015 Adam Lesinski <adamlesinski@google.com> Fix UserHandle.getAppIdFromSharedAppGid to allow system UIDs

System UIDs are also run as shared GIDs, so this should not throw
an exception.

Bug:23189342
Change-Id: Ia180db012c25615cde1720ae0d41d1378f7bfb1a
serHandle.java
d38e7c9387425c4c661f8ba4f4daad4f444ada4b 13-Aug-2015 Dianne Hackborn <hackbod@google.com> am 1dd2f5a3: am 40bc2066: am a54d4583: am 9512a857: am ff9912d5: Merge "Fix issue #23116383: Include security patch level in Settings" into mnc-dev

* commit '1dd2f5a3ebd4768ebc8bf4c08c7f62c8c1300c7f':
Fix issue #23116383: Include security patch level in Settings
1dd2f5a3ebd4768ebc8bf4c08c7f62c8c1300c7f 13-Aug-2015 Dianne Hackborn <hackbod@google.com> am 40bc2066: am a54d4583: am 9512a857: am ff9912d5: Merge "Fix issue #23116383: Include security patch level in Settings" into mnc-dev

* commit '40bc20660d3dc65f66e4409893f1ba6bf729d97f':
Fix issue #23116383: Include security patch level in Settings
6d52d7616d339801af6caad77bc50df16df7a813 13-Aug-2015 Dianne Hackborn <hackbod@google.com> am ff9912d5: Merge "Fix issue #23116383: Include security patch level in Settings" into mnc-dev

* commit 'ff9912d594bc5cdc10a4a224b9a2296bac50851b':
Fix issue #23116383: Include security patch level in Settings
9512a857454d761b53f46958733ba23216c41e64 13-Aug-2015 Dianne Hackborn <hackbod@google.com> am ff9912d5: Merge "Fix issue #23116383: Include security patch level in Settings" into mnc-dev

* commit 'ff9912d594bc5cdc10a4a224b9a2296bac50851b':
Fix issue #23116383: Include security patch level in Settings
c3f7449517743719ace8a8315c6d23d4349db5d1 13-Aug-2015 Dianne Hackborn <hackbod@google.com> Fix issue #23116383: Include security patch level in Settings

Change-Id: I4934c7d26bf69b5c599962cd74ac1e4ea4ad4b51
uild.java
908109c1f909cbeeb766f551c16121ddd1a3adba 08-Aug-2015 Dianne Hackborn <hackbod@google.com> am 0385e3e9: am 8e63bbfd: am efa4dee1: am 977d421a: am f0e5501e: Merge "Fix issue #22989030: Separate battery whitelists" into mnc-dev

* commit '0385e3e908fb9988bb2d2d0d15e32cb6a819b34e':
Fix issue #22989030: Separate battery whitelists
0385e3e908fb9988bb2d2d0d15e32cb6a819b34e 08-Aug-2015 Dianne Hackborn <hackbod@google.com> am 8e63bbfd: am efa4dee1: am 977d421a: am f0e5501e: Merge "Fix issue #22989030: Separate battery whitelists" into mnc-dev

* commit '8e63bbfd00ee27fcdbb04cfc0cf96ccdb2c50cc5':
Fix issue #22989030: Separate battery whitelists
10faec4bc054536b4cce7c8cbc8faa367c397efe 08-Aug-2015 Dianne Hackborn <hackbod@google.com> am f0e5501e: Merge "Fix issue #22989030: Separate battery whitelists" into mnc-dev

* commit 'f0e5501e093c688cd293308e0aafc2b55326c255':
Fix issue #22989030: Separate battery whitelists
977d421af9466ed6cd83630f6ba91c873f501e5b 08-Aug-2015 Dianne Hackborn <hackbod@google.com> am f0e5501e: Merge "Fix issue #22989030: Separate battery whitelists" into mnc-dev

* commit 'f0e5501e093c688cd293308e0aafc2b55326c255':
Fix issue #22989030: Separate battery whitelists
4a503b1ece485d44c15eb02ec2bcd464b46e6f7f 07-Aug-2015 Dianne Hackborn <hackbod@google.com> Fix issue #22989030: Separate battery whitelists

We now have a new whitelist you can put apps in, which
opts them out of the old battery saver mode and new app idle,
but doesn't keep them from going in to doze. This is for a few
special cases that we had previously whitelisted for battery saver,
and inherited to the new modes... ultimately we should figure out
how to get these apps out of the whitelist completely, but this
will help for now.

Apps in this new whitelist are not shown in the UI, because they
are still significantly restricted by not being able to operate
normally in doze. This also means they are still visible in the
list of all apps for the user to be able to put them on/off the
complete whitelist if that is what they really want.

In the course of doing this, I needed to clean up code in the
network policy manager to better separate management of the
two firewall rules that now have different whitelists applied
to them. This also hopefully just generally simplifies and cleans
up that code. Hopefully!

Change-Id: I92e15f2f85899571dd8b049b5e3eb1354f55f353
DeviceIdleController.aidl
768352fdae6fc92805d11dd4e1a1220a25b5f5a5 07-Aug-2015 Andres Morales <anmorales@google.com> am e0a7cfa0: am 981c4561: am 7ab11e45: am 5fd47543: am 85c73c40: Merge "[UserManager] expose method to retrieve credential owner" into mnc-dev

* commit 'e0a7cfa026da56f1197c1feea79f76153c5eddd5':
[UserManager] expose method to retrieve credential owner
e0a7cfa026da56f1197c1feea79f76153c5eddd5 07-Aug-2015 Andres Morales <anmorales@google.com> am 981c4561: am 7ab11e45: am 5fd47543: am 85c73c40: Merge "[UserManager] expose method to retrieve credential owner" into mnc-dev

* commit '981c456170cbe90a850ee21f3b3efd52de659ec4':
[UserManager] expose method to retrieve credential owner
84fd6e9733d39d2e61a3bab8f5c1c17892acdca7 07-Aug-2015 Andres Morales <anmorales@google.com> am 85c73c40: Merge "[UserManager] expose method to retrieve credential owner" into mnc-dev

* commit '85c73c40d1fd76e8a7bbd90ab80458082764c1c3':
[UserManager] expose method to retrieve credential owner
5fd4754310a9b19c7b880197e5bd237e2959c040 07-Aug-2015 Andres Morales <anmorales@google.com> am 85c73c40: Merge "[UserManager] expose method to retrieve credential owner" into mnc-dev

* commit '85c73c40d1fd76e8a7bbd90ab80458082764c1c3':
[UserManager] expose method to retrieve credential owner
85c73c40d1fd76e8a7bbd90ab80458082764c1c3 07-Aug-2015 Andres Morales <anmorales@google.com> Merge "[UserManager] expose method to retrieve credential owner" into mnc-dev
fd650fec6b7f38db3bfb4621bca0869e8b910808 06-Aug-2015 Michael Wright <michaelwr@google.com> am d239bb5e: am a7b3694c: am b9bdde13: am 1663c75f: am d5a6df6d: Merge "Make the NullVibrator really null." into mnc-dev

* commit 'd239bb5ebd80a3a4336759c35388772e9bf1c1dc':
Make the NullVibrator really null.
d239bb5ebd80a3a4336759c35388772e9bf1c1dc 06-Aug-2015 Michael Wright <michaelwr@google.com> am a7b3694c: am b9bdde13: am 1663c75f: am d5a6df6d: Merge "Make the NullVibrator really null." into mnc-dev

* commit 'a7b3694c56dfc85a4edbb868815ee3dd0998a5b9':
Make the NullVibrator really null.
46b7af57d7fd4354139801785a3eeb0579f4b6f9 06-Aug-2015 Michael Wright <michaelwr@google.com> am d5a6df6d: Merge "Make the NullVibrator really null." into mnc-dev

* commit 'd5a6df6d228036258d616245502c1a4f85ba4b2e':
Make the NullVibrator really null.
1663c75fa7e83547f3aefc6128f2b90776de5639 06-Aug-2015 Michael Wright <michaelwr@google.com> am d5a6df6d: Merge "Make the NullVibrator really null." into mnc-dev

* commit 'd5a6df6d228036258d616245502c1a4f85ba4b2e':
Make the NullVibrator really null.
d5a6df6d228036258d616245502c1a4f85ba4b2e 06-Aug-2015 Michael Wright <michaelwr@google.com> Merge "Make the NullVibrator really null." into mnc-dev
c5548c02fe0aa768ebfce88ac09393dabe61ec06 05-Aug-2015 Andres Morales <anmorales@google.com> [UserManager] expose method to retrieve credential owner

Certain operations (like ConfirmCredential) can be invoked
in the context of a profile, in which case the calling code
needs to know under what profile the credential is registered.

Expose a centralized location for this information for Settings
and GateKeeper to consume.

Bug: 22257554
Change-Id: Iffe4f6a254f52d1269b9287edabcf6efa515d9d2
UserManager.aidl
serManager.java
2b45f8a6ce623012b2fc6237acd1bdc6ebe2c85c 05-Aug-2015 Xiaohui Chen <xiaohuic@google.com> Clean up USER_OWNER references in settingslib.

Bug: 19913735
Change-Id: I0ccaed63c8fbc3bcbbd8d5cf8047e33c6e2edb5c
serManager.java
9180e2ea5916d43caf998d0fa7bf7ac70c575c4e 05-Aug-2015 Paul Jensen <pauljensen@google.com> am abd27102: am 41779e46: am 95297732: am 86e7d135: resolved conflicts for merge of dbc4edcc to mnc-dr-dev

* commit 'abd27102f4e232be448bc6012e0bd833637ab3fa':
Fix NOT_RESTRICTED network capability and enforce it.
abd27102f4e232be448bc6012e0bd833637ab3fa 05-Aug-2015 Paul Jensen <pauljensen@google.com> am 41779e46: am 95297732: am 86e7d135: resolved conflicts for merge of dbc4edcc to mnc-dr-dev

* commit '41779e467a478e11de2df10ad97542e6f2d57ca7':
Fix NOT_RESTRICTED network capability and enforce it.
86e7d135acbdb0055de6a687817d44ac60603c9f 05-Aug-2015 Paul Jensen <pauljensen@google.com> resolved conflicts for merge of dbc4edcc to mnc-dr-dev

Change-Id: I3a8624b2b375e0d174983d7690082e0e6932c4de
66625ff19266cf0b5b8d7fa700c996edb89b457f 05-Aug-2015 Paul Jensen <pauljensen@google.com> am dbc4edcc: Merge "Fix NOT_RESTRICTED network capability and enforce it." into mnc-dev

* commit 'dbc4edccfced5cb739bae75e8cd15cecc39cf16e':
Fix NOT_RESTRICTED network capability and enforce it.
dbc4edccfced5cb739bae75e8cd15cecc39cf16e 05-Aug-2015 Paul Jensen <pauljensen@google.com> Merge "Fix NOT_RESTRICTED network capability and enforce it." into mnc-dev
487ffe7d3d84bf65212158f7098e8a84b5b55e09 24-Jul-2015 Paul Jensen <pauljensen@google.com> Fix NOT_RESTRICTED network capability and enforce it.

With this change:
1. NOT_RESTRICTED should be removed from NetworkRequests that bring up
special restricted carrier networks (e.g. IMS, FOTA).
2. NetworkRequests without NOT_RESTRICTED require CONNECTIVITY_INTERNAL
permission to register
3. Binding sockets to networks without NOT_RESTRICTED requires
CONNECTIVITY_INTERNAL permission

Bug:21637535
Change-Id: I5991d39facaa6b690e969fe15dcbeec52e918321
NetworkManagementService.aidl
5555259667b5cc979995244b81fde1d0292d1b81 03-Aug-2015 Todd Kennedy <toddke@google.com> am e2345774: am 772c6c0d: am 40f0efe0: Merge "Add a trace constant for PackageManager"

* commit 'e23457741da693417adc03c3cde290e0e8e4b471':
Add a trace constant for PackageManager
e23457741da693417adc03c3cde290e0e8e4b471 03-Aug-2015 Todd Kennedy <toddke@google.com> am 772c6c0d: am 40f0efe0: Merge "Add a trace constant for PackageManager"

* commit '772c6c0d2d62af7295030ded14b3f428ab325ef4':
Add a trace constant for PackageManager
22350a8c2ce619ea799bba67d1fbced03ef44355 03-Aug-2015 Yusuke Sato <yusukes@google.com> am 82e78074: am b98e2353: am 158560ad: Merge "Distinguish user-requested shutdown from power-related ones"

* commit '82e780743046e620b724c28023b580e0e624bb15':
Distinguish user-requested shutdown from power-related ones
9f48590554979f137bac7505a146508d168eed7f 03-Aug-2015 Todd Kennedy <toddke@google.com> am 772c6c0d: am 40f0efe0: Merge "Add a trace constant for PackageManager"

* commit '772c6c0d2d62af7295030ded14b3f428ab325ef4':
Add a trace constant for PackageManager
82e780743046e620b724c28023b580e0e624bb15 03-Aug-2015 Yusuke Sato <yusukes@google.com> am b98e2353: am 158560ad: Merge "Distinguish user-requested shutdown from power-related ones"

* commit 'b98e235364c2b221521f622c546733b2862e4677':
Distinguish user-requested shutdown from power-related ones
114beb21a071ec8dfba247de8ee76dcb45db3d43 03-Aug-2015 Todd Kennedy <toddke@google.com> Add a trace constant for PackageManager

Change-Id: Ida391be765c63d7b6da3d9fd9d1d975e51b4f3e7
race.java
f6f1a7ec9935c32e6c1155333de94ac9cd544442 01-Aug-2015 Dianne Hackborn <hackbod@google.com> am 628b4125: am bc2a8843: am b97c5ddd: am 9b36f526: am c1836bb0: Merge "Change MNC codename to just M." into mnc-dev

* commit '628b4125843b93dc7f3ed0c9bbea76ff470d2eed':
Change MNC codename to just M.
628b4125843b93dc7f3ed0c9bbea76ff470d2eed 01-Aug-2015 Dianne Hackborn <hackbod@google.com> am bc2a8843: am b97c5ddd: am 9b36f526: am c1836bb0: Merge "Change MNC codename to just M." into mnc-dev

* commit 'bc2a88431e3dc51e2245cc28e327f11d0c78bd56':
Change MNC codename to just M.
c2369c5301c489195daa25894ea838cfa7f2a661 01-Aug-2015 Yusuke Sato <yusukes@google.com> am b98e2353: am 158560ad: Merge "Distinguish user-requested shutdown from power-related ones"

* commit 'b98e235364c2b221521f622c546733b2862e4677':
Distinguish user-requested shutdown from power-related ones
9b36f526dd0378bda8f71c0e51ed37bf97742f8f 31-Jul-2015 Dianne Hackborn <hackbod@google.com> am c1836bb0: Merge "Change MNC codename to just M." into mnc-dev

* commit 'c1836bb0f1bf3e5ef0911719525da0bab3e53507':
Change MNC codename to just M.
f2269f0454bd57d012c5df37e9b88023c2d924f2 30-Jul-2015 Dianne Hackborn <hackbod@google.com> Change MNC codename to just M.

Change-Id: I4281d200ff6560791c47cf9073ceea1cb509361e
uild.java
serManager.java
c1836bb0f1bf3e5ef0911719525da0bab3e53507 31-Jul-2015 Dianne Hackborn <hackbod@google.com> Merge "Change MNC codename to just M." into mnc-dev
705ffd1efe529bb291e90fa06e92c8090ee98627 22-Jul-2015 Yusuke Sato <yusukes@google.com> Distinguish user-requested shutdown from power-related ones

With this patch, when the user requested shutdown,
PowerManagerService sets sys.powerctl is set to
"shutdown,userrequested", and init runs fsck on shutdown.

When shutdown is triggered due to a low power state etc.,
the service sets the property to "shutdown,", and init
immediately shuts down the system without running the
command.

This is a follow-up CL for http://r.android.com/158525.

Bug: 21853106
Change-Id: Iae72990130fe9aa479c802f77301438190dbbfb3
PowerManager.aidl
owerManager.java
81b80d3ebf96737fb1fb6a6a33077992a984e5ca 31-Jul-2015 Adam Lesinski <adamlesinski@google.com> am 59bd2ae1: am c8c3539d: am eec946aa: am ee6046ad: am 00f7cb92: Merge "BatteryStats: include mobile radio active count and unknown time in checkin" into mnc-dev

* commit '59bd2ae1af5d1236dae14f0539d48acfa08d5e80':
BatteryStats: include mobile radio active count and unknown time in checkin
59bd2ae1af5d1236dae14f0539d48acfa08d5e80 31-Jul-2015 Adam Lesinski <adamlesinski@google.com> am c8c3539d: am eec946aa: am ee6046ad: am 00f7cb92: Merge "BatteryStats: include mobile radio active count and unknown time in checkin" into mnc-dev

* commit 'c8c3539de720449d60b754aabc19bf2693eaa09b':
BatteryStats: include mobile radio active count and unknown time in checkin
1c023b5aac6626ac1133a7c10b759bcd807f1a18 31-Jul-2015 Adam Lesinski <adamlesinski@google.com> am 00f7cb92: Merge "BatteryStats: include mobile radio active count and unknown time in checkin" into mnc-dev

* commit '00f7cb924e6964c5403c55ae5e7348aad1c8ec7b':
BatteryStats: include mobile radio active count and unknown time in checkin
ee6046add136d4791e71fb17a07076b425b7250c 31-Jul-2015 Adam Lesinski <adamlesinski@google.com> am 00f7cb92: Merge "BatteryStats: include mobile radio active count and unknown time in checkin" into mnc-dev

* commit '00f7cb924e6964c5403c55ae5e7348aad1c8ec7b':
BatteryStats: include mobile radio active count and unknown time in checkin
00f7cb924e6964c5403c55ae5e7348aad1c8ec7b 31-Jul-2015 Adam Lesinski <adamlesinski@google.com> Merge "BatteryStats: include mobile radio active count and unknown time in checkin" into mnc-dev
782327bde70bfb92352a0270baeae04361b6e9c2 31-Jul-2015 Adam Lesinski <adamlesinski@google.com> BatteryStats: include mobile radio active count and unknown time in checkin

These are important values to help diagnose modem related wakeup issues.

Bug:22803686
Bug:22857991
Change-Id: Ie0164ebd194567bc10d1165d671a583674a39829
atteryStats.java
5e829abd71448d37a73f7ba0953c8398d4b48da6 30-Jul-2015 Michael Wright <michaelwr@google.com> Make the NullVibrator really null.

Currently any calls into vibrate just end up in an infinite loop
until the program's stack overflows.

Bug: 22835503
Change-Id: I640c3990b597ac69d83b3656e00daad088002982
ullVibrator.java
24982dc19efcd73ab0f29ce8c06620ab7d4fa28f 30-Jul-2015 Dianne Hackborn <hackbod@google.com> am 9820374a: am f228f455: am 17043db8: am 69e7fa8a: am 8d3a67a8: Merge "More maybe fix issue #22765972: Binder transactions running out..." into mnc-dev

* commit '9820374a5facbcde9f49c8cdf10cfd8ab83f0599':
More maybe fix issue #22765972: Binder transactions running out...
9820374a5facbcde9f49c8cdf10cfd8ab83f0599 30-Jul-2015 Dianne Hackborn <hackbod@google.com> am f228f455: am 17043db8: am 69e7fa8a: am 8d3a67a8: Merge "More maybe fix issue #22765972: Binder transactions running out..." into mnc-dev

* commit 'f228f455ea7fbec00f731773e5a51f55e9eb792f':
More maybe fix issue #22765972: Binder transactions running out...
69e7fa8a521a402b4a80aafbca203f66b3323123 30-Jul-2015 Dianne Hackborn <hackbod@google.com> am 8d3a67a8: Merge "More maybe fix issue #22765972: Binder transactions running out..." into mnc-dev

* commit '8d3a67a8d475b43cbac50a2a186a19f4a29c7892':
More maybe fix issue #22765972: Binder transactions running out...
98169db36bd676ce1a10478c4851c918414e6c14 30-Jul-2015 Dianne Hackborn <hackbod@google.com> am 8d3a67a8: Merge "More maybe fix issue #22765972: Binder transactions running out..." into mnc-dev

* commit '8d3a67a8d475b43cbac50a2a186a19f4a29c7892':
More maybe fix issue #22765972: Binder transactions running out...
6b42bc0e2191805ac1dfdb1cbf2782b29dd7c585 30-Jul-2015 Dianne Hackborn <hackbod@google.com> More maybe fix issue #22765972: Binder transactions running out...

...of address space causing package manager to fail

Make sure to flush binder commands when done with an async task.

Change-Id: I9f171add7051587ab854226b97a12c7e1844ad5d
syncTask.java
0e3de6cacaffcfeda4d6353be61e2f1f9ed80705 30-Jul-2015 Dianne Hackborn <hackbod@google.com> Change MNC codename to just M.

Change-Id: I4281d200ff6560791c47cf9073ceea1cb509361e
uild.java
serManager.java
fc15b56bd23a31d519c0ac994430bd34b8fe242b 29-Jul-2015 Dianne Hackborn <hackbod@google.com> am b003d9a8: am c4ed81af: am cb98228d: am deb28b77: am eda1cc50: Merge "Work on issue #22765972: Binder transactions running out of address..." into mnc-dev

* commit 'b003d9a8032a672dbcb76a9750522953d1c0db5d':
Work on issue #22765972: Binder transactions running out of address...
b003d9a8032a672dbcb76a9750522953d1c0db5d 29-Jul-2015 Dianne Hackborn <hackbod@google.com> am c4ed81af: am cb98228d: am deb28b77: am eda1cc50: Merge "Work on issue #22765972: Binder transactions running out of address..." into mnc-dev

* commit 'c4ed81af8a12fac07c797870207e07cf7dc982c7':
Work on issue #22765972: Binder transactions running out of address...
deb28b770a0b11604fc20c71044a9c2d9718fe06 29-Jul-2015 Dianne Hackborn <hackbod@google.com> am eda1cc50: Merge "Work on issue #22765972: Binder transactions running out of address..." into mnc-dev

* commit 'eda1cc50cead674287616e6a852f8f281b70b9f5':
Work on issue #22765972: Binder transactions running out of address...
c2a024392ac7564126c0e09ee77e529fd1c37365 29-Jul-2015 Dianne Hackborn <hackbod@google.com> am eda1cc50: Merge "Work on issue #22765972: Binder transactions running out of address..." into mnc-dev

* commit 'eda1cc50cead674287616e6a852f8f281b70b9f5':
Work on issue #22765972: Binder transactions running out of address...
eda1cc50cead674287616e6a852f8f281b70b9f5 29-Jul-2015 Dianne Hackborn <hackbod@google.com> Merge "Work on issue #22765972: Binder transactions running out of address..." into mnc-dev
667f35fab8ee5d06e4a28421d05b01ffff0fbb4a 29-Jul-2015 Jeff Sharkey <jsharkey@google.com> am b8040265: Merge "Give secondary users read-only physical cards." into mnc-dev

* commit 'b8040265dd0d5a2a96e0850623647dad2f528db1':
Give secondary users read-only physical cards.
4b76c496c6a47bc451ccbc024b94b271c5c69313 29-Jul-2015 Jeff Sharkey <jsharkey@google.com> am 7412dfe9: am 3f6c3849: am 170235a3: am acfaa947: am b8040265: Merge "Give secondary users read-only physical cards." into mnc-dev

* commit '7412dfe98daaf76377fc5d08e8b9bf994455b2a3':
Give secondary users read-only physical cards.
7412dfe98daaf76377fc5d08e8b9bf994455b2a3 29-Jul-2015 Jeff Sharkey <jsharkey@google.com> am 3f6c3849: am 170235a3: am acfaa947: am b8040265: Merge "Give secondary users read-only physical cards." into mnc-dev

* commit '3f6c3849e96692da51c0e8cb22cce92b6ed9b60b':
Give secondary users read-only physical cards.
acfaa947f45ce1ea8140c2dc52d5f750dbc0a94d 29-Jul-2015 Jeff Sharkey <jsharkey@google.com> am b8040265: Merge "Give secondary users read-only physical cards." into mnc-dev

* commit 'b8040265dd0d5a2a96e0850623647dad2f528db1':
Give secondary users read-only physical cards.
86cbc2bf30a7623b2ad6564cf50ca20f87067ea7 29-Jul-2015 Dianne Hackborn <hackbod@google.com> Work on issue #22765972: Binder transactions running out of address...

...space causing package manager to fail

Lower the maximum IPC size we use in various places, to keep it
under the threshold of becoming dangerous. Now everything tries
to keep not much more than 64k.

Change-Id: I814013097966a7843179e5d581bfdb254c5ae318
Binder.java
4634987668eb7e1fa1434bddbde969ef43de6b40 28-Jul-2015 Jeff Sharkey <jsharkey@android.com> Give secondary users read-only physical cards.

Long ago, we mounted secondary physical cards as readable by all
users on the device, which enabled the use-case of loading media on
a card and viewing it from all users.

More recently, we started giving write access to these secondary
physical cards, but this created a one-directional channel for
communication across user boundaries; something that CDD disallows.

This change is designed to give us the best of both worlds: the
package-specific directories are writable for the user that mounted
the card, but access to those "Android" directories are blocked for
all other users. Other users remain able to read content elsewhere
on the card.

Bug: 22787184
Change-Id: Ied8c98995fec1b7b50ff7d930550feabb4398582
nvironment.java
torage/IMountService.java
torage/StorageManager.java
torage/VolumeInfo.java
5b98249e67198f31fe543334067943aa8ef4788d 24-Jul-2015 Jeff Sharkey <jsharkey@google.com> am 5080e90a: am aebcf3b7: am 23fdb635: am e87dc6db: am f6e9a3ed: Merge "More info to support CTS, fix reconcile bug." into mnc-dev

* commit '5080e90a62445f3ddf2dcff4adabe2d251d25932':
More info to support CTS, fix reconcile bug.
96cc2b30500a993e3b0025ec4722fb81a5087630 24-Jul-2015 Dianne Hackborn <hackbod@google.com> am 1d8b0a29: am 14aca8e8: am 63ff4a77: am 419f2177: am 6f64e737: Merge "Fix issue #22612630: Ensure SMS/Call delivery during Doze" into mnc-dev

* commit '1d8b0a29ab369cac21d9f3a643244dc8c6dec0c8':
Fix issue #22612630: Ensure SMS/Call delivery during Doze
5080e90a62445f3ddf2dcff4adabe2d251d25932 24-Jul-2015 Jeff Sharkey <jsharkey@google.com> am aebcf3b7: am 23fdb635: am e87dc6db: am f6e9a3ed: Merge "More info to support CTS, fix reconcile bug." into mnc-dev

* commit 'aebcf3b7efadca1fb5eedbf2cf9f0895d93ba8e8':
More info to support CTS, fix reconcile bug.
1d8b0a29ab369cac21d9f3a643244dc8c6dec0c8 24-Jul-2015 Dianne Hackborn <hackbod@google.com> am 14aca8e8: am 63ff4a77: am 419f2177: am 6f64e737: Merge "Fix issue #22612630: Ensure SMS/Call delivery during Doze" into mnc-dev

* commit '14aca8e87a3dc6e8fa783b3c45718a81f9f5e67a':
Fix issue #22612630: Ensure SMS/Call delivery during Doze
e87dc6dba58e55c60f387a86468a57a5109a97ac 23-Jul-2015 Jeff Sharkey <jsharkey@google.com> am f6e9a3ed: Merge "More info to support CTS, fix reconcile bug." into mnc-dev

* commit 'f6e9a3ede53ae487838c19714ad62f25a4a6ca4c':
More info to support CTS, fix reconcile bug.
419f2177c8565f80489d00463aea630568251f4d 23-Jul-2015 Dianne Hackborn <hackbod@google.com> am 6f64e737: Merge "Fix issue #22612630: Ensure SMS/Call delivery during Doze" into mnc-dev

* commit '6f64e737f046cd9ae13e260027781acfabaa4cba':
Fix issue #22612630: Ensure SMS/Call delivery during Doze
e5a0e1766741229750bfb5f74a06b2d34f071a7a 23-Jul-2015 Jeff Sharkey <jsharkey@google.com> am f6e9a3ed: Merge "More info to support CTS, fix reconcile bug." into mnc-dev

* commit 'f6e9a3ede53ae487838c19714ad62f25a4a6ca4c':
More info to support CTS, fix reconcile bug.
eaf3de13ffc7f73ce0634a5b0f3675c57798cf62 23-Jul-2015 Dianne Hackborn <hackbod@google.com> am 6f64e737: Merge "Fix issue #22612630: Ensure SMS/Call delivery during Doze" into mnc-dev

* commit '6f64e737f046cd9ae13e260027781acfabaa4cba':
Fix issue #22612630: Ensure SMS/Call delivery during Doze
f6e9a3ede53ae487838c19714ad62f25a4a6ca4c 22-Jul-2015 Jeff Sharkey <jsharkey@google.com> Merge "More info to support CTS, fix reconcile bug." into mnc-dev
6f64e737f046cd9ae13e260027781acfabaa4cba 22-Jul-2015 Dianne Hackborn <hackbod@google.com> Merge "Fix issue #22612630: Ensure SMS/Call delivery during Doze" into mnc-dev
85ced632680642fce680d141ddd10299ff849233 22-Jul-2015 Jeff Sharkey <jsharkey@android.com> More info to support CTS, fix reconcile bug.

Surface more details and commands for storage volumes to support
CTS testing. Fix user reconciliation bug that skipped user setup on
empty volumes.

Bug: 22658804, 22633097
Change-Id: I4221312d1cce24d1f5a2c108095cf3cf471598ed
ileUtils.java
451c3468b9186790d5381334a736a35f9b1dab36 22-Jul-2015 Dianne Hackborn <hackbod@google.com> Fix issue #22612630: Ensure SMS/Call delivery during Doze

Add whitelist timeout for SMS.

Change-Id: I3392093000ad177a93b6ef36fb18f0398a671423
DeviceIdleController.aidl
a48c0304bfc72dbf422382ced0a5b2705a7bfd9f 21-Jul-2015 Fyodor Kupolov <fkupolov@google.com> am cc432cc0: am 5211528b: am 67cd2fc5: am cf6500b9: am 55a116d0: Merge "Updated JavaDoc for DISALLOW_MODIFY_ACCOUNTS restriction" into mnc-dev

* commit 'cc432cc08919cec386213f993b36bfdc5adf6ed0':
Updated JavaDoc for DISALLOW_MODIFY_ACCOUNTS restriction
cc432cc08919cec386213f993b36bfdc5adf6ed0 21-Jul-2015 Fyodor Kupolov <fkupolov@google.com> am 5211528b: am 67cd2fc5: am cf6500b9: am 55a116d0: Merge "Updated JavaDoc for DISALLOW_MODIFY_ACCOUNTS restriction" into mnc-dev

* commit '5211528b9d1f51dca284d40e8d63dc3bc9527ac7':
Updated JavaDoc for DISALLOW_MODIFY_ACCOUNTS restriction
cf6500b9bae461107d5c0c58de511df907d19fb3 21-Jul-2015 Fyodor Kupolov <fkupolov@google.com> am 55a116d0: Merge "Updated JavaDoc for DISALLOW_MODIFY_ACCOUNTS restriction" into mnc-dev

* commit '55a116d00ca3f7b84a6af1c5c3472323ad5bc6ca':
Updated JavaDoc for DISALLOW_MODIFY_ACCOUNTS restriction
4dee174f7228bd1ba38f3834c42aa8efb52e02b5 21-Jul-2015 Fyodor Kupolov <fkupolov@google.com> am 55a116d0: Merge "Updated JavaDoc for DISALLOW_MODIFY_ACCOUNTS restriction" into mnc-dev

* commit '55a116d00ca3f7b84a6af1c5c3472323ad5bc6ca':
Updated JavaDoc for DISALLOW_MODIFY_ACCOUNTS restriction
53019287fd4fed9837363cff4de87100d85c2b81 21-Jul-2015 Fyodor Kupolov <fkupolov@google.com> Updated JavaDoc for DISALLOW_MODIFY_ACCOUNTS restriction

Bug: 21521860
Change-Id: I0c2659f84589a77432317fbc89d49716027577d3
serManager.java
cfe64c8afa9f30d8874c72440c3992e79fdb60c9 16-Jul-2015 Xiaohui Chen <xiaohuic@google.com> sys user split: update createUser method

After the system user is split out, all users are more or less the same.
We combine the generic user and secondary user create method to reflect
this concept. This also fixes the bug the newly created Primary user
from lock screen contains secondary user restrictions.

Bug: 19913735
Change-Id: Iff8802cd46401081bb444317becaf6ecab934e1e
serManager.java
dbfb11a9f1c47349cf1582017a61369bf1ab75c5 16-Jul-2015 Xiaohui Chen <xiaohuic@google.com> Merge "sys user split: refactor systemui user switcher"
3e9079c9783bb6cf4edcdfd3c4f52a347969af10 16-Jul-2015 Svetoslav <svetoslavganov@google.com> am f25f3bd8: am 3c5fe9de: am 1f1f0cee: am eb16e1fb: am 08dda27b: Merge "Make sure we get valid package name or fail." into mnc-dev

* commit 'f25f3bd8718df8845c83f96e4f87d6dd3b974d0c':
Make sure we get valid package name or fail.
f25f3bd8718df8845c83f96e4f87d6dd3b974d0c 16-Jul-2015 Svetoslav <svetoslavganov@google.com> am 3c5fe9de: am 1f1f0cee: am eb16e1fb: am 08dda27b: Merge "Make sure we get valid package name or fail." into mnc-dev

* commit '3c5fe9de7fdbab2db277b8136552d85e809f0d54':
Make sure we get valid package name or fail.
eb16e1fb2225f2cf84f5c56242a187fba59e39f8 16-Jul-2015 Svetoslav <svetoslavganov@google.com> am 08dda27b: Merge "Make sure we get valid package name or fail." into mnc-dev

* commit '08dda27be4678f2ab5bdc7e210d511ec105c158c':
Make sure we get valid package name or fail.
4b27514e0479e34f9bc00020083c7f03614a51c1 16-Jul-2015 Svetoslav <svetoslavganov@google.com> am 08dda27b: Merge "Make sure we get valid package name or fail." into mnc-dev

* commit '08dda27be4678f2ab5bdc7e210d511ec105c158c':
Make sure we get valid package name or fail.
7395cbf07048abdad24b056f30a46f5b67920cd8 16-Jul-2015 Svetoslav <svetoslavganov@google.com> Make sure we get valid package name or fail.

bug:22492225

Change-Id: I7b7dce9a8e398c4615bcb700de80241e94c4320c
torage/StorageManager.java
aa1a35ba277019827aca33014f1e09d01831fc7d 16-Jul-2015 Jim Miller <jaggies@google.com> am 2e56339a: am bcedcde8: am 204c2de8: am c7b0435c: resolved conflicts for merge of 1d4247c4 to mnc-dr-dev

* commit '2e56339a4a1133e9aface1c851f1ab67cff72109':
Improve tracking of screen on reasons.
2e56339a4a1133e9aface1c851f1ab67cff72109 16-Jul-2015 Jim Miller <jaggies@google.com> am bcedcde8: am 204c2de8: am c7b0435c: resolved conflicts for merge of 1d4247c4 to mnc-dr-dev

* commit 'bcedcde8093b48c3d013cc57dde42bdd17d6dcb9':
Improve tracking of screen on reasons.
c7b0435cc709c328da8e2b515ea04c8bc40d1094 15-Jul-2015 Jim Miller <jaggies@google.com> resolved conflicts for merge of 1d4247c4 to mnc-dr-dev

Change-Id: I057c529dcd5d48e0dcf256a9d096c5d8b815892a
e632586957314729f87ed9019855da39c741ec0b 15-Jul-2015 Dianne Hackborn <hackbod@google.com> am 1d4247c4: Merge "Improve tracking of screen on reasons." into mnc-dev

* commit '1d4247c4cc89c6d62e44ed3115f26579979b44b5':
Improve tracking of screen on reasons.
280a64e793d081847c5dcea23ed9be38aa5332d2 13-Jul-2015 Dianne Hackborn <hackbod@google.com> Improve tracking of screen on reasons.

- New screen on app op to record the last time each app has
caused the screen to be turned on.
- New battery stats event that tells us the reason the screen
has been asked to turn on.
- Propagate out power manager API to specify the reason a caller
is asking to have the screen turned on.

Note that currently the window flag to turn the screen on bypasses
much of this because it is being handled in the window manager by
just directly telling the power manager to turn the screen on. To
make this better we need a new API where it can specify who it is
calling the API for.

Change-Id: I667e56cb1f80508d054da004db667efbcc22e971
atteryStats.java
PowerManager.aidl
owerManager.java
e0d96ce96c5f9e469eb51cdbcb61f81e94e61562 15-Jul-2015 Dianne Hackborn <hackbod@google.com> am 808dd5cc: am 4753b5bc: am 4f73990a: am aa3694f2: am f1f8b9cc: Merge "Fix issue #21626564: MMS should be receivied while Dozing" into mnc-dev

* commit '808dd5cc8af3e26d12c1b5fe80663eb306cc0c20':
Fix issue #21626564: MMS should be receivied while Dozing
808dd5cc8af3e26d12c1b5fe80663eb306cc0c20 15-Jul-2015 Dianne Hackborn <hackbod@google.com> am 4753b5bc: am 4f73990a: am aa3694f2: am f1f8b9cc: Merge "Fix issue #21626564: MMS should be receivied while Dozing" into mnc-dev

* commit '4753b5bcf4877e125a8e38d5bcd2ac46c1744429':
Fix issue #21626564: MMS should be receivied while Dozing
63cb6c4216bb92e398915c42fda348eb44d0961b 15-Jul-2015 Dianne Hackborn <hackbod@google.com> am f1f8b9cc: Merge "Fix issue #21626564: MMS should be receivied while Dozing" into mnc-dev

* commit 'f1f8b9cc3ff5774e695568e8f02b018c0fd02844':
Fix issue #21626564: MMS should be receivied while Dozing
aa3694f2b3396f0ea9c9cccb7dbe8d5664e1e691 15-Jul-2015 Dianne Hackborn <hackbod@google.com> am f1f8b9cc: Merge "Fix issue #21626564: MMS should be receivied while Dozing" into mnc-dev

* commit 'f1f8b9cc3ff5774e695568e8f02b018c0fd02844':
Fix issue #21626564: MMS should be receivied while Dozing
fd854ee58c5d56f84047007ead9f88a767ae956f 14-Jul-2015 Dianne Hackborn <hackbod@google.com> Fix issue #21626564: MMS should be receivied while Dozing

We now place whoever is receiving the MMS on the temporary
whitelist while doing so, so they can get network access to
download it.

There was also an issue that needed to be fixed where we
were no longer updating the list of allowed uids while
dozing based on their proc states... we now do that.

Also did a bit of optimization of the temp white list update
path do the network policy manager, instead of going through
a broadcast we now directly call in to the network policy
manager. This also allows us to have a synchronous version
of updating the list, so we can know the app has network access
before we tell it to do anything.

Finally added battery stats events for things going on and off
the whitelist so we can diagnose the behavior there.

Change-Id: Ic7fe010af680034d9f8cb014bb135b2addef7455
atteryStats.java
DeviceIdleController.aidl
30e8a36de13901c0a9b4c8bebfce36f762458129 15-Jul-2015 Mathieu Chartier <mathieuc@google.com> am ad4a285a: am ebac4d1b: Merge "Change conditionallyCheckInstanceCounts to use countInstancesOfClasses"

* commit 'ad4a285af619ea29f79dbe4da19061c49f24a8c9':
Change conditionallyCheckInstanceCounts to use countInstancesOfClasses
dc3e83eae3a7958143ac5e987d7092f384eb0777 15-Jul-2015 Jeff Sharkey <jsharkey@android.com> am 026d6f97: am de404257: am 556136c8: am c7a60749: am d3719ab0: Merge "Better handling of storage paths." into mnc-dev

* commit '026d6f97d120f7f557a50effd82e6b3b6f032870':
Better handling of storage paths.
026d6f97d120f7f557a50effd82e6b3b6f032870 15-Jul-2015 Jeff Sharkey <jsharkey@android.com> am de404257: am 556136c8: am c7a60749: am d3719ab0: Merge "Better handling of storage paths." into mnc-dev

* commit 'de404257a99d3a94b4d92923248af77817e447ed':
Better handling of storage paths.
c7a607496aa5ba368524dd334877a9c428ab5f78 14-Jul-2015 Jeff Sharkey <jsharkey@android.com> am d3719ab0: Merge "Better handling of storage paths." into mnc-dev

* commit 'd3719ab07a0ba66c019979ce19c45b77c4aae92e':
Better handling of storage paths.
f8cc20031e7772aed25c95046929ef7a258df209 14-Jul-2015 Mathieu Chartier <mathieuc@google.com> am 82f91da7: am ad4a285a: am ebac4d1b: Merge "Change conditionallyCheckInstanceCounts to use countInstancesOfClasses"

* commit '82f91da700445c4606faea45ac8f0dc9f2857471':
Change conditionallyCheckInstanceCounts to use countInstancesOfClasses
82f91da700445c4606faea45ac8f0dc9f2857471 14-Jul-2015 Mathieu Chartier <mathieuc@google.com> am ad4a285a: am ebac4d1b: Merge "Change conditionallyCheckInstanceCounts to use countInstancesOfClasses"

* commit 'ad4a285af619ea29f79dbe4da19061c49f24a8c9':
Change conditionallyCheckInstanceCounts to use countInstancesOfClasses
b483aebdd39c4fe23d68e7f54cd5d51ecff7a755 14-Jul-2015 Adrian Roos <roosa@google.com> am 1d9a312c: am 3d2c2980: am a2231a75: am 9c013a21: Merge "Show charging speed on Keyguard" into mnc-dr-dev

* commit '1d9a312c2c6a372071572fb32e10de19e67482d6':
Show charging speed on Keyguard
983294596e65a0226aa69e42bda9db322727fee5 13-Jul-2015 Jeff Sharkey <jsharkey@android.com> Better handling of storage paths.

Give more details about why we failed to create storage paths, and
search for underlying volumes using canonical paths.

Bug: 22135060
Change-Id: I75d3584403ece310438b05f5b9fe72d94c9096c6
torage/StorageManager.java
9c013a211768c661f1142aba31c690daa76c66f7 14-Jul-2015 Adrian Roos <roosa@google.com> Merge "Show charging speed on Keyguard" into mnc-dr-dev
1cdd6e83fb89bab4b4e7113343a47b579e99b8bf 14-Jul-2015 Marco Nelissen <marcone@google.com> am b2fef7a8: am f12612c8: am 48c78cfb: am c56668eb: am 3ced9617: Merge "Use original path if translated path doesn\'t exist" into mnc-dev

* commit 'b2fef7a81f39c38eff79897e7af02fff20b829cb':
Use original path if translated path doesn't exist
fbb4a38c7cc8ddb313c588f8d29bfcda5c0609c2 14-Jul-2015 Ian Pedowitz <ijpedowitz@google.com> resolved conflicts for merge of 30efac5a to master

Change-Id: I0dad4cf10ed01cbf49e33f0c2ed1d6f8a1c893e0
7b04311d88e377c67b4c663091b6b1c63c932c52 10-Jul-2015 Adrian Roos <roosa@google.com> Show charging speed on Keyguard

Bug: 8099739
Change-Id: I2e5c21dd7ec028ce47fb03ab71e74f7fccaa9e36
atteryManager.java
atteryProperties.java
7cb69df507f5f7956c52a2868a0d6e89aec6dde2 14-Jul-2015 Xiaohui Chen <xiaohuic@google.com> sys user split: refactor systemui user switcher

BUG:19913735
Change-Id: I017dd1b03fd163c266b8080b969fb7a2e934e26c
serManager.java
c56668eb223fe45ff5c1e399d99943838320c407 14-Jul-2015 Marco Nelissen <marcone@google.com> am 3ced9617: Merge "Use original path if translated path doesn\'t exist" into mnc-dev

* commit '3ced96178b1b132705e773736cbb707a3a0cd951':
Use original path if translated path doesn't exist
aa4110366813f29f6a71dbdee090ba823feb2efe 14-Jul-2015 Marco Nelissen <marcone@google.com> Use original path if translated path doesn't exist

Bug: 22376538
Change-Id: I2f6af4fa31c097e2e2d619a068cf83721091c450
torage/StorageManager.java
d2c9d0d92c0d9c44d34b4f014fb3a434377d8518 14-Jul-2015 Paul Crowley <paulcrowley@google.com> Revert "am 8ae629f6: am 63690fa5: am 140ff7a5: am bac3d093: Merge "Delete the user key when deleting a user." into mnc-dr-dev"

This reverts commit c5da3fe1de36c231b8b1ac2aa07c2bf880af7b91, reversing
changes made to d884b41331fa486d5e4b02df725e37a497b08cc9.
torage/IMountService.java
c5da3fe1de36c231b8b1ac2aa07c2bf880af7b91 14-Jul-2015 Paul Crowley <paulcrowley@google.com> am 8ae629f6: am 63690fa5: am 140ff7a5: am bac3d093: Merge "Delete the user key when deleting a user." into mnc-dr-dev

* commit '8ae629f6cbda2ad55a1b6f3f508a04dc348ed796':
Delete the user key when deleting a user.
d7be214ca469c593d8a59cf7404020f4ad1aaed9 14-Jul-2015 Ian Pedowitz <ijpedowitz@google.com> resolved conflicts for merge of 8cee6587 to mnc-dr-dev

Change-Id: I0b2ed52214bb097d7fd69434afd0c6c890b5afb3
6ee871e59812fea4525c50231f677c4bd10c74b8 10-Jul-2015 Svet Ganov <svetoslavganov@google.com> Teach storage appops.

For modern apps targeting M SDK and up the external storage state
is deterined by granted permissions. For apps targeting older SDK
the storage access is determined by app ops correspning to the
storage permissions as the latter are always granted.

When app ops change we do not remount as we kill the app process
in both cases enabling and disabling an app op since legacy code
is not prepared for dynamic behavior where an operation that failed
may next succeed. Hence, we remount when we start the app.

For modern apps we don't kill the app process on a permission
grant, therefore we synchronously remount the app storage.

bug:22104923

Change-Id: I601c19c764a74c2d15bea6630d0f5fdc52bf6a5a
torage/IMountService.java
torage/MountServiceInternal.java
torage/StorageManager.java
torage/VolumeInfo.java
bac3d0936dfdb4d594873fd8690e8017e748ed96 13-Jul-2015 Paul Crowley <paulcrowley@google.com> Merge "Delete the user key when deleting a user." into mnc-dr-dev
9e0e69915a2e45dd5ba158e0436571551a672636 13-Jul-2015 Paul Crowley <paulcrowley@google.com> Merge "Use mount service to create user dirs." into mnc-dr-dev
d288a266723e18d846ea1215919f7a377504225b 10-Jul-2015 Mathieu Chartier <mathieuc@google.com> Change conditionallyCheckInstanceCounts to use countInstancesOfClasses

countInstancesOfClasses allows passing multiple classes unlike
countInstanceOfClass. This provides a speedup since we dont traverse
the heap multiple times.

Changed ActivityThread.dumpMemInfo to do a GC since countInstancesOfClass
no longer does GC before counting.

https://code.google.com/p/android/issues/detail?id=177552

Change-Id: Ia85684f40cf59a52aa71a8479c711a994651209b
trictMode.java
b6fbe91a02c2d4a03ff65f37ec10d5b95a0792e7 10-Jul-2015 Dianne Hackborn <hackbod@google.com> am 782e31df: am 2dc2cdc0: am 1dfeb0b2: am d0e005de: am 0e7d497c: Merge "Fix issue #22328792: Fix scalability issues in AssistStructure" into mnc-dev

* commit '782e31dfcc448eaaab814fd76f42c3390a952037':
Fix issue #22328792: Fix scalability issues in AssistStructure
782d49826862cbdc9d020fc9d85f8a6f64675dcb 09-Jul-2015 Dianne Hackborn <hackbod@google.com> Fix issue #22328792: Fix scalability issues in AssistStructure

We can now stream the AssistStructure across processes, avoiding
IPC size limitations for large structures. There is also a new
API that gets called on the VoiceInteractionSession if there is
a failure retrieving the assist data.

Also fix issue #22351981: Runtime restart due to ANR in system server,
getting rid of a deadlock.

And also tweak object lifecycles to try to avoid keeping around
in an app the previous AssistStructure after we request a new one.

Change-Id: Ifb136a0d31a14e56a8db6b90768d9fc65557a17f
ooledStringReader.java
ooledStringWriter.java
7ec733fad39ff9e439a67c9cf51b88bc84cdfda0 19-May-2015 Paul Crowley <paulcrowley@google.com> Delete the user key when deleting a user.

Bug: 19706593

(cherry-picked from commit 85e4e818d83dbc65b1e6e3ed9d39c656188acaec)

Change-Id: Icc6d53a99558317b2ec154f931e481ad9fe64aa3
torage/IMountService.java
torage/StorageManager.java
bcf48ed2262d655ebf59153dea645ca761b73db5 22-Apr-2015 Paul Crowley <paulcrowley@google.com> Use mount service to create user dirs.

Bug: 19704432

(cherry-picked from commit 9102f5d953fbde03e12f385b2225004edc43d202)

Change-Id: I64a2c85beef115158feed3953deae32f692e750f
torage/IMountService.java
torage/StorageManager.java
2878e4e825bad10c5fe2784f0efb8bc545cdde53 09-Jul-2015 Adam Lesinski <adamlesinski@google.com> am 8e82c794: am 3e2b53ff: am 1ad61b33: am 1549adb4: am 7fb1655a: Merge "BatteryStats: Fail gracefully on corrupt battery stats" into mnc-dev

* commit '8e82c794bb944d4a15501854721a476db2dae470':
BatteryStats: Fail gracefully on corrupt battery stats
7fb1655a891de275ab8a752294c42b9c13352af6 09-Jul-2015 Adam Lesinski <adamlesinski@google.com> Merge "BatteryStats: Fail gracefully on corrupt battery stats" into mnc-dev
9ae9cba0209a8baf0a5d7463dc1c9a4831c916f6 09-Jul-2015 Adam Lesinski <adamlesinski@google.com> BatteryStats: Fail gracefully on corrupt battery stats

Bug:22328963
Change-Id: Id0b4c6334706e58483d5fdfd2c1137bfb821c409
atteryStats.java
333b5b7d345c4717a972a7f8ad37c49899b8d2a5 09-Jul-2015 Jeff Sharkey <jsharkey@android.com> am b64813bd: am 093be69c: am f3d73162: am 46552cff: am 9d587a97: Merge changes I9971c466,Ib42474fd into mnc-dev

* commit 'b64813bdf08502ded55f7222ea426c7c948cc4e9':
Kill MediaProvider during drastic changes.
Use best volume description for MTP.
28e38bbf4428ed49cba391d2815d2f19b1988983 09-Jul-2015 Jeff Sharkey <jsharkey@android.com> am 608114f9: am e232afca: am 95661575: am 612aac4e: am c66b90fe: Merge "Generate stable MTP storage IDs." into mnc-dev

* commit '608114f9668be847715a7e8015bda19e4343b535':
Generate stable MTP storage IDs.
a83bf1966e3e51fb052db86daf359d5b1cc110f5 08-Jul-2015 Jeff Sharkey <jsharkey@android.com> Use best volume description for MTP.

Otherwise we end up showing adopted storage devices as "Unknown."

Bug: 20275423
Change-Id: Ib42474fd5b3284b1e8eca7de8a4cfbb71a34a107
torage/VolumeInfo.java
a4da90dbabca0dc54424dec09f4da98a0903a81a 08-Jul-2015 Jeff Sharkey <jsharkey@android.com> am 28339797: am 6e77499a: am fb10a760: am 79204a32: am 15369c6c: Merge "Fix volume naming when surfaced over MTP." into mnc-dev

* commit '28339797043834e5f1cd196363ef3cfdd66607ad':
Fix volume naming when surfaced over MTP.
5af1835d678031d4a6615edc96ba58c82304b31d 08-Jul-2015 Jeff Sharkey <jsharkey@android.com> Generate stable MTP storage IDs.

It ends up that MediaProvider is persisting MTP storage IDs in its
database, so we need to make sure we generate stable IDs over time,
otherwise we can end up looking into a black hole.

Bug: 22256092
Change-Id: I6a75c239aac1b71fd5f6df0df69b24971079a086
torage/StorageVolume.java
torage/VolumeInfo.java
7a788a865e72da4205b5cf4e0a6f08ccb6f4bdbd 07-Jul-2015 Jeff Sharkey <jsharkey@android.com> Fix volume naming when surfaced over MTP.

Otherwise we show everything as "Unknown."

Bug: 22256092
Change-Id: I19fe8a25aff02db8ca9aff288e6715d469f65327
torage/VolumeInfo.java
3aeb218d0ddec11455fe0347a9c7056da24f2f9e 07-Jul-2015 Jeff Sharkey <jsharkey@android.com> am 6480393a: am c2e16e9b: am 63ba1d9e: am d58ddd82: am 246d6984: Merge "Handle missing migration source volume." into mnc-dev

* commit '6480393a0dc4d96de6f58cf0a1420e82bc8203a0':
Handle missing migration source volume.
3bb8c854189591fcee16d2a6854fae862b02d1e8 07-Jul-2015 Jeff Sharkey <jsharkey@android.com> Merge commit '1db64c19' into merge3

Change-Id: I0aea6817876a5820a7d67a4de5bef0f86ce702a2
ef10ee014594d800f5f5ca31ea93f1cab2880d05 05-Jul-2015 Jeff Sharkey <jsharkey@android.com> Handle missing migration source volume.

Users can try migrating primary storage while the current location
is missing/unmounted. Fail gracefully instead of runtime restarting.

Bug: 21927076
Change-Id: I40645f8ccea05154e7cbacd188f6cba5f4dbbdc4
torage/StorageManager.java
6dce4964b4d1a13d276d95730b8fb09d6a5a8d04 04-Jul-2015 Jeff Sharkey <jsharkey@android.com> Reconcile private volumes when mounted.

Many things can happen while a private volume is ejected, so we need
to reconcile newly mounted volumes against known state.

First, user IDs can be recycled, so we store the serial number in the
extended attributes of the /data/user/[id] directory inode. Since a
serial number is always unique, we can quickly determine if a user
directory "10" really belongs to the current user "10". When we
detect a mismatched serial number, we destroy all data belonging to
that user. Gracefully handles upgrade case and assumes current serial
number is valid when none is defined.

Second, we destroy apps that we find no record of, either due to
uninstallation while the volume was unmounted, or reinstallation on
another volume.

When mounting a volume, ensure that data directories exist for all
current users. Similarly, create data directories on all mounted
volumes when creating a user. When forgetting a volume, gracefully
uninstall any apps that had been installed on that volume.

Bug: 20674082, 20275572
Change-Id: I4e3448837f7c03daf00d71681ebdc96e3d8b9cc9
nvironment.java
torage/StorageManager.java
6c1721509aab98dcfae281463e1cbe69b90cf480 04-Jul-2015 Jeff Sharkey <jsharkey@android.com> am b959b1aa: am c6913187: am a5ed2c4d: Merge "Better handling of trim/benchmark results." into mnc-dev

* commit 'b959b1aaea9fa64e3eb6cee7ce8e64d8a10657a3':
Better handling of trim/benchmark results.
9776c69790e474ef77566f8a0fc9c70106a675a5 04-Jul-2015 Dianne Hackborn <hackbod@google.com> am 9fac4c59: am 71b97214: am 36e52cdc: Merge "Device idle fixes: issue #22209630 and issue #22225665" into mnc-dev

* commit '9fac4c590568ae86efe597456955cc4a42ddc8d9':
Device idle fixes: issue #22209630 and issue #22225665
a5ed2c4dd35431ccdc3d1feeeca27d9bd27027c7 02-Jul-2015 Jeff Sharkey <jsharkey@android.com> Merge "Better handling of trim/benchmark results." into mnc-dev
e8a4b66960056c2dc2c8dbb5f8df00710645cc64 28-Jun-2015 Jeff Sharkey <jsharkey@android.com> Better handling of trim/benchmark results.

Request benchmarking of devices once per week during normal fstrim
maintenance window. Tunable parameter gives us the ability to change
frequency through global setting.

Track individual benchmark and trim results for each volume, and
use scrubbed volume identifier (based on adoptiong age) when logging
stats to drop box. Track last benchmark and trim time for each
volume separately.

Bug: 21831325
Change-Id: I53b3ed788f7820c2e5bceb2840339f5b4aada3f0
torage/DiskInfo.java
torage/VolumeRecord.java
3b16cf4f47142a845bf0ede54ef8ef956506c6c3 02-Jul-2015 Dianne Hackborn <hackbod@google.com> Device idle fixes: issue #22209630 and issue #22225665

Issue #22209630: Only allow whitelisted apps to put apps on the temp whitelist

We now check whether the calling app is a system uid or in the whitelist
and, if not, throw an exception.

Issue #22225665: Alarm still goes off in idle mode (doze)

Fix a bug where we were not clearing the calling identity when coming
through the dump command to the service, and as a result when we would
eventually call out to the alarm manager it wouldn't do what we want.
This was only broken when being controlled by the shell.

Also adjust the network policy manager service's handling of device
idle transitions to only toggle the device idle state, which gets rid
of the long delay we have coming out of idle mode. And add in a bit
of logging around going in/out of idle mode to try to understand where
things may be slow in the future.

Change-Id: I4a41f790e9b0bb31330314b94111557d479f2ba5
serHandle.java
77fa075e6d90ded2cdbfe50f8fb38c5738d7cbe1 01-Jul-2015 Adam Lesinski <adamlesinski@google.com> am 57a32403: am 4718afcd: am 14b57010: Merge "BatteryStats: Record cpu power usage from /proc/uid_cputime" into mnc-dev

* commit '57a324033bcb348a9c0d4d4774f7d5ebb4b56a41':
BatteryStats: Record cpu power usage from /proc/uid_cputime
14b5701029edc4473921e2a2446ec3151f30b916 01-Jul-2015 Adam Lesinski <adamlesinski@google.com> Merge "BatteryStats: Record cpu power usage from /proc/uid_cputime" into mnc-dev
e8e322fe3ce9159b31bb9f4d991a991a1469f7d5 01-Jul-2015 Adam Lesinski <adamlesinski@google.com> am 0a7b6d6c: am 509dbdb6: am 49a2a698: Merge "Add helper function to extract app ID from shared app gid." into mnc-dev

* commit '0a7b6d6cf9c73d63339dc0b4cb7867cb90b038db':
Add helper function to extract app ID from shared app gid.
1df60ca5f17fa44b7894f7dbee3c395abae4a8c8 01-Jul-2015 Amith Yamasani <yamasani@google.com> am 67abd3b3: am da3d7b2b: am 2b64ec47: Merge "Don\'t allow non-admins to adopt sd card for internal storage" into mnc-dev

* commit '67abd3b356794b316e647a9ad20a24b09406823f':
Don't allow non-admins to adopt sd card for internal storage
49a2a6985d49b7356fd319266dd502f27964e69d 01-Jul-2015 Adam Lesinski <adamlesinski@google.com> Merge "Add helper function to extract app ID from shared app gid." into mnc-dev
2b64ec470c7f18a2e8995d6131d99c58849f9938 01-Jul-2015 Amith Yamasani <yamasani@google.com> Merge "Don't allow non-admins to adopt sd card for internal storage" into mnc-dev
f4216d30cd768638eebdb4124abae95bdf5b3597 27-Jun-2015 Adam Lesinski <adamlesinski@google.com> Add helper function to extract app ID from shared app gid.

Bug:22008744
Change-Id: Ifadc7df3777dd74932833f4d22a0e285d7bdaf95
serHandle.java
462ac3a2aa5e1c974d056dc7221805e2b8ac7823 30-Jun-2015 Amith Yamasani <yamasani@google.com> Don't allow non-admins to adopt sd card for internal storage

Bug: 21883016
Change-Id: I9af3eeffd860b076e69bb02a3dc06edba5f95898
serManager.java
510ac7fcf01381746989a0ec6a53af05abae241c 30-Jun-2015 Christopher Tate <ctate@google.com> am c2487836: am 46a23872: am c4c239bf: Merge "Don\'t crash in JNI: add DeadObjectException(String msg) ctor" into mnc-dev

* commit 'c2487836618e93e0e2e6f1ca42670ebb73e5c629':
Don't crash in JNI: add DeadObjectException(String msg) ctor
e56db0e3fa122971b0865a1129d2860458449eaa 30-Jun-2015 Christopher Tate <ctate@google.com> Don't crash in JNI: add DeadObjectException(String msg) ctor

Bug 22104446

Change-Id: I0a538119269fe45955130e4e3d0d0bae8ee64993
eadObjectException.java
2f37bd39217177fc2d49b07a9d1b2821d3177e80 29-Jun-2015 Nicolas Prevot <nprevot@google.com> am d1d1a700: am 64c0c4da: am 6fd49936: Merge "Rename ALLOW_PARENT_APP_LINKING to ALLOW_PARENT_PROFILE_APP_LINKING" into mnc-dev

* commit 'd1d1a700501242cca06b5729c2bd888d6f2d4d52':
Rename ALLOW_PARENT_APP_LINKING to ALLOW_PARENT_PROFILE_APP_LINKING
6fd49936ae6b145cb2a9fe8b9ff75dcd79632daa 29-Jun-2015 Nicolas Prevot <nprevot@google.com> Merge "Rename ALLOW_PARENT_APP_LINKING to ALLOW_PARENT_PROFILE_APP_LINKING" into mnc-dev
21002cf2569b7bf0b5e0beb116fb3ce516476e18 27-Jun-2015 Dianne Hackborn <hackbod@google.com> am c063f1cf: am 97abd672: am d5f387bc: Merge "Looks like MNC is gonna be API 23." into mnc-dev

* commit 'c063f1cf50c4f4b015c763af8476a25a0df7f45b':
Looks like MNC is gonna be API 23.
a7a4cccf7d90324a049fbfd271d25cad51633922 27-Jun-2015 Adam Lesinski <adamlesinski@google.com> BatteryStats: Record cpu power usage from /proc/uid_cputime

For now we are just recording the power usage and not using it
to calculate battery power usage or app blame. If it looks like
it is accurate, we'll adopt the values from the kernel instead of
estimating ourselves.

Bug:21498425
Change-Id: I6617e3c0ff279a65f4ff84472082f36fe4beb336
atteryStats.java
2e5cad786869b0e61ff06a430646682781162187 27-Jun-2015 Dianne Hackborn <hackbod@google.com> Looks like MNC is gonna be API 23.

Change-Id: I9c9c62209c949b1a16ed53eafc259e88e2ddb69a
uild.java
aedb56fd18487d7a34b8ea9f09e4a717afa75a1e 26-Jun-2015 Jeff Sharkey <jsharkey@android.com> Merge commit 'b02c73d5' into manualmerge

Change-Id: I3ec37c9d45d685c2393087bdefa6ab512cc70062
9527b223a9d4a4d149bb005afc77148dbeeff785 25-Jun-2015 Jeff Sharkey <jsharkey@android.com> Let's reinvent storage, yet again!

Now that we're treating storage as a runtime permission, we need to
grant read/write access without killing the app. This is really
tricky, since we had been using GIDs for access control, and they're
set in stone once Zygote drops privileges.

The only thing left that can change dynamically is the filesystem
itself, so let's do that. This means changing the FUSE daemon to
present itself as three different views:

/mnt/runtime_default/foo - view for apps with no access
/mnt/runtime_read/foo - view for apps with read access
/mnt/runtime_write/foo - view for apps with write access

There is still a single location for all the backing files, and
filesystem permissions are derived the same way for each view, but
the file modes are masked off differently for each mountpoint.

During Zygote fork, it wires up the appropriate storage access into
an isolated mount namespace based on the current app permissions. When
the app is granted permissions dynamically at runtime, the system
asks vold to jump into the existing mount namespace and bind mount
the newly granted access model into place.

Bug: 21858077
Change-Id: I62fb25d126dd815aea699b33d580e3afb90f8fd2
rocess.java
torage/IMountService.java
torage/StorageManager.java
f0029c1ddb2875583e62c6a3f96d288e21f2efe2 25-Jun-2015 Nicolas Prevot <nprevot@google.com> Rename ALLOW_PARENT_APP_LINKING to ALLOW_PARENT_PROFILE_APP_LINKING

Also improve the javadoc.

BUG:21701782
Change-Id: I88a75ccfa71b0d5df2f4779987cf0fff56001fd3
serManager.java
b1cc316dcebc29ab74fa24bfb3f8f687e5835fb5 24-Jun-2015 Xiaohui Chen <xiaohuic@google.com> Merge "Introduce system user and primary user."
70f6c38644a4a6e28c016c265e6987bf00dd61f1 28-Apr-2015 Xiaohui Chen <xiaohuic@google.com> Introduce system user and primary user.

Bug: 19913735
Change-Id: I2c7855915d778cf80a7154314321ddd90e2eaaac
UserManager.aidl
serHandle.java
serManager.java
ac4d8aab79a55d24e9fa040dc99a7a48b92a8bc9 23-Jun-2015 Hiroshi Yamauchi <yamauchi@google.com> am 26898e57: am 189ebe5d: am a1ee09c8: Merge "Clarify art.gc.gc-count-rate-histogram runtime stat." into mnc-dev

* commit '26898e575ca3d977a643657f125b254aed9e0211':
Clarify art.gc.gc-count-rate-histogram runtime stat.
169bca74e99634f5c68ec6b7f9e2c49e3770c00a 29-May-2015 Hiroshi Yamauchi <yamauchi@google.com> Clarify art.gc.gc-count-rate-histogram runtime stat.

(cherry pick commit 2d6327d0adaf6ca3d13e1e082f55680cfefcc449)

Bug: 21491908
Change-Id: I84d93aa73eebc327513c4663a6b606e2dad9a0b7
ebug.java
4874bd161f09e82dd21eeeb485e011cdbfec3f7a 23-Jun-2015 Dianne Hackborn <hackbod@google.com> am 9a5ea4e9: am 67e2aab1: am b7412897: Merge "Fix issue #21254610: StrictMode uses Log.wtf which crashes apps on L+" into mnc-dev

* commit '9a5ea4e9ca9ba965dc940a2b65224cd5e4ff033b':
Fix issue #21254610: StrictMode uses Log.wtf which crashes apps on L+
a1ee09c8438f45a5933803aacab99c300b343420 23-Jun-2015 Hiroshi Yamauchi <yamauchi@google.com> Merge "Clarify art.gc.gc-count-rate-histogram runtime stat." into mnc-dev
b74128978ad4d00d1780d2a2119cad4196178420 23-Jun-2015 Dianne Hackborn <hackbod@google.com> Merge "Fix issue #21254610: StrictMode uses Log.wtf which crashes apps on L+" into mnc-dev
9a0f9682a91e4000de50c2ced20506516af28342 23-Jun-2015 Nicolas Prevot <nprevot@google.com> am 69042609: am 2e70cf73: am 3ab6f9e6: Merge "Allow cross-profile app linking from work to personal." into mnc-dev

* commit '6904260904176c67f200654d48fd8046c63011f4':
Allow cross-profile app linking from work to personal.
fde298e738310cce29bac5e271bc6b59076f019f 23-Jun-2015 Dianne Hackborn <hackbod@google.com> Fix issue #21254610: StrictMode uses Log.wtf which crashes apps on L+

Raise the limit at which we consider the strict mode trace to
be unreasonably large.

Change-Id: I5ec5332dd5aa2631e017d246e4a8b978b82cf318
trictMode.java
8ee0c2cf24cc4de0abe7114c189051277568f7f1 23-Jun-2015 Rahul Chaturvedi <rkc@google.com> Merge "Add binder transaction tracking."
3ab6f9e691fac6eeea1af8fb35bd4c41cdd692ca 23-Jun-2015 Nicolas Prevot <nprevot@google.com> Merge "Allow cross-profile app linking from work to personal." into mnc-dev
2d6327d0adaf6ca3d13e1e082f55680cfefcc449 29-May-2015 Hiroshi Yamauchi <yamauchi@google.com> Clarify art.gc.gc-count-rate-histogram runtime stat.

Bug: 21491908
Change-Id: I84d93aa73eebc327513c4663a6b606e2dad9a0b7
ebug.java
0e5e4eea5e1bffbca34f2c928ed619d2f63019e1 22-Jun-2015 Jeff Sharkey <jsharkey@android.com> am 4edfd64b: am 421daf85: am c629271d: Merge "Forget private partition keys." into mnc-dev

* commit '4edfd64bc1c69be3107fe924772331c1a974e28c':
Forget private partition keys.
9edbda18df025527e18614cf0c45d538a27af30f 17-Jun-2015 Nicolas Prevot <nprevot@google.com> Allow cross-profile app linking from work to personal.

If the profile owner sets ALLOW_PARENT_APP_LINKING:

ACTION_VIEW, scheme http/https intents sent from the work profile
can be resolved by personal apps if they specify a host.

BUG:21701782
Change-Id: I372e2405345539eac9d6b4fb08def6bf84da14a6
serManager.java
c629271d480ea618fd3b9ae2c6ff3028b2a1732d 22-Jun-2015 Jeff Sharkey <jsharkey@android.com> Merge "Forget private partition keys." into mnc-dev
5cc0df214bbe2b169150c9060dc5288bb8aaf338 18-Jun-2015 Jeff Sharkey <jsharkey@android.com> Forget private partition keys.

When we forget a private partition, ask vold to also forget the key
for that partition GUID. This means we need to track both the
filesystem UUID and the partition GUID for a private volume.

Bug: 21782268
Change-Id: Icda1cbb65539d61dacc663428daf3d1a2e4c313e
torage/VolumeInfo.java
torage/VolumeRecord.java
52613f9084f40100021fbf21173bda329a2d5cc3 18-Jun-2015 Rahul Chaturvedi <rkc@google.com> Add binder transaction tracking.

Add the ability to am to be able to track binder transact calls. This
will help us diagnose excessive IPC calls.

This CL adds the trace-ip command to am. The usage is,

To start binder transaction tracking,
am trace-ipc start
To stop tracking and dump the data to a file,
am trace-ipc stop --dump-file <FILE>

Bug: 21398706
Change-Id: Ic0c9b3be757dd0662a2750a0d8447e2a5ef1fa90
inder.java
ransactionTracker.java
e689cca19c0f709b2047dcbc52cfd30cb74509b3 22-Jun-2015 Jeff Brown <jeffbrown@google.com> am 3a9f86a2: am 6903187a: am d63c721e: Merge "Repurpose doze wake lock stats for draw wake lock instead." into mnc-dev

* commit '3a9f86a2df00973b10754fa4011b8e8c32928685':
Repurpose doze wake lock stats for draw wake lock instead.
6a8bd7bc13251fe1710cb529d14ee28b0c4ab5d0 20-Jun-2015 Jeff Brown <jeffbrown@google.com> Repurpose doze wake lock stats for draw wake lock instead.

The doze wake lock is an internal implementation detail with no
power impact. However the draw wake lock is much more interesting
to track because it's essentially like a special purpose partial
wake lock which may be acquired while dozing.

Bug: 21949905
Change-Id: Iedd5f366eb010a47a9691374c5cd3d85ea68173d
atteryStats.java
d28292f319cbecd839b85aed40b2d8cc0acafaf3 19-Jun-2015 Adam Lesinski <adamlesinski@google.com> am 52e7f8c7: am bd9b25ef: am b6a09299: Merge "BatteryStats: Record doze wake locks" into mnc-dev

* commit '52e7f8c76f78176ae33c22118e2f05626923c724':
BatteryStats: Record doze wake locks
9425fe21c9a8ab894e4a3b12a418564c4349394e 19-Jun-2015 Adam Lesinski <adamlesinski@google.com> BatteryStats: Record doze wake locks

Doze wake locks don't actually hold the CPU awake, so we should record them
separately from full wakelocks, which is what we did before.

Bug:21949905
Change-Id: Ib4db3399069e0ad11f1f0dc6925a87ad0ad21ff9
atteryStats.java
f32f7a3ffdbb80fb8d635c1aacaf0c7d2c2dde9f 19-Jun-2015 David Srbecky <dsrbecky@google.com> Merge "Replace --include-cfi with --generate-debug-info." into mnc-dev
6c32b58bf1b01f6524fd36af7264414fa214b974 19-Jun-2015 Dianne Hackborn <hackbod@google.com> am 50bf0203: am 1594edce: am 0348ba2e: Merge "Fix issue #20494208: Go out of device idle when headset button is pressed" into mnc-dev

* commit '50bf0203b9ed0ac5c72ad6b2e2fcc1a6737bb565':
Fix issue #20494208: Go out of device idle when headset button is pressed
6c2a8e0da8856b1feb4e9cc495d60d5956a8ccc3 19-Jun-2015 Adam Lesinski <adamlesinski@google.com> am 9f0179cc: am a0578a02: am 00fac635: Merge "BatteryStats: Fix regression in wakelock power distribution" into mnc-dev

* commit '9f0179cc5f6f74a6b9957f60526353898f02ac0b':
BatteryStats: Fix regression in wakelock power distribution
50bf0203b9ed0ac5c72ad6b2e2fcc1a6737bb565 19-Jun-2015 Dianne Hackborn <hackbod@google.com> am 1594edce: am 0348ba2e: Merge "Fix issue #20494208: Go out of device idle when headset button is pressed" into mnc-dev

* commit '1594edcea1e8862827410f2542d19c5edb403cbe':
Fix issue #20494208: Go out of device idle when headset button is pressed
9f0179cc5f6f74a6b9957f60526353898f02ac0b 19-Jun-2015 Adam Lesinski <adamlesinski@google.com> am a0578a02: am 00fac635: Merge "BatteryStats: Fix regression in wakelock power distribution" into mnc-dev

* commit 'a0578a025949b0759dbd6109b60c2c560b03b2d5':
BatteryStats: Fix regression in wakelock power distribution
065075e1f993a68579ed7f8034ab09d96ec957a9 28-May-2015 David Srbecky <dsrbecky@google.com> Replace --include-cfi with --generate-debug-info.

This follows a change in dex2oat.

(cherry picked from commit f39477b592e6e17fe41ace2e18602a69b2dd1619)

Bug: 21924613
Change-Id: I46b61298ca00bee2e83080456b180d63efd95b8f
rocess.java
0348ba2e2303d9dce57a6b5d19cc47ecc5089afe 19-Jun-2015 Dianne Hackborn <hackbod@google.com> Merge "Fix issue #20494208: Go out of device idle when headset button is pressed" into mnc-dev
00fac63575349df5ed8c399b83f1f9c7199ff070 19-Jun-2015 Adam Lesinski <adamlesinski@google.com> Merge "BatteryStats: Fix regression in wakelock power distribution" into mnc-dev
b6683c428698105f715985a96066192aa62e9f53 19-Jun-2015 Dianne Hackborn <hackbod@google.com> Fix issue #20494208: Go out of device idle when headset button is pressed

Rework how we record active transitions in battery stats to be
more general, and add an API that others can call in to
DeviceIdleController to request that we go out of idle mode.
use this for VOICE_SEARCH_HANDS_FREE.

Change-Id: Ie58de60e63036a4142881283835961fbcceec892
atteryStats.java
DeviceIdleController.aidl
72478f053f403e29223dba6cc7be9e5bf115f670 18-Jun-2015 Adam Lesinski <adamlesinski@google.com> BatteryStats: Fix regression in wakelock power distribution

We used to give 50% of the cpu time of each app to any app holding a wakelock
while the screen is off.
Since we switched to the new kernel module for measuring app's cpu time, this distribution
was lost.

Bug:21876567
Change-Id: I42c294547f63d150d9929271ca0e27fedaaa9d77
atteryStats.java
6d1f8c75cd92f84f811ca40b01535d908c7ad198 18-Jun-2015 Xiaohui Chen <xiaohuic@google.com> am 16834d76: am 82422c31: am 802ece61: Merge "system_server: add two child chains to firewall" into mnc-dev

* commit '16834d76072ec1c8049856d355e7cc3bd0ce6a40':
system_server: add two child chains to firewall
16834d76072ec1c8049856d355e7cc3bd0ce6a40 18-Jun-2015 Xiaohui Chen <xiaohuic@google.com> am 82422c31: am 802ece61: Merge "system_server: add two child chains to firewall" into mnc-dev

* commit '82422c313e5efc80c917afdcf532d6616fbc2313':
system_server: add two child chains to firewall
802ece61399e94bbe98cafaa277c71bee73c03ba 18-Jun-2015 Xiaohui Chen <xiaohuic@google.com> Merge "system_server: add two child chains to firewall" into mnc-dev
b41c9f7f39939cee8d226eb5e506c3f0573f44f5 18-Jun-2015 Xiaohui Chen <xiaohuic@google.com> system_server: add two child chains to firewall

This is an attempt to speed up getting out of device idle. It groups
uid firewall rules in these child chains so we can attach/detach a whole
chain instead of individual uid rules.

BUG:21446713
Change-Id: Ie8f392da2deabe7cc86a9ecf4ed080163861d41e
NetworkManagementService.aidl
1142341872befc70d2d37c3b8bac66e2f77f633d 16-Jun-2015 Jeff Sharkey <jsharkey@android.com> am 10d045cd: am 716978e3: am 2cc03e56: Yet another user restriction.

* commit '10d045cd08a60403056f90f03b8f79dc0bf18571':
Yet another user restriction.
10d045cd08a60403056f90f03b8f79dc0bf18571 16-Jun-2015 Jeff Sharkey <jsharkey@android.com> am 716978e3: am 2cc03e56: Yet another user restriction.

* commit '716978e36b30f339e615eee289a8cbc6f68a4df4':
Yet another user restriction.
2cc03e5606ad7cd473283898400506d5ac2237ba 20-Mar-2015 Jeff Sharkey <jsharkey@android.com> Yet another user restriction.

Change-Id: Ia2952da19cb974a6a9ba0271a298a10df58b8d18
serManager.java
1317a6585c523b4543720f32e45821f35c7f161b 15-Jun-2015 Dianne Hackborn <hackbod@google.com> am d5111d46: am 4169b628: am 285cb414: Merge "Fix issue #21813831: Need API for asking to be added to power whitelist" into mnc-dev

* commit 'd5111d46d6589921c3ad3d7ee6771ccc0e257f8f':
Fix issue #21813831: Need API for asking to be added to power whitelist
d5111d46d6589921c3ad3d7ee6771ccc0e257f8f 15-Jun-2015 Dianne Hackborn <hackbod@google.com> am 4169b628: am 285cb414: Merge "Fix issue #21813831: Need API for asking to be added to power whitelist" into mnc-dev

* commit '4169b6282f78a8027cc0e4c2f3ca4f0f05c57d08':
Fix issue #21813831: Need API for asking to be added to power whitelist
1958e5e7870579337f1d1d3e6c6fae096ba3abb9 13-Jun-2015 Dianne Hackborn <hackbod@google.com> Fix issue #21813831: Need API for asking to be added to power whitelist

Add the API. Clean up a few related things.

Change-Id: I190adad1812f36f6095b98a1001fedb94874e8b5
owerManager.java
a84fc38bdfa953454c159c0d8e08de51af054d5b 13-Jun-2015 Makoto Onuki <omakoto@google.com> am 92177ad7: am b3be7c26: am 80b34d7b: Merge "Add StorageEventListener.onDiskDestroyed()" into mnc-dev

* commit '92177ad765b86f77e86a29e9d013883af9fec134':
Add StorageEventListener.onDiskDestroyed()
92177ad765b86f77e86a29e9d013883af9fec134 13-Jun-2015 Makoto Onuki <omakoto@google.com> am b3be7c26: am 80b34d7b: Merge "Add StorageEventListener.onDiskDestroyed()" into mnc-dev

* commit 'b3be7c26977ecebd9efd899ae5ef39e0552785aa':
Add StorageEventListener.onDiskDestroyed()
80b34d7b9da0e0738a4a1db78d83cd804372594b 13-Jun-2015 Makoto Onuki <omakoto@google.com> Merge "Add StorageEventListener.onDiskDestroyed()" into mnc-dev
76e0067158d1f866624ae5c0cc14bf4e9ecf6cda 13-Jun-2015 Jeff Sharkey <jsharkey@android.com> am ed547496: am e4872995: am 1d04e6a6: Merge "More useful extras in disk/volume broadcasts." into mnc-dev

* commit 'ed547496691b65ae45252aee9471fb36b39bacc3':
More useful extras in disk/volume broadcasts.
3079bd42f5b5110658665b904e98f531d699dd0c 13-Jun-2015 Adam Lesinski <adamlesinski@google.com> am f0380592: am c32eec37: am 87a79c39: Merge "BatteryStatsHelper: Fix some lost power" into mnc-dev

* commit 'f03805920880c007b443a8a3a0c60efcfc396dc4':
BatteryStatsHelper: Fix some lost power
ed547496691b65ae45252aee9471fb36b39bacc3 13-Jun-2015 Jeff Sharkey <jsharkey@android.com> am e4872995: am 1d04e6a6: Merge "More useful extras in disk/volume broadcasts." into mnc-dev

* commit 'e4872995224bca8371188d1b07e58871cc2aed7b':
More useful extras in disk/volume broadcasts.
f03805920880c007b443a8a3a0c60efcfc396dc4 13-Jun-2015 Adam Lesinski <adamlesinski@google.com> am c32eec37: am 87a79c39: Merge "BatteryStatsHelper: Fix some lost power" into mnc-dev

* commit 'c32eec37908a4d45c82bc4984fd9b68cb25949a8':
BatteryStatsHelper: Fix some lost power
1d04e6a6cd06062483e22b387c6c1a615e4e5088 13-Jun-2015 Jeff Sharkey <jsharkey@android.com> Merge "More useful extras in disk/volume broadcasts." into mnc-dev
c7acac6798e12780194af33d5a9fdf382ab17155 13-Jun-2015 Jeff Sharkey <jsharkey@android.com> More useful extras in disk/volume broadcasts.

Change-Id: I594166cff332aaf72b2b6357ac6ed3e6e42cbc49
torage/DiskInfo.java
torage/VolumeInfo.java
57123001a416509ea7680501424d2ddf3ae55088 13-Jun-2015 Adam Lesinski <adamlesinski@google.com> BatteryStatsHelper: Fix some lost power

Looks like we were losing some power calculations from the CPU side of Bluetooth and
WiFi if there was no controller activity ocurring.

Also add finer breakdown of power to BatteryStats dumpsys for WiFi and Bluetooth.

Change-Id: Ic3ce3e4e3b854f17f9a32fd4bdc47a8ea74ca439
atteryStats.java
9dc575d63c5f0d7511308bd2cd3d5dbd20c15e17 13-Jun-2015 Makoto Onuki <omakoto@google.com> Add StorageEventListener.onDiskDestroyed()

Bug 21336042

Change-Id: I226cf205191dd302ff8d5156f9ae0fe8fc5b2c2b
torage/IMountServiceListener.java
torage/StorageEventListener.java
torage/StorageManager.java
700a1b9f8a157f732db8061760f0d83b8cb57137 12-Jun-2015 Amith Yamasani <yamasani@google.com> am db589a3d: am dc0df828: am ffff74ab: Merge "Report app standby state to batterystats" into mnc-dev

* commit 'db589a3d0dff105f80672ad541a096d9b60e2520':
Report app standby state to batterystats
db589a3d0dff105f80672ad541a096d9b60e2520 12-Jun-2015 Amith Yamasani <yamasani@google.com> am dc0df828: am ffff74ab: Merge "Report app standby state to batterystats" into mnc-dev

* commit 'dc0df828a2d93828696cf6b09e02de0af5717cb4':
Report app standby state to batterystats
ffff74abb13ad8c0e25175bd361d570a8e5e1406 12-Jun-2015 Amith Yamasani <yamasani@google.com> Merge "Report app standby state to batterystats" into mnc-dev
f8b32531801d87699b28e9454e81ebf96367a9bd 12-Jun-2015 Dianne Hackborn <hackbod@google.com> am ccd6d0c1: am d55860d9: am 8a435ced: Merge "Fix APIs." into mnc-dev

* commit 'ccd6d0c14decd111e7e12bf9844fa5ff75aa912e':
Fix APIs.
ccd6d0c14decd111e7e12bf9844fa5ff75aa912e 12-Jun-2015 Dianne Hackborn <hackbod@google.com> am d55860d9: am 8a435ced: Merge "Fix APIs." into mnc-dev

* commit 'd55860d990587509f0e9624c44494172f3e24714':
Fix APIs.
8a435ced674562b827f91800317a89056e050b15 12-Jun-2015 Dianne Hackborn <hackbod@google.com> Merge "Fix APIs." into mnc-dev
6776849dc5ff851a225745393f082b702754e278 09-Jun-2015 Amith Yamasani <yamasani@google.com> Report app standby state to batterystats

Also reduce idle checks to the target user if possible.
Optimized calls to some internal methods

Bug: 21639147
Change-Id: If1faf26f862e5c4ca905f2603a4ba52a8d1af954
atteryStats.java
018913fe249f8911c6162c527ba3e8c992b652c1 12-Jun-2015 Jeff Sharkey <jsharkey@android.com> am c1a54115: am 2e9704f9: am 5347f0ff: Merge "Valid filenames have length limits!" into mnc-dev

* commit 'c1a54115bdf8eead6e84e776c990a567d9d3e47c':
Valid filenames have length limits!
c1a54115bdf8eead6e84e776c990a567d9d3e47c 12-Jun-2015 Jeff Sharkey <jsharkey@android.com> am 2e9704f9: am 5347f0ff: Merge "Valid filenames have length limits!" into mnc-dev

* commit '2e9704f969df4d140f4c54243c6faabf17517144':
Valid filenames have length limits!
5347f0ff3857baae7b889d24acd352cabcc9205b 12-Jun-2015 Jeff Sharkey <jsharkey@android.com> Merge "Valid filenames have length limits!" into mnc-dev
4f5e8b3ca489245005b76176ac6d28f5f184f3fe 12-Jun-2015 Jeff Sharkey <jsharkey@android.com> Valid filenames have length limits!

ext4 filenames are at most 255 bytes. vfat filenames are bit more
lax, but we're often saving them on ext4 through a FUSE daemon, so
limit them the same way.

Since package names are used as directory names, verify that they're
valid filenames.

Tests to verify behavior.

Bug: 18689171
Change-Id: If7df4c40d352954510b71de4ff05d78259c721ed
ileUtils.java
ece0f4f5198e9e9cb60e96f036baf22c73411bec 11-Jun-2015 Dianne Hackborn <hackbod@google.com> Fix APIs.

Issue #21039494: API Review: android.os.PowerManager.isDeviceIdleMode()
Issue #21347000: API Review: android.content.IntentFilter
Issue #20654534: API Review: android.app.assist

Also allow use of ActivityManager.setWatchHeapLimit on any platform
build as long as the calling app is debuggable.

Change-Id: Ic597e596fa772fcdf2553b64f444b3d9269e8b92
owerManager.java
4d98bd0e3a9f52b6faed03a246a2dbe4fce56eac 11-Jun-2015 Jeff Sharkey <jsharkey@android.com> am 03d3aefd: am a6f89a07: am c8488e99: Merge "Ignore some more generic USB device names." into mnc-dev

* commit '03d3aefd3e0cc1b1cd1f43792ab9c3fc3bc9614c':
Ignore some more generic USB device names.
03d3aefd3e0cc1b1cd1f43792ab9c3fc3bc9614c 11-Jun-2015 Jeff Sharkey <jsharkey@android.com> am a6f89a07: am c8488e99: Merge "Ignore some more generic USB device names." into mnc-dev

* commit 'a6f89a07f191c8f80d7cbce62b178f8bdc23ec18':
Ignore some more generic USB device names.
3a2255e957764ce7817b96d627e1197ffcb1833c 11-Jun-2015 Makoto Onuki <omakoto@google.com> am ed5d2dc2: am cc0c8a48: am bf2ccf94: Merge "Fix the PFD detachFd issue." into mnc-dev

* commit 'ed5d2dc274e4a4b47816086653bf2d753c5ca115':
Fix the PFD detachFd issue.
ed5d2dc274e4a4b47816086653bf2d753c5ca115 11-Jun-2015 Makoto Onuki <omakoto@google.com> am cc0c8a48: am bf2ccf94: Merge "Fix the PFD detachFd issue." into mnc-dev

* commit 'cc0c8a48422e0bb5a1f699fdb12d12691004fe7c':
Fix the PFD detachFd issue.
c8488e99e85ae5252e6078c00d123f1364aef25d 11-Jun-2015 Jeff Sharkey <jsharkey@android.com> Merge "Ignore some more generic USB device names." into mnc-dev
47b872d9c36347382dd24ad5c3f70490d8fcbb23 11-Jun-2015 Jeff Sharkey <jsharkey@android.com> Ignore some more generic USB device names.

Bug: 21376386
Change-Id: I8c1b1cf9d881ad2795e9b15740ff511260572f1b
torage/DiskInfo.java
b30ad6f5e825989f92abc26cf86edb0c6b13fb01 11-Jun-2015 Makoto Onuki <omakoto@google.com> Fix the PFD detachFd issue.

Bug 18566244

Change-Id: I410b2219e08c9108236e2c2926bd613315198703
arcelFileDescriptor.java
3c0e6d9ebfb4406f421788ca3c33953f9ff242fe 11-Jun-2015 Svetoslav <svetoslavganov@google.com> am 47db7221: am 0525c07f: am 75a0ee08: Merge "Add system API to watch for permission changes" into mnc-dev

* commit '47db7221685aaa12926abc42198069c733491cfc':
Add system API to watch for permission changes
47db7221685aaa12926abc42198069c733491cfc 11-Jun-2015 Svetoslav <svetoslavganov@google.com> am 0525c07f: am 75a0ee08: Merge "Add system API to watch for permission changes" into mnc-dev

* commit '0525c07f30f08008883cf2845afa3bf81f888c55':
Add system API to watch for permission changes
75a0ee081fa31b75649e164a8bf79a23a3ebd060 11-Jun-2015 Svetoslav <svetoslavganov@google.com> Merge "Add system API to watch for permission changes" into mnc-dev
f7c06eb03ab4479b9d0656a23a4733d17e995183 11-Jun-2015 Svetoslav <svetoslavganov@google.com> Add system API to watch for permission changes

Change-Id: I1ce450a59fb326c14848f46732d877dea33f33c7
emoteCallbackList.java
9c9661f1b77c450149dcc66c5d9ac8bd36c0367c 11-Jun-2015 Jeff Sharkey <jsharkey@android.com> am 51b055d3: am e1844c83: am 5fc24733: New strings!

* commit '51b055d330279f5d0a38ad1c33540189e71356e8':
New strings!
51b055d330279f5d0a38ad1c33540189e71356e8 11-Jun-2015 Jeff Sharkey <jsharkey@android.com> am e1844c83: am 5fc24733: New strings!

* commit 'e1844c8302c57e231b85b2fb3cb59fb7f569a270':
New strings!
b39a20e8df17ae09665293b11a5185085f254d39 11-Jun-2015 Adam Lesinski <adamlesinski@google.com> am 5b02907c: am 9702b5d9: am 3d53a26d: Merge "Add more blaming output to batterystats dumpsys" into mnc-dev

* commit '5b02907c9779028cbc60db153fa5f0819155680b':
Add more blaming output to batterystats dumpsys
5fc247338dfc1a817f708163201cdf395cff3303 10-Jun-2015 Jeff Sharkey <jsharkey@android.com> New strings!

Bug: 21737573, 21666225, 21756698, 21737666, 21471429
Change-Id: If1c5882d48f798d311f6d2b86277d3c13f06824e
torage/VolumeInfo.java
5b02907c9779028cbc60db153fa5f0819155680b 11-Jun-2015 Adam Lesinski <adamlesinski@google.com> am 9702b5d9: am 3d53a26d: Merge "Add more blaming output to batterystats dumpsys" into mnc-dev

* commit '9702b5d98824df4fafce821ce9fe15907586b9b1':
Add more blaming output to batterystats dumpsys
628ef9cbedf42fbfb04edf4381671e2fdb795c67 10-Jun-2015 Adam Lesinski <adamlesinski@google.com> Add more blaming output to batterystats dumpsys

Change-Id: I3216f13f16d89a72617d54638df43ce39183da9e
atteryStats.java
fa861429f7ec0b9f83a2baacc3c6fb680467039b 22-May-2015 Tao Bao <tbao@google.com> Wait for uncrypt to finish before rebooting

/system/bin/uncrypt needs to be triggered to prepare the OTA package
before rebooting into the recovery. For larger packages, uncrypt may be
killed before it finishes the work after the timeout. Change to monitor
the uncrypt status and show the progress to user.

Needs matching changes in bootable/recovery/uncrypt, system/core and
external/sepolicy.

Also pick up the two NPE fixes in commits
9bb765448df43d41e0a3edb7de1d1641c9251c35 and
da3f63ffb87397943546a7c5c893ce98f2489df2.

Bug: 20012567
Bug: 20949086
(cherry picked from commit 90237f7beb55dae79cdcba5271f96be778573737)
Change-Id: Ibf2fc80032967e5f6cda3cd469005dd29665c87c
ecoverySystem.java
36c28ee54385ad8dba0bb760639bca96b76fc748 09-Jun-2015 Andreas Gampe <agampe@google.com> am e95f4bf1: am 3f2fbf7e: am 2c936af8: Merge "Frameworks/base: Add is64Bit method to Process" into mnc-dev

* commit 'e95f4bf113e8274f591b8fcc4b6f9d609ce5b978':
Frameworks/base: Add is64Bit method to Process
e95f4bf113e8274f591b8fcc4b6f9d609ce5b978 09-Jun-2015 Andreas Gampe <agampe@google.com> am 3f2fbf7e: am 2c936af8: Merge "Frameworks/base: Add is64Bit method to Process" into mnc-dev

* commit '3f2fbf7e1fa8338cc7d700c951a750f353bdff84':
Frameworks/base: Add is64Bit method to Process
2c936af815167b3f6bbb21d5dccea78b0bd348af 09-Jun-2015 Andreas Gampe <agampe@google.com> Merge "Frameworks/base: Add is64Bit method to Process" into mnc-dev
fb12ff0daacb5ad531de1f290aa61c04580a7905 09-Jun-2015 Richard Uhler <ruhler@google.com> am c5de6931: am d58abdd1: am 659716d7: Merge "Add Debug.MemoryInfo.getMemoryStats API." into mnc-dev

* commit 'c5de6931c162c0ec5153f16c1653cee5527bf383':
Add Debug.MemoryInfo.getMemoryStats API.
c5de6931c162c0ec5153f16c1653cee5527bf383 09-Jun-2015 Richard Uhler <ruhler@google.com> am d58abdd1: am 659716d7: Merge "Add Debug.MemoryInfo.getMemoryStats API." into mnc-dev

* commit 'd58abdd12f79bebad894ea54973ef57061e7dc15':
Add Debug.MemoryInfo.getMemoryStats API.
659716d7a03553006e67b01008c2e9e03a20ed31 09-Jun-2015 Richard Uhler <ruhler@google.com> Merge "Add Debug.MemoryInfo.getMemoryStats API." into mnc-dev
ee0cdce2a80f8cc033378134e37092bc467c0f38 09-Jun-2015 Andreas Gampe <agampe@google.com> Frameworks/base: Add is64Bit method to Process

Add a public method to Process to query whether the current runtime
is running in 64-bit mode.

Bug: 21069469
Change-Id: Ifaf4251f05bbe5eba135fa977190e475632856bd
rocess.java
790e1cc3c6490f3f2fa499a1fae6721567efca2b 06-Jun-2015 Ruben Brunk <rubenbrunk@google.com> am 4335fbfe: am 533514c9: am 8f955f89: Merge "Add UI for camera + flashlight battery reporting." into mnc-dev

* commit '4335fbfe173083bc1be3989beeac74fc02deef37':
Add UI for camera + flashlight battery reporting.
4335fbfe173083bc1be3989beeac74fc02deef37 06-Jun-2015 Ruben Brunk <rubenbrunk@google.com> am 533514c9: am 8f955f89: Merge "Add UI for camera + flashlight battery reporting." into mnc-dev

* commit '533514c9b5bf05bbba33e2499618fa3c47f31451':
Add UI for camera + flashlight battery reporting.
8f955f89c2ff19aac7f3e009c825beda3618f630 06-Jun-2015 Ruben Brunk <rubenbrunk@google.com> Merge "Add UI for camera + flashlight battery reporting." into mnc-dev
5b1308f02d720808727af61863bd59c227d6fe02 04-Jun-2015 Ruben Brunk <rubenbrunk@google.com> Add UI for camera + flashlight battery reporting.

Bug: 11694505
Change-Id: Ieefa78a1d641851f4141fe666dae7b9fde394f09
atteryStats.java
9603852e08c6e73f7692df0ede6fc1deeae58935 05-Jun-2015 Tim Kilbourn <tkilbourn@google.com> am 9c76cfae: am 57914802: Merge "DO NOT MERGE Fix DropBoxManager.Entry parcels with fds." into mnc-dev

* commit '9c76cfae296e15bfe6d1f95d161ac294d7493380':
DO NOT MERGE Fix DropBoxManager.Entry parcels with fds.
4bf27b53b97475803fdb85069d500a075aefc801 03-Jun-2015 Tim Kilbourn <tkilbourn@google.com> DO NOT MERGE Fix DropBoxManager.Entry parcels with fds.

When the socketpair communication channel was added to
ParcelFileDescriptor, the CREATOR method for DropBoxManager.Entry was
not updated to read the extra fd from the Parcel. This was causing reads
to end too early.

Also removed comments referring to the now-deleted native methods in
the native Parcel implementation.

Change-Id: I49a9691da6ea927382ceb2fcbfdc7985a601111b
(cherry picked from commit ba953230f71e5117d819d9e7153da8304b141695)
ropBoxManager.java
arcelFileDescriptor.java
326a0acde1fd2e790b9a854d1ac4610b16224a17 04-Jun-2015 Paul Crowley <paulcrowley@google.com> Merge "Delete the user key when deleting a user."
20fc439fe7dcc60163b124197cb5dd512f8e8496 04-Jun-2015 Tim Kilbourn <tkilbourn@google.com> Merge "Fix DropBoxManager.Entry parcels with fds."
ba953230f71e5117d819d9e7153da8304b141695 03-Jun-2015 Tim Kilbourn <tkilbourn@google.com> Fix DropBoxManager.Entry parcels with fds.

When the socketpair communication channel was added to
ParcelFileDescriptor, the CREATOR method for DropBoxManager.Entry was
not updated to read the extra fd from the Parcel. This was causing reads
to end too early.

Also removed comments referring to the now-deleted native methods in
the native Parcel implementation.

Change-Id: I49a9691da6ea927382ceb2fcbfdc7985a601111b
ropBoxManager.java
arcelFileDescriptor.java
8692b7e5a12d79d14a6717bb3650a3f8a032d997 03-Jun-2015 Paul Crowley <paulcrowley@google.com> Merge "Use mount service to create user dirs."
9984f181c5d0ed933837e548a97729ae81b5e4dd 02-Jun-2015 Amith Yamasani <yamasani@google.com> am 52f26b63: am ff3b76d0: Merge "Temporarily whitelist an app for network during doze" into mnc-dev

* commit '52f26b6399cd28bfaa5822cb4c3a5340404f7800':
Temporarily whitelist an app for network during doze
ff3b76d04672d09214cd0ceb29ec548c8abb2330 02-Jun-2015 Amith Yamasani <yamasani@google.com> Merge "Temporarily whitelist an app for network during doze" into mnc-dev
af575b9f8e1b59be9c8862b6a65c0dcb88145a23 30-May-2015 Amith Yamasani <yamasani@google.com> Temporarily whitelist an app for network during doze

API to allow an app to be whitelisted for network and wakelock
access for a short period. So even if the device is in idle
mode, such apps can be given a chance to download the payload
related to a high priority cloud-to-device message.

This API is meant for system apps only.

A new permission CHANGE_DEVICE_IDLE_TEMP_WHITELIST is required
to make this call.

Bug: 21525864
Change-Id: Id7a761a664f21af5d7ff55aa56e8df98d15511ca
DeviceIdleController.aidl
owerManager.java
owerManagerInternal.java
350e6dc985d118dd004fca60276e3766eb86d073 18-May-2015 Richard Uhler <ruhler@google.com> Add Debug.MemoryInfo.getMemoryStats API.

The initial list of supported memory stats is:
summary.java-heap
summary.native-heap
summary.code
summary.stack
summary.graphics
summary.private-other
summary.system
summary.total-pss
summary.total-swap

Bug: 21266903
Change-Id: Ic3b0e16a8eca4325f3738c389f069933618f66b0
ebug.java
8b2cf64630074d89dbf336741cecf3a54d3ddd2d 02-Jun-2015 Ruben Brunk <rubenbrunk@google.com> am cf4a301f: am 11df5b66: Merge "Track camera and flashlight usage in battery stats." into mnc-dev

* commit 'cf4a301fa94f71e46cccbceeb8e8e9910eeb714a':
Track camera and flashlight usage in battery stats.
11df5b66ef621c4d67f5b4980e879784de43fd70 02-Jun-2015 Ruben Brunk <rubenbrunk@google.com> Merge "Track camera and flashlight usage in battery stats." into mnc-dev
6d2c363fd59af805380622ff7a3ce4c34975aab2 27-May-2015 Ruben Brunk <rubenbrunk@google.com> Track camera and flashlight usage in battery stats.

Bug: 15986092

Change-Id: Idf03981271721c44fd43327d5d90cf6f3fecfacb
atteryStats.java
ab21d60c240fb2ef773cf4dda1ff5a4e7f4592d3 01-Jun-2015 Andres Morales <anmorales@google.com> am 9250d972: am 0fddb1a6: Merge "Revert "[partition checking] re-enable bootimage/bootloader, add recovery"" into mnc-dev

* commit '9250d9727b5a71267cb33b535bdd959c1c03b11a':
Revert "[partition checking] re-enable bootimage/bootloader, add recovery"
c96a66dd03b7928e0945dc7ff0ce961d7091fc7d 01-Jun-2015 Stuart Scott <stuartscott@google.com> am 378c2cbf: am e3e314df: Network Reset should have a lockdown like Factory Reset.

* commit '378c2cbf2ebc2e3668da7d5a285fe3ec6b9d7ee8':
Network Reset should have a lockdown like Factory Reset.
0fddb1a63109e2d4a92327ea1ffc74307292be48 01-Jun-2015 Andres Morales <anmorales@google.com> Merge "Revert "[partition checking] re-enable bootimage/bootloader, add recovery"" into mnc-dev
c97b92e3460e56bbec5ac954873d7eea978bd408 01-Jun-2015 Andres Morales <anmorales@google.com> Revert "[partition checking] re-enable bootimage/bootloader, add recovery"

This reverts commit 831e01a89e9636baf15d35e7f8ff5e9f290c8b87.

Change-Id: I48bf74631b842178964d25906b2790f18632e32a
uild.java
e3e314df4d52881225326d426a76e3e7f1bc40d3 20-Apr-2015 Stuart Scott <stuartscott@google.com> Network Reset should have a lockdown like Factory Reset.

bug:20332322
Change-Id: I7c61a011d11e89513757f112abf320bb2a785edb
(cherry picked from commit 94b038bbb291431a7b39611d72f206b07e839891)
serManager.java
0b8ddb47924506ea349b327c233d50ee8508add5 01-Jun-2015 Andres Morales <anmorales@google.com> am 8d61ab00: am a5705a4a: Merge "[partition checking] re-enable bootimage/bootloader, add recovery" into mnc-dev

* commit '8d61ab0003e26952349a959a4a38d3ebdea664d0':
[partition checking] re-enable bootimage/bootloader, add recovery
a5705a4ada8e719ebf73ed757c514b74785e7ae3 29-May-2015 Andres Morales <anmorales@google.com> Merge "[partition checking] re-enable bootimage/bootloader, add recovery" into mnc-dev
69dd849ed3c189436025eb8914321892424af259 29-May-2015 Tao Bao <tbao@google.com> am 5f90a8c5: am 165102f3: Merge "Wait for uncrypt to finish before rebooting" into mnc-dev

* commit '5f90a8c5bd689afa8403d7dce967bf96a82880c4':
Wait for uncrypt to finish before rebooting
1d4db0e4a6fbe73a2d94665184c031d5b5efff59 29-May-2015 Adam Lesinski <adamlesinski@google.com> am e87126e8: am 8a179cab: Merge "BatteryStats: Output per-app wifi controller distribution" into mnc-dev

* commit 'e87126e8915785e1801580d44ea181304bbfa701':
BatteryStats: Output per-app wifi controller distribution
165102f350e08bd186b25b90dd8a42aad8975890 28-May-2015 Tao Bao <tbao@google.com> Merge "Wait for uncrypt to finish before rebooting" into mnc-dev
9d698acfc487e2e161bc3e56d7ba664c329a57a3 28-May-2015 David Srbecky <dsrbecky@google.com> am efe01cc6: am 3976a569: Merge "Replace --include-cfi with --generate-debug-info."

* commit 'efe01cc62ee49f57c34726ec9c13ddaa9c1b1d8b':
Replace --include-cfi with --generate-debug-info.
8a179cab7971782900f5b4a872f4f432c7d17987 28-May-2015 Adam Lesinski <adamlesinski@google.com> Merge "BatteryStats: Output per-app wifi controller distribution" into mnc-dev
049c88b48ae4dfdf4cdc85aac85607bb4225e7c7 28-May-2015 Adam Lesinski <adamlesinski@google.com> BatteryStats: Output per-app wifi controller distribution

Currently we only output this data on checkin, adding the output
to dumpsys as well.

Change-Id: I649474b576d7341bbf54ff95c0b0e6fed367bcb0
atteryStats.java
f39477b592e6e17fe41ace2e18602a69b2dd1619 28-May-2015 David Srbecky <dsrbecky@google.com> Replace --include-cfi with --generate-debug-info.

This follows a change in dex2oat.

Change-Id: I46b61298ca00bee2e83080456b180d63efd95b8f
rocess.java
3452d2d0dbffc74a87751b39da9fa40d88d5c91f 26-May-2015 Paul Lawrence <paullawrence@google.com> Merge "Honor password visible setting in CryptKeeper" into mnc-dev
5e0ef0d0e62b77bcfc687bfbc1db875db71eba69 26-May-2015 Nicolas Prevot <nprevot@google.com> Merge "Say in the doc that DISALLOW_CONFIG_VPN now works." into mnc-dev
298f98fa234f353267ddc9c75d58e8cc542c25f1 23-May-2015 Nicolas Prevot <nprevot@google.com> Say in the doc that DISALLOW_CONFIG_VPN now works.

BUG:18902920
Change-Id: I761cba1f1e01fbe88f773887bf4e9233fc85cfef
serManager.java
85e4e818d83dbc65b1e6e3ed9d39c656188acaec 19-May-2015 Paul Crowley <paulcrowley@google.com> Delete the user key when deleting a user.

BUG=19706593

Change-Id: I36ec1b987f5a07450c6a564c74f124ec8d3403ad
torage/IMountService.java
torage/StorageManager.java
9102f5d953fbde03e12f385b2225004edc43d202 22-Apr-2015 Paul Crowley <paulcrowley@google.com> Use mount service to create user dirs.

Bug: 19704432
Change-Id: Iee037ca653482b0ee7bf59c7ba193c75411fe42f
torage/IMountService.java
torage/StorageManager.java
e5c42621095a12e7d22ca5ab871dacd28c9bff41 20-May-2015 Dianne Hackborn <hackbod@google.com> Improve reporting to apps of transaction too large failures.

If the app tried to do various things with too much data --
starting an activity, starting a service, sending a broadcast --
this would fairly silently fail with little indication of what
was going on. Fix this in two ways:

- Now when the native code generates a TransactionTooLargeException,
it may include an additional message in it telling you how much
data was in the parcel being sent, to help you understand why
this happening.

- In all the framework code paths where we call to the system and
may fail, convert these failures into a a runtime exception and
rethrow them back to the app so that it will clearly get the
above message.

Change-Id: I745159b97d3edb6fca86aa09cbc40c1f15a7d128
ransactionTooLargeException.java
90237f7beb55dae79cdcba5271f96be778573737 22-May-2015 Tao Bao <tbao@google.com> Wait for uncrypt to finish before rebooting

/system/bin/uncrypt needs to be triggered to prepare the OTA package
before rebooting into the recovery. For larger packages, uncrypt may be
killed before it finishes the work after the timeout. Change to monitor
the uncrypt status and show the progress to user.

Needs matching changes in bootable/recovery/uncrypt, system/core and
external/sepolicy.

Bug: 20012567
Bug: 20949086
Change-Id: I2348a98312c4dae81f618b45a2ee3b4cf6246ff5
ecoverySystem.java
f5a6bd7538a6800c2a43ace5ad67d65b1f8f697a 19-May-2015 Jeff Sharkey <jsharkey@android.com> Push initial disk state, handle empty media.

Stash volume count from last scan, and use it to push initial storage
notifications state when listener is first attached.

Also omit disks with invalid size, which usually means they're an
empty slot with no media.

Bug: 20503551
Change-Id: I75097035aebaad70ba32437179a863f6a0910aa5
torage/DiskInfo.java
5f645339e4d0565cbe1bf2f1a3b77370f07b157a 19-May-2015 Nicolas Prevot <nprevot@google.com> Merge "Allow creating a managed profile if there is only one user." into mnc-dev
d23e0d6901935588f9472bd7073fea0009581e9b 16-May-2015 Dianne Hackborn <hackbod@google.com> Update power manager to track uid state like netstats.

To follow the correct semantics for when restricts due to
device idle can be applied, power manager need to know about
uid process states like net policy so that it can allow
wake locks from apps that are in the foreground.

Since this is being added to a second place, I reworked things
so that the activity manager now keeps track of per-uid process
states and allows apps to register to listen to those, rather
than having to track lower-level process states and transform
them into an overall uid state. Both net policy and power
manager use this new facility.

Change-Id: I77359164c40d0f36fe1ef296dd9f9c3062431148
owerManagerInternal.java
d5538758af0f6fea0695d3682e9aad2613ab9192 19-May-2015 Jeff Brown <jeffbrown@google.com> Merge "Rename file descriptor listener API." into mnc-dev
d8fdb338918e63bbab2e65bdb2f4d12320a1b24a 18-May-2015 Paul Lawrence <paullawrence@google.com> Honor password visible setting in CryptKeeper

Bug: 20184626

Change-Id: Ida0f34299947a5d4067406cc6e029fb841077804
torage/StorageManager.java
12678a99f12ae20fa8518bb8199c35d52be17954 13-May-2015 Nicolas Prevot <nprevot@google.com> Allow creating a managed profile if there is only one user.

BUG:21119929

Change-ID: Ice1cf25f8ae8199228f828d22118c94b9e11b567
UserManager.aidl
serManager.java
2177ed407b8323e6f50d2aa64a62fbdc773e1859 15-May-2015 Jeff Sharkey <jsharkey@android.com> Merge changes from topic 'bench' into mnc-dev

* changes:
Command to change force adoptable state.
Initial pass at storage benchmarks.
72434b7088591828082dd952496d523ef3622de2 13-May-2015 Nicolas Prevot <nprevot@google.com> Allow creating a managed profile if there is only one user.

BUG:21119929

Change-ID: Ice1cf25f8ae8199228f828d22118c94b9e11b567
UserManager.aidl
serManager.java
b99e6d69c30056520f7cb793e4be1851b3bd8426 15-May-2015 Adam Lesinski <adamlesinski@google.com> Merge "Parse uid_cputime proc file" into mnc-dev
4c099d0c49c8366efd3c26854465b3ceef49b627 15-May-2015 Jeff Sharkey <jsharkey@android.com> Command to change force adoptable state.

Since user builds can't setprop, add an explicit "sm" verb to change
the force adoptable state.

Bug: 21191915
Change-Id: I719d9b18c1a98c97442a5ddb1cc5512e8e4d3d3f
torage/IMountService.java
torage/StorageManager.java
9756d75ec28844f5ca30fda786a117c1a0ee88da 15-May-2015 Jeff Sharkey <jsharkey@android.com> Initial pass at storage benchmarks.

Offer an interface for Settings to invoke benchmarks on various
attached volumes.

Bug: 21172095
Change-Id: I847ddc87c58285457d1324be87f70ce10507accb
torage/IMountService.java
torage/StorageManager.java
3f6405259aab3d9d5bd0a1f6dec98ad27e774f69 15-May-2015 Jeff Brown <jeffbrown@google.com> Rename file descriptor listener API.

Bug: 21039493
Change-Id: I506c429e99528eb04dbda5b28da2ad000d10b467
essageQueue.java
arcelFileDescriptor.java
096c11dc3795120dbc75cc1ee15abaa019fb74d1 15-May-2015 Ruben Brunk <rubenbrunk@google.com> Merge "camera2: Fix work-profile eviction handling." into mnc-dev
7f75da2405cd910854448bb3801f776e036f926a 01-May-2015 Ruben Brunk <rubenbrunk@google.com> camera2: Fix work-profile eviction handling.

Bug: 20124384

Change-Id: I6fb82dbfd5f98746ed4befed81a583e3709bfee8
serManager.java
8d0cf8bc457b48a0c8d43cf23928956ae3ca2a28 14-May-2015 Alan Viverette <alanv@google.com> Merge "Add example for detectResourceMismatches()" into mnc-dev
39bf9a1916d929921597dfe3607e77561ec86569 14-May-2015 Alan Viverette <alanv@google.com> Add example for detectResourceMismatches()

Bug: 21043958
Change-Id: Iff6811539f249cbc4fbeebf63e02f62c4a2b0c95
trictMode.java
c968e219372e140e2ae34f9b1e91597ccb719381 13-May-2015 Jeff Sharkey <jsharkey@android.com> Merge "Determine if we have adoptable disks." into mnc-dev
0d838a0fad500a3c446df501d8aa7656c2c3a7a2 13-May-2015 Jeff Sharkey <jsharkey@android.com> Determine if we have adoptable disks.

Bug: 19993667
Change-Id: I9b21b05736c22d34ca22f5ad6e1a6ebec440cfb6
torage/StorageManager.java
4af455beb79086a960f7205d7b730aa6da015993 13-May-2015 Jeff Sharkey <jsharkey@android.com> Merge "Rewriting should fail when any paths are null." into mnc-dev
41be35dd011dbd7ed3a9d08e8fe3eb85ea0e5b64 13-May-2015 Jeff Sharkey <jsharkey@android.com> Rewriting should fail when any paths are null.

Bug: 21017105
Change-Id: I0c5e9c5bdf397d51e2799b06a52bc5bd0bdd09b0
ileUtils.java
44b4add4ce912ac2502082c6778e9a818a778c82 13-May-2015 Jeff Sharkey <jsharkey@android.com> Merge "New "sm" shell tool to call StorageManager." into mnc-dev
7d2af54a98358e9dea96f879ebd1ea915263522b 13-May-2015 Jeff Sharkey <jsharkey@android.com> New "sm" shell tool to call StorageManager.

Surface basic StorageManager commands through shell tool, like
simple listing of disks and volumes, and commands like mounting and
partitioning.

The output is designed to be parsed by host-side testing tools,
instead of relying on fragile dumpsys parsing.

Bug: 19993667
Change-Id: I993e92ecf57996678965945f0ae648b392a77ea2
torage/IMountService.java
06af1fac166a83507450b6bbb1f98a8dde68d92e 06-May-2015 Adam Lesinski <adamlesinski@google.com> Parse uid_cputime proc file

Instead of using the ProcessCpuTracker as the source of truth, we
periodically poll the new uid_cputime kernel module for stats
on all UID cpu time.

TODO: Need to tell the kernel when to stop tracking UIDs (aka on package
uninstall).

Change-Id: Id1d251aae23ab53f7acc0aba3bca5118bc2c194a
atteryStats.java
bb9d9278aa6fe3ba3d4c21b03d3e3da4543a974c 12-May-2015 Amith Yamasani <yamasani@google.com> Merge "Idle timebase" into mnc-dev
06bf824628c118fbd5ad6756913d7fd63a6f4ce5 09-May-2015 Amith Yamasani <yamasani@google.com> Idle timebase

Use screen on time as timebase for idling out apps
that have been inactive.

Store the time when an app was last active as an additional
package state in UsageStats. Compare it to screenOnTime to decide
if it's inactive.

Exclude device idle whitelist from apps that can go inactive.

Bug: 20066058

Change-Id: I709f9f31a9affa7ca6e1ae3e4c5729c5fb221669
DeviceIdleController.aidl
9c8600e1af1af6eb2f57a965bbfe941fbd082786 12-May-2015 Dianne Hackborn <hackbod@google.com> Merge "Implement device idle in power manager." into mnc-dev
8d66b3fbf5d8036e25d64a8472bcd2b6b7892a1a 09-May-2015 Dianne Hackborn <hackbod@google.com> Implement device idle in power manager.

When in device idle mode, we now prevent most apps
from being able to hold partial wake locks. The
device idle controller now pushes its white list of
app uids into the power manager, so it can apply this
policy correctly to only apps that are not whitelisted.

The implementation adds a new "disabled" flag to a wake
lock which is set when we want to apply this policy. When
set, we ensure that we tell battery stats that the wake lock
is not being held and ignore that wake lock when computing
the power state summary.

Also add new SDK APIs to schedule alarms that are allowed
to execute while in idle mode.

Finally add new dumpsys commands to the device idle controller
to completely disable and re-enable its operation, to use
for testing.

Change-Id: I1f16672c6ac06d03bb538f9854d5843db9aa6f27
owerManagerInternal.java
831e01a89e9636baf15d35e7f8ff5e9f290c8b87 11-May-2015 Andres Morales <anmorales@google.com> [partition checking] re-enable bootimage/bootloader, add recovery

Still don't have a consistent fingerprint for Radio, so can't
yet enable.

Change-Id: Ie876dc3f52a2df3c0bd67cc80eb24e22e3dcdbfb
uild.java
b501330a1b6ef14ff512a5727f7a01bc423d6fbb 18-Apr-2015 Fyodor Kupolov <fkupolov@google.com> Disable multi-user background recording

On user switch, kill existing processes of the background user with
android.permission.RECORD_AUDIO permission. Home activity should not be
killed to avoid an expensive restart of the home launcher, when the
user switches back.

Introduced DISALLOW_RECORD_AUDIO user restriction, which is enabled for the
background user, and removed for the foreground user.

Introduced a concept of system controlled user restriction, which can only
be set by the system, rather than device administrator.

Bug: 20346194
Change-Id: Ic942fd565e80d14424230dae612965a8e229c4ef
UserManager.aidl
serManager.java
4f434a04708e7a254afe2e0d362f715229dc15d1 09-May-2015 Fyodor Kupolov <fkupolov@google.com> Merge "Remove restrictions PIN functionality" into mnc-dev
c14b9cf628471f4f3b34d7c91ef193326eff92c6 13-Mar-2015 Richard Uhler <ruhler@google.com> Add 'App Summary' section to meminfo.

The 'App Summary' section is shown by default when other memory
details are shown. This adds a new meminfo flag '-s' to show only the
App Summary section.

Change-Id: I66913673cd3afca873a8b13e45abe071d4c57b82
ebug.java
e960030f75d2b510706c4623d94ad71aba427fb8 07-May-2015 Adam Powell <adamp@google.com> Add Build.VERSION.PREVIEW_SDK_INT

Add a constant to the SDK that apps may use to detect incremental API
changes across prerelease preview builds. APIs newer than the latest
official API level are not guaranteed to be stable or even present
across preview revisions.

Change-Id: I14341e55a3ebc3d872977970b9440c400e71f588
uild.java
ef24909d84db9d5aefb825ee1556089fcdcc1678 06-May-2015 Fyodor Kupolov <fkupolov@google.com> Remove restrictions PIN functionality

Bug: 20852231
Change-Id: I5666ee28ff1341ead9b258bc0852d8ba6d313c5e
UserManager.aidl
serManager.java
d1808401ca3bfd6b6b9a975c1e739b194d18f849 05-May-2015 Prerepa Viswanadham <dham@google.com> Merge changes from topic 'mwd-merge-050415' into mnc-dev

* changes:
Merge commit 'b6f59f4' into master_merge
Merge commit 'f6db0ce' into master_merge
Merge commit '17455a3' into master_merge
Merge commit 'b4d5b32' into master_merge
Merge commit 'a1a2fa7' into master_merge
Merge commit '8dfdb98' into master_merge
Merge commit 'eba66c3' into master_merge
c840681dbd42978745274e7c44d8c37a1f68a746 04-May-2015 Jeff Sharkey <jsharkey@android.com> Avoid NPE when fsUuid is null.

Bug: 20822962
Change-Id: I6340b70dba5a4f94a0f08ddfbda0190db97746f1
torage/StorageManager.java
b9d71a6f89b1183f6389b1774652445a420c6cbf 30-Apr-2015 Svet Ganov <svetoslavganov@google.com> Add body sensors app op - framework base

Change-Id: Idd5cd573fab3405e5b2a6e51d2d9d115650826e9
PermissionController.aidl
9fc943d1a69f2ab0f6d8285b09aef7e344a1fd1a 01-May-2015 Dan Sandler <dsandler@android.com> Merge "Icon: a clean, parcelable place for images." into mnc-dev
b9f7aac3488873677377b36c57338d758098f78e 04-Mar-2015 Dan Sandler <dsandler@android.com> Icon: a clean, parcelable place for images.

Binder APIs which wish to consume Bitmaps *and* drawable
resources can now do so by using Icon, a kind of union type
that accommodates each of these. Icon also accepts byte
arrays holding compressed Bitmaps (PNG, JPEG, etc), which
saves clients the additional memory cost of decoding and
sending full uncompressed bitmaps through Binder interfaces.
Receiving clients can call loadDrawable{,Async} and then
getDrawable to start immediately using the image in an
ImageView or other Drawable-hosting container.

Bug: 19609468
Change-Id: Ic1343711c2ac0b15876b46f0b6008b0108a49470
arcel.java
a320505f3a39e21f29065f0f2a01089363825318 01-May-2015 Jeff Sharkey <jsharkey@android.com> Merge "Move both app code and data together." into mnc-dev
bd0e9e4958acdc6ab5f607bc252fddba877d20f9 01-May-2015 Jeff Sharkey <jsharkey@android.com> Move both app code and data together.

Refactor app movement code into the normal install flow as a new
flavor of InstallArgs. It copies both app code and data during the
copy step, and just updates paths during the rename step.

Measure free space before kicking off a move. Spawn a thread to
derive a hacky progress estimate based on free disk space counting
down.

Remove checkFreeStorage() and getLegacyNativeLibraryPath() which
nobody was calling. Fix deadlocks around package broadcasts, and fix
wrong lock ordering when loading packages.

Bug: 19993667, 20275578, 20370140
Change-Id: I7bbf14c924a724d6ebb8a41a02434750fa3302bc
nvironment.java
fcda22b1fe33370922a53d6562aa15366818bd45 30-Apr-2015 Andreas Gampe <agampe@google.com> Merge "am b6d14a00: resolved conflicts for merge of c29791d5 to mnc-dev-plus-aosp" into mnc-dev
15cbbd5e4b653dc83215183662272d5aa0b51cf5 30-Apr-2015 Jeff Sharkey <jsharkey@android.com> am 21a30889: am 1df4dca2: am 9e98dce6: Merge "Returning to wizard, split move events." into mnc-dev

* commit '21a30889485020bf885ca20e209ed85c6e7d4ea5':
Returning to wizard, split move events.
21a30889485020bf885ca20e209ed85c6e7d4ea5 30-Apr-2015 Jeff Sharkey <jsharkey@android.com> am 1df4dca2: am 9e98dce6: Merge "Returning to wizard, split move events." into mnc-dev

* commit '1df4dca2982acecb526495b30a605d97786df0de':
Returning to wizard, split move events.
50a05454795c93ac483f5cb6819e74cb17be1b5b 29-Apr-2015 Jeff Sharkey <jsharkey@android.com> Returning to wizard, split move events.

Finish wiring up notifications to jump back into in-progress wizard
flow, using moveId as identifier.

Split move events back into separate creation and progress events,
and pass details as bundle to pass extra stuff like UUID. Null
package still means moving primary storage.

Add explicit "volume forgotten" event for PackageManager to clean
up internal state with.

Plumb through internal path reported by vold, and bring back FUSE
bypass rewriting optimization.

Bug: 19993667
Change-Id: I0f43edbba36c58c5cd33550022c54c4eb9f01a48
nvironment.java
ileUtils.java
torage/IMountServiceListener.java
torage/StorageEventListener.java
torage/StorageManager.java
torage/VolumeInfo.java
98322c8e885cf64698b96dfbc5035a9fd3ee92eb 30-Apr-2015 Amith Yamasani <yamasani@google.com> am 278886d5: am 3184b286: am fa4eda44: Merge "Remove network access for idle apps" into mnc-dev

* commit '278886d50a66689529320f9bd735177c068e210d':
Remove network access for idle apps
278886d50a66689529320f9bd735177c068e210d 30-Apr-2015 Amith Yamasani <yamasani@google.com> am 3184b286: am fa4eda44: Merge "Remove network access for idle apps" into mnc-dev

* commit '3184b28648a782a3a037de90bc76f64839b91560':
Remove network access for idle apps
15e47235c055495ec0ccc24768a6746a960d3a61 25-Apr-2015 Amith Yamasani <yamasani@google.com> Remove network access for idle apps

Track apps going in and out of idle in the NetworkPolicyManagerService.
Apply DROP rules in firewall controller if app is to be blacklisted
for network access.

Firewall can now be in whitelist (old) or blacklist mode. When in
blacklist, it allows all by default and we can selectively DENY
some uids.

Track app idle in UsageStats and update periodically.
Track charging/discharging states.

TODO: Check for appidle temporary parole state

Bug: 20066058
Change-Id: Ia65d7544204b3bcb78a517310ef4adcc05aac6fb
NetworkManagementService.aidl
c5cbdfcfe517b55cd4578e5e5b6a682fcfdffbc7 29-Apr-2015 Dianne Hackborn <hackbod@google.com> am 8756f9b3: am 599a4e0e: am 9ac2718e: Merge "Implement user-settable power save whitelist." into mnc-dev

* commit '8756f9b34dd04cabae7487bd1941008a6c98c4c6':
Implement user-settable power save whitelist.
8756f9b34dd04cabae7487bd1941008a6c98c4c6 29-Apr-2015 Dianne Hackborn <hackbod@google.com> am 599a4e0e: am 9ac2718e: Merge "Implement user-settable power save whitelist." into mnc-dev

* commit '599a4e0ea864769e6cd1d04bd766c472b16be4c7':
Implement user-settable power save whitelist.
8baf2b66631b5da67e161ed9dd0a2220fc4c9f29 29-Apr-2015 Svet Ganov <svetoslavganov@google.com> am 0dbaba6c: am 5e47c802: am 56867804: Merge "Respect the record audio app op - framework" into mnc-dev

* commit '0dbaba6c3a7ae0a45e2305a21b0ef5decbde59a4':
Respect the record audio app op - framework
0dbaba6c3a7ae0a45e2305a21b0ef5decbde59a4 29-Apr-2015 Svet Ganov <svetoslavganov@google.com> am 5e47c802: am 56867804: Merge "Respect the record audio app op - framework" into mnc-dev

* commit '5e47c802ef1ac9437b012bc70701ffaf048cb399':
Respect the record audio app op - framework
0b4daca9ba54b7252ea8c159218391380eb00c8a 27-Apr-2015 Dianne Hackborn <hackbod@google.com> Implement user-settable power save whitelist.

The whitelist is now maintained by DeviceIdleController,
which is moving out into its own independent system service.
Network stats now queries it for the whitelist, instead of
collecting that itself.

Also did a few improvements in alarm manager -- made the
code for moving alarms out of the pending list more robust,
and fixed the debug output to always print the contents of
the pending list even if we aren't in a pending state. (That
would have helped me identify the problem much earlier.)

Change-Id: I0f7119d4c553c3af4d77b2f71246fa6e2c13c561
DeviceIdleController.aidl
owerManager.java
5686780404a41901d226cc7ba506c1c0ba284713 29-Apr-2015 Svet Ganov <svetoslavganov@google.com> Merge "Respect the record audio app op - framework" into mnc-dev
d70088d8110163e712b7cdf15f665178aa7cd8b7 29-Apr-2015 Jeff Sharkey <jsharkey@android.com> am 572b1078: am 15c7f90c: am b42d6946: Method to wipe all adoptable disks.

* commit '572b1078962437d7495f395bda0bc8125c833465':
Method to wipe all adoptable disks.
9f1a1bd82ddb4b9ce28b17e62aeb295cc73b17cc 29-Apr-2015 Jeff Sharkey <jsharkey@android.com> am a149ba02: am aa4e35eb: am b36586a7: Split some VolumeInfo state into VolumeRecord.

* commit 'a149ba0255c5983b4e0b23b120b388b9236583e9':
Split some VolumeInfo state into VolumeRecord.
572b1078962437d7495f395bda0bc8125c833465 29-Apr-2015 Jeff Sharkey <jsharkey@android.com> am 15c7f90c: am b42d6946: Method to wipe all adoptable disks.

* commit '15c7f90c8d84ce992659d0ec29bb0e60f1b603d1':
Method to wipe all adoptable disks.
a149ba0255c5983b4e0b23b120b388b9236583e9 29-Apr-2015 Jeff Sharkey <jsharkey@android.com> am aa4e35eb: am b36586a7: Split some VolumeInfo state into VolumeRecord.

* commit 'aa4e35eb6540806958cb37c5c564c5d20dd7a978':
Split some VolumeInfo state into VolumeRecord.
b42d694691e73d094df616fe78627ada7e1239ef 29-Apr-2015 Jeff Sharkey <jsharkey@android.com> Method to wipe all adoptable disks.

Will be used by various classes doing factory reset.

Bug: 9433509
Change-Id: I0701abe00abc2fb9085ce1ffe6e28fb27c91ab51
torage/StorageManager.java
torage/VolumeRecord.java
b36586a7c9b7718f33961406537e27bbd9b16211 27-Apr-2015 Jeff Sharkey <jsharkey@android.com> Split some VolumeInfo state into VolumeRecord.

VolumeRecord is a historical record of a volume that we've seen in
the past. It's now surfaced outside the framework for SystemUI to
drive the notifications that bug users to reinsert missing private
volumes.

Show progress notifications for both storage and package movement
operations. Notify when an empty disk is inserted (no usable volumes)
which launches into the normal format flow.

Add API to forget volumes.

Bug: 20275424, 20275424
Change-Id: I75602c17fdcd4d1f1f62324e1a08c4a33093eefa
torage/IMountService.java
torage/IMountServiceListener.java
torage/StorageEventListener.java
torage/StorageManager.java
torage/VolumeInfo.java
torage/VolumeRecord.java
fa5ecdc4ac6d7a8db2bb9e4a6a60a3189025df30 28-Apr-2015 Svet Ganov <svetoslavganov@google.com> Respect the record audio app op - framework

Change-Id: I5696d2ef22738ccffaf8bd7a0ee68cbc3dea3bf1
PermissionController.aidl
27c39f1adeaf1a653fb41a5af64ee815b8048dd6 27-Apr-2015 Andreas Gampe <agampe@google.com> am b6d14a00: resolved conflicts for merge of c29791d5 to mnc-dev-plus-aosp

* commit 'b6d14a009e43a4d61ae2a4f98f6e3b914148d0a9':
Frameworks/base: Add debug.gencfi property

(cherry picked from commit a5b55a017a984608eacdf414bc1cbcd7615f1c13)
rocess.java
b40b49577c12d14f33abedeba7a1811c7a4eda6d 28-Apr-2015 Narayan Kamath <narayan@google.com> am 7ecc6b72: am 71fa6862: Merge "Fix NPE in Bundle#hasFileDescriptor on null-valued SparseArray"

* commit '7ecc6b721e5da0cc3a52dc14bdfd8d1308db84bc':
Fix NPE in Bundle#hasFileDescriptor on null-valued SparseArray
498bf16ef0b0a6c82ff2d580ce45d5fe4ea82071 28-Apr-2015 Narayan Kamath <narayan@google.com> am 90601a72: am b736868b: Merge "Fix NullPointerException in Bundle#hasFileDescriptors"

* commit '90601a724efea2a15769195b4c452d854607931e':
Fix NullPointerException in Bundle#hasFileDescriptors
7ecc6b721e5da0cc3a52dc14bdfd8d1308db84bc 28-Apr-2015 Narayan Kamath <narayan@google.com> am 71fa6862: Merge "Fix NPE in Bundle#hasFileDescriptor on null-valued SparseArray"

* commit '71fa6862f307796c659fd4e83a7724dd6851b69e':
Fix NPE in Bundle#hasFileDescriptor on null-valued SparseArray
90601a724efea2a15769195b4c452d854607931e 28-Apr-2015 Narayan Kamath <narayan@google.com> am b736868b: Merge "Fix NullPointerException in Bundle#hasFileDescriptors"

* commit 'b736868be917afd5d3ea7e8a8d3d658c4350a239':
Fix NullPointerException in Bundle#hasFileDescriptors
ecd21848731f55978cdac739e6d4460a83449202 28-Apr-2015 Taiju Tsuiki <tzik@google.com> Fix NPE in Bundle#hasFileDescriptor on null-valued SparseArray

Add a null check for each values of SparseArray in Bundle#hasFileDescriptor
to avoid NullPointerException.

Change-Id: I43ecc01f2759ccbe85b902fa118d55cb74ebf38b
undle.java
e58c7858a39d58a222fe8302dc5ffbe4a25c5bf1 22-Apr-2015 Taiju Tsuiki <tzik@google.com> Fix NullPointerException in Bundle#hasFileDescriptors

Add null check for array elements in Bundle#hasFileDescriptors to avoid NPE on
null valued array.

Change-Id: Ic6ef8864ca6add023c7a69ba3c9474b0f6291723
undle.java
7b4b844fdf2665c290bfef4fc3a6ade7b3df71f7 28-Apr-2015 Tor Norbye <tnorbye@google.com> Merge "Annotate some APIs with threading annotations"
b6d14a009e43a4d61ae2a4f98f6e3b914148d0a9 27-Apr-2015 Andreas Gampe <agampe@google.com> resolved conflicts for merge of c29791d5 to mnc-dev-plus-aosp

Change-Id: I0e3dacbdfb68d6bb31800ff2e9969b96e63634b6
0f94fc6f1df4ef03e639190a138d650bc6cf8adf 25-Apr-2015 Andreas Gampe <agampe@google.com> Merge "Frameworks/base: Fix a constructor"
275e3e43f2fba72fa99001cafa2a70e5478fc545 25-Apr-2015 Jeff Sharkey <jsharkey@android.com> Migrate primary external storage.

Wire up through MountService to call down into vold. Watch for
unsolicited events that report progress, including special value "82"
that signals that copy has finished. We use this value to persist
the volumeUuid in case of unexpected reboot, since it indicates the
new volume is ready.

Wire progress updates through existing callback pipeline.

Update the volume mounting code to match against the persisted UUID
when selecting the primary external storage.

Bug: 19993667
Change-Id: Id46957610fb43517bbfbc368f29b7d430664590d
torage/IMountService.java
torage/StorageManager.java
a876b35d485008b690578889d11e69b40d4e7170 25-Apr-2015 Andreas Gampe <agampe@google.com> Frameworks/base: Add debug.gencfi property

Add the debug.gencfi system property that forces generation of
CFI data.

Change-Id: Ida66f8c1567634d05cfdbba1a982be3684e94369
rocess.java
0525677343ee2cc0e4dbca8d30962d0a972166f8 25-Apr-2015 Jens Ole Lauridsen <jlauridsen@google.com> Merge "parcel: Add efficient methods for writing and reading a parcelable."
620b32b316fd4f1bab4eef55ec8802d14a55e7dd 24-Apr-2015 Jeff Sharkey <jsharkey@android.com> Package and storage movement callbacks.

Since package and primary storage movement can take quite awhile,
we want to have SystemUI surface progress and allow the Settings
app to be torn down while the movement proceeds in the background.

Movement requests now return a unique ID that identifies an ongoing
operation, and interested parties can observe ongoing progress and
final status. Internally, progress and status are overloaded so
the values 0-100 are progress, and any values outside that range
are terminal status.

Add explicit constants for special-cased volume UUIDs, and change
the APIs to accept VolumeInfo to reduce confusion. Internally the
UUID value "null" means internal storage, and "primary_physical"
means the current primary physical volume. These values are used
for both package and primary storage movement destinations.

Persist the current primary storage location in MountService
metadata, since it can be moved over time.

Surface disk scanned events with separate volume count so we can
determine when it's partitioned successfully. Also send broadcast
to support TvSettings launching into adoption flow.

Bug: 19993667
Change-Id: Ic8a4034033c3cb3262023dba4a642efc6795af10
torage/DiskInfo.java
torage/IMountService.java
torage/IMountServiceListener.java
torage/StorageEventListener.java
torage/StorageManager.java
torage/VolumeInfo.java
62539a220c6810f66b63060326bd1668f7d6b029 23-Apr-2015 Ben Kwa <kenobi@google.com> Move extension checking code into FileUtils.

Move code for checking file extensions and MIME types from
ExternalStorageProvider into android.os.FileUtils, so it can be used by
other clients (e.g. DownloadsProvider).

BUG=20157955

Change-Id: Ib16a16af723c21fb8d2912c8917dfd68653ea6fa
ileUtils.java
83c6896cbf402623ef7d97f13ed65098df63429f 11-Mar-2015 Tor Norbye <tnorbye@google.com> Annotate some APIs with threading annotations

Change-Id: I24bda29261cdecbe78b2529866624b9313ca5c03
syncTask.java
8dea8744ac12a97533e8de0f8e56a58d630eb489 20-Apr-2015 Jens Ole Lauridsen <jlauridsen@google.com> parcel: Add efficient methods for writing and reading a parcelable.

The documentation used to recommend calling Parcelable.writeToParcel
instead of using the Parcel API for sending Parcelable types.
This leaves the developer to have to deal with null values and makes
it harder to create tools that generate correct efficient code.
I suggest that we add a these 2 methods:
writeTypedObject and createTypedObject
as an alternative.

Change-Id: I85443417909dcb9590d3f0a72f0130a4da4ead38
arcel.java
52dbaa08cdb7866fa51f98e4572f17077c492554 22-Apr-2015 Neil Fuller <nfuller@google.com> Merge "Add checks for types in Parcel / avoid class initialization"
e0ef7e8c60566bad4cbe0140b98e9b1ccef72929 21-Apr-2015 Jeff Sharkey <jsharkey@android.com> Merge "Blend in force adoptable flag when set."
74acbbb2cd367c6e78db7de5118ff9dd56da61d0 21-Apr-2015 Jeff Sharkey <jsharkey@android.com> Blend in force adoptable flag when set.

Bug: 19993667
Change-Id: Ic7f348d171a89e889281b7efb1aa0cbade048975
torage/DiskInfo.java
torage/StorageManager.java
aa861666ed537389e335f586bc84fe8ddb9fb026 21-Apr-2015 Dan Sandler <dsandler@android.com> Fix build.

Change-Id: I0e419fdb36cedba67fc6da7f71134d9728f66150
arcel.java
954863ab9b0e1a859b0442a6a76adef087b05457 21-Apr-2015 Dan Sandler <dsandler@android.com> Merge "Add ashmem stats to Parcels."
44e440cc7e834de7811f005998acb32716835b00 20-Apr-2015 Neil Fuller <nfuller@google.com> Add checks for types in Parcel / avoid class initialization

Make Parcel more stringent to avoid initializing classes
that are not related to Parcelable.

Two new checks:
1) That the class found on the stream implements Parcelable.
2) That the type of the CREATOR field declared on the class
found on the stream actually implements Parcelable.Creator.

For (1) the new check that a class in the stream is actually
Parcelable. This will affect handling of invalid streams or
code that didn't obey the requirements.

For (2) this change could break some apps that had a CREATOR
field in a Parcelable class that was not declared to be
(at least) a Parcelable.Creator: it is no longer sufficient
for the type to implement Parcelable.Creator, the field
must be declared as such.

This change includes doc updates for Parcelable to make
the requirement around the declared type of the CREATOR
field more concrete.

This change also makes the generics slightly tidier/explicit,
annotates code as unchecked where needed and removes some
assumptions that can not be guaranteed with Java's type
system and the current definitions.

For example, there's no guarantee right now that
Parcelable.Creator returns objects that are actually
Parcelable, or that the CREATOR object associated
with a Parcelable will return objects of the surrounding
class. The first we can't do something about without
breaking the public API (due to implementations like
TextUtils.CHAR_SEQUENCE_CREATOR). The second is
currently typically implicitly enforced with an implicit
cast in the (app's) calling code (e.g. callers to
readParcelable() that causes a language-introduced cast
to the type expected). A larger refactoring of Parcel
would be required to ensure that the class that is
produced by Creator is of a type compatible with the
class that declared CREATOR, and is not a goal for this
change.

A fix is included for a class that doesn't implement
Parcelable like it should and would probably fail
check (1).

Bug: 1171613
Change-Id: I31d07516efee29a320e80f4bc4f96aaac628f81c
arcel.java
arcelable.java
e6c04f9417cc4bff0f5f9e72f0d6d66d2aab6e80 19-Apr-2015 Jeff Sharkey <jsharkey@android.com> Broadcast hidden volumes, notification polish.

Send limited broadcast intent when certain volume state changes
occur; the only customer for now is ExternalStorageProvider.

Change notification flow to be less bumpy. Pick USB icon based on
disk type, and avoid using "generic" disk labels.

Bug: 19993667
Change-Id: I263bc9e9aae2ae57eb4d1afe76da686aee5475fb
torage/DiskInfo.java
torage/VolumeInfo.java
355df8f16ae4c428997d88ba86f1ce07e5eca35e 19-Apr-2015 Jeff Sharkey <jsharkey@android.com> Merge "Wire up non-visible volumes, more states."
27de30d31c3e79bc429cb71aed9681c55243f18d 19-Apr-2015 Jeff Sharkey <jsharkey@android.com> Wire up non-visible volumes, more states.

Adds logic to ExternalStorageProvider to scan non-visible volumes,
such as USB OTG devices. We use internal paths when surfacing these
volumes, which also optimizes around the FUSE daemon for public
devices. Also dumps internal state when requested.

VolumeInfo now directly contains DiskInfo, which means it's
snapshotted when sending events, avoiding teardown races. Switch
notifications to use this DiskInfo directly.

Finish wiring up new volume state, including helper methods to make
it readable/writable state clearer. Handle disks and volumes with
spaces in their labels.

Bug: 19993667
Change-Id: I5c75e5658a6415976811477aebafee7694bde0f4
torage/StorageManager.java
torage/VolumeInfo.java
eab852cb34cec4f83662db076d2339dbb97532e9 18-Apr-2015 Amith Yamasani <yamasani@google.com> Merge "Add isSystemUser API"
5760e1786bcc2feac9d1c2c784520aa4d6cf8cb8 18-Apr-2015 Amith Yamasani <yamasani@google.com> Add isSystemUser API

Bug: 20348316
Bug: 19945747
Change-Id: Ibb81f0b2fccec621e26e4543bf9f26ffddfafb15
serManager.java
7e92ef3a1146102806fa0543ef12e09231c55639 18-Apr-2015 Jeff Sharkey <jsharkey@android.com> Volumes know parent disks; unsupported disks.

This is cleaner and more direct than the reverse of having the disk
publish child volume membership. Rename state constants to match
public API. Add state representing bad removal. Make it clear that
volume flags are related to mounting.

Send new unsupported disk event when we finish scanning an entire
disk and have no meaningful volumes.

Splice disk labels into description when known. Only adoptable
slots are directly visible to apps.

Bug: 19993667
Change-Id: I12fda95be0d82781f70c3d85c039749052dc936b
torage/DiskInfo.java
torage/IMountServiceListener.java
torage/StorageEventListener.java
torage/StorageManager.java
torage/VolumeInfo.java
e283d33feda27f54672f90512c25304842cd7eb4 16-Apr-2015 Adam Lesinski <adamlesinski@google.com> Report WiFi and Bluetooth energy collection in checkin stats

Also removed some legacy bluetooth energy collection
that was never invoked.

Also fixed an issue with Wifi scan power estimation.

Bluetooth energy recording is still disabled as strange results
are still reported.

Change-Id: Iafa37eba285fd933ff221116b14af260e904fa4f
atteryStats.java
a985bfb44ce3d7b9ca816438b958411c3052bb8c 17-Apr-2015 Dianne Hackborn <hackbod@google.com> Merge "Some improvements to battery stats data."
0c820db22c83808fdb06c7cb06aaf13ef4b559a3 15-Apr-2015 Dianne Hackborn <hackbod@google.com> Some improvements to battery stats data.

History now records when wifi data activity starts and "ends"
based on the triggers we get from the kernel used to determine
when to collect data. (Basically the same as the current cell
data, but of course when it ends is just an arbitrary x seconds
after the last data traffic.)

Re-arranged the state bits to make room for this data in the
right place and move some other things that make more sense to
have in states2.

Try to improve overflow handling, so when it happens we allow
the various bit states to drop to 0 instead of being stuck
active for an indeterminant amount of time.

Added recording of the points where we decide we want to
retrieve new power stats, giving the reason for doing so.
These are only recorded when full logging is turned on.

Change-Id: Ic5d216960a07e0eb658731cdfba7f49ad3acf67e
atteryStats.java
2052907d0232e6de36fcd81aef65b1b9b5410d22 16-Apr-2015 Hiroshi Yamauchi <yamauchi@google.com> Merge "Unhide Debug.getRuntimeStat()."
bd3af28fdc38cfe741badb86f9daa2fc6122eabc 16-Apr-2015 Jeff Sharkey <jsharkey@android.com> Merge "Candidate volumes for packages, fix symlink."
e2d45be4dae116307f8edd85eaa61134221cb8f9 16-Apr-2015 Jeff Sharkey <jsharkey@android.com> Candidate volumes for packages, fix symlink.

Add API to determine the possible candidate volumes that a package
can be moved to. For example, it currently knows that we need to
move ASEC-based apps through internal storage before migrating them
to a private volume.

Comparator for consistent VolumeInfo ordering when displayed in UI.

Fix native library symlink to be volume UUID aware.

Bug: 19993667
Change-Id: I68d5fac5f0f776ac1c7dd15e7a984bfe2704f3f7
torage/DiskInfo.java
torage/VolumeInfo.java
5ce0430edfc176de29c0cf503975570dfda8111f 10-Apr-2015 Dan Sandler <dsandler@android.com> Add ashmem stats to Parcels.

Developers can now analyze the true RAM cost of the parcels
they create when those parcels contain ashmem blobs (such as
Bitmap data).

Requires change Ifaf115da in frameworks/native.

Bug: 20079551
Change-Id: Ifaf115dabd1a59cdb1b46e2d49c41f64ac107de4
arcel.java
ad83f87bcfc4f3ee4bcc972bad4ddcaaf4e57426 15-Apr-2015 Wale Ogunwale <ogunwale@google.com> Merge "@hide Binder#blockUntilThreadAvailable API"
8d90634aab535aaaf1e7e187fee6f7c0d6957625 15-Apr-2015 Wale Ogunwale <ogunwale@google.com> @hide Binder#blockUntilThreadAvailable API

Bug: 19297165
Change-Id: I15f1139330830b95d7078a5eedd6def794cca6a7
inder.java
cc3c34c9675fdf02da23326b0788e8a587bb399d 15-Apr-2015 Wale Ogunwale <ogunwale@google.com> Merge "Added watchdog monitor for Binder threads availability."
9f09b2d93fb8b15d5905b22f566dc0fa99fd086f 15-Apr-2015 Jeff Sharkey <jsharkey@android.com> Merge "Persist nickname and flags for volumes."
d95d3bfb2b28a4f21f3fdcd740160c9a61eb0363 15-Apr-2015 Jeff Sharkey <jsharkey@android.com> Persist nickname and flags for volumes.

StorageManager now offers to persist a nickname and user flags for
active volumes. This metadata is kept around and spliced into
any future VolumeInfo when the same UUID is present. Current user
flags indicate "initialized" and "snoozed" states to control how
notifications are shown.

Notify listeners when metadata changes, and kick public notification
after a volume is initialized. Make unique PendingIntents when
multiple volumes are active.

Beginnings of plumbing to ask for missing volumes.

Offer explicit accessors for VolumeInfo and DiskInfo to give better
path to documentation and deprecation.

Bug: 19993667
Change-Id: I3d8b68be83f43ba992d21d51cad5b775776d681c
torage/DiskInfo.java
torage/IMountService.java
torage/IMountServiceListener.java
torage/StorageEventListener.java
torage/StorageManager.java
torage/VolumeInfo.java
d7fdd0228e6abdbc079f9cf08b780e4222dfe7c5 14-Apr-2015 Wale Ogunwale <ogunwale@google.com> Added watchdog monitor for Binder threads availability.

The watchdog will trigger if all binder threads in the system_server
are stuck for a long time (1min) preventing the process from
handling additional IPC requests.

Bug: 19297165
Change-Id: I5909a9c230bf23917feaed53f2b54bd50425bf3c
inder.java
50f65404fba47225316cb24e53a8e0a3de340fe0 15-Apr-2015 Hiroshi Yamauchi <yamauchi@google.com> Unhide Debug.getRuntimeStat().

Export runtime stats (currently GC stats) through this method.

Bug: 19825248
Change-Id: I8f859a2bc497e604f4c4f23f6b45b49ac4f99790
ebug.java
c9694247727a9a608ba585915358699274e834fa 15-Apr-2015 Hiroshi Yamauchi <yamauchi@google.com> am 4bb374bb: am d83a598c: am 82992b72: Merge "Fix javadoc error in Debug.getRuntimeStats()."

* commit '4bb374bb359c01055ad1f35a9424a12dcadd2d2b':
Fix javadoc error in Debug.getRuntimeStats().
d83a598c392af8daf9c82f28b5c920955712f528 15-Apr-2015 Hiroshi Yamauchi <yamauchi@google.com> am 82992b72: Merge "Fix javadoc error in Debug.getRuntimeStats()."

* commit '82992b7270842637d1af3dcc7c9ae954bdfa312c':
Fix javadoc error in Debug.getRuntimeStats().
56bd3129138b525b0f2eba52bd4fa140f23e792c 14-Apr-2015 Jeff Sharkey <jsharkey@android.com> Checkpoint of storage notifications.

Rewrite of storage notifications to support multiple disks/volumes,
handling the state of each independently. Update strings to match
spec. Include actions to jump into wizard when adoptable, otherwise
browse or eject.

Move browse intent creation to common place on VolumeInfo. Also add
well-formed extra names. VolumeInfo now carries the parent disk ID
along with it to avoid races when unmounting.

Bug: 19993667
Change-Id: I236ddc7f8112490355f438b828bec8d40c331fdd
torage/DiskInfo.java
torage/StorageManager.java
torage/VolumeInfo.java
d8001676ea1fba9cb4193e809c8d6df9a6cb8e31 15-Apr-2015 Hiroshi Yamauchi <yamauchi@google.com> Fix javadoc error in Debug.getRuntimeStats().

Bug: 19825248
Change-Id: Id7131732d30f01c3edd01c6d4c7c391095ffd054
ebug.java
f8a713309ac8575b64641adbbb3ecb183429d7e1 14-Apr-2015 Hiroshi Yamauchi <yamauchi@google.com> am d9e0abdf: am 04143fdd: am e38ee9df: Merge "Add Debug.getRuntimeStat()."

* commit 'd9e0abdf85ad11a9689d3ded79745fe318e82971':
Add Debug.getRuntimeStat().
04143fdd55196886e5dbf1a1c7fe334115e81a42 14-Apr-2015 Hiroshi Yamauchi <yamauchi@google.com> am e38ee9df: Merge "Add Debug.getRuntimeStat()."

* commit 'e38ee9df26c93415303152ec3f6ed50d847557c8':
Add Debug.getRuntimeStat().
8b5a293d097dc3b3e64e8557d4594d0165ec0813 02-Apr-2015 Hiroshi Yamauchi <yamauchi@google.com> Add Debug.getRuntimeStat().

Export runtime stats (currently GC stats) through this method.

Bug: 19825248
Change-Id: I147a0e9bc6bdfe4dc29d74e44f0af6349c51d9f8
ebug.java
1e38382b542f5cef9957a89692b02c55a3dd351c 10-Apr-2015 Dianne Hackborn <hackbod@google.com> Fixes to idle alarm scheduling, package importance.

- Add new API to ask the activity manager what the current
importance of a particular package name is (along with a few
new useful importance levels).

- Fix my last alarm manager change to actually execute the
alarms we have now decided should run even while we are idle.

Change-Id: I1f14712b4e390770d53b185c96a1b36f6aadd687
atteryStats.java
fb1e9b79782580acabf0dd4dda6a74349fafc978 13-Apr-2015 Jeff Brown <jeffbrown@google.com> Merge "Set initial screen brightness earlier in the boot process."
05ce40e1af0ff8b3c7e183e70d068ce10ef09b87 13-Apr-2015 Fyodor Kupolov <fkupolov@google.com> Merge "Use UserHandle instead of int for public APIs"
385de624aa990266ffbaf70711ac8a330569429e 11-Apr-2015 Fyodor Kupolov <fkupolov@google.com> Use UserHandle instead of int for public APIs

Bug: 20049349
Change-Id: If5671fb47aa9a3cffebff16787daeae9ca7361e8
serManager.java
5d6443bf7c087167e47ea39b13e6af09cb43ad97 11-Apr-2015 Jeff Brown <jeffbrown@google.com> Set initial screen brightness earlier in the boot process.

Previously we had to wait for systemReady before setting the brightness
due to the order in which the display power controller was initialized.
Unfortunately it could take us a rather long time to reach that stage,
particularly after an OTA where the screen would remain at maximum
brightness for minutes while "Optimizing Apps".

This change moves the brightness backlight setting code deeper
into the display manager which has a couple of nice side-benefits
in that it now becomes much easier to coordinate display power mode
changes with display backlight changes. So this change also resolves
some issued with changing the backlight while in DOZE_SUSPEND and
ensuring that backlight changes generally end up being performed
before executing a power mode change except in the case where the
display needs to come out of suspend first. (So now the backlight
will be set before entering DOZE from the ON state.)

Deleted some dead code in LightService which was in the way.

Bug: 19029490
Change-Id: I494b5223e676248daf2ff8be3ec338845977f73c
HardwareService.aidl
59d577a518333f4b4514315b6d10e8dba160abcd 12-Apr-2015 Jeff Sharkey <jsharkey@android.com> Browse mode for DocumentsUI, removed volume state.

The existing management mode is too specific, and requires that
storage backends add queryChildDocumentsForManage(), etc. Instead,
to offer more natural browsing support, add a new BROWSE_ROOT intent.

It behaves mostly like MANAGE_ROOT, except that it doesn't mutate
its Uris with setManageMode(), and it shortcuts straight to VIEW on
clicked documents.

It can be launched like this:

$ adb shell am start -a android.provider.action.BROWSE_ROOT
-d content://com.android.externalstorage.documents/root/8405-1DFB
-c android.intent.category.DEFAULT

Also rename a MetricsConstants to make it clearer, and don't
auto-mount all emulated volumes.

Fix bugs around parceling of DiskInfo/VolumeInfo. Method to resolve
the best description for a VolumeInfo, which might need to fall
back to DiskInfo.

Add back "removed" volume state so we send broadcast when a volume
is destroyed, matching the expected public API behavior.

Bug: 19993667
Change-Id: I13aff32c5e11dfc63da44aee9e93a27f4690a43f
torage/DiskInfo.java
torage/StorageManager.java
torage/VolumeInfo.java
2e29aa5ea7fd361e66751578037ce253009c80e4 11-Apr-2015 Fyodor Kupolov <fkupolov@google.com> Merge "Added getUserCreationTime to query user/profile creation time"
1739076ef9cc940c54cbde3f0576f0dc228f7d68 10-Apr-2015 Adam Lesinski <adamlesinski@google.com> Fix deadlock issue in BatteryStatsHelper.

It was assumed that BatteryStatsHelper could safely call into system services.
Because it is used when dumping information from the BatteryStatsService,
this assumption was incorrect.

Now the BatteryStats object carries around the state of the energy reporting
for Bluetooth and WiFi, so BatteryStatsHelper avoids a query into WiFiManager.

b/19729960

Change-Id: I8745cf6aafeea8e862e34fe63b20056f6ba54b40
atteryStats.java
4870e9d5eba59fb257a87f97f1adf0b734cf48d3 09-Apr-2015 Dianne Hackborn <hackbod@google.com> More work on device idle mode and other power stuff.

Add idle mode support to the alarm manager. Introduce
a new concept of flags associated with alarms to tell
the alarm manager how to treat the alarm -- they allow
everything from the alarm that will bring us out of idle
mode, to alarms that are allowed when idle or should
also bring us out of idle. The standalone boolean is
now also a flag.

(Note there is currently no protection from user space
setting the flags however it wants; I will be working
on that in a follow-up change.)

When in idle mode, the alarm manager pushes all alarms
that shouldn't execute during that time over to a
separate list that is not executed until out of idle.
To help with this, I reworked a bit how Alarm objects
are managed, so that when rebatching or moving between
lists we don't have to allocated new objects but can
just use the same existing instance.

Also tweaked the sync manager to deal with idle mode,
which currently just means doing the same thing as when
low on storage -- turning off sync.

Add new ACTION_CHARGING and ACTION_DISCHARGING broadcasts
that apps can listen for to know when the device is actively
charging and discharging. These are better than the old
POWER_CONNECTED and POWER_DISCONNECTED ones because we only
report charging when we actually see that there is enough
power being provided to charge the battery (and will report
discharging if there is not enough power).

The job controller uses these new actions for scheduling
jobs that want to run while plugged in. Removed the
"stable charging" stuff while doing so, since the new
charging state serves as an even better signal for that.

Introduced two new process states: FOREGROUND_SERVICE and
TOP_SLEEPING. This will allow us to treat foreground services
specially (such as still allowing network access to them for
background music playback) while not mixing them together with
whatever happens to be the top activity while the device is
asleep.

Also some other small cleanup here and there.

Change-Id: I7a9808b578bad6f50deb8e1baf919298512a0d3a
atteryManager.java
atteryStats.java
ff7233e2e3df4965b9ecadabfd78bb991fd1e102 08-Apr-2015 Fyodor Kupolov <fkupolov@google.com> Added getUserCreationTime to query user/profile creation time

Added public api to query creation time of the user or of a managed profile
associated with the calling user.

Bug: 20049349
Change-Id: I7f9263fe434233e6f7d4f165c974cab64ca7107c
UserManager.aidl
serManager.java
e08af19fcc7b13d526f3dfd24d58300947cf1146 26-Mar-2015 Adam Lesinski <adamlesinski@google.com> Adding per UID WiFi power distribution.

Change-Id: I88c539074607d7261f6c5cf1dbae47c3cf53f253
atteryStats.java
80ac603651b56c7f22268fbafb65206f8c03d6ba 07-Apr-2015 Bart Sears <bsears@google.com> Merge "Revert "Adding per UID WiFi power distribution.""
e9b9b73ab598a912de04fbd5501bca5924ce8f71 07-Apr-2015 Bart Sears <bsears@google.com> Revert "Adding per UID WiFi power distribution."

This CL is breaking the clockwork settings app in master. Reverting
until Adam has a chance to investigate.

This reverts commit b943fabfc8ddb581dc2fd7288f87428dcb5d27b7.

Change-Id: Ieb11423c11cf9874a6175dce49843d0e1080c590
atteryStats.java
b2b9ab8354da1485178cd8d8e9d89ac915b3f269 06-Apr-2015 Jeff Sharkey <jsharkey@android.com> Installing packages to expanded storage.

PackageManager now offers to load/unload packages when expanded
volumes are mounted/unmounted. Expanded storage volumes are still
treated as FLAG_EXTERNAL_STORAGE from a public API point-of-view,
but this change starts treating the INSTALL_EXTERNAL flag as
exclusively meaning ASEC containers.

Start tracking the UUID of the volume where a package is installed,
giving us a quick way to find relevant packages. When resolving an
install location, look across all expanded volumes and pick the one
with the largest free space. When upgrading an existing package,
continue preferring the existing volume. PackageInstaller now knows
how to stage on these volumes.

Add new movePackage() variant that accepts a target volume UUID
as destination, it will eventually move data too. Expose this
move command through "pm" command for testing.

Automount expanded volumes when they appear.

Bug: 19993667
Change-Id: I9ca2aa328b9977d34e8b3e153db4bea8b8d6f8e3
torage/StorageManager.java
torage/VolumeInfo.java
b943fabfc8ddb581dc2fd7288f87428dcb5d27b7 26-Mar-2015 Adam Lesinski <adamlesinski@google.com> Adding per UID WiFi power distribution.

Change-Id: Ia3d97e0a1c3352127185c18626d8ba8221c9ab40
atteryStats.java
16c9c249d5f06014442aa5c78254b702f6a034c5 05-Apr-2015 Jeff Sharkey <jsharkey@android.com> Fix up ExternalStorageFormatter.

It's not going to be around for much longer, so just fix enough to
work correctly.

Also teach about new "unmountable" state from vold.

Bug: 19993667
Change-Id: Ib72c3e134092b2a895389dd5b056f4bb8043709a
torage/VolumeInfo.java
7151a9a887051542c6da9f380376f3b306184e5c 05-Apr-2015 Jeff Sharkey <jsharkey@android.com> Storage methods using IDs, update listeners.

Add StorageManager methods that work with Disk and Volume IDs instead
of paths which can change over time. For example, a freshly formatted
volume has a different UUID and mount point, even though it's the same
volume.

Update StorageEventListener to be all one-way calls to avoid blocking
while dispatching events. Add new listener method for Volume-level
state changes. The existing state method will remain focused on the
per-user state reflected by StorageVolume. Switch listeners over to
using the more robust RemoteCallbackList pattern under the hood.

Change external ASEC scanning logic in PackageManagerService to be
driven by listener events, instead of explicit MountService calls.

Bug: 19993667
Change-Id: I57c505de260ff1762a78d70d15f1892f40229210
torage/DiskInfo.java
torage/IMountService.java
torage/IMountServiceListener.java
torage/StorageEventListener.java
torage/StorageManager.java
torage/VolumeInfo.java
1b8ef7e3165ff9aa52a4905dafc8d0f83e7403f9 04-Apr-2015 Jeff Sharkey <jsharkey@android.com> Parcelable objects for Disk/Volume.

Will eventually be used by SystemUI and/or Settings.

Also fix SettingsProvider NPE.

Bug: 19993667, 19909433
Change-Id: Ie326849ac5f43ee35f728d9cc0e332b72292db70
nvironment.java
torage/DiskInfo.aidl
torage/DiskInfo.java
torage/IMountService.java
torage/StorageManager.java
torage/StorageVolume.java
torage/VolumeInfo.aidl
torage/VolumeInfo.java
030980a1fbf0caecfe39722472ae16a8a6987055 02-Apr-2015 Kweku Adams <kwekua@google.com> Fixing issue related to printing out of display state and idle mode in the batterystats checkin.

Change-Id: I533bd53f375bf6d9f818a8e8aa75932986ad779b
atteryStats.java
4887789e44cdb16b042a35e8ec03983213e88ac6 18-Mar-2015 Jeff Sharkey <jsharkey@android.com> Progress towards dynamic storage support.

Storage devices are no longer hard-coded, and instead bubble up from
whatever Disk and VolumeBase that vold uncovered, turning into
sibling Java objects in MountService. We now treat vold events as
the source-of-truth for state, and synchronize our state by asking
vold to "reset" whenever we reconnect.

We've now moved to a model where all storage devices are mounted in
the root mount namespace (user boundaries protected with GIDs), so
we no longer need app-to-vold path translation. This also means that
zygote only needs to bind mount the user-specific /mnt/user/n/ path
onto /storage/self/ to make legacy paths like /sdcard work. This
grealy simplifies a lot of system code.

Many parts of the platform depend on a primary storage device always
being present, so we hack together a stub StorageVolume when vold
doesn't have a volume ready yet.

StorageVolume isn't really a volume anymore; it's the user-specific
view onto a volume, so MountService now filters and builds them
based on the calling user. StorageVolume is now immutable, making
it easier to reason about.

Environment now builds all of its paths dynamically based on active
volumes. Adds utility methods to turn int types and flags into
user-readable strings for debugging purposes.

Remove UMS sharing support for now, since no current devices support
it; MTP is the recommended solution going forward because it offers
better multi-user support.

Simplify unmount logic, since vold will now gladly trigger EJECTING
broadcast and kill stubborn processes.

Bug: 19993667
Change-Id: I9842280e61974c91bae15d764e386969aedcd338
nvironment.java
ileUtils.java
rocess.java
torage/IMountService.java
torage/StorageManager.java
torage/StorageVolume.java
5670d9a2503557ca583eddcab1702800b5016cd9 31-Mar-2015 Olawale Ogunwale <ogunwale@google.com> am 4af5bd7c: Merge "Add ProcessInfoService to activity manager."

* commit '4af5bd7cdaccdba6001a384a81c258f542e74075':
Add ProcessInfoService to activity manager.
e1e1969c96db98545033456111c0da6ff8a0699f 29-Jan-2015 Ruben Brunk <rubenbrunk@google.com> Add ProcessInfoService to activity manager.

- Adds a new AIDL interface for querying process
information from activity manager.

Bug: 19186859
Change-Id: Ic08858f346d6b66e7bfc9da6faa2c6e38d9b2e82
ProcessInfoService.aidl
4b6bd8d36b093d36d9ae80b43e95049c259d7319 19-Mar-2015 Adam Lesinski <adamlesinski@google.com> Retrieve WiFi info outside of BatteryStatsImpl

In order to not deadlock the system, we need to retrieve
WiFi energy info outside of the BatteryStats lock. We do this,
then pass that data down to BatteryStatsImpl to process.

b/19729960

Change-Id: Ib8beba1d5ac81d89144d502c4b688d0a88c5b102
atteryStats.java
73484d8b667c1b2269fcd509a9b8b3c4e2f4c248 25-Mar-2015 Dianne Hackborn <hackbod@google.com> Merge "Battery stats: wakeup alarm tracking, general cleanup."
a223d658306fea5c0a6d30c9850058d5afadb2d1 25-Mar-2015 Bryce Lee <brycelee@google.com> am 3309be5e: am 21b7e6de: am c831b978: Merge "Add isScreenBrightnessBoosted and a broadcast when underlying value changes." into lmp-mr1-modular-dev

* commit '3309be5e7bc782d89adaf4abca5f1f81649c655f':
Add isScreenBrightnessBoosted and a broadcast when underlying value changes.
21b7e6de94b1e4d0bbe2f1a13ac19f491ff466ed 25-Mar-2015 Bryce Lee <brycelee@google.com> am c831b978: Merge "Add isScreenBrightnessBoosted and a broadcast when underlying value changes." into lmp-mr1-modular-dev

* commit 'c831b978238d5ed200ca329c540eff00faba77e3':
Add isScreenBrightnessBoosted and a broadcast when underlying value changes.
c831b978238d5ed200ca329c540eff00faba77e3 25-Mar-2015 Bryce Lee <brycelee@google.com> Merge "Add isScreenBrightnessBoosted and a broadcast when underlying value changes." into lmp-mr1-modular-dev
1e725a7ec9eb79bb447d5171839c453d672a895c 25-Mar-2015 Dianne Hackborn <hackbod@google.com> Battery stats: wakeup alarm tracking, general cleanup.

Instead of just tracking the total number of wakeup alarms
per package, track a count for each tag. Note this is only
wakeup alarms, not non-wakeup alarms.

Also tighten up the code a bit by exposing the actual ArrayMap
container through most of the BatteryStats API, so we can more
efficiently iterate over them (which is all we ever want to do
with those containers at that point).

Finally remove all printing of "since unplugged" stats, as
another step towards completely removing that tracking. If
nobody screams, hopefully soon we can go through and just get
rid of all the extra state we are carrying around that is
tracking that data.

Also note that currently the per-tag wakeup alarm data is
being reported in the human-readable stats, but in the checkin
data it is still being rolled up into a single number. To fix
this, I need to completely rework the pkg entry line to have
separate data for services and wakeup alarms (so have three
types -- pkg for the start of a package, wal for a wakeup
alarm, svc for a service).

Change-Id: I8033acca8742935cfe95511cdea730a405b17cab
atteryStats.java
88e98dfa59e68a860d8c3b462ec03bc0b06d6b5c 23-Mar-2015 Dianne Hackborn <hackbod@google.com> More work on device idle mode.

- There is now an API for people to find out about
its state.
- Moved DeviceIdleController to be closer to the
power manager implementation, since they are
closely related.
- Job scheduler now knows about idle state and doesn't
run jobs while the device is idle.
- Battery stats now keeps track of "idling" vs "idle mode".
Idling is when we consider the device to be idle,
independent of whether we are actually in deep idle mode.
This allows us to keep track of longer-term changes
independently of cycling in and out of idle mode.
- Battery stats also now keeps track of package changes in
its daily stats.
- Small optimization to network policy manager service to
not touch uids that do not have the NETWORK permission.

Change-Id: I0b3304fb3722c78cdfdd0c1eada7369ece7cbcf9
atteryStats.java
PowerManager.aidl
owerManager.java
owerManagerInternal.java
bf2673384cdea54eef2ca1c3e6ee35f5a3ce0e8a 22-Mar-2015 Jeff Sharkey <jsharkey@android.com> Merge "Bring MountService into the SystemService world."
56e629322f0739a04c8ff48915226ecf36a13b44 22-Mar-2015 Jeff Sharkey <jsharkey@android.com> Bring MountService into the SystemService world.

Change-Id: I7f7db49ff373b199f7b81f184a7c62bee682af67
torage/IMountService.java
79ec42e6a3c6a6f6a00ef3ad92221a5ad2149aa9 20-Mar-2015 Dianne Hackborn <hackbod@google.com> Merge "First stab at device idle mode."
70e21e61ac728c3e02d6d54a52b53199b4ebf9df 19-Mar-2015 Andreas Gampe <agampe@google.com> Frameworks/base: Fix a constructor

The constructor of RecoverySystem was accidentally made public
before. @Removed it.

Bug: 19797138
Change-Id: I4c7bba99695a3aeb56da9c126125c3e9075c0181
ecoverySystem.java
8ad2af7e5b28f71e7bdfc1bb097937c6c1d22b18 18-Mar-2015 Dianne Hackborn <hackbod@google.com> First stab at device idle mode.

Introduce a new device idle controller service that
monitor's the device state and determines when to go
in to idle mode. When in idle mode, all we do right
now is turn off network access the same as we do for
power save mode. Many more things should come in the
future -- stopping the alarm manager from scheduling
(most) alarms, telling GmsCore for it to stop doing
stuff, etc.

Battery stats now has state tracking for devie idle
mode, as well as events for the reasons we can come
out of idle mode (significant motion or the device
becoming active). Also added new events noting when
packages are installed.

Renamed the "low power" event in battery stats to
"power save" because the former was just way too
confusing.

Finally, fix buffer size reading kernel wake locks.
(Stupidly, just increasing the buffer size. Ideally
we should try to be smarter and grow our buffer to
fit the data available, but I'll leave that for
another time.)

Change-Id: I0be2062466c83ee9d890c6cf5a228d9cc4090eca
atteryStats.java
bff46bac807ae8a9ebdc22c449a8d4f78711b4d2 05-Mar-2015 Benjamin Franz <bfranz@google.com> Add DO policy to disable safe boot mode.

Bug: 19615843
Change-Id: I14dbe911995ec216c57bd285d6b7b04c9684591a
serManager.java
75f1ba5a815ce13caff1faa8e0df7d4ac483507a 19-Mar-2015 Mathieu Chartier <mathieuc@google.com> am f792e016: am 437ac8f8: Merge "Add JIT late override property"

* commit 'f792e01606b988ab84190217529cca53da8db3f5':
Add JIT late override property
f792e01606b988ab84190217529cca53da8db3f5 19-Mar-2015 Mathieu Chartier <mathieuc@google.com> am 437ac8f8: Merge "Add JIT late override property"

* commit '437ac8f8445b078041171eff56ce7ffbd1cf6766':
Add JIT late override property
7a49028aa2f25364042fae031d95f9283844e645 17-Mar-2015 Mathieu Chartier <mathieuc@google.com> Add JIT late override property

Required for JIT debug property since user builds can't restart
the shell.

Bug: 19735273

Change-Id: I1983852e80010c344b45e0bb459de47c56adfce8
rocess.java
a483a1d85e526202613c9b7354bbced9969cbfe0 17-Mar-2015 Filip Gruszczynski <gruszczy@google.com> am 81c47fc2: am 86318d76: Merge "Option for going home when going to sleep for devices without physical button." into lmp-mr1-modular-dev

* commit '81c47fc23a0a15dddf37d96d28305e8b5e5ca2da':
Option for going home when going to sleep for devices without physical button.
81c47fc23a0a15dddf37d96d28305e8b5e5ca2da 17-Mar-2015 Filip Gruszczynski <gruszczy@google.com> am 86318d76: Merge "Option for going home when going to sleep for devices without physical button." into lmp-mr1-modular-dev

* commit '86318d768a2c5043e1261e9daacf1497d1e4a732':
Option for going home when going to sleep for devices without physical button.
84d6c0fbf6e513d68330234503b809751d0e3564 17-Mar-2015 Bryce Lee <brycelee@google.com> Add isScreenBrightnessBoosted and a broadcast when underlying
value changes.

Bug: 18334219
Change-Id: I20051e97633017711574a063b8061f95c3b616c5
PowerManager.aidl
owerManager.java
3d07c94c393831091958fe6a98811843db8973bd 14-Mar-2015 Dianne Hackborn <hackbod@google.com> Add new voice request for picking from a list.

Also add API for voice interaction service to control
whether the system should hold a wake lock while it is
working with an activity (and actually *do* hold a wake
lock while doing so, duh!).

And while in there, clean up the launching wake lock to
correctly give blame to the app that is launching.

Change-Id: I7cc4d566b80f59fe0a9ac51ae9bbb7188a01f433
arcel.java
872d191e6134b429f833013b8706c7b54ebd0d2a 16-Mar-2015 Andreas Gampe <agampe@google.com> am 8af305f1: am 6878ee57: Merge "Revert "Frameworks/base: Fix a constructor""

* commit '8af305f17ff0d4b84e5a71777de788e9a6ae2780':
Revert "Frameworks/base: Fix a constructor"
8af305f17ff0d4b84e5a71777de788e9a6ae2780 16-Mar-2015 Andreas Gampe <agampe@google.com> am 6878ee57: Merge "Revert "Frameworks/base: Fix a constructor""

* commit '6878ee57b438b063fcc09a19a04fba92e113c1d2':
Revert "Frameworks/base: Fix a constructor"
8c80efeaebeebce9f62a944f08f26823e146f1b7 16-Mar-2015 Andreas Gampe <agampe@google.com> Revert "Frameworks/base: Fix a constructor"

The constructor was public API, doh. Gotta do this differently.

This reverts commit 33c5b2a62f3e62382c41e24c6b527119978816a0.

Change-Id: Iadca87fe6a8866a8bd9d6f2a91578ec0d4c44691
ecoverySystem.java
ebb8922a5baf091b419c3545ef74b1ee2097b21b 16-Mar-2015 Andreas Gampe <agampe@google.com> am 19279ec0: am d61cbf9a: Merge "Frameworks/base: Fix a constructor"

* commit '19279ec04845b2a47b90240c9d47bf8fb5ece464':
Frameworks/base: Fix a constructor
19279ec04845b2a47b90240c9d47bf8fb5ece464 16-Mar-2015 Andreas Gampe <agampe@google.com> am d61cbf9a: Merge "Frameworks/base: Fix a constructor"

* commit 'd61cbf9a08733b45a6aecafffffa60da269a3e1e':
Frameworks/base: Fix a constructor
9779e128d611f13cdb44d31b0509ff43c62a35f6 14-Mar-2015 Filip Gruszczynski <gruszczy@google.com> Option for going home when going to sleep for devices without physical button.

Bug: 19623388
Change-Id: Iec16f83c64646ded12ec97d4b540510b7f9dfd47
owerManager.java
33c5b2a62f3e62382c41e24c6b527119978816a0 15-Mar-2015 Andreas Gampe <agampe@google.com> Frameworks/base: Fix a constructor

This was meant to be a constructor, according to the comment.

Change-Id: Ief49011b392e58b37d9acb4a3f754f1828b256af
ecoverySystem.java
f5fabf1542624005a0e978045bdd117a62ab2593 15-Mar-2015 Vinit Deshpande <vinitd@google.com> am "Separate NAT from forwarding."

merged from goog/mirror-m-wireless-internal-release
35e36db Separate NAT from forwarding.
3e0045e0dffc90834219968aae0c0062ba541c53 13-Mar-2015 Jeff Brown <jeffbrown@google.com> Merge "Avoid rebuilding epoll set when PFD status report is done."
031b7feb0f0f642206d2d1bae502655f1dfe3889 13-Mar-2015 Jeff Brown <jeffbrown@google.com> Merge "Revert "Revert "Update ParcelFileDescriptor to use non-blocking I/O."""
d028356056b17761c4929f34ae9f5e9639e6450d 13-Mar-2015 Nick Kralevich <nnk@google.com> am 870110e0: am 30fcd2aa: Merge "Drop unusable SELinux APIs."

* commit '870110e01af5c4875a9cf7134cee7c6842fd31af':
Drop unusable SELinux APIs.
870110e01af5c4875a9cf7134cee7c6842fd31af 13-Mar-2015 Nick Kralevich <nnk@google.com> am 30fcd2aa: Merge "Drop unusable SELinux APIs."

* commit '30fcd2aa8a87ca97e1d6dbc3203c3a485a56dac9':
Drop unusable SELinux APIs.
16d1cce8ffe632c1283375beb4c82c67c43e13dd 13-Mar-2015 Stephen Smalley <sds@tycho.nsa.gov> Drop unusable SELinux APIs.

setSELinuxEnforce is not allowed by policy.
get/setBooleanValue and getBooleanNames are moot since SELinux
policy booleans are forbidden by CTS.

Change-Id: I512953edd1c38828efce698ae8475603775c32e8
Signed-off-by: Stephen Smalley <sds@tycho.nsa.gov>
ELinux.java
484bc6e5a79af1b7b0a2eb682802006522b274fd 13-Mar-2015 Dianne Hackborn <hackbod@google.com> Merge "More work on collecting assist data."
b2a1985b139b6c8e10fb2cf87bfc4170dd7f2e3c 13-Mar-2015 Jeff Brown <jeffbrown@google.com> Avoid rebuilding epoll set when PFD status report is done.

If we close the PFD status channel before returning, then the Looper
will take care of unregistering it correctly but it will end up
doing extra work to rebuild the epoll set to work around a limitation
of the epoll interface. If we unregister the FD first then this
extra work will not be required so it's slightly more efficient
this way.

Bug: 19715279
Change-Id: I0f7b90f3458adf1894b7561c05fa842fdb87b498
arcelFileDescriptor.java
6fd9f9af2e5301869182f0f4e37858631bb194c2 13-Mar-2015 Jeff Brown <jeffbrown@google.com> Revert "Revert "Update ParcelFileDescriptor to use non-blocking I/O.""

This reverts commit 0f0b7f2fb36450fb5f16e0d50a4ee519edc491af.
arcelFileDescriptor.java
a83ce1dd2ad3a6b71e90ff4845afc1299fe17b9d 11-Mar-2015 Dianne Hackborn <hackbod@google.com> More work on collecting assist data.

Optimize parceling of AssistData (which is now renamed to
AssistStructure) by pooling duplicated class name strings.

Change text associated with a view node to a CharSequence,
so styling information comes along.

Include global text attributes -- size, colors, etc.

Introduce a new AssistContent structure, which allows us
to propagate information about the intent and data the
activity is looking at. This further allows us to propagate
permission grants, so the assistant can dig in to that data.
The default implementation propagates the base intent of an
activity, so if for example you bring up the assistant while
doing a share the assistant itself has the same information
and access that was given to the share activity (so it could
for example share it in another way if it wanted to).

Did some optimization of loading PersistableBundle from xml,
to avoid duplicating hash maps and such.

Changed how we dispatch ACTION_ASSIST to no longer include
the more detailed AssistStructure (and new AssistContent)
data when launching; now the example code that intercepts
that needs to be sure to ask for assist data when it starts
its session. This is more like it will finally be, and allows
us to get to the UI more quickly.

Change-Id: I88420a55761bf48d34ce3013e81bd96a0e087637
aseBundle.java
undle.java
ersistableBundle.java
ooledStringReader.java
ooledStringWriter.java
0f0b7f2fb36450fb5f16e0d50a4ee519edc491af 12-Mar-2015 Jeff Brown <jeffbrown@google.com> Revert "Update ParcelFileDescriptor to use non-blocking I/O."

Bug: 19715279
This reverts commit a34a3bdcbf2e7057d294a8699bbe1be880500f6d.

Change-Id: Ief03dee1c0a2b4d906797a5c279663c17439c347
arcelFileDescriptor.java
a34a3bdcbf2e7057d294a8699bbe1be880500f6d 11-Mar-2015 Jeff Brown <jeffbrown@google.com> Update ParcelFileDescriptor to use non-blocking I/O.

Avoids spinning up a thread just to watch a file descriptor.

Bug: 10349083
Change-Id: I814cb252f075d7a162e1286bbfd1dbec28d17796
arcelFileDescriptor.java
dc3eb4bf91d37ce6b8b000a59625a496b64b36fb 06-Mar-2015 Jeff Brown <jeffbrown@google.com> Add support for non-blocking I/O with Looper.

Bug: 10349083
Change-Id: I4a94b1eac53df57c05103913bd593d92b1e062d7
ooper.java
essageQueue.java
803c2affcbe0a0e0fbb561967e0306bfc97ee197 05-Mar-2015 Jeff Brown <jeffbrown@google.com> Expose some useful methods on Looper and clean up docs.

Change-Id: I40796c3ba07d3c50043da56e835f11fbf9852d30
ooper.java
3d4e7efe37a4b0dfc5807444e8c3b98a28953377 27-Feb-2015 Jeff Brown <jeffbrown@google.com> Move sync barrier methods into MessageQueue.

The methods were previously defined on Looper but on reflection
they actually make more sense on the MessageQueue instead since
the Looper class is primarily concerned with thread lifecycle
rather than the actual messages themselves.

Change-Id: Iff356b94754fc9960774fa17e3eec9604229cba6
ooper.java
essageQueue.java
6c7b41adf9e937a66880b8906389760f3fc82a08 26-Feb-2015 Jeff Brown <jeffbrown@google.com> Rename Looper::isIdling() to isPolling() to resolve confusion.

The loop isn't technically idle at this time, it's just checking
whether any file descriptors have pending events. However it's
still a good signal as to whether the loop is alive.

Added a real isIdle() function.

Bug: 19532373
Change-Id: Idd273e8774f469ccafb00d560818cf279dfd6ba6
ooper.java
essageQueue.java
33dac5593519a3e9eb83550faf0d55f9f0caefdf 09-Mar-2015 Adam Lesinski <adamlesinski@google.com> BatteryStats: Record energy info stats from WiFi and Bluetooth controllers

Surface some of this information in BatteryStatsHelper. If we are given a
total energy from the WiFi controller, we normalize the computed
energy of each app and blame them for a fraction of the real energy.

Change-Id: I64051b600f5d9f6ac4580d56ef0977971eb4be2d
atteryStats.java
442361c500c090c0db03fd4b68a68692fc48a3d7 09-Mar-2015 Dianne Hackborn <hackbod@google.com> Merge "Battery stats issues: fix jiffy handling, print scan counts."
62793e4382b4b0b53d7373d92a62dc4e3ccbde05 09-Mar-2015 Dianne Hackborn <hackbod@google.com> Battery stats issues: fix jiffy handling, print scan counts.

Issue #19431959: Framework incorrectly assumes that kernel
clock_ticks are 10ms

We now retrieve the time of a jiffy from the kernel, and all CPU
times are now handled in milliseconds.

Issue #19571810: Add per-app breakdown of number of WiFi scans
in batterystats checkin data

Added to the report (the information was already being tracked).

Change-Id: If1702d6b9bcf851704129f1811471e68ed576a5d
atteryStats.java
f3ece36535d4999cf2bfd2175a33da6c3cdf298e 11-Feb-2015 Benjamin Franz <bfranz@google.com> Block setting wallpapers from managed profiles.

Silently fail when a managed profile app tries to change the
wallpaper and return default values for getters in that case.
This is implemented through a new AppOp that is controlled by
a new user restriction that will be set during provisioning.

Bug: 18725052
Change-Id: I1601852617e738be86560f054daf3435dd9f5a9f
serManager.java
f045198fb3b008e0341f0b9761e4ef96310e7333 06-Mar-2015 Hiroshi Yamauchi <yamauchi@google.com> Merge "Deprecate things that rely on Debug.startAllocCounting."
172da26d4515f295d938864e47f5ce0309728571 04-Mar-2015 Hiroshi Yamauchi <yamauchi@google.com> Deprecate things that rely on Debug.startAllocCounting.

android.os.Debug.startAllocCounting() is deprecated but other things
that rely on it or do not make sense without it aren't deprecated.

Bug: 8241521
Change-Id: Ib769cb8f4e96f41ed310e17e7345acb2a630a076
ebug.java
8cfb58bd58746127d1a8aa39e34a94f7948738d8 04-Mar-2015 Dianne Hackborn <hackbod@google.com> Fix reading of daily data.

Change-Id: I1f581197c938109cfe5cc21109eea57b4e0434dc
atteryStats.java
7d088428f32a864570d830e45d07a2fe143f6fbd 04-Mar-2015 Dianne Hackborn <hackbod@google.com> Merge "Add new "daily stats" tracking to battery stats."
d4a8af7b6a4dd663cb9c4d993ee41ca82af3c4cd 03-Mar-2015 Dianne Hackborn <hackbod@google.com> Add new "daily stats" tracking to battery stats.

Currently is only used for tracking the daily charge
and discharge rates. We keep up to 10 days of data.

Change-Id: I54e29e35ff60d9277da9e476cdab22f4a6d540bf
atteryStats.java
7b91c55b3ff4857e904a11a0a67fcc86a32868b4 02-Mar-2015 John Spurlock <jspurlock@google.com> Merge "Remove unused imports in frameworks/base."
c6a65dff3d9ed3e75f9f4f5abbf24e3d10bdba8b 02-Mar-2015 Scott Kennedy <skennedy@google.com> Annotate Bundle with @Nullable

Change-Id: Ide572124deea8271ca5c47009acb62603d644363
aseBundle.java
undle.java
ersistableBundle.java
08c7116ab9cd04ad6dd3c04aa1017237e7f409ac 28-Feb-2015 John Spurlock <jspurlock@google.com> Remove unused imports in frameworks/base.

Change-Id: I031443de83f93eb57a98863001826671b18f3b17
undle.java
ommonClock.java
serHandle.java
35e36db1d726f5741e7d8d83d2556e1417642be9 25-Feb-2015 Lorenzo Colitti <lorenzo@google.com> Separate NAT from forwarding.

Bug: 19500693
Change-Id: I39878644e21d51def1c31d1857e815f473ef0938
NetworkManagementService.aidl
6e53931f49f49245deef8622eb8e7dc6ccf04536 25-Feb-2015 Jeff Brown <jeffbrown@google.com> Add Context.getSystemService(Class<?>).

Added an overload of getSystemService() that takes a class instead of a
service name to eliminate the extra cast and provide more type safety.

Cleaned up docs.

Removed the default constructor of BatteryManager which should not have
existed.

Change-Id: I9da46b20641fc83ecd3342560e5b94cb721f289c
atteryManager.java
1fb55286438967f82e305a8449c0528a7cd07fce 24-Feb-2015 Chad Jones <chadj@google.com> resolved conflicts for merge of 57bb5f5c to master

Change-Id: Id5dfe7fc919305658312771a031c0764cef5515c
57bb5f5c8bf1875d2c6843237f518e5a1f9fe597 24-Feb-2015 Joe LaPenna <jlapenna@google.com> am c0c39516: Merge "Hold a wake lock while dozing when display updates are pending." into lmp-mr1-modular-dev

* commit 'c0c395162ff14b83694158663470ad60e065d9a9':
Hold a wake lock while dozing when display updates are pending.
3ef69833fe5733839ada1aa2300f875fc69e6a3c 23-Feb-2015 Narayan Kamath <narayan@google.com> am 836e4413: am c90df076: am 6b492e78: Merge "Clean up Javadocs for UEventObserver"

* commit '836e4413d03d8699fa8817999fe9a1ff65541c29':
Clean up Javadocs for UEventObserver
c90df0768a9be3e40d7c1edfdfb28af7bd25d98e 23-Feb-2015 Narayan Kamath <narayan@google.com> am 6b492e78: Merge "Clean up Javadocs for UEventObserver"

* commit '6b492e78115833f0093d1517483728b574121c07':
Clean up Javadocs for UEventObserver
7014b26c3e1429a6b841696ac7d84589158b0aaf 19-Aug-2014 Valter Strods <valters.strods@gmail.com> Clean up Javadocs for UEventObserver

This commit removes a couple of apostrophes from the word "UEvents" as
the apostrophes would only be needed if something that belongs to the
UEvent was being talked about. Instead, the UEvents are being talked
about themselves - as a bunch.

Change-Id: I6a7908c6b73c0739102b632d2499e0f1e3c2d47f
EventObserver.java
159c205dead88131a58333781420b6f522279fcf 20-Feb-2015 Daniel Rosenberg <drosen@google.com> Disable checking bootimage build fingerprint against vendor

There is currently an issue somewhere regarding these checks on
some devices. Disabling them until those issues are resolved.

Bug: 19058575
Change-Id: Id5ce93c2d4069d3058636b8e12317e200229472b
Signed-off-by: Daniel Rosenberg <drosen@google.com>
uild.java
c2932a1be3e320679034212698aff376d5104dbe 21-Nov-2014 Jeff Brown <jeffbrown@google.com> Hold a wake lock while dozing when display updates are pending.

When the display state is DOZE or DOZE_SUSPEND, assume this means
that the AP may go to sleep at any time so hold a wake lock for
a little while starting when traversals are scheduled to ensure
that the AP remains awake long enough to draw and post the frame
to the display hardware.

This patch is somewhat approximate but should be good enough for
most devices today.

Note that the implementation uses the window manager to ensure that
the window which wants to draw is actually visible before acquiring
the wake lock. There is a cost to this test (a round-trip) which
should not be significant today since we do not expect apps to draw
more than one frame or two while dozing. However, if we wanted to
support animations in general, we might want to optimize it or
eliminate the check altogether (since we can already account for
the app's use of the wake lock).

Another way to implement this functionality might be for the view
hierarchy to listen for the power manager to report that it has entered
a non-interactive power state before deciding to poke draw locks.
This would be somewhat more accurate than watching the display state.
Also, the draw lock timeout logic could be implemented more directly
instead of using an ordinary timed wake lock.

Bug: 18284212
Change-Id: I84b341c678303e8b7481bd1620e634fe82cc4350
owerManager.java
5f83382c40a0785d6fde6b6afb4f33c9ed683fba 20-Feb-2015 Dianne Hackborn <hackbod@google.com> Merge "Add some detailed data as part of battery history."
d1eccbea388fde6a575acb4e797efdd07798344a 18-Feb-2015 Dianne Hackborn <hackbod@google.com> Add some detailed data as part of battery history.

Every time the battery level changes, a new extended
detailed use data structure is written to the history.
This currently only contains delta CPU use since the
last detailed entry (total CPU and to three uids), but
it gives us the infrastructure for adding more detailed
data in the future.

A detail entry for regular history looks like:

Details: cpu=15730u+2307s (u0a57=11312u+502s, 1000=2344u+701s, 0=473u+991s)
/proc/stat=15377 usr, 1797 sys, 197 io, 0 irq, 8 sirq, 23103 idle (42.9% of 6m 44s 820ms)

u is user-space cpu time, s is system/kernel time.

The equivalent check-in output is:

9,h,0,Dcpu=15730:2307/10057:11312:502/1000:2344:701/0:473:991
9,h,0,Dpst=15377,1797,197,0,8,23103

Also add a new "unplug" command to the battery service,
to easily put it into a state where it always considers
the device to be running on battery.

Change-Id: Ic76d966f11e592b9dd671879977bf999ebc11eef
atteryStats.java
3558752ec77f455bbabc86b3178dfb294edf5aff 19-Feb-2015 Nicolas Prevot <nprevot@google.com> Merge "Improve the documentation of DISALLOW_CONFIG_BLUETOOTH."
1c4c442e4540b16aed7acc345aea26ab101efbf8 16-Feb-2015 Nicolas Prevot <nprevot@google.com> Improve the documentation of DISALLOW_CONFIG_BLUETOOTH.

BUG:19315055

Change-Id: Ic92a7b79f8113cad0474d62b0c615a1ada91838b
serManager.java
7478de1e87b3c1941b43eafc2ff9e9a4bafead7e 18-Feb-2015 Adrian Roos <roosa@google.com> Merge "Decouple package manager lock and bitmap decoding"
44bc07d8740058398d4009615681120168673dd8 11-Feb-2015 Adrian Roos <roosa@google.com> Fix typo

Change-Id: If59381862e3332675fd7b929bcee2928ecd0da21
syncTask.java
1bdff9139fd412b36d5d2d783574b6418fcb198a 17-Feb-2015 Adrian Roos <roosa@google.com> Decouple package manager lock and bitmap decoding

Also moves the actual reading and decoding of the
icon into the client process to avoid unnecessary
copies.

Bug: 18474438
Change-Id: I71623ef48c770d752593aa97d69517f6139cc947
UserManager.aidl
serManager.java
667d55cf5a06a0e1bd12997fcd494bec52e58ad9 11-Feb-2015 Andres Morales <anmorales@google.com> Merge "check bootloader and baseband version"
fd282ed2f4649cc77127ab15b9167971abb5f379 07-Feb-2015 Andres Morales <anmorales@google.com> check bootloader and baseband version

Make sure flashed bootloader/radio matches what we
expect statically.

Change-Id: I71dfcc658695ef5542bc968747345efe0936c350
uild.java
3f579c71674784aebb673d4c82abe63e86883546 06-Feb-2015 Filip Gruszczynski <gruszczy@google.com> am 00de5c9f: Merge "Add hidden shutdown method to PowerManager." into lmp-mr1-modular-dev
automerge: 943c09d

* commit '943c09d7204b15aadce041508972517763701cd3':
Add hidden shutdown method to PowerManager.
943c09d7204b15aadce041508972517763701cd3 06-Feb-2015 Filip Gruszczynski <gruszczy@google.com> am 00de5c9f: Merge "Add hidden shutdown method to PowerManager." into lmp-mr1-modular-dev

* commit '00de5c9f04e42045bd0299c06a9cc05187b1dff0':
Add hidden shutdown method to PowerManager.
00de5c9f04e42045bd0299c06a9cc05187b1dff0 06-Feb-2015 Filip Gruszczynski <gruszczy@google.com> Merge "Add hidden shutdown method to PowerManager." into lmp-mr1-modular-dev
14a9f9cac79f0ec49d4aea1b2b377a93beb61fb2 06-Feb-2015 John Spurlock <jspurlock@google.com> am c46b68c7: am 9adf1c54: am ac7b9dd3: am 42d3b66f: am e0852368: Fix a few typos in Parcel.java. automerge: 29fabd8

* commit 'c46b68c7a230847cd5a459d7fec5a5649f5c6d67':
Fix a few typos in Parcel.java.
c46b68c7a230847cd5a459d7fec5a5649f5c6d67 06-Feb-2015 John Spurlock <jspurlock@google.com> am 9adf1c54: am ac7b9dd3: am 42d3b66f: am e0852368: Fix a few typos in Parcel.java.
automerge: 29fabd8

* commit '29fabd8988b95e5ff41167a74dfc67937988b3db':
Fix a few typos in Parcel.java.
9adf1c54226940e9f9065d92b4edd2b232122302 05-Feb-2015 John Spurlock <jspurlock@google.com> am ac7b9dd3: am 42d3b66f: am e0852368: Fix a few typos in Parcel.java.

* commit 'ac7b9dd39f64118a2129c17cdc7b6c93e53e1c42':
Fix a few typos in Parcel.java.
ac7b9dd39f64118a2129c17cdc7b6c93e53e1c42 05-Feb-2015 John Spurlock <jspurlock@google.com> am 42d3b66f: am e0852368: Fix a few typos in Parcel.java.

* commit '42d3b66f48906e35244ffc9a45daae87021fc1a5':
Fix a few typos in Parcel.java.
d05af86e6e361f574afac060811909c8fb83b1a7 04-Feb-2015 Filip Gruszczynski <gruszczy@google.com> Add hidden shutdown method to PowerManager.

Bug: 17420540

We need to be able to shutdown some of wearable devices programatically.
We should be able to do it by connecting to PowerManagerService directly,
but it would be nice to go through the official interface.

Change-Id: Id0cf3b36c03447356fc60fb90cbb2f4b47d8265e
owerManager.java
e08523684d5414117f81debd4eb14bc8eb494c29 04-Feb-2015 John Spurlock <jspurlock@google.com> Fix a few typos in Parcel.java.

Change-Id: Ic1674fc72f08a0f3536b4870a5ce7d14ee6fcc16
arcel.java
a27eef432a4aa94c0eb8a5f73a6435afaac160fe 29-Jan-2015 Ruben Brunk <rubenbrunk@google.com> Add ProcessInfoService to activity manager.

- Adds a new AIDL interface for querying process
information from activity manager.

Bug: 19186859
Change-Id: Ic08858f346d6b66e7bfc9da6faa2c6e38d9b2e82
ProcessInfoService.aidl
8bd95f16235fccbcdcaf102fea56b4c436827527 27-Jan-2015 Dianne Hackborn <hackbod@google.com> Introduce new MNC API version.

Change-Id: Ib40822e82ea389092727dfc1f2f9ada5d04f2e87
uild.java
9662bb703e8ac8a6db49b1429630135e6cfa8312 23-Jan-2015 Andres Morales <anmorales@google.com> Merge "check bootimage version string against system"
7de24ce024e9ae61fe59c966420f33f6a3416054 23-Jan-2015 Andres Morales <anmorales@google.com> check bootimage version string against system

vendor version string may be empty

Bug: 19058575
Change-Id: I99f38183187a44cd200c5ddf8d5ff45ef80199d8
uild.java
2e5716417ee8053ba587da6469c7f20155b87172 22-Jan-2015 Jeff Sharkey <jsharkey@android.com> Public API for StrictMode cleartext detection.

Bug: 18335678
Change-Id: I4c3fd72303ae86f0c85f99ce9bdfd2913296a256
trictMode.java
d6fe549b5027d390985cdf97985103f0ad1209ae 19-Jan-2015 Narayan Kamath <narayan@google.com> am 66bbfb6b: am 17f50f81: am d8beca64: Merge "Remove support for --classpath and make --runtime-init the default."

* commit '66bbfb6b2ccedecba3cbd0843b5a9ae498c68c82':
Remove support for --classpath and make --runtime-init the default.
66bbfb6b2ccedecba3cbd0843b5a9ae498c68c82 19-Jan-2015 Narayan Kamath <narayan@google.com> am 17f50f81: am d8beca64: Merge "Remove support for --classpath and make --runtime-init the default."

* commit '17f50f8119f4a8bdec304cde527f68ddd0b3bc0a':
Remove support for --classpath and make --runtime-init the default.
f48029f00a66e23d7872a00b56fbcf88528ba476 08-Jan-2015 Narayan Kamath <narayan@google.com> Remove support for --classpath and make --runtime-init the default.

--classpath hasn't been properly supported or used for as long as
git history exists, and the non --runtime-init classpath is useless
without it.

Also, forking and exec' a bare dalvikvm instance from the zygote seems
somewhat pointless since we might as well just execute it directly.

Change-Id: Ib07d822d448e7b431d7564381f9cd11735fd1113
rocess.java
d28f0fee61d28ab3369e9d9a27db9dafbb0a6eb6 16-Jan-2015 Narayan Kamath <narayan@google.com> am 2488c0ad: am 27d3e790: am 706f6cf3: Merge "Fix a property name that\'s longer than 31 chars."

* commit '2488c0ad505846f7655a7434006edea4515b02d0':
Fix a property name that's longer than 31 chars.
2488c0ad505846f7655a7434006edea4515b02d0 16-Jan-2015 Narayan Kamath <narayan@google.com> am 27d3e790: am 706f6cf3: Merge "Fix a property name that\'s longer than 31 chars."

* commit '27d3e79031081ab131d5bc4680b80e46a466db53':
Fix a property name that's longer than 31 chars.
e5515772af844b3d83e87e2747cdde4e6e076802 16-Jan-2015 Narayan Kamath <narayan@google.com> Fix a property name that's longer than 31 chars.

The name wasn't chosen without much thought and is intended
to be a temporary fix to keep devices booting while a better
name is decided upon.

bug: 18335678
Change-Id: Ic3451255d870f3395cfbcaa08a7764d93defc350
trictMode.java
0ec9c29fb724eef676d2472f2e15904ff8f52cc0 16-Jan-2015 Jeff Sharkey <jsharkey@android.com> am c2ae6fb9: Merge commit \'605eb79c9519307147fc1795d0eb155638a7f542\' into manualmerge

* commit 'c2ae6fb9ada52e9c990542a6d1cae80085318f31':
Offer to detect non-SSL/TLS network traffic.
c2ae6fb9ada52e9c990542a6d1cae80085318f31 16-Jan-2015 Jeff Sharkey <jsharkey@android.com> Merge commit '605eb79c9519307147fc1795d0eb155638a7f542' into manualmerge

Change-Id: Id6db8cce3a477572478a1d50f624823200848896
605eb79c9519307147fc1795d0eb155638a7f542 04-Nov-2014 Jeff Sharkey <jsharkey@android.com> Offer to detect non-SSL/TLS network traffic.

Introduces new module that provides network-related features for
the StrictMode developer API. The first feature offers to detect
sockets sending data not wrapped inside a layer of SSL/TLS
encryption.

When a developer enables, we ask netd to watch all outgoing traffic
from our UID, and penalize us accordingly if cleartext sockets are
detected. When enabled, netd captures the offending packet and
passes it back to the owning process to aid investigations. When
death penalty is requested, all future traffic on the socket is
blocked, which usually results in a useful stacktrace before the
app is actually killed.

Bug: 18335678
Change-Id: I3adbc974efd8d3766b4b1a23257563bb82d53c29
NetworkManagementService.aidl
trictMode.java
a55e3ed8bf726e61186d5bb2271c3eab597b44d9 15-Jan-2015 Nicolas Prevot <nprevot@google.com> am 97c18827: am 97f1ac01: am a9f9c4b9: Merge "Fix javadoc for UserManager.KEY_RESTRICTIONS_PENDING" into lmp-mr1-dev

* commit '97c1882719437d4b4d8ce99d53ffc400975fdd5e':
Fix javadoc for UserManager.KEY_RESTRICTIONS_PENDING
97c1882719437d4b4d8ce99d53ffc400975fdd5e 15-Jan-2015 Nicolas Prevot <nprevot@google.com> am 97f1ac01: am a9f9c4b9: Merge "Fix javadoc for UserManager.KEY_RESTRICTIONS_PENDING" into lmp-mr1-dev

* commit '97f1ac016b6c116dc2964ba60ffe1e405578756a':
Fix javadoc for UserManager.KEY_RESTRICTIONS_PENDING
a9f9c4b90a8af25974bc74971efeafa521073df2 15-Jan-2015 Nicolas Prevot <nprevot@google.com> Merge "Fix javadoc for UserManager.KEY_RESTRICTIONS_PENDING" into lmp-mr1-dev
e6eb0772d680e8dbb7477a7f972d862a7720d25e 15-Jan-2015 Dianne Hackborn <hackbod@google.com> am fce232b4: am 5a4b4084: am b96a6916: Merge "Fix issue android-app doc, bump battery stats checkin version" into lmp-mr1-dev

* commit 'fce232b4080a12220821568ab670a0cdce4893c5':
Fix issue android-app doc, bump battery stats checkin version
fce232b4080a12220821568ab670a0cdce4893c5 15-Jan-2015 Dianne Hackborn <hackbod@google.com> am 5a4b4084: am b96a6916: Merge "Fix issue android-app doc, bump battery stats checkin version" into lmp-mr1-dev

* commit '5a4b4084215b1efc5308c0c914185599b4d502bf':
Fix issue android-app doc, bump battery stats checkin version
0ee10f6d263e5476d0eb8f8ba82ff5cd522883e9 15-Jan-2015 Dianne Hackborn <hackbod@google.com> Fix issue android-app doc, bump battery stats checkin version

Issue #18983662: API Reivew: clarify Intent docs for URI_ANDROID_APP_SCHEME
Issue #19019830: Bump up battery stats checkin version

Change-Id: I0bd8f32b9d8d5978bd01d421ea2232d20def340a
atteryStats.java
34b064a1406ebb2eb10b5b1f24c845891748c238 14-Jan-2015 Alan Viverette <alanv@google.com> Merge "Clean up TypedArray docs & formatting, remove coercion warnings"
cb3fd69458c69c2ca8f094b7598308c0674f213b 14-Jan-2015 Andres Morales <anmorales@google.com> Check bootimage build fingerprint against vendor

Prevents image mismatch issues

Change-Id: Ibd972cbcedf1000bfe2a8ceed7696a229365dc25
uild.java
fa58f454c177e35f774dec3d2987628fa6359239 13-Jan-2015 Nicolas Prévot <nprevot@google.com> am 6478b4f1: Merge "Clarify docs for user restrictions" into lmp-mr1-dev automerge: 6ab76bd automerge: e5d3ee8

* commit '6478b4f19a527b0ca26485aaac477e4d4c83a5d5':
Clarify docs for user restrictions
b14ed95647ff7c38869550606396d5b784eeece1 13-Jan-2015 Nicolas Prevot <nprevot@google.com> Fix javadoc for UserManager.KEY_RESTRICTIONS_PENDING

BUG:18983720

Change-Id: I3af3354f746cd2981cdb8ba2ed6cc380665249ee
serManager.java
6478b4f19a527b0ca26485aaac477e4d4c83a5d5 13-Jan-2015 Nicolas Prévot <nprevot@google.com> Merge "Clarify docs for user restrictions" into lmp-mr1-dev automerge: 6ab76bd
automerge: e5d3ee8

* commit 'e5d3ee8e4fae72ef554a0e1084e88aea9ed8f020':
Clarify docs for user restrictions
150514bd03312ab0a890cc040019cfbc73eb077c 08-Jan-2015 Amith Yamasani <yamasani@google.com> Clarify docs for user restrictions

Specify which restrictions are not relevant or behave differently
for managed profiles.

Bug: 18768578
Change-Id: Iac1435c5b931cbb889902a9b9e427bc0e0778bf2
serManager.java
adf1c93ff77c996be7952f98b9f554befb089543 08-Jan-2015 Dianne Hackborn <hackbod@google.com> am 3968820f: am cb8d8e10: Merge "Fix issue #18827122: system server crashed on broadcasting..." into lmp-mr1-dev automerge: 16e4324

* commit '3968820fc75e1eac03e54cba45b5a0adc28ee87d':
Fix issue #18827122: system server crashed on broadcasting...
3968820fc75e1eac03e54cba45b5a0adc28ee87d 08-Jan-2015 Dianne Hackborn <hackbod@google.com> am cb8d8e10: Merge "Fix issue #18827122: system server crashed on broadcasting..." into lmp-mr1-dev
automerge: 16e4324

* commit '16e4324dd967d180f77fb25dbeea77229eaf0511':
Fix issue #18827122: system server crashed on broadcasting...
29cd7f19625a2a2a8528469e55f3aa495107b9e7 08-Jan-2015 Dianne Hackborn <hackbod@google.com> Fix issue #18827122: system server crashed on broadcasting...

...an intent with invalid or null package uri

Also tweak battery stats to record in the history when we shut
down, to understand when restarts are due to clean shutdowns or
crashes.

Change-Id: I6443dafc23e356be9f569906f6081152d4f92d2b
atteryStats.java
6bbb47b7d5ac1b49d916679e5f081fe181d8f162 06-Jan-2015 Alan Viverette <alanv@google.com> Clean up TypedArray docs & formatting, remove coercion warnings

Establishes a clear contract regarding when exceptions will be thrown,
when default values will be returned, and when values will be coerced
to a different type.

Since we have both getInt() and getInteger() where one handles coercion
without throwing an exception, it seems reasonable that we should clearly
document the behavior so that developers can make an informed decision.
Once we document the behavior, there is no reason to log warnings on
coercion. If a developer chooses to use a particular API or data type,
that is still correct according to the API.

BUG: 18625719
Change-Id: I385f0b719182d3c0358943e1d6c3d7bedc756eb5
trictMode.java
972c24291e0cef5ebac636d02c3569735e640330 29-Dec-2014 Narayan Kamath <narayan@google.com> am be8053a2: am 5ae63a25: Merge "Fixed grammar in the comment that introduces the Debug.MemoryInfo class."
automerge: 1539c26

* commit '1539c267c7f4678434361b3fac3f56abcbb19f56':
Fixed grammar in the comment that introduces the Debug.MemoryInfo class.
1539c267c7f4678434361b3fac3f56abcbb19f56 29-Dec-2014 Narayan Kamath <narayan@google.com> am be8053a2: am 5ae63a25: Merge "Fixed grammar in the comment that introduces the Debug.MemoryInfo class."

* commit 'be8053a23c0f0b15697176f0cd5e322b30d474e1':
Fixed grammar in the comment that introduces the Debug.MemoryInfo class.
5ae63a258b78c4982a6c4ae984b86bb7b2db1dd4 29-Dec-2014 Narayan Kamath <narayan@google.com> Merge "Fixed grammar in the comment that introduces the Debug.MemoryInfo class."
460797b398d2e71704efb5f1a2b1b3feb4604f8f 11-Dec-2014 Dianne Hackborn <hackbod@google.com> am 84adc43a: Merge "Fix issue #18706195: Improve label names of memory types" into lmp-mr1-dev automerge: 0f050ea
automerge: b56e98d

* commit 'b56e98da8b0486485a57803e5ef9e9333a510641':
Fix issue #18706195: Improve label names of memory types
b56e98da8b0486485a57803e5ef9e9333a510641 11-Dec-2014 Dianne Hackborn <hackbod@google.com> am 84adc43a: Merge "Fix issue #18706195: Improve label names of memory types" into lmp-mr1-dev
automerge: 0f050ea

* commit '0f050ea40204242387eac8f7f5949ea16c143515':
Fix issue #18706195: Improve label names of memory types
1353df5655a551cbbf403d4f1f88b72761fe9e6b 11-Dec-2014 Dianne Hackborn <hackbod@google.com> Fix issue #18706195: Improve label names of memory types

Change-Id: Ia11153300e04aecd56baca9d4316ac362688d594
ebug.java
d2a432087510de7bac019c28ec321989b99a7a6d 10-Dec-2014 Craig Mautner <cmautner@google.com> am 647130ba: am 7a17e0b6: Merge "Add put/getBoolean/Array to PersistableBundle" into lmp-mr1-dev automerge: 8642803

* commit '647130baacf4f0caf077b5bf6ce00c5e1a23107b':
Add put/getBoolean/Array to PersistableBundle
647130baacf4f0caf077b5bf6ce00c5e1a23107b 10-Dec-2014 Craig Mautner <cmautner@google.com> am 7a17e0b6: Merge "Add put/getBoolean/Array to PersistableBundle" into lmp-mr1-dev
automerge: 8642803

* commit '864280369ca45f9a93f4cfe9c1d020e0cbe0d7ed':
Add put/getBoolean/Array to PersistableBundle
7a17e0b601c7f65a2ae0b53d8494ae1722c7a28b 10-Dec-2014 Craig Mautner <cmautner@google.com> Merge "Add put/getBoolean/Array to PersistableBundle" into lmp-mr1-dev
73bdf9761be2abdd85efc5fce165f3fa80fcfa65 10-Dec-2014 Craig Mautner <cmautner@google.com> Add put/getBoolean/Array to PersistableBundle

Due to popular demand the methods putBoolean(), getBoolean(),
putBooleanArray() and getBooleanArray() have been added to
PersistableBundle.

Fixes bug 18390436.

Change-Id: Id133ba902aca774f98529e36ce560e873b88ad5b
aseBundle.java
undle.java
ersistableBundle.java
dde13b3714bb775eea7249b85e13e40fc7d50dc8 10-Dec-2014 Sebastien Hertz <shertz@google.com> am 70acd9b3: resolved conflicts for merge of beb84982 to lmp-mr1-dev-plus-aosp

* commit '70acd9b36a9fc0d212b25d64f4edf0fc582331cf':
Work on issue #18640385: Add procstats test mode
5311088a3ee147cf5398578b8aadb9180816e38c 10-Dec-2014 Mathieu Chartier <mathieuc@google.com> am e417db6d: am 4ec1bdf5: am 52070f81: Merge "Add more -d dalvik details to dumpsys" into lmp-mr1-dev

* commit 'e417db6d574e90566e827bb2a1e5efeaa9c6d42e':
Add more -d dalvik details to dumpsys
70acd9b36a9fc0d212b25d64f4edf0fc582331cf 09-Dec-2014 Sebastien Hertz <shertz@google.com> resolved conflicts for merge of beb84982 to lmp-mr1-dev-plus-aosp

Change-Id: Ib420549f3e20c149c15966dfece980b4f150177d
8b33cf4d34a9ea75e1121ee2f1d829b21f3cb5d6 09-Dec-2014 Dianne Hackborn <hackbod@google.com> Merge "Work on issue #18640385: Add procstats test mode" into lmp-mr1-dev
1a4b5a4f02e7d8ff8ff645377d97e6062d36aeaa 09-Dec-2014 Dianne Hackborn <hackbod@google.com> Work on issue #18640385: Add procstats test mode

You can now do "adb shell dumpsys procstats --start-testing" to
enable high frequency pss sampling.

Also improved the low on RAM mem reporting to separate out RAM
from memtrack, in case the data we are getting from that is bad.

And fixed meminfo --oom to work correctly again.

Change-Id: I7af17eab110a82298bd7b0ce381f8fa5c96c1f6a
ebug.java
e417db6d574e90566e827bb2a1e5efeaa9c6d42e 09-Dec-2014 Mathieu Chartier <mathieuc@google.com> am 4ec1bdf5: am 52070f81: Merge "Add more -d dalvik details to dumpsys" into lmp-mr1-dev

* commit '4ec1bdf52f5c0d48fd13571796644feddc5a815b':
Add more -d dalvik details to dumpsys
063028aa682ca4ceec006c0879c09ad078c9d512 09-Dec-2014 Mathieu Chartier <mathieuc@google.com> Add more -d dalvik details to dumpsys

Added .NonMoving for the non moving space.
Added .Zygote for the zygote.
Added .IndirectRef for indirect reference tables (jobjects).

Example:
Dalvik Details
.Heap 2264 2264 0 0
.LOS 80 80 0 0
.GC 144 144 0 0
.Zygote 331 196 0 2428
.NonMoving 540 540 0 0
.IndirectRef 20 20 0 0

Bug: 18672069
Change-Id: Id14e5bc92ceb15fe7a17d9fb035f18aa2925e50c
(cherry picked from commit 25c5e2b12d5d5d06739e3f70a0da968d97935b46)
ebug.java
9b07ba19908aa5c75d9f8d13e27995f7e10d8e38 09-Dec-2014 Dianne Hackborn <hackbod@google.com> am 0cfdd810: am e52a2ea0: am 0029f0ac: Merge "Fix issue #17323751: Additional items in aggregated battery stats" into lmp-mr1-dev

* commit '0cfdd810ded6f8486a6b0a61044594f58ab5c052':
Fix issue #17323751: Additional items in aggregated battery stats
25c5e2b12d5d5d06739e3f70a0da968d97935b46 09-Dec-2014 Mathieu Chartier <mathieuc@google.com> Add more -d dalvik details to dumpsys

Added .NonMoving for the non moving space.
Added .Zygote for the zygote.
Added .IndirectRef for indirect reference tables (jobjects).

Example:
Dalvik Details
.Heap 2264 2264 0 0
.LOS 80 80 0 0
.GC 144 144 0 0
.Zygote 331 196 0 2428
.NonMoving 540 540 0 0
.IndirectRef 20 20 0 0

Bug: 18672069
Change-Id: Id14e5bc92ceb15fe7a17d9fb035f18aa2925e50c
ebug.java
0cfdd810ded6f8486a6b0a61044594f58ab5c052 08-Dec-2014 Dianne Hackborn <hackbod@google.com> am e52a2ea0: am 0029f0ac: Merge "Fix issue #17323751: Additional items in aggregated battery stats" into lmp-mr1-dev

* commit 'e52a2ea03bd7b8ed2f3680c5198e00fb7ad5c34c':
Fix issue #17323751: Additional items in aggregated battery stats
1e01d16982e6b22ec4c0e2d6dc1e261eb6f92c8e 05-Dec-2014 Dianne Hackborn <hackbod@google.com> Fix issue #17323751: Additional items in aggregated battery stats

- Now aggregate number of times each process has crashed and ANRed.
- Now aggregate total number of connectivity changes.
- Now record connectivity changes in the history.

Crash and ANR counts are new entries at the end of "pr" in checkin.

Connectivity change counts is a new entry at the end of "m" in checkin.

Connectivity changes in the history checkin are Ecn and include the
type of connection and its state.

Change-Id: I0c01186446034cf6c3fb97d45f5e3b5c69a0438a
atteryStats.java
9b489990fedd7ef6461c04ebddb4408bf4ce2fa3 02-Dec-2014 Kweku Adams <kwekua@google.com> am 51de927f: am fa99c345: am d537987b: Changing AUDIO_TURNED_ON constant.

* commit '51de927f5ae9b754c4b3927eb8c109ee4dfc602d':
Changing AUDIO_TURNED_ON constant.
51de927f5ae9b754c4b3927eb8c109ee4dfc602d 02-Dec-2014 Kweku Adams <kwekua@google.com> am fa99c345: am d537987b: Changing AUDIO_TURNED_ON constant.

* commit 'fa99c345c440a37ae0cc74cba6ffd6e88ab9ddb2':
Changing AUDIO_TURNED_ON constant.
d537987b173f6b48f5196a2ae7d445af1a49e2bb 25-Nov-2014 Kweku Adams <kwekua@google.com> Changing AUDIO_TURNED_ON constant.

Changed so that it's set to a different value from WIFI_MULTICAST_ENABLED.

Change-Id: Ied3a2c2bf891f887ec3c7b5249453af4524c099a
atteryStats.java
6e8fea14ccc4c30d56a7f70c9addf3d5b8a229d2 01-Dec-2014 Mike Lockwood <lockwood@google.com> Merge "ParcelFileDescriptor: add support for non-stream socket pairs."
ced0c25a4002464c4eecae02b076650bb5624e7f 20-Nov-2014 Mike Lockwood <lockwood@google.com> ParcelFileDescriptor: add support for non-stream socket pairs.

For example, we can use this to create SOCK_SEQPACKET socket pairs.

Change-Id: Ief5c1dab3cbbe40a756d37e77968b41511297bec
arcelFileDescriptor.java
2a3ca185bf4ab7cab97d3863da647bd934c18665 01-Dec-2014 Jeff Sharkey <jsharkey@android.com> am 45207128: am 05d455ca: am b9ccc047: Merge "Sanitize display names, keep extensions intact." into lmp-mr1-dev

* commit '45207128c5c4f0d1f106af8561bdd156546b0aad':
Sanitize display names, keep extensions intact.
45207128c5c4f0d1f106af8561bdd156546b0aad 01-Dec-2014 Jeff Sharkey <jsharkey@android.com> am 05d455ca: am b9ccc047: Merge "Sanitize display names, keep extensions intact." into lmp-mr1-dev

* commit '05d455ca2b83793a81aac2544c388eec8ac140cd':
Sanitize display names, keep extensions intact.
d198c3269aac50397c4f284feb99c524a1c8434c 01-Dec-2014 Narayan Kamath <narayan@google.com> am 53651b99: am ff45e7df: am 1d184ace: resolved conflicts for merge of 7377998d to lmp-mr1-dev

* commit '53651b9982f53236b767d766e85ec0ce3acc6f0f':
Be increasingly aggressive about fstrim if it isn't being run
53651b9982f53236b767d766e85ec0ce3acc6f0f 01-Dec-2014 Narayan Kamath <narayan@google.com> am ff45e7df: am 1d184ace: resolved conflicts for merge of 7377998d to lmp-mr1-dev

* commit 'ff45e7df8aae0f55ce719de92102c7d522b62048':
Be increasingly aggressive about fstrim if it isn't being run
0cce5355b45d835f95a8918b8b803fd977d374e4 26-Nov-2014 Jeff Sharkey <jsharkey@android.com> Sanitize display names, keep extensions intact.

When creating or renaming files on external storage, sanitize the
requested display names to be valid FAT filenames. This also fixes
a handful of directory traversal bugs.

Also relax logic around generating display names to allow any
extension which maps to the requested MIME type. Tests to verify.

Bug: 18512473, 18504132
Change-Id: I89e632019ee145f53d9d9d2050932f8939a756af
ileUtils.java
1d184acefa7105592134edebf7de4d77843d5791 27-Nov-2014 Narayan Kamath <narayan@google.com> resolved conflicts for merge of 7377998d to lmp-mr1-dev

Change-Id: I21870e241de7d992e97d7b91e0058f85b5a25fbe
a033bb9c73ef5d60e58dd6477c6474abca4626ea 26-Nov-2014 Alan Viverette <alanv@google.com> am ed79856d: am 30c0d5b5: am 8a45126a: Merge "Load SPEAK_PASSWORD from currently active user rather than self" into lmp-mr1-dev

* commit 'ed79856db292044a15fe7d3c3227fb9ec808f070':
Load SPEAK_PASSWORD from currently active user rather than self
ed79856db292044a15fe7d3c3227fb9ec808f070 26-Nov-2014 Alan Viverette <alanv@google.com> am 30c0d5b5: am 8a45126a: Merge "Load SPEAK_PASSWORD from currently active user rather than self" into lmp-mr1-dev

* commit '30c0d5b5eadecf5ba3c9ee536f153adc4c8c8723':
Load SPEAK_PASSWORD from currently active user rather than self
7377998dac67ce8d486e11b9bd2f159fe0ca501d 26-Nov-2014 Narayan Kamath <narayan@google.com> resolved conflicts for merge of a42f7c1d to lmp-sprout-dev

Change-Id: I8e53c9d7e0014b4ffc621c561b737aa2dae5460c
7265abe77a76f848a316640b5da106e882bdbc8a 21-Nov-2014 Christopher Tate <ctate@google.com> Be increasingly aggressive about fstrim if it isn't being run

The current heuristics depend on devices being alive at midnight+ in
order to run periodic background fstrim operations. This unfortunately
means that people who routinely turn their devices off overnight wind
up with their devices *never* running fstrim, and this causes major
performance and disk-life problems.

We now backstop this very-friendly schedule with an increasingly
aggressive one. If the device goes a defined time without a background
fstrim, we then force the fstrim at the next reboot. Once the
device hits the midnight+ idle fstrim request time, then we already
aggressively attempt to fstrim at the first available moment
thereafter, even if it's days/weeks later without a reboot.

'Available' here means charging + device idle. If the device never
becomes idle then we can't do much without rendering an in-use device
inoperable for some number of minutes -- but we have no evidence of
devices ever failing to run fstrim due to this usage pattern.

A new Settings.Global element (type 'long', called
"fstrim_mandatory_interval") is the source of the backstop time. If
this element is zero or negative, no mandatory boot-time fstrim will
ever be performed. If the element is not supplied on a given device,
the default backstop is 3 days.

Adds a new string to display in the upgrading dialog when doing
the fstrim. Note it is too late for this to be localized, but since
this operation can take a long time it is probably better to have
it show *something* even if not localized, rather than just sit there.

Bug 18486922

Change-Id: I5b265ca0a65570fb8931251aa1ac37b530635a2c
torage/IMountService.java
b6e0cb97b7d8e4acf345efc8066f1587408b83e0 25-Nov-2014 Alan Viverette <alanv@google.com> Load SPEAK_PASSWORD from currently active user rather than self

Also fixes a typo in UserHandle's docs.

BUG: 18295054
Change-Id: I1f5384f84062b9ea7dcbebe1e5f64af331028d41
serHandle.java
fd7209773688124636835d63f474d1365ebbee17 22-Nov-2014 Jeff Brown <jeffbrown@google.com> am 4c9041cf: am 1ac13e02: am 682ed6b6: Merge "resolved conflicts for merge of 694c1d2b to lmp-mr1-dev" into lmp-mr1-dev

* commit '4c9041cf837cda13c749b148661d18c3fab0fbd6':
Support keeping activities resumed while dozing.
4c9041cf837cda13c749b148661d18c3fab0fbd6 21-Nov-2014 Jeff Brown <jeffbrown@google.com> am 1ac13e02: am 682ed6b6: Merge "resolved conflicts for merge of 694c1d2b to lmp-mr1-dev" into lmp-mr1-dev

* commit '1ac13e0212a770c918d32e6c645682466113632c':
Support keeping activities resumed while dozing.
9ef94019386183cb88ad090965418ef294bbb79a 21-Nov-2014 Jeff Brown <jeffbrown@google.com> resolved conflicts for merge of 694c1d2b to lmp-mr1-dev

Change-Id: I9a9b724e0fd12aa161ff276540431b9d8e218e2b
fbe96706bb9754f9ea3f6345f32e058a45ad10b4 20-Nov-2014 Jeff Brown <jeffbrown@google.com> Support keeping activities resumed while dozing.

If the lock screen is not shown, then let activities keep running
while dozing. This is important to support ambient mode on watches
since it allows the home app to keep running.

To make this possible, we need to inform the activity manager about
the exact wakefulness state, not just the overall boolean
interactive state.

Bug: 18284212
Change-Id: Ia35c99127ce51ffc178f3a2f51fca67d24061c71
owerManagerInternal.java
343f478241fab49c909b229d6876ff8405e7b0d5 10-Nov-2014 Narayan Kamath <narayan@google.com> Tell installd when boot completes.

installd can then clear the ".booting" marker from the dalvik-cache
(owned by root). This marker is used to detect boot loops.

bug: 18280671

(cherry picked from commit 76a748e62f354c799342044f724e1f4b80121837)

Change-Id: I2364c05837ac04d428b5a34ab1802964a11d2df4
rocess.java
97166e07905b55ab293606cb471dde48a3c89fa0 19-Nov-2014 Nicolas Prevot <nprevot@google.com> am 9b07760d: am 439f17e6: am 76ea69b3: Merge "Fix javadoc in UserManager mentioning application restrictions." into lmp-mr1-dev

* commit '9b07760dbcc19f47b9ee02081b26a9bbc2a40157':
Fix javadoc in UserManager mentioning application restrictions.
9b07760dbcc19f47b9ee02081b26a9bbc2a40157 19-Nov-2014 Nicolas Prevot <nprevot@google.com> am 439f17e6: am 76ea69b3: Merge "Fix javadoc in UserManager mentioning application restrictions." into lmp-mr1-dev

* commit '439f17e622b3aaca2003eeeee2bb423abe6777a9':
Fix javadoc in UserManager mentioning application restrictions.
76ea69b35e45f4b23dfb7b39c6cd790b00576526 19-Nov-2014 Nicolas Prevot <nprevot@google.com> Merge "Fix javadoc in UserManager mentioning application restrictions." into lmp-mr1-dev
47acc8f535107a7ed9fd98afc3b07d79a0f43604 18-Nov-2014 Dianne Hackborn <hackbod@google.com> am dde2ecc1: am 7ff92f42: am 9522055f: Merge "Add time estimates to batterystats dump." into lmp-mr1-dev

* commit 'dde2ecc118a56cd4100a29a1dd1c1697b6f56353':
Add time estimates to batterystats dump.
dde2ecc118a56cd4100a29a1dd1c1697b6f56353 18-Nov-2014 Dianne Hackborn <hackbod@google.com> am 7ff92f42: am 9522055f: Merge "Add time estimates to batterystats dump." into lmp-mr1-dev

* commit '7ff92f420e0f32149bcb80698db6108d9e5aaa53':
Add time estimates to batterystats dump.
ad6a99b32a0d062c967019e5cd9858071a9c6617 18-Nov-2014 Dianne Hackborn <hackbod@google.com> Add time estimates to batterystats dump.

Also fix some java docs.

Change-Id: Ie705f236db6f06e34fa5581c20852e5c8f7c2c17
atteryStats.java
34b6e35ba67a1dd4b770fbf80fe8f3dc1e1e01e3 18-Nov-2014 Nicolas Prevot <nprevot@google.com> Fix javadoc in UserManager mentioning application restrictions.

The java doc of UserManager.KEY_RESTRICTIONS_PENDING contains mistakes.

BUG: 18414603
Change-Id: I9584dad545dcbef1eb2ee0e4f5df117486435e8a
serManager.java
4ae37f905223d1acde912bfcc8d6867c190b2669 17-Nov-2014 Jeff Sharkey <jsharkey@android.com> am 9f722068: am ecfd372a: am 9c76a7b3: Merge changes Id7f9fb53,I897d7ee8 into lmp-mr1-dev

* commit '9f722068483239516d0d31841d1deb189d01b5c1':
Prevent user ID reuse until after reboot.
Warn user when build fingerprints differ.
9f722068483239516d0d31841d1deb189d01b5c1 17-Nov-2014 Jeff Sharkey <jsharkey@android.com> am ecfd372a: am 9c76a7b3: Merge changes Id7f9fb53,I897d7ee8 into lmp-mr1-dev

* commit 'ecfd372ae4fc69c10de83c6499c0c0e4379debc8':
Prevent user ID reuse until after reboot.
Warn user when build fingerprints differ.
9c76a7b3e85ce7056071ac8627c8d675cc5c1599 17-Nov-2014 Jeff Sharkey <jsharkey@android.com> Merge changes Id7f9fb53,I897d7ee8 into lmp-mr1-dev

* changes:
Prevent user ID reuse until after reboot.
Warn user when build fingerprints differ.
43dc963a431a9531d3071ca7192a5fb29320da64 15-Nov-2014 Jeff Brown <jeffbrown@google.com> am eadefb25: am bba231d7: Explicitly bind AsyncTask to main looper. automerge: dfe7d21

* commit 'eadefb255a2bda602ccc043531a231413e8ea839':
Explicitly bind AsyncTask to main looper.
eadefb255a2bda602ccc043531a231413e8ea839 15-Nov-2014 Jeff Brown <jeffbrown@google.com> am bba231d7: Explicitly bind AsyncTask to main looper.
automerge: dfe7d21

* commit 'dfe7d2193cd36099d4395bdee8458c53bf5f1124':
Explicitly bind AsyncTask to main looper.
bba231d7a63b58a8c2b174722ed1487b0f7d8270 15-Nov-2014 Jeff Brown <jeffbrown@google.com> Explicitly bind AsyncTask to main looper.

It seems we were sort of trying to do this by forcing the AsyncTask
static initializer to run at certain times but it was not sufficiently
reliable. In particular, this resulted in occasional system
server crashes.

Bug: 18192406
Change-Id: Ief73210c60e7680fbed6df74e3e58809b7ec7e4d
syncTask.java
2cffc7dafd390f6fe24a9fbb3ef3bc8226f5b385 14-Nov-2014 Jeff Sharkey <jsharkey@android.com> Warn user when build fingerprints differ.

We're now shipping devices with several partitions which may end up
mismatched, causing subtle runtime issues. To help manufacturers and
users catch this case, show wanring when we detected mismatched
fingerprints.

Bug: 18357469
Change-Id: I897d7ee8cbf3b8042d3d7d282afab277d242ed3f
uild.java
0624d611c0f652f1f596ed6e04d3b3a875a77365 14-Nov-2014 Jeff Brown <jeffbrown@google.com> am 36ed36a2: am 4d9bd151: am fef1e0e7: Merge "Make Message.setAsynchronous() public." into lmp-mr1-dev

* commit '36ed36a2ea263439257b3978f6e8c787a3544952':
Make Message.setAsynchronous() public.
36ed36a2ea263439257b3978f6e8c787a3544952 13-Nov-2014 Jeff Brown <jeffbrown@google.com> am 4d9bd151: am fef1e0e7: Merge "Make Message.setAsynchronous() public." into lmp-mr1-dev

* commit '4d9bd1516f7d495ee16bcfeca95a2ab45e33de4c':
Make Message.setAsynchronous() public.
fef1e0e7f0a6a8d3564031ca4ecf14ab070468ff 13-Nov-2014 Jeff Brown <jeffbrown@google.com> Merge "Make Message.setAsynchronous() public." into lmp-mr1-dev
ebb526e976a576ea5a13c61fe34a3d533e367d8e 13-Nov-2014 Dianne Hackborn <hackbod@google.com> am 7437ec8e: am caf3cddd: am fabb70b2: Add reporting of Parcel memory/count.

* commit '7437ec8e1d01de948b1baf33c1f3f73f263a40c7':
Add reporting of Parcel memory/count.
7437ec8e1d01de948b1baf33c1f3f73f263a40c7 13-Nov-2014 Dianne Hackborn <hackbod@google.com> am caf3cddd: am fabb70b2: Add reporting of Parcel memory/count.

* commit 'caf3cddd5bff11a20e72e7df54b826e33d2fe6a9':
Add reporting of Parcel memory/count.
fabb70b2efbd125f74923d19ab12bc8e1371ed1f 11-Nov-2014 Dianne Hackborn <hackbod@google.com> Add reporting of Parcel memory/count.

Also fix issue #18340771: Dumpsys Procstats missing a newline

Change-Id: I0c612187a3fb4d7eeafbf97d373efdef732c477e
arcel.java
ae601bcb8b2105ab344b6f345b16fdccc73aae9c 12-Nov-2014 Narayan Kamath <narayan@google.com> am 3a35bf3f: am 72f9838c: am 222722ee: Merge "Tell installd when boot completes." into lmp-mr1-dev

* commit '3a35bf3f9c109f76ed25ce83afa36b1730c6fd75':
Tell installd when boot completes.
3a35bf3f9c109f76ed25ce83afa36b1730c6fd75 12-Nov-2014 Narayan Kamath <narayan@google.com> am 72f9838c: am 222722ee: Merge "Tell installd when boot completes." into lmp-mr1-dev

* commit '72f9838c99a9cb8d84b8ec4af5372f10eeeb4e94':
Tell installd when boot completes.
222722ee73c38dea5544118df6bd349e630d1c26 12-Nov-2014 Narayan Kamath <narayan@google.com> Merge "Tell installd when boot completes." into lmp-mr1-dev
9840c07667bb0363c93fb8459e6c08f7e30d5df1 12-Nov-2014 Jeff Brown <jeffbrown@google.com> Make Message.setAsynchronous() public.

There are many cases in real world applications where it is desirable
to continue processing messages on the Looper even when most other
messages have been suspended by a synchronization barrier pending
completion of the next drawing frame on vsync.

Internally the framework is able to mark certain messages as being
independent of these higher level synchronization invariants by
flagging them as asynchronous.

This change exposes the existing function and improves on the
documentation so that it is clearer what is meant by asynchronous.

Bug: 18283959
Change-Id: I775e4c95938123a364b21a9f2c39019bf37e1afd
andler.java
essage.java
70170261cbd966501a673ba5548dcab823037cfb 12-Nov-2014 Jeff Brown <jeffbrown@google.com> am 32f7a6d8: Merge "Move device admin max screen off timeout to internal interface." into lmp-mr1-dev automerge: c1275e7
automerge: a473878

* commit 'a4738781584d58e133fc4d0f55d9b7ebcb246ff6':
Move device admin max screen off timeout to internal interface.
a4738781584d58e133fc4d0f55d9b7ebcb246ff6 12-Nov-2014 Jeff Brown <jeffbrown@google.com> am 32f7a6d8: Merge "Move device admin max screen off timeout to internal interface." into lmp-mr1-dev
automerge: c1275e7

* commit 'c1275e72eceb171544aaf517f0cb6e3d1cbd9e08':
Move device admin max screen off timeout to internal interface.
32f7a6d813d7f936c7aa6a1f3abe2f05022a6cd9 11-Nov-2014 Jeff Brown <jeffbrown@google.com> Merge "Move device admin max screen off timeout to internal interface." into lmp-mr1-dev
76a748e62f354c799342044f724e1f4b80121837 10-Nov-2014 Narayan Kamath <narayan@google.com> Tell installd when boot completes.

installd can then clear the ".booting" marker from the dalvik-cache
(owned by root). This marker is used to detect boot loops.

bug: 18280671

Change-Id: I878f1463c7f523892605c17b980a51ac3b6645e2
rocess.java
e4aa7e7793797111927ee0eca8683695098c65a6 10-Nov-2014 Andres Morales <anmorales@google.com> am 9e19c118: am 9467926b: am cc8d56f6: Merge "Unhide DISALLOW_OUTGOING_BEAM" into lmp-mr1-dev

* commit '9e19c118a140518859563ba81b691c6998e5084c':
Unhide DISALLOW_OUTGOING_BEAM
9e19c118a140518859563ba81b691c6998e5084c 10-Nov-2014 Andres Morales <anmorales@google.com> am 9467926b: am cc8d56f6: Merge "Unhide DISALLOW_OUTGOING_BEAM" into lmp-mr1-dev

* commit '9467926bd14a2d7f92fcdfdc7207f84d951f6e1f':
Unhide DISALLOW_OUTGOING_BEAM
cc8d56f66c64a66002b90ed014bbd2fb46125f63 10-Nov-2014 Andres Morales <anmorales@google.com> Merge "Unhide DISALLOW_OUTGOING_BEAM" into lmp-mr1-dev
c4ba2174743c877e28bb28e7ff50bc7a55a660fc 07-Nov-2014 Sander Alewijnse <salewijnse@google.com> am 1b0dbd5c: am 8c1cd7e6: am 3eed90f3: Merge "Added the restrictions pending application restrictions key." into lmp-mr1-dev

* commit '1b0dbd5c954b61e2ee95f87817a1ec0e7d242b20':
Added the restrictions pending application restrictions key.
1b0dbd5c954b61e2ee95f87817a1ec0e7d242b20 07-Nov-2014 Sander Alewijnse <salewijnse@google.com> am 8c1cd7e6: am 3eed90f3: Merge "Added the restrictions pending application restrictions key." into lmp-mr1-dev

* commit '8c1cd7e61f050afd450cb05add633e2fbe0b195a':
Added the restrictions pending application restrictions key.
3eed90f39301089a1c16d6e2c0d027b187567cf0 07-Nov-2014 Sander Alewijnse <salewijnse@google.com> Merge "Added the restrictions pending application restrictions key." into lmp-mr1-dev
53d63dcd04da3c1d5187b29f6530c2dcac9d516c 07-Nov-2014 Sander Alewijnse <salewijnse@google.com> Added the restrictions pending application restrictions key.

Bug:17632522
Change-Id: If5a0d0ea1f479b0584fc0b1cff2a179d296d2904
serManager.java
5ce1cb240b13db98fbdc21e1ef069b5f9cec8d72 07-Nov-2014 Jeff Brown <jeffbrown@google.com> Move device admin max screen off timeout to internal interface.

The setting was previously exposed in IPowerManager but it
doesn't need to be there.

Bug: 17656076
Change-Id: If3ed0cbe89f67c60aa00376be0c54b1bd9656144
PowerManager.aidl
owerManagerInternal.java
cd3b72e6f9a158ac492a4a8b5629d73b495a7d1e 06-Nov-2014 Andres Morales <anmorales@google.com> Unhide DISALLOW_OUTGOING_BEAM

Bug:17387303
Change-Id: If4410bbfd9f82c84886024a091454ee931d9d930
serManager.java
41ca02438700497e9f88e9a589c12003c15929b8 04-Nov-2014 Dianne Hackborn <hackbod@google.com> am 726715e1: am e6fa3f44: am d1f1ea76: Merge "Few more small meminfo improvements." into lmp-mr1-dev

* commit '726715e1138d880656a13014d447a14b3998b132':
Few more small meminfo improvements.
726715e1138d880656a13014d447a14b3998b132 04-Nov-2014 Dianne Hackborn <hackbod@google.com> am e6fa3f44: am d1f1ea76: Merge "Few more small meminfo improvements." into lmp-mr1-dev

* commit 'e6fa3f44652fd9e23ce64f39bb43458fa4abd60a':
Few more small meminfo improvements.
184293076201ec510898f8d505a8fe50458d9604 03-Nov-2014 Dianne Hackborn <hackbod@google.com> Few more small meminfo improvements.

- Add in category for graphics driver, and knowledge about it
for N5 (more devices will be added later).
- Renaming the labels for the .oat and .art files to be just
that, so it is clear what they are talking about.

Change-Id: I663ca8bd2febce41fcdde74b0d3a96ef9325edf1
ebug.java
b3d18f2c2e4dc25ebd4fc220855efd5212b7e596 01-Nov-2014 Jeff Brown <jeffbrown@google.com> am 5177979b: am e333e674: Add a function to boost screen brightness temporarily. automerge: 0ed053e automerge: a80162f

* commit '5177979bbd7459179648057ba00a6399aeb26357':
Add a function to boost screen brightness temporarily.
5177979bbd7459179648057ba00a6399aeb26357 01-Nov-2014 Jeff Brown <jeffbrown@google.com> am e333e674: Add a function to boost screen brightness temporarily. automerge: 0ed053e
automerge: a80162f

* commit 'a80162f0d124e7400e268440c864289a9a7be11e':
Add a function to boost screen brightness temporarily.
0ed053ef537daa11659e70c91974cded7c9bddc6 01-Nov-2014 Jeff Brown <jeffbrown@google.com> am e333e674: Add a function to boost screen brightness temporarily.

* commit 'e333e674a758c39885d4d9779a1aad387fb0e6aa':
Add a function to boost screen brightness temporarily.
e333e674a758c39885d4d9779a1aad387fb0e6aa 28-Oct-2014 Jeff Brown <jeffbrown@google.com> Add a function to boost screen brightness temporarily.

When PowerManager.boostScreenBrightness() is called, the screen
brightness is set to maximum for 5 seconds. This action is
also considered to be user activity.

Bug: 17934954
Change-Id: I1cb4a03a60705c6c1c5cc9ff84b1c5dbd2932fcd
PowerManager.aidl
owerManager.java
3d62297e857c825ded5a395686530c42f2a585e6 31-Oct-2014 Lorenzo Colitti <lorenzo@google.com> am fa186dbd: am f2c90942: am bbb2c5b2: Merge "Add support for running 464xlat on wifi as well." into lmp-mr1-dev

* commit 'fa186dbd3dce56dfc209b7c10a3bc66e7036055d':
Add support for running 464xlat on wifi as well.
fa186dbd3dce56dfc209b7c10a3bc66e7036055d 31-Oct-2014 Lorenzo Colitti <lorenzo@google.com> am f2c90942: am bbb2c5b2: Merge "Add support for running 464xlat on wifi as well." into lmp-mr1-dev

* commit 'f2c9094293529f42b7183f0373b41a5278581a81':
Add support for running 464xlat on wifi as well.
5c313dccad9e95bb863e68b477a06d8499253228 30-Oct-2014 Lorenzo Colitti <lorenzo@google.com> am 2f3dab85: am def4cd4f: Merge "Support more than one clatd at a time." into lmp-mr1-dev automerge: ba69b3f

* commit '2f3dab8585a1a11d2576a8b3164defe95191d513':
Support more than one clatd at a time.
2f3dab8585a1a11d2576a8b3164defe95191d513 30-Oct-2014 Lorenzo Colitti <lorenzo@google.com> am def4cd4f: Merge "Support more than one clatd at a time." into lmp-mr1-dev
automerge: ba69b3f

* commit 'ba69b3f290e6fe4a579841a2dd052ca5803ba863':
Support more than one clatd at a time.
e21a26b3ba78b0238f4ed4a09b43319a2320fbaa 28-Oct-2014 Lorenzo Colitti <lorenzo@google.com> Add support for running 464xlat on wifi as well.

1. Add a command to NetworkManagementService to enable/disable
IPv6 ND offload via netd.
2. Make Nat464Xlat enable offload if clatd successfully comes up
on a wifi network (which means it detected a NAT64), and
correspondingly re-enable offload when the clatd interface
goes down.

This change does not enable clatd on wifi yet, that requires an
extra 2 lines to enable it.

Bug: 12111730
Change-Id: I4318611762a37487c9a84f8c4867ec5aece98be8
NetworkManagementService.aidl
def4cd4fa4aa035a5000e6b196130496430d65ff 29-Oct-2014 Lorenzo Colitti <lorenzo@google.com> Merge "Support more than one clatd at a time." into lmp-mr1-dev
755c0980420d9678185ffbf731c1a689aa6b4ad7 28-Oct-2014 Nicolas Prevot <nprevot@google.com> am ecdc14dc: am ebee8a4d: Merge "Replace minimum with maximum in method description." into lmp-mr1-dev automerge: e86848c

* commit 'ecdc14dc31ba22f2569be5c8850d0d09a1a0c0a4':
Replace minimum with maximum in method description.
ecdc14dc31ba22f2569be5c8850d0d09a1a0c0a4 28-Oct-2014 Nicolas Prevot <nprevot@google.com> am ebee8a4d: Merge "Replace minimum with maximum in method description." into lmp-mr1-dev
automerge: e86848c

* commit 'e86848c258a2fc42e52eb1e3234c1288acd96a3b':
Replace minimum with maximum in method description.
954394653dad05838235f48244a4320893e0f0cf 09-Oct-2014 Lorenzo Colitti <lorenzo@google.com> Support more than one clatd at a time.

1. Make Nat464Xlat a per-network object, one for every network
requiring clat, instead of a ConnectivityService singleton.
2. Make the NetworkManagementService clatd commands take an
interface.
3. When we attempt to start clatd on a network, store its
Nat464Xlat object in the NetworkAgentInfo, so we have an
authoritative way of knowing whether clat is running on a
given network.
4. Rework Nat464Xlat, hopefully simplifying it.

Bug: 12111730
Change-Id: I1fa5508ef020cd1c3d1c7a1f7b06370ac5fc2ae2
NetworkManagementService.aidl
555f1986f106ccf1ec05f6e4118a19f9a6496dc5 01-Sep-2014 Nicolas Prevot <nprevot@google.com> Replace minimum with maximum in method description.

BUG:18152344

Change-Id: If5d09051e8f74addf53018cfd3be214d96efb9e6
onditionVariable.java
515defdebd9c955d023806120d94380e763b7628 18-Oct-2014 Dianne Hackborn <hackbod@google.com> am 019de15c: am 2ea2bf28: am ed512c81: Merge "Fix issue #17948288: Improve accuracy of memory use reporting" into lmp-mr1-dev

* commit '019de15ca23c674b70ae2e94f0fbb82e4a2bab68':
Fix issue #17948288: Improve accuracy of memory use reporting
019de15ca23c674b70ae2e94f0fbb82e4a2bab68 18-Oct-2014 Dianne Hackborn <hackbod@google.com> am 2ea2bf28: am ed512c81: Merge "Fix issue #17948288: Improve accuracy of memory use reporting" into lmp-mr1-dev

* commit '2ea2bf284078eea4871bfa0fb42b56dff3e8bbf3':
Fix issue #17948288: Improve accuracy of memory use reporting
b3af4ec6bae4fe93d40f021e54cbbce10cc7b4c6 18-Oct-2014 Dianne Hackborn <hackbod@google.com> Fix issue #17948288: Improve accuracy of memory use reporting

We now use Mapped to not double-count cached pages that are
mapped in to app processes. Also read in some more values that
count towards kernel RAM use, and count buffers as free rather
than used RAM.

It also looks like the zram accounting is broken -- it was never
collecting the total zram reserved space. I need to figure out
how I was finding that before.

Change-Id: I883f6fc93966774b5c7d2801d1801666dd11ed41
ebug.java
f27e06b65b7d74509dd6f5645f6c44a1e8da74ca 17-Oct-2014 Dianne Hackborn <hackbod@google.com> am eff986af: am 9baa4506: am 3182987e: am bab9b48e: am 52476989: Merge "SDK only: hide the old L API version constant." into lmp-dev

* commit 'eff986af3024c7348d4ff3810872421dfef79ac3':
SDK only: hide the old L API version constant.
eff986af3024c7348d4ff3810872421dfef79ac3 17-Oct-2014 Dianne Hackborn <hackbod@google.com> am 9baa4506: am 3182987e: am bab9b48e: am 52476989: Merge "SDK only: hide the old L API version constant." into lmp-dev

* commit '9baa4506f1e7218d555d37a2057325c68492f080':
SDK only: hide the old L API version constant.
3182987eb8bf93c77d2cde6d3483d39006aea28a 17-Oct-2014 Dianne Hackborn <hackbod@google.com> am bab9b48e: am 52476989: Merge "SDK only: hide the old L API version constant." into lmp-dev

* commit 'bab9b48efcc55ee247c428aa3f53725c25222166':
SDK only: hide the old L API version constant.
6fb1a7f53b00489737941968a587b0cc7745f995 17-Oct-2014 Dianne Hackborn <hackbod@google.com> am aa02bce2: am 56ae0447: am 686a41ef: Merge "Add API level for MR1." into lmp-mr1-dev

* commit 'aa02bce2f4acc57f2536cc41c2f0bf15498f6165':
Add API level for MR1.
aa02bce2f4acc57f2536cc41c2f0bf15498f6165 17-Oct-2014 Dianne Hackborn <hackbod@google.com> am 56ae0447: am 686a41ef: Merge "Add API level for MR1." into lmp-mr1-dev

* commit '56ae044791aa9a800292eb0f6c3852ede91f17c2':
Add API level for MR1.
53cf2d4b9f18e221f0a2b66082644fca1a7650f0 17-Oct-2014 Dianne Hackborn <hackbod@google.com> am 52476989: Merge "SDK only: hide the old L API version constant." into lmp-dev

* commit '52476989b8afc0e96c2218625031ed550b12c79b':
SDK only: hide the old L API version constant.
3b6968876fc9a57f83bf3eaebf524ddd5de05a51 17-Oct-2014 Dianne Hackborn <hackbod@google.com> Add API level for MR1.

Change-Id: I3f2fd6b47f762f9b81afa4c9ae1e19997484b59e
uild.java
d3511d4be120f84cb302456b0992dbc003d4aa80 17-Oct-2014 Dianne Hackborn <hackbod@google.com> SDK only: hide the old L API version constant.

Also update the LOLLIPOP version constant to describe more things
that change when you target it.

Change-Id: I15e2c26a0f997ff2bfc8dd5076c827da7f42ee66
uild.java
bc460b9c03106fc8e14b5c0a8ed77855a55cb351 15-Oct-2014 Amith Yamasani <yamasani@google.com> am d060a29e: am 6c0659e0: am 20791338: am 4bf0356e: am 15a5f82f: Merge "Hide DISALLOW_OUTGOING_BEAM API" into lmp-dev

* commit 'd060a29e52fc73be53d643f74a9335652bd818ca':
Hide DISALLOW_OUTGOING_BEAM API
d060a29e52fc73be53d643f74a9335652bd818ca 15-Oct-2014 Amith Yamasani <yamasani@google.com> am 6c0659e0: am 20791338: am 4bf0356e: am 15a5f82f: Merge "Hide DISALLOW_OUTGOING_BEAM API" into lmp-dev

* commit '6c0659e0eba77972f1ba8a2ad2a51ea7b2c76b9a':
Hide DISALLOW_OUTGOING_BEAM API
d5a628d757c4a914be54b5e450784ffaa1f9c958 14-Oct-2014 Amith Yamasani <yamasani@google.com> am 15a5f82f: Merge "Hide DISALLOW_OUTGOING_BEAM API" into lmp-dev

* commit '15a5f82f9b6b389614b1df78749bd627d97d5417':
Hide DISALLOW_OUTGOING_BEAM API
6d93491f506312e0686d86f278eac6f48a364242 14-Oct-2014 Amith Yamasani <yamasani@google.com> Hide DISALLOW_OUTGOING_BEAM API

This is not fully functional in managed profiles, so it is being removed for L.

Bug: 17973040
Change-Id: If660e5e565076cdf61649e9f5ca12877425e9df3
serManager.java
cb5f5689fb86983089ec821353eaa96e691d8d4b 11-Oct-2014 Dianne Hackborn <hackbod@google.com> am 5457d5cc: am 8f6928f1: am e61e68d0: am 18d2d51e: am 7ea69880: Merge "Improve some docs, fix some debugging." into lmp-dev

* commit '5457d5ccb6efdc138523cbcba7aa76ddb67f19e4':
Improve some docs, fix some debugging.
5457d5ccb6efdc138523cbcba7aa76ddb67f19e4 10-Oct-2014 Dianne Hackborn <hackbod@google.com> am 8f6928f1: am e61e68d0: am 18d2d51e: am 7ea69880: Merge "Improve some docs, fix some debugging." into lmp-dev

* commit '8f6928f1399620ce432b82d046912e2030d6511c':
Improve some docs, fix some debugging.
4ee6658e1971a30486735959e95d35402210dd57 10-Oct-2014 Dianne Hackborn <hackbod@google.com> am 7ea69880: Merge "Improve some docs, fix some debugging." into lmp-dev

* commit '7ea69880bdbf2c51140460dcfd063dc015c3ce26':
Improve some docs, fix some debugging.
d95f1c991cbd7c297c0bb34a3de99ff2efd10b27 10-Oct-2014 Dianne Hackborn <hackbod@google.com> am 75a6e82b: am 36ae48a8: am d83e9e42: am 0761b1b5: am 89b19695: Merge "Put in real "code" (aka marketing) name." into lmp-dev

* commit '75a6e82bcc625025c5f48dc6c33d0dd469e9ca61':
Put in real "code" (aka marketing) name.
75a6e82bcc625025c5f48dc6c33d0dd469e9ca61 10-Oct-2014 Dianne Hackborn <hackbod@google.com> am 36ae48a8: am d83e9e42: am 0761b1b5: am 89b19695: Merge "Put in real "code" (aka marketing) name." into lmp-dev

* commit '36ae48a850bade17d485cb49dd40a3f11f667ad4':
Put in real "code" (aka marketing) name.
ab4a81b3c625e33d04ae8070fcce6b6baee6522c 10-Oct-2014 Dianne Hackborn <hackbod@google.com> Improve some docs, fix some debugging.

- Add docs to Binder, Messenger, ResultReceier to explain their
relation (or lack there-of) to process lifecycle.
- Clarify some aspects of process lifecycle for services.
- Fix help text of am command.
- Fix per-package dumping of battery stats to not include history.
- Fix per-package dumping of proc stats to only include aggregated
and current stats and fix some formatting.
- Fix per-process dumping of meminfo to have an option to interpret
the input as a package, so including all processes that are
running code of that package.
- Fix top-level per-package debug output to correctly include all
of these improvements and give them a little more time (10s) to
complete for timing out.

Change-Id: I2a04c0f862bd47b08329443d722345a13ad9b6e2
inder.java
essenger.java
esultReceiver.java
529b78941c20c2b45312eeedbd509d0ded4f7323 09-Oct-2014 Dianne Hackborn <hackbod@google.com> am 89b19695: Merge "Put in real "code" (aka marketing) name." into lmp-dev

* commit '89b196958fee07475765bd3c458098464ba16f2e':
Put in real "code" (aka marketing) name.
89b196958fee07475765bd3c458098464ba16f2e 08-Oct-2014 Dianne Hackborn <hackbod@google.com> Merge "Put in real "code" (aka marketing) name." into lmp-dev
955d8d69ea6caabce1461dc25b339b9bf9dc61a6 08-Oct-2014 Dianne Hackborn <hackbod@google.com> Put in real "code" (aka marketing) name.

Change-Id: Idb3976edfae37293ed75cb5b869b4b42d8042bbe
uild.java
essage.java
serManager.java
53322b9f7b2e5d379250251c978a5de885bf2a72 07-Oct-2014 Amith Yamasani <yamasani@google.com> am 41bb3455: Merge "Set the default user restrictions to disallow calling and sms" into lmp-dev

* commit '41bb3455e44dc8fde4569bbfd56fa20c6da8a27d':
Set the default user restrictions to disallow calling and sms
a7081321d8bf30e121f92ce5f1c6366617f0f85a 07-Oct-2014 Amith Yamasani <yamasani@google.com> am 34a2a6ca: am 42f611f2: am 4797554a: am b86671f4: am 41bb3455: Merge "Set the default user restrictions to disallow calling and sms" into lmp-dev

* commit '34a2a6ca933c3583fda5a04bf26f9951aa139e79':
Set the default user restrictions to disallow calling and sms
34a2a6ca933c3583fda5a04bf26f9951aa139e79 07-Oct-2014 Amith Yamasani <yamasani@google.com> am 42f611f2: am 4797554a: am b86671f4: am 41bb3455: Merge "Set the default user restrictions to disallow calling and sms" into lmp-dev

* commit '42f611f2f5cbc68a6aaac18ed9e3c62ebc765901':
Set the default user restrictions to disallow calling and sms
41bb3455e44dc8fde4569bbfd56fa20c6da8a27d 07-Oct-2014 Amith Yamasani <yamasani@google.com> Merge "Set the default user restrictions to disallow calling and sms" into lmp-dev
aa6634eaca707f7cbf5f5a1d75b90d8d775d254b 06-Oct-2014 Amith Yamasani <yamasani@google.com> Set the default user restrictions to disallow calling and sms

When creating a user via the UI, disallow phone calls and SMS by
default. Primary user must explicitly enable it via Settings.

Bug: 17832802
Change-Id: I18cad4be8493ddc8890b5d90da2df256cb3f1ec9
serManager.java
0816ecd0af0076604b5d7294d156b2541536b77c 06-Oct-2014 John Spurlock <jspurlock@google.com> am 29ab5f7d: am 42730c93: am b6f5cb3e: am 81b96aad: am 78cc93ec: Merge "Fix NPE in StrictMode handling." into lmp-dev

* commit '29ab5f7dc0e9ba2ef3db2993d9ac5f9a48e9df12':
Fix NPE in StrictMode handling.
29ab5f7dc0e9ba2ef3db2993d9ac5f9a48e9df12 06-Oct-2014 John Spurlock <jspurlock@google.com> am 42730c93: am b6f5cb3e: am 81b96aad: am 78cc93ec: Merge "Fix NPE in StrictMode handling." into lmp-dev

* commit '42730c93466d2ff533b42f56b4dd0080aad40d59':
Fix NPE in StrictMode handling.
b76efc62dee9536052d6e2b3abc7738d72778ce8 06-Oct-2014 John Spurlock <jspurlock@google.com> am 78cc93ec: Merge "Fix NPE in StrictMode handling." into lmp-dev

* commit '78cc93ec80f5dcc487db697a1f9a545890745847':
Fix NPE in StrictMode handling.
9bb3dacbf9da4dae2cc0585c2e382c8b29476d32 06-Oct-2014 John Spurlock <jspurlock@google.com> Fix NPE in StrictMode handling.

Bug:17875462
Change-Id: I0bf31abe2d07335addd57976aca110565bb63cc4
trictMode.java
c7d1467a8bcf6e6ec52f2cd43071f6557ca5e3d7 03-Oct-2014 Dianne Hackborn <hackbod@google.com> am cba999c1: am e2776f02: am 6b1cf642: am 5ebb0e6a: am d867b7c7: Fix issue #17783882: AUPT: NPE in Videos: Attempt to invoke virtual method...

* commit 'cba999c164d206c1fb2b7f9f2bf78e8ed616c67d':
Fix issue #17783882: AUPT: NPE in Videos: Attempt to invoke virtual method...
cba999c164d206c1fb2b7f9f2bf78e8ed616c67d 03-Oct-2014 Dianne Hackborn <hackbod@google.com> am e2776f02: am 6b1cf642: am 5ebb0e6a: am d867b7c7: Fix issue #17783882: AUPT: NPE in Videos: Attempt to invoke virtual method...

* commit 'e2776f02bf4fd58af88a27261226e9ce124aa6b8':
Fix issue #17783882: AUPT: NPE in Videos: Attempt to invoke virtual method...
d2ece7cb0068ed84fafbaa940f09b244f7e67f1f 03-Oct-2014 Dianne Hackborn <hackbod@google.com> am d867b7c7: Fix issue #17783882: AUPT: NPE in Videos: Attempt to invoke virtual method...

* commit 'd867b7c7a2c8c151c01b57597b6612ca5355a51a':
Fix issue #17783882: AUPT: NPE in Videos: Attempt to invoke virtual method...
d867b7c7a2c8c151c01b57597b6612ca5355a51a 03-Oct-2014 Dianne Hackborn <hackbod@google.com> Fix issue #17783882: AUPT: NPE in Videos: Attempt to invoke virtual method...

...'java.lang.String java.lang.String.substring(int)' on a null object reference

Change-Id: I4a78653174da398a4edd23b2bc099598548b79c2
trictMode.java
09f25547d94e8437dbf8a594ecf6c8623d2ed3d9 03-Oct-2014 Dianne Hackborn <hackbod@google.com> am 4bcfcc69: am b49a19b9: am 8aa21f20: am 12dd9943: am 7a73f2c5: Merge "SDK only: Update docs to reflect current implementation." into lmp-dev

* commit '4bcfcc69416831b199fb866f56725c88cdcee03c':
SDK only: Update docs to reflect current implementation.
bb409199fd688655bccb9b76dfe07bfea86d7d50 03-Oct-2014 Dianne Hackborn <hackbod@google.com> am 7a73f2c5: Merge "SDK only: Update docs to reflect current implementation." into lmp-dev

* commit '7a73f2c5aab16e2d4c21fcce9aa8173e87ecfb4f':
SDK only: Update docs to reflect current implementation.
4bcfcc69416831b199fb866f56725c88cdcee03c 03-Oct-2014 Dianne Hackborn <hackbod@google.com> am b49a19b9: am 8aa21f20: am 12dd9943: am 7a73f2c5: Merge "SDK only: Update docs to reflect current implementation." into lmp-dev

* commit 'b49a19b9bd2fed00b8fbf3f5a4f9fb7c34e969a3':
SDK only: Update docs to reflect current implementation.
7a73f2c5aab16e2d4c21fcce9aa8173e87ecfb4f 03-Oct-2014 Dianne Hackborn <hackbod@google.com> Merge "SDK only: Update docs to reflect current implementation." into lmp-dev
67a101aa3006aa2011a9d9edaacb2fa6f6f31140 02-Oct-2014 Dianne Hackborn <hackbod@google.com> SDK only: Update docs to reflect current implementation.

Change-Id: I498425bb55b157c954af6a2441d8bd9be3871c55
serManager.java
4924e5d87bedb0e8648de9a6a656e934cee11867 02-Oct-2014 Sreeram Ramachandran <sreeram@google.com> am 44774ad0: am 9e987f1d: am 4f4b81bd: am c04e922f: am 5aaabc0f: Merge "Send app permissions to netd." into lmp-dev

* commit '44774ad079e95606186ed186672449de295d6769':
Send app permissions to netd.
7c56fd3c25f844ae4c6167ee9605976c94ccd704 02-Oct-2014 Dianne Hackborn <hackbod@google.com> am 7cf6cac5: am 03e173ed: am ded96310: am 796d6ece: am c338784b: Merge "More work on issue #17656716: Unhandled exception in Window Manager" into lmp-dev

* commit '7cf6cac507df68ecb1d6484a5287687e4df61573':
More work on issue #17656716: Unhandled exception in Window Manager
44774ad079e95606186ed186672449de295d6769 02-Oct-2014 Sreeram Ramachandran <sreeram@google.com> am 9e987f1d: am 4f4b81bd: am c04e922f: am 5aaabc0f: Merge "Send app permissions to netd." into lmp-dev

* commit '9e987f1d76e18bca72583ab5f4ff65ae4e8c381e':
Send app permissions to netd.
7cf6cac507df68ecb1d6484a5287687e4df61573 02-Oct-2014 Dianne Hackborn <hackbod@google.com> am 03e173ed: am ded96310: am 796d6ece: am c338784b: Merge "More work on issue #17656716: Unhandled exception in Window Manager" into lmp-dev

* commit '03e173edce42a5ae0de8a7718330d83664a84a9e':
More work on issue #17656716: Unhandled exception in Window Manager
06b4f4589992886b59b1f1858c13abf7fe239eef 02-Oct-2014 Sreeram Ramachandran <sreeram@google.com> am 5aaabc0f: Merge "Send app permissions to netd." into lmp-dev

* commit '5aaabc0fa66dd755843f040fe634962477107950':
Send app permissions to netd.
e4a05afe85f15472325db9c535ef81f409fb6070 24-Sep-2014 Sreeram Ramachandran <sreeram@google.com> Send app permissions to netd.

Based largely off Robert's http://ag/546170 (thanks!)

Bug: 15413737
Change-Id: I8a1f0a184923c4c0a4935e6b88895bcc05e39f02
NetworkManagementService.aidl
e2aa87b8e239e1582b12c7386bd1405e6ca61b41 02-Oct-2014 Dianne Hackborn <hackbod@google.com> am c338784b: Merge "More work on issue #17656716: Unhandled exception in Window Manager" into lmp-dev

* commit 'c338784bf6bfcce3cd7db40f46b0e6c815e9ed3a':
More work on issue #17656716: Unhandled exception in Window Manager
8d05172112436a81bed6e4a0810f8914509d8a4d 01-Oct-2014 Dianne Hackborn <hackbod@google.com> More work on issue #17656716: Unhandled exception in Window Manager

Fix Slog.wtf to not acquire the activity manager lock in its code
path, so that it can never deadlock. This was the original intention
of it, but part was missed.

Now we can put back in the code to detect when strict mode data is
getting large (a little more targeted now to the actual problem),
and use Slog.wtf to report it. And as a bonus, when this happens
we will now clear all of the collected violations, to avoid getting
in to the bad case where IPCs start failing. So this should be
good enough for L to fix the problem, with wtf reports for us to
see if the underlying issue is still happening.

Finally, switch a butch of stuff in the system process from Log.wtf
to Slog.wtf, since many of those are deadlocks waiting to happen.

Oh and fix a crash in the settings provider I noticed in APR.

Change-Id: I307d51b7a4db238fd1e5fe2f3f9bf1b9c6f1c041
trictMode.java
1ff5abdbb1dcfd0c21246a5c38a8e3257f51f5bf 02-Oct-2014 Narayan Kamath <narayan@google.com> am 7dc7f676: Merge "Set Build.CPU_ABI{2} from SUPPORTED_{32,64}_BIT_ABIS" into lmp-dev

* commit '7dc7f676d699c739128dcc7855cbc0dacddaaa57':
Set Build.CPU_ABI{2} from SUPPORTED_{32,64}_BIT_ABIS
89f3665dac8cb3f52c39c4025140a073756cce0a 02-Oct-2014 Narayan Kamath <narayan@google.com> am 17044459: am 870c3553: am 13705ca9: am d480147f: am 7dc7f676: Merge "Set Build.CPU_ABI{2} from SUPPORTED_{32,64}_BIT_ABIS" into lmp-dev

* commit '170444599ce44b3b427267a190bed79d9afb709d':
Set Build.CPU_ABI{2} from SUPPORTED_{32,64}_BIT_ABIS
170444599ce44b3b427267a190bed79d9afb709d 02-Oct-2014 Narayan Kamath <narayan@google.com> am 870c3553: am 13705ca9: am d480147f: am 7dc7f676: Merge "Set Build.CPU_ABI{2} from SUPPORTED_{32,64}_BIT_ABIS" into lmp-dev

* commit '870c3553f15d9d085bb30b063563143c2fd09322':
Set Build.CPU_ABI{2} from SUPPORTED_{32,64}_BIT_ABIS
42b7a45a5606f5b752de68a38afdc6d26bc2a15a 01-Oct-2014 Dianne Hackborn <hackbod@google.com> am 67787a82: am cb5fc84b: am 16b6a8f7: am 962e3e83: am 9cf01b63: Merge "More work on issue #17656716: Unhandled exception in Window Manager" into lmp-dev

* commit '67787a82a01460f0d68c154fdf3045bdc1ee572f':
More work on issue #17656716: Unhandled exception in Window Manager
67787a82a01460f0d68c154fdf3045bdc1ee572f 01-Oct-2014 Dianne Hackborn <hackbod@google.com> am cb5fc84b: am 16b6a8f7: am 962e3e83: am 9cf01b63: Merge "More work on issue #17656716: Unhandled exception in Window Manager" into lmp-dev

* commit 'cb5fc84b554aa82a98867f997caffea3d7067033':
More work on issue #17656716: Unhandled exception in Window Manager
7dc7f676d699c739128dcc7855cbc0dacddaaa57 01-Oct-2014 Narayan Kamath <narayan@google.com> Merge "Set Build.CPU_ABI{2} from SUPPORTED_{32,64}_BIT_ABIS" into lmp-dev
a0767b3652791614b2b4a305b3b9e87d604617dc 01-Oct-2014 Dianne Hackborn <hackbod@google.com> am f9cd6fa5: am bb527c59: am e26ba8f7: am 069de204: am 38646c19: Merge "Work on issue #17656716: Unhandled exception in Window Manager" into lmp-dev

* commit 'f9cd6fa5a34a9ba22eaa47d8c5f9c39b5cd901a2':
Work on issue #17656716: Unhandled exception in Window Manager
f9cd6fa5a34a9ba22eaa47d8c5f9c39b5cd901a2 01-Oct-2014 Dianne Hackborn <hackbod@google.com> am bb527c59: am e26ba8f7: am 069de204: am 38646c19: Merge "Work on issue #17656716: Unhandled exception in Window Manager" into lmp-dev

* commit 'bb527c59d1fb0ad627f44cbb378959fa7d4af2c7':
Work on issue #17656716: Unhandled exception in Window Manager
ed1589d81f1d7c8cf2a97f2a5afe3d856fbb1b74 30-Sep-2014 Dianne Hackborn <hackbod@google.com> am 9cf01b63: Merge "More work on issue #17656716: Unhandled exception in Window Manager" into lmp-dev

* commit '9cf01b63cb0023aec0e05b1ce050ff572532b876':
More work on issue #17656716: Unhandled exception in Window Manager
ce92b0d070c4967914698b4e257c203d7121c972 30-Sep-2014 Dianne Hackborn <hackbod@google.com> More work on issue #17656716: Unhandled exception in Window Manager

Drop down the limit on when we log, since under normal operation we
will never get more than a few K of data due to strict mode.

Try to clean up the code paths coming in and out of binder IPCs to
plug any places where we could disrupt the gather flag of a thread,
causing it to keep gathering stack crawls (which is the thing that
is causing our strict mode data to become so large).

Change-Id: I9a46512283d33e863c429840b465855d1fabb74e
inder.java
trictMode.java
ccd08f23b0db358741f3b5c3a9affd0aef432519 30-Sep-2014 Dianne Hackborn <hackbod@google.com> am 38646c19: Merge "Work on issue #17656716: Unhandled exception in Window Manager" into lmp-dev

* commit '38646c19d8badea143113c0dc48ccdacb18badc4':
Work on issue #17656716: Unhandled exception in Window Manager
eff258c3050e260b67399432357c7d79baec7916 30-Sep-2014 Narayan Kamath <narayan@google.com> Set Build.CPU_ABI{2} from SUPPORTED_{32,64}_BIT_ABIS

32 bit processes will always see values from SUPPORTED_32_BIT_ABIS
and 64 bit processes will always see values from SUPPORTED_64_BIT_ABIS.

bug: 17367265
Change-Id: I9996034c190f9213986b9b1a4ee0e38eca91c7ad
uild.java
73d6a821aeecd6003c70c32f7ae6c38f062c4290 29-Sep-2014 Dianne Hackborn <hackbod@google.com> Work on issue #17656716: Unhandled exception in Window Manager

Remove the checks for large parcel sizes. Those were triggering,
and identifyng the area of the problem, but also cause a lot of
trouble by making the unsafe deadlocky code there much more likely
to deadlock.

Add logging for strict mode IPCs, since those seem to be the
problem. Only log when things look bad.

Also add a log when battery stats are reset, to diagnose why they
are getting reset when they shouldn't be.

Change-Id: I588c858fb8d8c45f3c9c164ae2de9ae01547b304
inder.java
trictMode.java
c439d093ca1ce52f8158f3b16c894d6d1dc4a8b9 29-Sep-2014 Dianne Hackborn <hackbod@google.com> am 09f14417: am 8776bd54: am cad60dc8: am 72bc7651: am cbb94a27: Merge "More debugging for issue #17656716: Unhandled exception in Window Manager" into lmp-dev

* commit '09f144176e32b2f352ca8a1bee93c26403c69408':
More debugging for issue #17656716: Unhandled exception in Window Manager
b6af870bcd6aefba0b57e2bb190f50e0f23ed953 29-Sep-2014 Elliott Hughes <enh@google.com> am 5d8bcd28: am 737b8cd2: am 7d614689: am 416de7fd: am 70c1f083: Merge "Set the system locale correctly even on an encrypted device." into lmp-dev

* commit '5d8bcd285d190de924a47c39155530038799d148':
Set the system locale correctly even on an encrypted device.
208678718f9f8db3bc279c7d5bd1445af2831ae3 10-Sep-2014 jgu21 <jinghui.gu@intel.com> Frameworks/base: Early init native bridge

Add the app directory to the arguments for starting a process.
Add a check for NeedsNativeBridge and a call to PreInitializeBridge
in the native fork code.

(cherry picked from commit 2eacd06bfb82b33dfcbccafbcfc0bf1218484bb5)

Bug: 17671501
Change-Id: I970db5b284b0c12e2d8a45df3950c1fff2927a4e
rocess.java
09f144176e32b2f352ca8a1bee93c26403c69408 27-Sep-2014 Dianne Hackborn <hackbod@google.com> am 8776bd54: am cad60dc8: am 72bc7651: am cbb94a27: Merge "More debugging for issue #17656716: Unhandled exception in Window Manager" into lmp-dev

* commit '8776bd549ed4db7c5e2e5f487d043e8d1b53ff12':
More debugging for issue #17656716: Unhandled exception in Window Manager
803d3fc394e450a24bdea08050c63937b34a9032 27-Sep-2014 Dianne Hackborn <hackbod@google.com> am cbb94a27: Merge "More debugging for issue #17656716: Unhandled exception in Window Manager" into lmp-dev

* commit 'cbb94a27c1f0fa8c2b459ffe3206eb96006f92dc':
More debugging for issue #17656716: Unhandled exception in Window Manager
5d8bcd285d190de924a47c39155530038799d148 27-Sep-2014 Elliott Hughes <enh@google.com> am 737b8cd2: am 7d614689: am 416de7fd: am 70c1f083: Merge "Set the system locale correctly even on an encrypted device." into lmp-dev

* commit '737b8cd29ccc9799f8a309ca33c0ba4f4c0016d4':
Set the system locale correctly even on an encrypted device.
820eab3e751fde9d8bb65d9aadcc058483d55a50 27-Sep-2014 Dianne Hackborn <hackbod@google.com> Merge "More debugging for issue #17656716: Unhandled exception in Window Manager" into lmp-dev
0844233e9908b88d4e74a9a35098dc3bce28e371 27-Sep-2014 Elliott Hughes <enh@google.com> am 70c1f083: Merge "Set the system locale correctly even on an encrypted device." into lmp-dev

* commit '70c1f083332729a586d670af7565732a2eb06ab4':
Set the system locale correctly even on an encrypted device.
fad079dc5dbec1cb2461e4f8e0cdfd4784e9eada 27-Sep-2014 Dianne Hackborn <hackbod@google.com> More debugging for issue #17656716: Unhandled exception in Window Manager

Change-Id: I81d3678e21d293d5896c467ae5c6739c82cfaa95
inder.java
f839b4fcb6b179529585765517895a8c90fe315b 26-Sep-2014 Elliott Hughes <enh@google.com> Set the system locale correctly even on an encrypted device.

Bug: 17659622
Change-Id: Ibbbd5b959bfab5345f20b556c4720d0910b50084
torage/StorageManager.java
b0e58ff6b3ec0d1bc51384ea1ee2d2008fb3f756 26-Sep-2014 Dianne Hackborn <hackbod@google.com> am 534556ae: am 6b9b8a03: am 27429ba1: am 24ecbc4f: am 0b1eb9d4: Merge "Work on issue #17656716: Unhandled exception in Window Manager" into lmp-dev

* commit '534556aef5ae22d522c5988d535b3b19b3742fd3':
Work on issue #17656716: Unhandled exception in Window Manager
a15dcc3fa1551b92a6d1cc8f0b56d33284e06af8 26-Sep-2014 Dianne Hackborn <hackbod@google.com> am 6b9b8a03: am 27429ba1: am 24ecbc4f: am 0b1eb9d4: Merge "Work on issue #17656716: Unhandled exception in Window Manager" into lmp-dev

* commit '6b9b8a03847a190e1f3c9cf50fc3989a572d7534':
Work on issue #17656716: Unhandled exception in Window Manager
042b32c8d29f3e8da834bac10979d0fcf89cc9a6 26-Sep-2014 Dianne Hackborn <hackbod@google.com> am 0b1eb9d4: Merge "Work on issue #17656716: Unhandled exception in Window Manager" into lmp-dev

* commit '0b1eb9d4ae339629fbbf226160896a917cad4d0d':
Work on issue #17656716: Unhandled exception in Window Manager
017c6a28bee788d2ba5550548ea844d0236bc40e 26-Sep-2014 Dianne Hackborn <hackbod@google.com> Work on issue #17656716: Unhandled exception in Window Manager

Create descriptive errors when sending unreasonably large
parcels through IPC.

Change-Id: Ie93b5372a8ed87541db282876c4eeeae69a1e8bd
inder.java
c894355d7e38239d100583a21d5e571371b51bf5 25-Sep-2014 Jeff Sharkey <jsharkey@android.com> am d46c9385: am 1eb1a4fa: am b47a75f2: am b8bbeff0: am 45ef18b6: Merge "Include reason when wiping data." into lmp-dev

* commit 'd46c93852393569e3211fc7bada91e712634572e':
Include reason when wiping data.
52e40aaa8a96ec6606b43c3669724f042c28b71c 25-Sep-2014 Jeff Sharkey <jsharkey@android.com> am 1eb1a4fa: am b47a75f2: am b8bbeff0: am 45ef18b6: Merge "Include reason when wiping data." into lmp-dev

* commit '1eb1a4fa28d74312b329daaecd8a81fcf367eea4':
Include reason when wiping data.
c4997a1d9c0d542acc6b40582fd9e3b50ee9d4fb 25-Sep-2014 Jeff Sharkey <jsharkey@android.com> am 45ef18b6: Merge "Include reason when wiping data." into lmp-dev

* commit '45ef18b63e78fd853865f42d9369a5c9b4dd4ba0':
Include reason when wiping data.
0a285b4462719b938dfd5bf54808a9a4a2e3e5b5 25-Sep-2014 Jeff Sharkey <jsharkey@android.com> Merge "Include reason when wiping data." into lmp-dev
4d64addc20ba14d6923de5853272260bf887efa5 25-Sep-2014 Andreas Gampe <agampe@google.com> am 43d02564: resolved conflicts for merge of dfdabe37 to lmp-mr1-dev-plus-aosp

* commit '43d0256429c46a1243c8d85a34d029b40fd5e34e':
Frameworks/base: Early init native bridge
a2945aabd91a04c41ced273c2169bd5a74cf3e6f 25-Sep-2014 Andreas Gampe <agampe@google.com> resolved conflicts for merge of dfdabe37 to lmp-mr1-dev-plus-aosp

Change-Id: I3e9adb5fa67f8ca7ce8151c2dbf5c8fe5b40cb86
a103ebed6e9a44a406b31636791d2970c882ec44 25-Sep-2014 Andreas Gampe <agampe@google.com> resolved conflicts for merge of dfdabe37 to lmp-dev-plus-aosp

Change-Id: Ia9c350dcfb41f9d04400a86bd7e5f2cf2af656f1
004a4b20f8d3116e6a711525960d433fcfea4ee4 24-Sep-2014 Jeff Sharkey <jsharkey@android.com> Include reason when wiping data.

This will help us track down who requested a data wipe.

Bug: 17412160
Change-Id: If8413e5d6377773f37e8b34ae3d26347226a027c
ecoverySystem.java
9058c3c9262c91b77398e60795951d032aae6232 24-Sep-2014 Lorenzo Colitti <lorenzo@google.com> am c5df869d: am 19733a32: am c17062e5: am 71915080: am 6974f6a9: Merge "Block address families with routes, not NetworkAgent side channel" into lmp-dev

* commit 'c5df869d84533d79242b06f4d06ea8250158963d':
Block address families with routes, not NetworkAgent side channel
542fc7be49a26b424ad84c60ff5b792d38b53a8a 24-Sep-2014 Lorenzo Colitti <lorenzo@google.com> am 19733a32: am c17062e5: am 71915080: am 6974f6a9: Merge "Block address families with routes, not NetworkAgent side channel" into lmp-dev

* commit '19733a32c87d0597448318ac1665450aed03ba69':
Block address families with routes, not NetworkAgent side channel
a2209a667c896643c3aab1669951d324bda4ac47 24-Sep-2014 Lorenzo Colitti <lorenzo@google.com> am b5a2f9ea: am 6974f6a9: Merge "Block address families with routes, not NetworkAgent side channel" into lmp-dev

* commit 'b5a2f9eac026a7798b28e0c8f412aee7b7a01c36':
Block address families with routes, not NetworkAgent side channel
60446165d8bd44f72cec8d0c5583a688369fa660 19-Sep-2014 Lorenzo Colitti <lorenzo@google.com> Block address families with routes, not NetworkAgent side channel

Now that we support unreachable routes, use those to block
address families on VPNs. This is a much more elegant solution.
Also update LinkProperties when IP addresses are added and
removed, fixing a TODO.

Bug: 17462989
Change-Id: Ib749d84710dca70d672350b9f129bb91419ec77e
NetworkManagementService.aidl
2eacd06bfb82b33dfcbccafbcfc0bf1218484bb5 10-Sep-2014 jgu21 <jinghui.gu@intel.com> Frameworks/base: Early init native bridge

Add the app directory to the arguments for starting a process.
Add a check for NeedsNativeBridge and a call to PreInitializeBridge
in the native fork code.

Change-Id: I0b93da93251c6b4638de786bf98cf99df07c3fc2
rocess.java
15b6dde72f2b3aaa301784f9ccb5e9a0afa83bda 19-Sep-2014 Amith Yamasani <yamasani@google.com> am 2bfae686: am 4ad6b3ef: am 10c291a7: am e1206a34: am ba108d11: Merge "Allow primary user profile owner to set device restrictions" into lmp-dev

* commit '2bfae68607041ec8ec02e7c77471f22202b9ce8d':
Allow primary user profile owner to set device restrictions
d587057246d5bdba22cf27204253f3ed50dee921 19-Sep-2014 Amith Yamasani <yamasani@google.com> am 4ad6b3ef: am 10c291a7: am e1206a34: am ba108d11: Merge "Allow primary user profile owner to set device restrictions" into lmp-dev

* commit '4ad6b3ef184424e36915bc046e04706f2dded0e2':
Allow primary user profile owner to set device restrictions
bd59ae2597c7a11b3dc5bed62bad50187b9c5a30 19-Sep-2014 Amith Yamasani <yamasani@google.com> am d2484f81: am ba108d11: Merge "Allow primary user profile owner to set device restrictions" into lmp-dev

* commit 'd2484f8198e11d20eca624b1192cb63d9b78d9ec':
Allow primary user profile owner to set device restrictions
c34dc7cdeb5cae8ca4c731838aafe90ed4c9a2b8 18-Sep-2014 Amith Yamasani <yamasani@google.com> Allow primary user profile owner to set device restrictions

In addition to device owners, profile owners on the primary user
can also set user restrictions that are necessary to lock down the
user.

This is to enable the case of a profile owner registered after setup
wizard is completed, on the primary user.

Also make managed profile vs. profile wording consistent in the
DevicePolicyManager docs.

Bug: 17555025
Change-Id: Ib9d08b8af34a99b25e11757fa7dc83673a7deb32
serManager.java
072d122260c4dfda7eddcbc27f2cf904b6ce1544 18-Sep-2014 Adam Powell <adamp@google.com> am 25c24378: am 0c5b7311: am 1e2f3d98: Merge "Fix UserManager#isUserAGoat" into lmp-dev

* commit '25c24378b3abd5da581ff0f28f5237df8d8918d3':
Fix UserManager#isUserAGoat
8b69e5685d752c7def14dae94bd280777b6c0bd4 18-Sep-2014 Adam Powell <adamp@google.com> am 0c5b7311: am 1e2f3d98: Merge "Fix UserManager#isUserAGoat" into lmp-dev

* commit '0c5b731108dd1842f618e9cc58f07368b731d1dc':
Fix UserManager#isUserAGoat
76e8803f5ecf4477b91f84612f3c28738dd7ea26 18-Sep-2014 Adam Powell <adamp@google.com> am a72bd678: am 400521f2: am aaceaabe: am 1e2f3d98: Merge "Fix UserManager#isUserAGoat" into lmp-dev

* commit 'a72bd6782f42f4766fb0dcc6755d2e9cca6940f4':
Fix UserManager#isUserAGoat
988ae30ff7729ac0e9a44ee665c7e00f1961e7cd 18-Sep-2014 Adam Powell <adamp@google.com> Fix UserManager#isUserAGoat

Correctly detect if the user is a goat.

Change-Id: I78577dd7ec8c3685434ee03560010a6ea4db127f
serManager.java
7d0b3d445abc0010e316c4652bf2bef8f06df7e0 18-Sep-2014 Jeff Hao <jeffhao@google.com> Deprecating InstructionCount.

Bug: 17489901
Change-Id: I554b9f3ce20adce55d6967d79d37d86b171b91c4
ebug.java
b9e2fe1d4a76bec221df59435cc564836434e871 14-Sep-2014 John Spurlock <jspurlock@google.com> am 1c1683a3: am 1ddb7a6b: Merge "Saver: PowerManager call to set low power mode." into lmp-dev

* commit '1c1683a35a0267c03729fa36b930c3dc803aff7a':
Saver: PowerManager call to set low power mode.
8d4e6cb06005a2ce994360340a6191f0690db8f4 14-Sep-2014 John Spurlock <jspurlock@google.com> Saver: PowerManager call to set low power mode.

- Add an explicit power manager call to set the low power mode state,
instead of trying manage everything around a single setting.
- When low-power mode is triggered by falling below the configured
threshold, it does not update the setting.
- The "is-enabled" api returns setting || below configured trigger.
- Move the snooze management into the new api call.
- Callers (sysui + settings) updated to use the api instead of the
setting.
- Handles the case where the level does an unpowered leap out of the
low battery level. (Possible if powered in-between while the device
is off)

Bug:17460535
Change-Id: Ic030504c9cad9868a7137abbe837b170da37852b
PowerManager.aidl
owerManager.java
40461ddd8c1c087a31c1febbed76507e8d77ee40 13-Sep-2014 Dianne Hackborn <hackbod@google.com> am 46c1851a: am a561b237: Merge "Allow throwing UnsupportedOperationException across Binder." into lmp-dev

* commit '46c1851a7d14c8ac8614deb2183a89a44448e57c':
Allow throwing UnsupportedOperationException across Binder.
33d738a10209d4dc882a65285d6e71cfaeabe769 12-Sep-2014 Dianne Hackborn <hackbod@google.com> Allow throwing UnsupportedOperationException across Binder.

Change-Id: I3a9b81958886033d546c3a20331716dbb9492365
arcel.java
272d79c71535788a39bd746de9c3c34fa3ee159e 12-Sep-2014 Alexandra Gherghina <alexgherghina@google.com> am 92f8d577: am 443a5766: Merge "Assign default icon to users at creation time and in SystemUI." into lmp-dev

* commit '92f8d577c50a54e8375435813096b997d58cd368':
Assign default icon to users at creation time and in SystemUI.
64d4dca63f65e4c7d4a829c85ff6670bdd34e2eb 28-Aug-2014 Alexandra Gherghina <alexgherghina@google.com> Assign default icon to users at creation time and in SystemUI.

Right now different code in System UI, Settings app and other places replace the
user icon with their own default. This tries to make it consistent by moving the
mechanism used in Settings in a helper class.

Bug: 17311038
Change-Id: Ic858c65bf82a98b9806dbba029e7cdcf441f372e
serManager.java
3dd0a6aabca2df0f51e443eec1810be75d37bab1 12-Sep-2014 Michael Wright <michaelwr@google.com> am 79870899: am 44c97df3: Change constant to PowerManager.RELEAES_FLAG_WAIT_FOR_NO_PROXIMITY

* commit '7987089963e29c993146a24470d412c2e83f98fa':
Change constant to PowerManager.RELEAES_FLAG_WAIT_FOR_NO_PROXIMITY
1208e2718daeae538dc89c37198092ccb32798a2 09-Sep-2014 Michael Wright <michaelwr@google.com> Change constant to PowerManager.RELEAES_FLAG_WAIT_FOR_NO_PROXIMITY

Bug: 17290118
Change-Id: Iae3866bf3f7ac24f756ec4c183e848a79d1f779b
owerManager.java
5f0439d7299522f486257c4c829804fed2511695 11-Sep-2014 Amith Yamasani <yamasani@google.com> am 3b18a0c5: am 30a5e35b: Merge "Apply cross-user restrictions to Shell" into lmp-dev

* commit '3b18a0c5f8efdb915fb1304c959236d608eb8b79':
Apply cross-user restrictions to Shell
8cd28b57ed732656d002d97879e15c5695b54fff 09-Jun-2014 Amith Yamasani <yamasani@google.com> Apply cross-user restrictions to Shell

Even though Shell user is allowed to perform cross-user actions,
lock that path down if the target user has restrictions imposed by
the profile owner device admin that prevents access via adb.

If the profile owner has imposed DISALLOW_DEBUGGING_FEATURES, don't
allow the shell user to make the following types of calls:
start activities, make service calls, access content providers,
send broadcasts, block/unblock packages, clear user data, etc.

Bug: 15086577
Change-Id: I9669fc165953076f786ed51cbc17d20d6fa995c3
UserManager.aidl
serManager.java
1f4ea68a070d4e78f29a86d72968fb6580b13af2 09-Sep-2014 Amith Yamasani <yamasani@google.com> am d94df395: am 7a9f541e: Merge "User restriction to disallow outgoing NFC beam" into lmp-dev

* commit 'd94df395a87836b5dba6bd159010046e1d016661':
User restriction to disallow outgoing NFC beam
da6e6c888f81d3bd19ff1f3cf9b081b7f9b2a013 09-Sep-2014 Amith Yamasani <yamasani@google.com> Merge "User restriction to disallow outgoing NFC beam" into lmp-dev
26af829fd70609cf073b56e54e1f78faf83a5e8b 09-Sep-2014 Amith Yamasani <yamasani@google.com> User restriction to disallow outgoing NFC beam

This can be controlled by MDMs via DPM.

Also fixes:
- javadoc for restrictions
- persisting of cross profile copy/paste restriction

Bug: 17387303
Change-Id: Ie148f56189181d2a4c6345c0823d417ab13a94a3
serManager.java
4656e69bf36d42a35c9290ab79eeb33b4cca1d5c 08-Sep-2014 Elliott Hughes <enh@google.com> resolved conflicts for merge of 2008cff7 to lmp-dev-plus-aosp

Change-Id: I5148eda624e8504f12dbc1288cd4a7a5b7c10850
6b0ed64fb868e64684031558cbdeedcd94d40713 05-Sep-2014 Andreas Gampe <agampe@google.com> Frameworks/base: Add native bridge post-fork initialization

(cherry picked from commit d7746a8b65ee4690427ed798816f970218578fa3)

Change-Id: I5a20de1cb68dd1802937b369b14c50c9c1031c67
rocess.java
ab94a1676e6280f1b6d83e0f8b02849ff62faf4f 08-Sep-2014 Elliott Hughes <enh@google.com> Merge "Small documentation fixes across many files."
6098a3acc9b5c2e87dcc6e4802cfd6d0ee4073c0 08-Sep-2014 Jeff Sharkey <jsharkey@android.com> am fa8211c5: am 2f0ed017: Merge "Delayed ASEC allocation, refine progress handling." into lmp-dev

* commit 'fa8211c5f7b8939e230f5643cd94a6e8686571b6':
Delayed ASEC allocation, refine progress handling.
e016605981985b64cc28a8272474ae925801548b 08-Sep-2014 Jeff Sharkey <jsharkey@android.com> Merge "Delayed ASEC allocation, refine progress handling." into lmp-dev
77d218e1869e69c8d436b09cd11dcfe45e50b2cf 06-Sep-2014 Jeff Sharkey <jsharkey@android.com> Delayed ASEC allocation, refine progress handling.

For restore use-case, session creation needs to complete quickly, so
delay ASEC allocation until session is opened. When preflighting
size checks, only consider external when we have a known size for the
container. Also relax size checks when using MODE_INHERIT_EXISTING
on external, since we don't know how much of existing app will be
copied over.

Consider session as "active" while commit is ongoing, until we're
either finished or pending user interaction.

Always publish first client needle movement away from 0. Use 25% of
internal progress to reflect ASEC allocation.

Avoid CloseGuard messages about leaking PFDs.

Bug: 17405741, 17402982
Change-Id: I6247a1d335d26621549c701c4c4575a8d16ef8c2
ileBridge.java
b30ea42a8d5a516c61b6a2e00368abad9acb82e2 07-Sep-2014 Dianne Hackborn <hackbod@google.com> am 459f3911: am 9a77bddd: Merge "Fix issue #17391969: Only exception on Message.recycle() when target-sdk > 20" into lmp-dev

* commit '459f391177dd796d25d68184a0844a0420a1f33a':
Fix issue #17391969: Only exception on Message.recycle() when target-sdk > 20
b30c9920df9a8b5f1515e26c65c5ce1d21e5a77a 07-Sep-2014 Dianne Hackborn <hackbod@google.com> Merge "Fix issue #17391969: Only exception on Message.recycle() when target-sdk > 20" into lmp-dev
95ccfd99503ae250e0c8c44590123ee2b263c063 06-Sep-2014 Dianne Hackborn <hackbod@google.com> am 80cb4a01: am 8c7605b1: Merge "Fix issue #17397177: BatteryStats reporting error on job start/stop" into lmp-dev

* commit '80cb4a012b57110246a17e4110ccadb5bd232c55':
Fix issue #17397177: BatteryStats reporting error on job start/stop
7895bc2e6309427937ab060031bfee5c99879d59 06-Sep-2014 Dianne Hackborn <hackbod@google.com> Fix issue #17391969: Only exception on Message.recycle() when target-sdk > 20

Change-Id: Iaf271c96901c5dba15831681269a49ad4aaa57fd
essage.java
ce78347c37000347c9dbd4487d53a3f4aceff692 06-Sep-2014 Dianne Hackborn <hackbod@google.com> Merge "Fix issue #17397177: BatteryStats reporting error on job start/stop" into lmp-dev
c3940bc1ba753bcbeb9849239ec4b2ec685c40e2 06-Sep-2014 Dianne Hackborn <hackbod@google.com> Fix issue #17397177: BatteryStats reporting error on job start/stop

Dumb, dumb, dumb mistake.

Also fix battery stats wakeup reason tracking to use a SamplingTimer
(like kernel wake locks) so we can track both the duration and count
for each wakeup reason.

Change-Id: I89d69661006dc533622b1b7e68a139166d3a6975
atteryStats.java
d0646dca40ff740bd49755ad60751678b0ccca52 28-Aug-2014 Mark Doliner <mark@kingant.net> Small documentation fixes across many files.

Change-Id: I3e8787ce4bc6018ea1dc9aef2a2cd4e0a8dde663
uild.java
79391c3c5d7fc40d2a0473b48e29335e7de19f9c 05-Sep-2014 Svetoslav <svetoslavganov@google.com> am 35952bf0: am 6f0cf112: Merge "Addressing API council comments for UserManager." into lmp-dev

* commit '35952bf0e8fd0ace78b015c3cde29b322cd939bb':
Addressing API council comments for UserManager.
8277cb60d86bb076f17aa43efc1abec37e76dcd0 05-Sep-2014 Jeff Sharkey <jsharkey@android.com> am b4733a8d: am e7bea8e5: Merge "Move Size parceling to Bundle." into lmp-dev

* commit 'b4733a8dad31e10bba8a04ccefbf9016d7fd670b':
Move Size parceling to Bundle.
aa0ac1a04f850fb81bf308bde328827d68172f0a 05-Sep-2014 Amith Yamasani <yamasani@google.com> am 90f3b5ad: am 0c3b7b15: Merge "Don\'t allow guests to install from unknown sources" into lmp-dev

* commit '90f3b5ad76ca3c38fb9ed23f79869eee4ebdfb39':
Don't allow guests to install from unknown sources
c7d62f02b8acfd0a6b31f8544ec2c07e780fe4bb 05-Sep-2014 Svetoslav <svetoslavganov@google.com> Addressing API council comments for UserManager.

bug:17390424

Change-Id: I498d2541289915cb7db16e5c3249ccc7a7dc5ee6
serManager.java
d3cc74cac29c0534762228accf72ea8c6f5bebde 05-Sep-2014 Jeff Sharkey <jsharkey@android.com> Merge "Move Size parceling to Bundle." into lmp-dev
a240d8377a3a45ddd4daccdb6b34f51644296486 05-Sep-2014 Amith Yamasani <yamasani@google.com> Merge "Don't allow guests to install from unknown sources" into lmp-dev
5ef33984d0cc50bf4654b0d8e9557ac34d44fddd 05-Sep-2014 Jeff Sharkey <jsharkey@android.com> Move Size parceling to Bundle.

Size itself shouldn't be Parcelable, since that would be a layering
violation.

Bug: 17390381
Change-Id: Ica62709bd889db51c916c550a0146714b002baa3
undle.java
arcel.java
7d26fa32cc78fe0b7623a53961f312e97c8e282f 05-Sep-2014 Dianne Hackborn <hackbod@google.com> am 8dd4914b: am c5e138f7: Merge "Fix issue #17375172... sshhhhhh!!!" into lmp-dev

* commit '8dd4914ba3ece4e408571cfcc19da4d801cecbfa':
Fix issue #17375172... sshhhhhh!!!
dc84c6ca86290393fec2bb730f125575ee9e168e 05-Sep-2014 Andreas Gampe <agampe@google.com> resolved conflicts for merge of 82ad9ec3 to lmp-dev-plus-aosp

Change-Id: I7ae05c4f1b072906932a9ed47bdbad881b8e0d37
edfc6af590fa860403779d20a469d198f742ab67 05-Sep-2014 Dianne Hackborn <hackbod@google.com> Merge "Fix issue #17375172... sshhhhhh!!!" into lmp-dev
521e4bd7c5252455c01a0fe253e0357ff0733b8e 04-Sep-2014 Dianne Hackborn <hackbod@google.com> Fix issue #17375172... sshhhhhh!!!

Change-Id: Idf3eafe829418bfc29e31f893ae6cff249488ffa
uild.java
aec67dcc02362e4d2f7641c6605405b839bd1bd4 03-Sep-2014 Andreas Gampe <agampe@google.com> Frameworks/base: Add native bridge post-fork initialization

Change-Id: I5a20de1cb68dd1802937b369b14c50c9c1031c67
rocess.java
29ce85bab94a2d0dc98d9075ae86c8a282367117 04-Sep-2014 Amith Yamasani <yamasani@google.com> Don't allow guests to install from unknown sources

Added a user restriction when creating a guest.
Made sure that guests can't install profile owners that
could undo the restriction.

Bug: 17359648
Change-Id: Icdd919e8b1cbd79a69aacb76e573ec3449f18e4c
serManager.java
bef1036af781f8defadb2345f256da71e3906bd4 03-Sep-2014 Amith Yamasani <yamasani@google.com> Merge "Add some @SystemApi tags for internal user-related APIs" into lmp-dev
0e8d7d63ba439cc0604af7055679dae3d30fdc48 03-Sep-2014 Amith Yamasani <yamasani@google.com> Add some @SystemApi tags for internal user-related APIs

Also added an internal isManagedProfile()

Bug: 17371392
Change-Id: Ibcc26771d954505cbd530192bf4a8a25a8d4cae0
serHandle.java
serManager.java
089ea995ba5183879dd7af098a8d645293798c4b 03-Sep-2014 Lorenzo Colitti <lorenzo@google.com> Merge "Pass the socket mark for DNS queries to dnsmasq." into lmp-dev
e2c88d39b2c5b33d55c42230db7899202625a96a 29-Aug-2014 Paul Lawrence <paullawrence@google.com> Add constants so we can distinguish decryption failures

Bug: 17213613
Change-Id: I6bc10a1ed0855f6946ea9eb2f8d2db00c1af327c
torage/IMountService.java
1df1473008c24487701c5bc15f39ed9f9697f421 30-Aug-2014 Amith Yamasani <yamasani@google.com> Make it possible to remove current user

Due to the async nature of switching users, it's not possible to
switch and remove immediately. So mark the switch target user as
soon as the user switch is requested, so that a remove will proceed
without failing at stopUserLocked().

Also, fix a similar problem with deleting the current guest and
switching to a new guest. It was attempting to remove the current
user which will result in a failed stopping of the user.
Added a way to mark the current guest
for deletion so that a new one can be created, switched to and the
old one deleted. If runtime fails, old guest is already marked for
deletion and will be cleaned up on restart.

Bug: 17321533
Change-Id: I4be0fb956227e0bb95588b5b1f2867fb1e655c0d
UserManager.aidl
serManager.java
b57edc5ae999abd9c7310833f4f10bbacbc469d7 23-Aug-2014 Lorenzo Colitti <lorenzo@google.com> Pass the socket mark for DNS queries to dnsmasq.

This makes tethered clients use the correct DNS servers when
tethering to non-default networks like the DUN APN.

Bug: 16357676
Change-Id: I8933b6de198a92c2aaf0291931ace8966ddba275
NetworkManagementService.aidl
73a821780334bc7972bca28d848cbce70cc3f825 29-Aug-2014 Jeff Sharkey <jsharkey@android.com> Keep tests building.

Bug: 17183379
Change-Id: I7f52af3201975e8c626a6c6d7f508fd8d006b204
ileBridge.java
c62f2e1bb76d3e7ff9e4504fdaa86cfa2ca849a3 29-Aug-2014 Jeff Sharkey <jsharkey@android.com> Merge "FileBridge needs to keep strong reference to PFD." into lmp-dev
9a1507aa10577badabcbe00396613a967302e456 29-Aug-2014 Jeff Sharkey <jsharkey@android.com> FileBridge needs to keep strong reference to PFD.

Even though we've grabbed the underlying FD, the PFD could be GC'ed
and when finalized it would end up closing the underlying FD. This
fix ties the PFD object lifecycle to the returned OutputStream.

Bug: 17183379
Change-Id: Ibee8f4cf78fee357181a250d15f2a653294b2877
ileBridge.java
b4558af745047631d27697460efd8fc6e7a7cf38 28-Aug-2014 Michael Wright <michaelwr@google.com> Merge "Change constant to PowerManager#FLAG_WAIT_FOR_DISTANT_PROXIMITY" into lmp-dev
219857b900e2a15464c6254d8d64b68db7d548c0 28-Aug-2014 Michael Wright <michaelwr@google.com> Change constant to PowerManager#FLAG_WAIT_FOR_DISTANT_PROXIMITY

Also add docs to PowerManager.WakeLock#release(int)

Bug: 17290118
Change-Id: Ibcbc4279efdd0f275808042356e6ff843958e23f
owerManager.java
d3ca9917003a5e0650b559d58cf1eacf3b52bf34 26-Aug-2014 Jeff Sharkey <jsharkey@android.com> Report FileBridge failures as wtf().

Bug: 17183379
Change-Id: Ifd4dc690c04439e1f7abebd8e0ca4e1ff97d9cc8
ileBridge.java
37cf9907d201e39ecf8a8de934c44e3eaf04b6db 24-Aug-2014 Jeff Sharkey <jsharkey@android.com> Merge "Installing splits into ASECs!" into lmp-dev
941a8ba1a6043cf84a7bf622e44a0b4f7abd0178 21-Aug-2014 Jeff Sharkey <jsharkey@android.com> Installing splits into ASECs!

Sessions can now zero-copy data directly into pre-allocated ASEC
containers. Then at commit time, we compute the total size of the
final app, including any inherited APKs and unpacked libraries, and
resize the container in one step.

This supports both brand new ASEC installs and inheriting from
existing ASEC installs. To keep things simple, it currently requires
copying any inherited ASEC contents, but this could be optimized in
the future.

Expose new vold resize command, and allow read-write mounting of ASEC
containers. Move native library extraction into the installer flow,
since it needs to happen before ASEC is sealed. Move multiArch flag
into NativeLibraryHelper, instead of making everyone pass it
around. Migrate size calculation to shared location.

Separate "other" package name in public API, provide a path to a
storage device when relevant, and add more docs.

Bug: 16514385
Change-Id: I06c6ce588d312ee7e64cce02733895d640b88456
torage/IMountService.java
7d82751530db56841f7e767fe752abe5faa06e0c 22-Aug-2014 Jeff Brown <jeffbrown@google.com> Hide PowerManager methods that third-party apps can't use.

Change-Id: I9c4dbdef913f68939eb29f2c250c5fe3afc67399
owerManager.java
0a571123544058578b4ef1558c276a4050519652 22-Aug-2014 Jeff Brown <jeffbrown@google.com> Poke interactive hint from userActivity and add @SystemApi.

Previously we only poked the interactive hint for input events that
were dispatched through the regular input system. However, when
using a car dock in projection mode input events are directly
delivered to apps by other system components, bypassing user activity.
So now we poke the interactive hint on all user activity.

Added an @SystemApi version of userActivity.

Added a new signature|system permission called USER_ACTIVITY
to allow system apps to poke userActivity. For now it seems
prudent to keep DEVICE_POWER signature only.

Bug: 17043684
Change-Id: Ia84bd03083065b8938a9853c08901fbf71b2e56b
owerManager.java
72671fbb2036e13fccb0b8eeb98be606de1819dd 22-Aug-2014 Jeff Brown <jeffbrown@google.com> Require DEVICE_POWER permission for DOZE_WAKE_LOCK.

This wake lock is only intended to be used internally.

Change-Id: I8d109c492605673616cf7f4f31f082a42fb1d912
owerManager.java
a71f03c48160ee82aad8d05edeb39faaf95ae137 22-Aug-2014 Jeff Brown <jeffbrown@google.com> Unhide the proximity sensor wakelock.

Bug: 5354313
Change-Id: I59c6bfcd8ff2cebe264f69c49032737a45326373
owerManager.java
8e28c9c315a8314163f874d12230822fe96d2c0a 22-Aug-2014 Jeff Sharkey <jsharkey@android.com> Merge "Guard against EOF when reading in FileBridge." into lmp-dev
5f1ed727e27cc00267539974372f062104052f56 22-Aug-2014 Jeff Sharkey <jsharkey@android.com> Guard against EOF when reading in FileBridge.

Bug: 17183379
Change-Id: I8856fc149915281093f83f46bad64f211d134322
ileBridge.java
2cb384f42569f36e19ecee60da259d69048fdd85 13-Aug-2014 Julia Reynolds <juliacr@google.com> Prevent profile owners from setting certain user restrictions.

Bug: 16351901
Bug: 16701492
Change-Id: Ie866bc24d2d7cc15f86c5b50062a730e099612a1
serManager.java
249a7fdf4411f923c2fc69416b483a7d14f8b8cd 19-Aug-2014 Dianne Hackborn <hackbod@google.com> Merge "Temporary: raise overflow limit, print all wake locks." into lmp-dev
acc4a120742eed5905de2c7ee690f251cc32a0ae 19-Aug-2014 Dianne Hackborn <hackbod@google.com> Temporary: raise overflow limit, print all wake locks.

Change-Id: I02baa775b8e0659bd9cd4547b8671730f056cb86
atteryStats.java
681bf60ce2a3973d5982f9b7a405bcef5fb72f20 18-Aug-2014 Sunny Goyal <sunnygoyal@google.com> Fixing bounds check.

Change-Id: Ie17b173ef88288076a5cbfdc741b8e105dcda03e
serManager.java
89e4ae2f504b4c55d7823c3f04d4894de0d8e471 18-Aug-2014 Dianne Hackborn <hackbod@google.com> Merge "Work on issue #16629489: Google (Play?) Services eating through battery" into lmp-dev
d953c53d3b04d772bb1b62ede1c2011641ca82b5 17-Aug-2014 Dianne Hackborn <hackbod@google.com> Work on issue #16629489: Google (Play?) Services eating through battery

There is a bug in how we deal with name overflows combined with resetting
the battery stats data. If we do a reset while a wakelock is being
actively held that has been put into the overflow bucket, then we can
end up reducing the number of known wake locks in the list so when after
that it is released we try to release it under its real name rather than
the overflow name.

This means we need to keep track of which wake locks have been placed
in the overflow bucket while they are actively being used, so we can be
sure to properly handle it as part of that bucket until it is eventually
released.

This makes things... somewhat more complicated. So now we have a class
to take care of all these details, and also use it for other places where
we have the same overflow semantics sync and job stats.

Also fix potential deadlock -- BatteryStatsHelper needs to call on to
ConnectivityManager to find out of there is telepohny, however we use
that class when doing a dump while the battery stats lock is held. To
fix this, we check the connectivity state up in the battery stats service
before acquiring the lock and propagate that information through to the
dump code.

Change-Id: Ib452206af5c36f4b0f03cc94d2845d36613d1ba5
atteryStats.java
742e790294b3441b79f715fe447069b63c6065db 17-Aug-2014 Jeff Sharkey <jsharkey@android.com> Progress towards staging ASECs.

Move location selection logic into shared PackageHelper location,
and share it between DCS and PackageInstaller. Fix bugs related to
installed footprint calculation; always count unpacked native libs.

Have PMS do its own threshold checking, since it's fine to stat
devices. PMS only ever deleted staging ASECs, so move that logic
into installer and nuke unclaimed staging ASECs. Allocate legacy
ASEC names using PackageInstaller to make sure they don't conflict
with sessions.

Start wiring up session to allocate ASEC and pass through staged
container for installation.

Fix bug to actually delete invalid cluster-style installs.

Bug: 16514385
Change-Id: I325e0c4422fc128398c921ba45fd73ecf05fc2a9
torage/StorageManager.java
3edf5272fb2185403dfe64b9722b9fc9b9de80f8 15-Aug-2014 Jeff Brown <jeffbrown@google.com> Add trace tag for power management.

Instrumented the basic power manager state transitions,
calling into the Power HAL, setting the display power mode,
and setting the backlight.

Bug: 17004602
Change-Id: I4e362162ddfd7292a7eea8b5d029ce3f6593c4a9
owerManager.java
race.java
d97a0e7281e3e8d3884ed580d4db4c97331509ed 15-Aug-2014 Amith Yamasani <yamasani@google.com> Merge "Copy certain settings to the managed profile" into lmp-dev
4f7e2e334e4ca5f1a67baf4bdd40cd080b954161 15-Aug-2014 Amith Yamasani <yamasani@google.com> Copy certain settings to the managed profile

All reads of those specific settings will go to the primary user.
Inserts to primary also go to managed profiles in order to notify
any observers.

This enables Location settings to be shared by both profiles.
Also some other settings related to IME and Accessibility since
those services are shared across the profiles.

Bug: 16457210
Change-Id: Ib8fd697b5c78027fcbaf245d82dda5e6d6aab4f0
serManager.java
d438deffad74ed5cc37b68100577215b9f08e6ff 15-Aug-2014 Julia Reynolds <juliacr@google.com> Merge "Apply lockdowns when user restrictions are set." into lmp-dev
3d9eb78fe91ab2479eb38443aed588e10421e31b 11-Aug-2014 Julia Reynolds <juliacr@google.com> Apply lockdowns when user restrictions are set.

Previously DMAgent would apply these lockdowns before/
after setting the matching user restrictions.

Bug: 16701642
Bug: 16945830
Bug: 16944983
Change-Id: Ib4f7145055687f12408d6ccacd8e6380406a32b2
serManager.java
f0433e50c7855579ad9847e939bb2c84e576e9d0 14-Aug-2014 Doug Zongker <dougz@google.com> Merge "@hide RECOVERY permission" into lmp-dev
c12035cd40d01b032013f515cb509e6c8791cf65 14-Aug-2014 Jeff Brown <jeffbrown@google.com> Log who is calling goToSleep().

Change-Id: Ibae61c90ee115735835e878bb3bf79eedaa0ae44
owerManager.java
9c3e74f1f77d3b29ad47d2c74b0a0061e67c76f1 14-Aug-2014 Dianne Hackborn <hackbod@google.com> Fix issue #16794553: Duplicate ArrayMap entries in Bundle...

...can lead to launching of un-exported activities

We now validate the array map after unparcelling to make sure there
are no duplicate keys.

And to make up for the performance overhead this introduces, I switched
the parcelling/unparcelling code to write keys as explicit string
objects rather than generic values. There was no reason to use generic
values since the write method itself only accepts an array map with
String keys.

Change-Id: I57bda9eb79ceaaa9c1b94ad49d9e462b52102149
arcel.java
95ab7849444125387dc88088bb5197ee463d8c17 12-Aug-2014 Amith Yamasani <yamasani@google.com> Decouple user limit from guest creation

Allow Guest to be created even if there are N users.
Allow N users to be created even if there are N-1 users
and a Guest.
Limit number of guests and managed profiles that can
be added.

Added unit tests.

Bug: 15934700
Change-Id: I1a8f0fa38a91d71ef7b2980e05c974244dfc337a
serManager.java
183415e521d599ca5e33e5022fec5ec7dfe1c055 12-Aug-2014 Doug Zongker <dougz@google.com> @hide RECOVERY permission

Bug: 16959027
Change-Id: I99fbdf24d5e8bce4beb32fa872e0caa6bfdbe1e9
owerManager.java
ecoverySystem.java
cd0e335be354d117c553bb87b3432a75d550d21a 08-Aug-2014 Dianne Hackborn <hackbod@google.com> Fix issues #16655104 and #16875776 in battery stats.

Issue #16655104: Android system used 21% of battery

We weren't clearing the current process state when we now retain
process objects across resets.

Issue #16875776: abnormal outliers in screen-off battery life in go/batterystats

The checkin data since charged was using the since unplugged data
for the amount of drain with the screen on/off.

Also added a new version tag in the checkin output containing
the platform build number and internal version format number, to
start moving away from the wasteful version code on every line.

And fixed a bug in figuring out when things have changed over
discharge levels.

Change-Id: I89b89513a748016aacc848f14bbbc8b2400d92ca
atteryStats.java
c08cb0ed7a01cd076e8277e49e1492eeab09e9fa 07-Aug-2014 Kenny Guy <kennyguy@google.com> Revert "Revert "Remove String version of getBadgedLabel""

This reverts commit 82020f109d78af889dfc5e86ede04c54fb6f1de2.

Bug: 16484455
Change-Id: I601edbb705cacd29bf30f90c8666c5f516796ebb
serManager.java
cbd7a6ecbb7aa5a4ea146cf05f1ec254eb3e60b9 06-Aug-2014 Christopher Tate <ctate@google.com> Introduce system API for distinguishing the owner user

Support services that special case the owner but are instantiated
per-user, and so need to be able to distinguish.

Bug 16661321

Change-Id: I7ff5168c91e39821317fdf5cfaba34e90d30de95
serHandle.java
0068d3dcf1f1a804554a1a09e3b173ac12651786 07-Aug-2014 Dianne Hackborn <hackbod@google.com> Fix issue @16555033: Battery history overflowing too much

- No longer track process starts/stops normally.
- Increase buffer size to 256KB.
- Buffer size increase requires reworking how battery stats
are retrieved, since it is going to be hitting IPC limits.
- Also, store the last full stats after a reset, to be reported
at the next checkin.
- Also, discharge and charge times are tagged with the screen
and battery save state during that time.

Change-Id: Ie108ac9b626846108a9bb858101ac2b93276ac16
atteryStats.java
UserManager.aidl
9962f335a176508c30e539565ad63518fa8ca0d1 07-Aug-2014 Kenny Guy <kennyguy@google.com> Revert "Remove String version of getBadgedLabel"

This reverts commit ed0096c14ae1b17845bc9bb8fbb1cdc47adfdd68.

Change-Id: If026db7e804be81aaa02cfd2a4e1a0a03ee020f1
serManager.java
4a4f275f24f6673c435c5205522273ba3500dbcc 07-Aug-2014 Kenny Guy <kennyguy@google.com> Remove String version of getBadgedLabel

It was left to allow unbundled apps time to update.

Bug: 16484455
Change-Id: Ibae2576ac7fc88000ec81c669e66536aaa2e3e79
serManager.java
6ac5db5777598b174cc815547ae3ef4e3c405676 07-Aug-2014 Paul Jensen <pauljensen@google.com> Merge "Revert DNS cache flush command deletion from "Cleanup: Delete dead code."" into lmp-dev
b69a3a8eaade042aa5b4d17f9b0dfd565c2e4a97 06-Aug-2014 Paul Jensen <pauljensen@google.com> Revert DNS cache flush command deletion from "Cleanup: Delete dead code."

This reverts part of commit 7a161c535104555890fa78b99faf1f414fc03e85.
The DNS cache flushing code needs to be called when routes change.

Change-Id: I20d39eabfa088deeeeeff0c3292b1910fd948b0d
bug:16549455
NetworkManagementService.aidl
c71c42fdb2ee54a419dc8eb0a5f4f82532b16c0c 06-Aug-2014 Svetoslav <svetoslavganov@google.com> Polish of the app widgets cross-profiles feature.

1. Added API for badging an arbitrary drawable at a given location.

2. Updated the icon and previewImage deprecation as they are no longer
returning a badged drawable. The methods to load the icon and the
preview are now just making it easier for a developer to get the
drawables.

3. Fixed a bug in AppWidgetServiceImpl leading to a crash when a user
is removed.

4. Fixed a bug in AppWidgetHost which was unnecessarily caching its
package name and having code paths where the cached value was not
populated when calling into the system.

bug:14991269

Change-Id: I50d011a6597d88814715d5ec04ee67815e8ce0bd
serManager.java
1bb480a3a4ce2ce63c5d09fa7f5cc38ec160ebf4 02-Aug-2014 John Spurlock <jspurlock@google.com> Battery saver: new policy changes + SystemUI tweaks.

- Service policy changes: allow the user to turn off (snooze)
saver mode below the auto-trigger level. Plugging in the
device always exits saver mode.
- Default trigger level is now 0 (never) instead of 15.
- SystemUI now also listens to a new POWER_SAVE_MODE_CHANGING,
since waiting for _CHANGED can take seconds.
- Move shared feature description text into the framework so it
can be shared.
- Tweak dialog title + action strings.
- Remove trigger-level from SystemUI, it no longer needs it.
- Add the ability to turn off saver mode directly from the
notification.
- Migrate saver confirmation dialog to common system UI dialog
helper, and add a few convenience methods.
- Fix bug where the status bar area would be orange over the keyguard
in SHADE_LOCKED mode.

Bug:16214395
Change-Id: I3d1ded1eec9e63e7d97469486f6a320e1bebbccd
owerManager.java
ceb2adca4905bc1f80545792d82bed5d877ed583 01-Aug-2014 Jeff Sharkey <jsharkey@android.com> Merge "Persist install sessions, more lifecycle." into lmp-dev
1cb2d0d4bba387665128c62c342e59103ea4be26 31-Jul-2014 Jeff Sharkey <jsharkey@android.com> Persist install sessions, more lifecycle.

To resume install sessions across device boots, persist session
details and read at boot. Drop sessions older than 3 days, since
they're probably buggy installers.

Add session callback lifecycle around open/close to give home apps
details about active installs. Also give them a well-known intent
to show session details.

Extend Session to list staged APKs and open them read-only, giving
installers a mechanism to verify delivered bits, for example using
MessageDigest, before committing.

Switch to generating random session IDs instead of sequential.

Defensively resize app icons if too large. Reject runaway
installers when they have too many active sessions.

Bug: 16514389
Change-Id: I66c2266cb82fc72b1eb980a615566773f4290498
rocess.java
8616af1a4dd1877996fbd5bb0179659f4f123573 31-Jul-2014 Amith Yamasani <yamasani@google.com> Setup correct initial guest restrictions

Disable SMS by default, in addition to any other the primary
user may have set.

Bug: 16474761
Change-Id: I67b510ac72c2adfcafd95fb34e50ab5d8194090a
serManager.java
12451a39f480dde93a9280c1f289625eab92881f 30-Jul-2014 Julia Reynolds <juliacr@google.com> Merge "API council - DISALLOW_APPS_CONTROL -- need better documentation." into lmp-dev
c617f815453b6e70a0165924907e69a0f993e651 25-Jul-2014 Julia Reynolds <juliacr@google.com> API council - DISALLOW_APPS_CONTROL -- need better documentation.

Bug: 16401636
Change-Id: I168033eaabdb953d8e73f63792a7e729eb9eeff6
serManager.java
ff701a6a65f6e1f13bfb0b4561f0dd14272b4820 30-Jul-2014 Torne (Richard Coles) <torne@google.com> Parse system properties that are lists correctly.

String.split() returns a one-element array of the empty string if the
input is the empty string, not a zero-element array. Introduce a
getStringList function to handle this consistently in the cases where
system properties are parsed as comma separated lists.

The main result is that SUPPORTED_64_BIT_ABIS will now correctly be
empty on a 32-bit only device.

Change-Id: I6f74b48d0a6ced3cd6d49c05aad6a4b7e0b074d2
uild.java
bf3a9465483976dcd5692b619b47132c2b95f73e 28-Jul-2014 Amith Yamasani <yamasani@google.com> Set profile owner via an intent

priv apps can request to become a profile owner after setup has
completed. This will pop up a consent dialog (in Settings).

Also, clean up profile owner concept to be a component name.

Change-Id: I5e8532866e8018f61836c4e84fbbadb6150218ae
serManager.java
42065ac64cba166dc0fe602957ea8fe80bf406e2 27-Jul-2014 Sreeram Ramachandran <sreeram@google.com> Prohibit address families by default unless a VPN explicitly allows them.

Bug: 15972465
Change-Id: I3278d94536fefacc86390c1ba4231680f7be8589
NetworkManagementService.aidl
39c12fab49075b715c253c68c84b5c10c3150197 26-Jul-2014 Sandeep Siddhartha <sansid@google.com> Use blob (shared memory) for large data in sound model/recognition event/config

Also add a missing null check in writeBlob

Bug: 16516353
Change-Id: Ie702f8daae541cab7c2cee6e13d49e7fc84c84e1
arcel.java
90d7a3e996ee3a6e33e655341c5d301fbe30cd58 26-Jul-2014 Sandeep Siddhartha <sansid@google.com> Add read/writeBlob to Parcel

These are {@hide}en for now.

Bug: 16516353
Change-Id: Ie1635617ee8611a78be9068a7ce674e34c30301d
arcel.java
8cd33ed84e94036a5e1201485af7603dc6fb0d9b 24-Jul-2014 Sreeram Ramachandran <sreeram@google.com> Implement support for bypassable VPNs.

Bypassable VPNs grab all traffic by default (just like secure VPNs), but:
+ They allow all apps to choose other networks using the multinetwork APIs.
If these other networks are insecure ("untrusted"), they will enforce that the
app holds the necessary permissions, such as CHANGE_NETWORK_STATE.
+ They support consistent routing. If an app has an existing connection over
some other network when the bypassable VPN comes up, it's not interrupted.

Bug: 15347374
Change-Id: Iaee9c6f6fa8103215738570d2b65d3fcf10343f3
NetworkManagementService.aidl
237aecd18d0edf56c038761f570758c310c9e6df 21-Jul-2014 Kenny Guy <kennyguy@google.com> Change getBadgedLabelForUser to use CharSequence

Bug: 16401636
Change-Id: I45410a6293007dd789d6770d63397824559b756e
serManager.java
f1939901d2ed0480069f0b23be64f122fce93995 25-Jun-2014 Nicolas Prevot <nprevot@google.com> Making the clipboard work across users.

When copying from the parent: the ClipData can be pasted in the managed profile.
When copying from a managed profile: it can be pasted in the parent,
unless the policies says it's disabled. In which case, the clipboard of the parent becomes empty.
Supporting content uris.

BUG: 15186236

Change-Id: I522564a7c07ff21df137adcda980bb52e5739964
serManager.java
10eaa8574bb220e7dddf9a78057f83dc64ee5687 23-Jul-2014 Dianne Hackborn <hackbod@google.com> Fix issue #16467284: Make noteStartVideo and noteStartAudio nesting

Also add new methods to clear these states, so we can avoid any
nesting issues from getting the tracking state stuck.

Change-Id: Iba0eaba2a9a186355c24d392f16118982c5331ed
atteryStats.java
03666c705ddabe0e7c5869ab69c2ca8b964164e9 20-Jul-2014 Sreeram Ramachandran <sreeram@google.com> Cleanup: Delete dead code.

Bug: 15413389
Change-Id: I315468832ef18ffc84174e54774ab63b86d284dc
NetworkManagementService.aidl
a77760d74ad544bbd4f6310fd28b395f24c5467d 18-Jul-2014 Sreeram Ramachandran <sreeram@google.com> Fix WiFi-Direct.

Add a new command to let netd know about routes on a p2p interface.

Bug: 15413694

Change-Id: I36effc438d5ac193a77174493bf196cb68a5b97a
NetworkManagementService.aidl
970d4132ea28e748c1010be39450a98bbf7466f3 19-Jul-2014 Jeff Brown <jeffbrown@google.com> Allow dreams to control screen state and brightness.

Added setDozeScreenState() and setDozeScreenBrightness() methods to
DreamService. The values specified here only take effect once
startDozing is called and can be changed while dozing.

This required some significant rework of the display power controller
but the result seems quite nice and better represents the policy
we want to apply.

Changed the test dream a little bit to make it flash the screen
every minute using the new functions.

Bug: 15903322
Change-Id: I83bcc34503f1b87727d2b2b3c0ef08507f9f0808
owerManager.java
owerManagerInternal.java
9c44933958bc03b93eac2452b26dd75567581b86 19-Jul-2014 Amith Yamasani <yamasani@google.com> API Review: Improvements to RestrictionsManager API

Use an activity intent for local approval instead of a type.
Use PeristableBundle instead of Bundle.
Pass requestId as an explicit argument in cases where it's required.

Bug: 16400892
Change-Id: Id882033f17c39aa9cd63a7eeb73bb7b51f98cf5b
ersistableBundle.aidl
89c3b29a9bfa0ae9858b913bc1ab6604c4613a15 20-Jul-2014 Jean-Michel Trivi <jmtrivi@google.com> Rename USAGE_NOTIFICATION_TELEPHONY_RINGTONE

AudioAttributes: rename USAGE_NOTIFICATION_TELEPHONY_RINGTONE to
USAGE_NOTIFICATION_RINGTONE in the list of usage values.
Temporarily keep the old definition to prevent transient build
breakages, will be removed after telephony packages have been
updated.

Bug 16401631

Change-Id: I9398443fd7ba3c30e9d371c5c5a2934b9ea6f30a
ibrator.java
7b41467704f941b11af6aace3e40993afc7f6c6f 18-Jul-2014 John Spurlock <jspurlock@google.com> Zen mode filtering should use new usage constants.

Refactor stream-based calls to usage-based calls.

Bug:15279516
Change-Id: I3f7757d8123c14670e2ad5f8e6aa4e9803efe7ec
VibratorService.aidl
ullVibrator.java
ystemVibrator.java
ibrator.java
390989da1967f9d385212cd2e22a50589ce69046 17-Jul-2014 Amith Yamasani <yamasani@google.com> Split telephony restrictions into outgoing calls and sms

DISALLOW_TELEPHONY renamed to DISALLOW_OUTGOING_CALLS and introduced
DISALLOW_SMS.

Outgoing emergency calls should always be permitted.

Change-Id: I0a38ef6e2df9dcf62d16fd93622ad61f4327614f
serManager.java
38d3c26fd57a9dc6f4ac09827120b713ceb04ebe 17-Jul-2014 Julia Reynolds <juliacr@google.com> Merge "Update message on DISALLOW_REMOVE_USERS constant." into lmp-dev
08cfaf672604422dd355d6703aec78f3aa5ee74e 08-May-2014 Torne (Richard Coles) <torne@google.com> Use the WebView's loader library to load the real library.

Load libwebviewchromiumloader and use it to load the real WebView
library, to enable sharing of the relro segment between different
application processes without requiring that the library be preloaded in
the zygote. A system service is added to track whether the relro segment
file has been prepared, and block loading of the library until it has
been.

Bug: 13005501
Change-Id: I846b37c7b8e2a4eb8a39e4fd455bccbb2048c173
rocess.java
5b8224901b5de0cfe7b4a1d3cb158e38243ef99f 17-Jul-2014 Julia Reynolds <juliacr@google.com> Update message on DISALLOW_REMOVE_USERS constant.

Change-Id: I4f873eba4082278553ded830bb902fb3a3195d87
serManager.java
fdb1956ff71ff57fcdaafaaeb7f42c19de3d7c2f 12-Jul-2014 Dianne Hackborn <hackbod@google.com> Fix issue #15681802: Missing RESET:TIME in complete battery histories

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
atteryStats.java
213bb2fd4da092826e45aae1a50403ab9c634d70 08-Jul-2014 Ashish Sharma <ashishsharma@google.com> Report wakelock time in checkin stats in ms. Bump version.

Change-Id: Icd5cebb3434572cb226ef018629fcfca8bfc08e8
atteryStats.java
1dcdbb5af50053613d01710123b45e2463350ac7 13-Jul-2014 Narayan Kamath <narayan@google.com> Merge "Unhide Build.SUPPORTED_ABIS and friends."
1adf4002e7517c9981df0d1320e18b38a86978f8 12-Jul-2014 Narayan Kamath <narayan@google.com> Unhide Build.SUPPORTED_ABIS and friends.

Also deprecates Build.CPU_ABI and Build.CPU_ABI2.

bug: 15018047

Change-Id: If8bda8481b29442c0208ba8a72ec0037e813946c
uild.java
a10311434778ea1be1621c2251c0c8c2966f337b 13-Jul-2014 Jeff Sharkey <jsharkey@android.com> Package installation listener events.

Flesh out implementation of install session observers. Carve out 20%
of published install progress for final system operations such as
dexopt, etc.

Add dumpsys output for active install sessions. Create explicit
fsync() instead of overriding meaning of flush(). Hack to throw
IOExceptions over Binder calls.

Bug: 14975160, 15348430
Change-Id: I874457e40c45d2661bc0a526df9285ffea4bb77c
ileBridge.java
06b6cdaed5c68816faac9d2354c6caf61e65e19d 12-Jul-2014 Sreeram Ramachandran <sreeram@google.com> Remove unnecessary code and APIs.

This stuff has been replaced by setNetworkForUser() in NetdClient.

Change-Id: If525ee259b74314191d1913f7c2a3e828e05c38f
NetworkManagementService.aidl
31ab41726b84c31a6aa45c929aad4ad04d32a992 12-Jul-2014 Sreeram Ramachandran <sreeram@google.com> Delete unused APIs in NetworkManagementService.

Change-Id: Idc6c0ac0d3a4149821fc7820b7f37d4209fc55d3
NetworkManagementService.aidl
3c58775a126c9c9b2f86bc22bd82cedbdcb06024 11-Jul-2014 Dianne Hackborn <hackbod@google.com> Merge "Allow INTERACT_ACROSS_USERS for service access."
409297da182267465adbc21cfb75a23e8d678117 11-Jul-2014 Dianne Hackborn <hackbod@google.com> Allow INTERACT_ACROSS_USERS for service access.

But only if the two users are in the same profile. Also
apply the same rule for the recently allowed interaction
across content providers.

The activity manager now keeps track of which users are in
the same profile group, and the handleIncomingUser function has
an option to allow a non-full caller to do the interaction
if the two users are in the same profile group.

Spread this joy all over the place.

Also turn off multi-user on Svelte devices.

Change-Id: I231484ea2a6bfccbb3cd51357d7a387bd75039ea
serManager.java
cba121541223a5fcaa6afe9cdf472b63865ea173 08-Jul-2014 Ashish Sharma <ashishsharma@google.com> Correctly attribute User Activity to the uid in checkin batterystats.

Change-Id: Iacca5985c0b5a68026da6b2b5c9607f8cb71aad5
atteryStats.java
6bc2c2c34f2b23eae79ad733c97a691734055c4f 07-May-2014 Paul Jensen <pauljensen@google.com> Convert Vpn from NetworkStateTracker to NetworkAgent.

This eliminates the need for the ConnectivityService.VpnCallback class.
This requires shifting VPNs to the new "network" netd API.
VpnService.protect() is modified to no longer go through ConnectivityService.
NetworkCapabilities is extended to add a transport type for VPNs and a
capability requiring a non-VPN (so the default NetworkRequest isn't satisfied
by a VPN).

bug:15409918
Change-Id: Ic4498f1961582208add6f375ad16ce376ee9eb95
NetworkManagementService.aidl
0769e550011d8f8a19e333efe1706ef0e6cc6a5f 03-Jun-2014 Colin Cross <ccross@android.com> android.os.Process: add killProcessGroup

Add Process.killProcessGroup to interface between ActivityManager and
libprocessgroup.

Bug: 15313911
Change-Id: I5226a6d86153b863e30d936cf1c84e256f0d7ea5
rocess.java
61659e5daaea80104d4d0fd567e78b5f757b5df4 10-Jul-2014 Dianne Hackborn <hackbod@google.com> Add tracking of uid process states in battery stats.

We now keep track of how long each uid had processes in
various states: foreground, active, running. This is based
on a collapse of the various activity manager process states
into these three bins.

You'll see these in a checkin like this:

8,10013,l,st,61504,61504,83109

Also fix issue #16021555: App showing up as on "top" even
when the screen is off. This is "fixed" by just saying we
always report the current app at the top of the activity stack,
regardless of the state of the screen.

Change-Id: I1204904225101243eb00b43425d9806bffdd2ab9
atteryStats.java
ec55ef0934b8e0d1bb705434947de817f7be57f1 08-Jul-2014 Jeff Sharkey <jsharkey@android.com> Extend pm to support sessions and split APKs.

Separate commands to create an install session, stream files into the
staging area, and then commit the install. Streaming can accept data
from stdin across adb, avoiding extra copy from push.

Extend FileBridge to support blocking close(). Always destroy
session regardless of result.

Bug: 14975160
Change-Id: Ic3f462e7d1901079b785e210228950cdfa676466
ileBridge.java
3b345a6f9103c1677a696b4770cc318df45cdcaa 05-Jul-2014 Nick Kralevich <nnk@google.com> Merge "Fix javadoc typo in Message.java: "arg1" -> "arg2""
fe0538098403b49ebd9219bf77236471bb5ca63b 30-Jun-2014 Julia Reynolds <juliacr@google.com> Restrict factory reset with user restrictions.

Bug: 15985879
Change-Id: I524bd8a790798a85a679aa195e634f6e0227d09f
ecoverySystem.java
d746057f2414cba2bdc69257cc5be8cb681bb592 07-Jul-2014 Jeff Sharkey <jsharkey@android.com> Change new file installs to be cluster-based!

Now that all the other pieces are in place, we're ready to start
installing new file-based packages as a cluster (the new unified
directory-based layout). This greatly simplifies the renaming
process.

Also add helper methods to ApplicationInfo to give a much clearer
mapping between it and internal field names, since we can't change
the public API.

Add recursive restorecon().

Bug: 14975160
Change-Id: I72a63c5ddbc594c2fec4a91dd59f73ef253fbfd7
ileUtils.java
ELinux.java
ece4b655dcdcebac9434c91c2786f25aee6413c5 06-Jul-2014 Jeff Sharkey <jsharkey@android.com> Merge "Extract native code from split APKs."
1a20216bb27900475aa05434de21ab54f391ce55 05-Jul-2014 Nick Kralevich <nnk@google.com> am 3e5f0229: am 58005ec5: am 3b345a6f: Merge "Fix javadoc typo in Message.java: "arg1" -> "arg2""

* commit '3e5f0229e10be4179f763efd6119b63bcea6d162':
Fix javadoc typo in Message.java: "arg1" -> "arg2"
3e5f0229e10be4179f763efd6119b63bcea6d162 05-Jul-2014 Nick Kralevich <nnk@google.com> am 58005ec5: am 3b345a6f: Merge "Fix javadoc typo in Message.java: "arg1" -> "arg2""

* commit '58005ec545fd011418b6400a3b377fea6928c933':
Fix javadoc typo in Message.java: "arg1" -> "arg2"
73767b9d607d99b3a027619b5c6b7f1a09b7673d 05-Jul-2014 Jeff Sharkey <jsharkey@android.com> Extract native code from split APKs.

In the new split APK world, multiple APKs work together to define a
single package. This means that native code may be split among those
APKs. To handle this, extend NativeLibraryHelper to examine all
APKs in a package ordered by splitName.

A package has valid native code as long as one matching ABI is found
inside. The "best" ABI found across all APKs is picked for the
entire package. No attempt is made to ensure that every native
library defined is available for the picked ABI; that's the
responsibility of the installer.

Re-introduce PackageLite to represent a lightweight parsing of an
entire package, which may be a single monolithic APK or a cluster
of one or more APKs.

Remove native code extraction from InstallerSession, since it'll be
handled inside PMS for this release.

Bug: 14975160
Change-Id: I4f4db0f82e88a46101c7777499ebc0a11fd911f9
ileUtils.java
57dcf5b177b56195421535938544f32d8b591b42 19-Jun-2014 Jeff Sharkey <jsharkey@android.com> Slow progress towards APK clusters.

Differentiate between "split APKs" and "cluster packages". A cluster
package is a directory containing zero or more APKs (base+splits),
and a monolithic package is a single APK (base).

PackageSetting will use the directory name as its codePath, so track
the baseCodePath separately. Clarify documentation in several
places.

Require that all installers provide file:// URIs through existing
hidden APIs; PackageInstaller hasn't been able to read content://
URIs for a long time.

Bug: 14975160
Change-Id: I1c6fed1b55205c2474b09871161a98a26669d22e
ileUtils.java
ELinux.java
1c7c319bb89b9988bfd12afc3e8d89449fd163fc 26-Jun-2014 Jason Monk <jmonk@google.com> User restriction for disallowing window creation

Block any types of windows that could by used by apps to create
views on top of a locked app. This can be used by device admins
in conjunction with lock task mode.

Added a way for system (and priv apps) to bypass user restrictions
for specified op codes.

Bug: 15279535
Change-Id: I2381530ef6226a5bb32a99bb4030baafb39bf564
serManager.java
abc7c499133fe640d6ece2b28d43b52e66cdaa9a 01-Jul-2014 Dianne Hackborn <hackbod@google.com> Issue #15986092: Add power tracking of flashlight.

Not yet hooked up.

Change-Id: Id95e44ecc365e9f38169c0a629b0a48ddb29aa06
atteryStats.java
aeaf87fe452353371b36da42e5beccca3150ab08 26-Jun-2014 Narayan Kamath <narayan@google.com> Update javadoc for android.os.Bundle.

Call out the fact that defaultValue is returned if a null
mapping exists for a given key.

bug: https://code.google.com/p/android/issues/detail?id=68453

(cherry picked from commit ca2197b0457b1626b95a053d835ceaca43ac0286)

Change-Id: Iec70478ae091bb222be6e9ef9726c817395e9e23
aseBundle.java
e4afaa3a3d7c2885b82fe43f51bcf04e036f7462 30-Jun-2014 Amith Yamasani <yamasani@google.com> Store and retrieve default Guest settings

Save the default guest restrictions for use when a guest is created.

Bug: 15761405
Change-Id: I28db7d823944b0b47527a4909c10cc856c842a62
UserManager.aidl
serManager.java
cb3ed1dc287ddb9beb7c9186713426f5fba263c3 28-Jun-2014 Dianne Hackborn <hackbod@google.com> Add new sendingUid field to Message.

This tell you where the message came from when it was
delivered through a Messenger.

Change-Id: I86a5f521c8ae919b45872dd76b61e83447f397ab
andler.java
essage.java
816cff12e1864c4e3d2a9bdc5f57b4b8cc03ac86 24-Jun-2014 Narayan Kamath <narayan@google.com> am c141ae54: am 989ab6d3: Merge "Update javadoc for android.os.Bundle."

* commit 'c141ae547e9b295ce9013591a6fbb902b0e40073':
Update javadoc for android.os.Bundle.
b3af535adec8003d42c38d289ca514c92373c1fe 24-Jun-2014 Narayan Kamath <narayan@google.com> resolved conflicts for merge of 816cff12 to master

Change-Id: I33990232771138dcf91f55c7cde6bbfe40612b8f
3251b9075246841a7b1ddecf10859b1abd858f33 20-Jun-2014 Dianne Hackborn <hackbod@google.com> Add some wifi tracking to battery stats.

Now track supplicant state and wifi signal strength.
Output looks like this:

+12m45s235ms (1) 095 +wifi_full_lock +wifi_running wifi_signal_strength=3 wifi_suppl=scanning
+12m46s095ms (1) 095 -wifi_full_lock wifi_suppl=associated
+12m46s469ms (2) 095 wifi_suppl=completed +proc=u0a74:"com.google.android.videos"
+12m52s103ms (1) 095 +wifi_full_lock wifi_suppl=disconn

Also modify history dump so that when we hit a RESET or START
command, we clear our previous history data, so the next event
will include new data. This means if you are scanning through
the output, you must at this point clear any binary stats you
have like "running" or "wake_lock" or else you will continue to
think they are on until whatever point later they get turned on
and then back off.

And a small bug fix in proc stats that would cause the system
process to crash.

Change-Id: Ibec416a1ef786d428bd0d1d86e6e3296c41f7648
atteryStats.java
ca2197b0457b1626b95a053d835ceaca43ac0286 19-Jun-2014 Narayan Kamath <narayan@google.com> Update javadoc for android.os.Bundle.

Call out the fact that defaultValue is returned if a null
mapping exists for a given key.

bug: https://code.google.com/p/android/issues/detail?id=68453
Change-Id: Ifa6e94c1dee47809f70cadcb668cb98cb8dbef14
undle.java
d0eb55360fb94faa632cf65f246260827dc4a177 18-Jun-2014 Denver Coneybeare <denver@sleepydragon.org> Fix javadoc typo in Message.java: "arg1" -> "arg2"

Change-Id: I245eadaf322dce9e27af30d8dbb6d97ca0d296ce
essage.java
f7ecf7c80520c017255cb350d183f0b62022349b 18-Jun-2014 Kenny Guy <kennyguy@google.com> Add badging a label to support accessibility.

To provide a way to differntiate the content description
of an icon that has been badged with a managed profile
badge.

Bug: 15106236
Change-Id: Icd5798bbd2410a105054877e3862e199eff24b88
serManager.java
36fbc8d6453da438a8ab83352ff1bcfcba5f25b5 18-Jun-2014 Julia Reynolds <juliacr@google.com> Rename apps User Restriction.

Change-Id: I9f81a6b94ba06b593e7213967df51c7cb30a7b31
serManager.java
2139276ce8b54aba5faa858ca69ed5f01445c269 14-Jun-2014 Jeff Brown <jeffbrown@google.com> Refactor BatteryService to new pattern.

Apply SystemService pattern to BatteryService.

Change-Id: I4971b2da8d2aed4d14440fb65863a8b916bab03c
atteryManagerInternal.java
2c43c339de5aaf4fef58aa9b5ac3af48609263a8 13-Jun-2014 Jeff Brown <jeffbrown@google.com> Resolve boot time dependencies related to the power manager.

This change fixes a bug where native daemons may try to communicate
with the power manager before it was fully initialized due to a race
between publishing the binder service and completing init().

The solution was to simplify the dependencies related to the power
manager. It turns out that most services that were passed in
init are not actually needed until systemReady. What remained
was a dependency on the activity manager to check permissions for
incoming calls. So now we start activity manager first.
However, the activity manager also depends on power manager for
wakelocks. To break the cycle, we now defer initializing the activity
manager's wakelocks until after the power manager has been started.

Cleaned up a bunch of boot-time service dependencies so that we
can have better confidence that they are correctly maintained.

Bug: 13884219
Change-Id: If08e2d7ccd44e7026a72441bb6bd5afd7bb9fffe
owerManagerInternal.java
19b8fe225dfd669406ee3e172747bd405ce49b1f 13-Jun-2014 Alexandra Gherghina <alexgherghina@google.com> Merge "Modifies APIs for retrieving managed profile accounts."
c1cf161af036e0f337b58ef0739a8ff2e42f01e7 05-Jun-2014 Alexandra Gherghina <alexgherghina@google.com> Modifies APIs for retrieving managed profile accounts.

This is needed for Account Settings UI.

Bug: 13656853
Change-Id: I33129e4b7b33b428a7bf670259accacb60f62d9b
serHandle.java
a596ff87cd899640334512371456b8481ba21b4a 13-Jun-2014 Amith Yamasani <yamasani@google.com> Show user switcher if guest is enabled

even if there's only one user.

Bug: 15549064
Change-Id: Ib9bc5e6cdc6f2655e44ec0a10a701dd39389e648
serManager.java
1e9c21871e81642669079cd290ef47818a3165bd 12-Jun-2014 Amith Yamasani <yamasani@google.com> Guest user first iteration

Setting for controlling if guest is enabled on the device.
Setting to hint to apps that they should skip showing first use clings.

User switcher handles creation and deletion of the guest user.
Some tweaks to the user switcher to show some feedback and make the icons
circular.

Change-Id: I187dc381d2ee7c372ec6d35e14aa9ea4dfbe5936
UserManager.aidl
serManager.java
03f5ff482e58474e9da7a2213fb96d0e0a877a4b 09-Jun-2014 Julia Reynolds <juliacr@google.com> Merge "Unhide UserManager.hasUserRestriction()."
c42ef37e2822e95e28162fb1477e332052ff4b39 07-Jun-2014 Todd Poynor <toddpoynor@google.com> am 1be0bda2: Merge "BatteryManager: battery property query API update" into lmp-preview-dev

* commit '1be0bda27ef001c41f4d4361f079eb5ca6592b04':
BatteryManager: battery property query API update
407a4034028da8578bca361bb4eaed46bc07e885 07-Jun-2014 Todd Poynor <toddpoynor@google.com> Merge "BatteryManager: battery property query API update" into lmp-preview-dev
2b2cf72f10f13d9314a1c53386188ed48e12d47c 06-Jun-2014 Julia Reynolds <juliacr@google.com> Unhide UserManager.hasUserRestriction().

Bug: 15466331
Change-Id: I83a0a77ffcb9781ec0517aed219ee9012137676f
serManager.java
d8883df650b77dba3be38fb2ca8980594b901461 06-Jun-2014 Dianne Hackborn <hackbod@google.com> am 87bc3c25: Merge "Improvements to low power mode." into lmp-preview-dev

* commit '87bc3c258d8be516bc0fcedeb6eec34088582061':
Improvements to low power mode.
421e2fd044815f00f0160810a052658abd95c4d8 06-Jun-2014 Dianne Hackborn <hackbod@google.com> Merge "Improvements to low power mode." into lmp-preview-dev
eb94fa7975b1e8742f3b00cec6bd4f9d6b329e3a 04-Jun-2014 Dianne Hackborn <hackbod@google.com> Improvements to low power mode.

Add new public API for monitoring low power mode.

BatteryService now puts device in to low power mode when
battery level is low.

Window manager now watches low power mode to turn off
animations.

Modifying the animator scale now gets propagated to all
processes.

Change-Id: I8fa566994764ddd4e1977631e28381ab9409f8ee
PowerManager.aidl
owerManager.java
5fde3ff375e6cec3c11ddef7a4650d5f5f4942d1 05-Jun-2014 Todd Poynor <toddpoynor@google.com> BatteryManager: battery property query API update

Move battery property value accessors to BatteryManager.

Hide BatteryProperty class.

Bug: 15191190
Change-Id: Ic021e6e28a8bc30c145ccc31b3a3446ba82d2004
atteryManager.java
atteryProperty.java
d450a3a9959eaca56ee7fcb03919819c2481437b 05-Jun-2014 Robin Lee <rgl@google.com> am 7f993419: am 3c189e02: am 271251d7: Merge "Add Environment call: get config dir for some user"

* commit '7f99341950273f5284186ea2e59a22ac71241c30':
Add Environment call: get config dir for some user
7f99341950273f5284186ea2e59a22ac71241c30 05-Jun-2014 Robin Lee <rgl@google.com> am 3c189e02: am 271251d7: Merge "Add Environment call: get config dir for some user"

* commit '3c189e02e42fba9d5be2c4f68f76620bae33618e':
Add Environment call: get config dir for some user
8a0101bade3f817d925bd931d0b83bc454dedea4 09-May-2014 Kenny Guy <kennyguy@google.com> Badge notification from managed profiles.

Add a method to the UserManager to provide access
to bitmap of badge for managed profile.
Overlay the icon view in notification templates with
the badge from the UserManager.
Notifications with custom views won't be badged.

Bug: 12641490

Change-Id: I1f2aae927e75fc8a955e4d5bbc3cc81127d87069
(cherry picked from commit 0f4ab980227e8c298bfcd34dd85aad0febad528c)
serManager.java
6959133d84b52ad177b22efc80b10dc1ad3fb62f 28-Apr-2014 Robin Lee <rgl@google.com> Add Environment call: get config dir for some user

This returns a read-only directory accessible to any app running as the
same user, containing various configuration files written by the system.

Change-Id: I635de184fc285b8fef166b782bbc1ac79f8f0687
nvironment.java
d0969135aab791f1ec386e3239cdcd7653471da7 05-Jun-2014 Kenny Guy <kennyguy@google.com> Merge "Badge notification from managed profiles."
7f2d5162fd19345945d54cc864b3cc82bea35a2e 04-Jun-2014 Robin Lee <rgl@google.com> am c774caff: am 4891a9f9: am e46e6004: Merge "Assign AID_EVERYONE gid to newly-created processes"

* commit 'c774caff86d2e5dc5ca3a0008007cb0fd384568b':
Assign AID_EVERYONE gid to newly-created processes
c774caff86d2e5dc5ca3a0008007cb0fd384568b 04-Jun-2014 Robin Lee <rgl@google.com> am 4891a9f9: am e46e6004: Merge "Assign AID_EVERYONE gid to newly-created processes"

* commit '4891a9f9cfee569c0d362f1781f44493f5e320c0':
Assign AID_EVERYONE gid to newly-created processes
e46e60041215249a285384cd2282de9f4d956a04 04-Jun-2014 Robin Lee <rgl@google.com> Merge "Assign AID_EVERYONE gid to newly-created processes"
bcaffd05862b18a13d3aac5cbfc9114adf9ba595 03-Jun-2014 Dianne Hackborn <hackbod@google.com> am da4a186f: Merge "Some battery stats history fixes." into lmp-preview-dev

* commit 'da4a186f8bf49d8ea06d5ad6d402d9b073ee3841':
Some battery stats history fixes.
fc0641340ff927d9c35d5613723d25858f751118 02-Jun-2014 Dianne Hackborn <hackbod@google.com> Some battery stats history fixes.

- Now the full wake history uses the history tag if it can.
Hopefully this will still result in a consistent history,
since that isn't really want the tag is for... but the
current implementation in places will probably make this work.

- Possibly fix a bug with inconsistent state between partial
history snapshots: after a snapshot is printed, don't allow
any more batching into the most recent history entry, so the
next snapshot will not miss anything that might get placed
into it soon after.

Also rework command line arguments for enable/disable to make these
commands instead of options.

Change-Id: Ia33445cad1538bf8df549cef284f1e736efbc079
atteryStats.java
43e15653706d667a722a3b813ea89917d00ed42a 31-May-2014 Jeff Sharkey <jsharkey@android.com> am 9a78d4de: Merge "Per-app media directories on external storage." into lmp-preview-dev

* commit '9a78d4deb2d00dc67b2c11daf76b389e0712b535':
Per-app media directories on external storage.
05dc18d69ad64254f2bcdd9c1e208ab54ee664fe 31-May-2014 Jeff Sharkey <jsharkey@android.com> Merge "Per-app media directories on external storage." into lmp-preview-dev
2ee3c1e189819cc6efb4d7de24f1438bdb824087 31-May-2014 Jeff Sharkey <jsharkey@android.com> Per-app media directories on external storage.

This change defines per-app directories on external storage that
will be scanned and included in MediaStore. This gives apps a way
to write content to secondary shared storage in a way that can
easily be surfaced to other apps.

Bug: 14382377
Change-Id: I4cb367c870509e76f0c2c598f01e2f699780030a
nvironment.java
9de076a0a1c3081748497a5f924fda617d78cbc0 30-May-2014 Craig Mautner <cmautner@google.com> am b01b028e: Merge "Change PersistableBundle API per council\'s request" into lmp-preview-dev

* commit 'b01b028ed9a1a5b1a585152adf182afe16135c10':
Change PersistableBundle API per council's request
0a8e160eb56f3b8f504b37349a79ec4edb7e5039 29-May-2014 Craig Mautner <cmautner@google.com> Change PersistableBundle API per council's request

Fixes bug 15192573.

Change-Id: Ib98ef132c8c12e68e805cb3c0b1f7ae75940f17c
aseBundle.java
undle.java
ommonBundle.java
ersistableBundle.java
701ea7cf86b7d408b8d3bc1aab054be0333e1f26 09-May-2014 Kenny Guy <kennyguy@google.com> Badge notification from managed profiles.

Add a method to the UserManager to provide access
to bitmap of badge for managed profile.
Overlay the icon view in notification templates with
the badge from the UserManager.
Notifications with custom views won't be badged.

Bug: 12641490

Change-Id: I1f2aae927e75fc8a955e4d5bbc3cc81127d87069
serManager.java
fab7cbc9ced3d49df15b8c80cbf9b7fa7203e811 28-May-2014 Paul Lawrence <paullawrence@google.com> DO NOT MERGE: Hide crypto consts from docs

@bug 15192967

Change-Id: I134b2cb2d2841bc101e63a8a4dbd86f7b7bdca14
(cherry picked from commit 81ab14fb19a2669aa54c1a333c807c22d5c41a8e)
torage/StorageManager.java
b6102427ae0575cc1d32b94ec2dcac00fb81db4a 29-May-2014 Paul Lawrence <paullawrence@google.com> Merge "Hide crypto consts from docs"
9149c7abb29e94ff71a1a30dc9382b2638801ce6 29-May-2014 Elliott Hughes <enh@google.com> am a487fb77: am df0e9ed5: am 862be912: Merge "Updated Trace.h to recognize ATRACE_TAG_BIONIC."

* commit 'a487fb77dff1a86fbd160694de41e32b74f10cb1':
Updated Trace.h to recognize ATRACE_TAG_BIONIC.
a487fb77dff1a86fbd160694de41e32b74f10cb1 28-May-2014 Elliott Hughes <enh@google.com> am df0e9ed5: am 862be912: Merge "Updated Trace.h to recognize ATRACE_TAG_BIONIC."

* commit 'df0e9ed5536e2cab860f3ecf9dab0030a471766e':
Updated Trace.h to recognize ATRACE_TAG_BIONIC.
df0e9ed5536e2cab860f3ecf9dab0030a471766e 28-May-2014 Elliott Hughes <enh@google.com> am 862be912: Merge "Updated Trace.h to recognize ATRACE_TAG_BIONIC."

* commit '862be91276ec9532b3ed00d43fc7a750f1e6adb0':
Updated Trace.h to recognize ATRACE_TAG_BIONIC.
461ac24b8c2b400656a0bcd72743f03720af2fd0 28-May-2014 Brigid Smith <brigidsmith@google.com> Updated Trace.h to recognize ATRACE_TAG_BIONIC.

Bug: 15116468
Change-Id: I6aef941c6b6bd59347855f7265e701a3aaa08edc
race.java
e8fdc541dc8c4388dc3c6d52aff70f290d7fb985 28-May-2014 Paul Lawrence <paullawrence@google.com> Hide crypto consts from docs

@bug 15192967

Change-Id: I134b2cb2d2841bc101e63a8a4dbd86f7b7bdca14
torage/StorageManager.java
87e522efccdab28bf6b1262c28463a6d12b29f7e 27-May-2014 Ashish Sharma <ashishsharma@google.com> am 7279017f: Include START event (reboots) in partial history.

* commit '7279017f52ca1db58eb95bf881f3a2e238a7c2bd':
Include START event (reboots) in partial history.
6020071df901be17bedb0b59ab634555a1d95ecb 24-May-2014 Ashish Sharma <ashishsharma@google.com> Include START event (reboots) in partial history.

Change-Id: Ia1e5fba6c2c7bdb3f09eb5958d7134564d60e8b0
atteryStats.java
fc9e1e059213f067753da8d356edac82e277c466 27-May-2014 John Spurlock <jspurlock@google.com> Merge "DO NOT MERGE Hide vibrator streamHint overloads for preview." into lmp-preview-dev
0833d2bc87823c71851bd68bb7aeb1fb01d13d96 25-May-2014 Craig Mautner <cmautner@google.com> Merge "Add code for persisting tasks and activities to disk DO NOT MERGE" into lmp-preview-dev
098c0b8ca02241f11a74326bf6a0e5222a6529cc 24-May-2014 John Spurlock <jspurlock@google.com> DO NOT MERGE Hide vibrator streamHint overloads for preview.

Bug:15192966
Change-Id: I25f57053b6f62fb627ae4f451d5f64ee77b8eba0
ibrator.java
21d24a21ea4aaadd78e73de54168e8a8a8973e4d 23-Apr-2014 Craig Mautner <cmautner@google.com> Add code for persisting tasks and activities to disk DO NOT MERGE

Recent tasks that have the persistable flag set are
saved to /data/system/recent_tasks/ on shutdown and in the
background. Their thumbnails are saved to
/data/system/recent_images/.

Change-Id: Ifb820a01c412fe1f8c0f6e41aa655fafd89eaa8d
ommonBundle.java
ersistableBundle.java
b861179fcad905cc25315a429d3593dce4c05fd3 24-May-2014 Dianne Hackborn <hackbod@google.com> am b7a1d1e4: Merge "Fix issue #15195464: battery history says wakelock held when it\'s not" into lmp-preview-dev

* commit 'b7a1d1e4ed6ea26512d1e1f34fa264a639c91819':
Fix issue #15195464: battery history says wakelock held when it's not
536456f2d4c0d93bb55950ce5edc24e9bb9547eb 24-May-2014 Dianne Hackborn <hackbod@google.com> Fix issue #15195464: battery history says wakelock held when it's not

Simplify full wake lock logging, so wake_lock_in is a completely
separate event from wake_lock and provides the full real raw log
of wake lock events.

Also attempt to address issue #15018750 (Incorrect wakelock reporting)
by no longer being complicated and rolling up previous state in to a
new history slice.

Bug: 15195464
Bug: 15018750
Change-Id: I32154bdfc2f07113be969f9db5503b2f2807a427
atteryStats.java
deec695253aa5856135be3ffdcd35eaafed9e526 24-May-2014 Craig Mautner <cmautner@google.com> Merge "Add code for persisting tasks and activities to disk"
ef73ee1dd98acfc4a19561367cfc3e4d8bbe06ea 23-Apr-2014 Craig Mautner <cmautner@google.com> Add code for persisting tasks and activities to disk

Recent tasks that have the persistable flag set are
saved to /data/system/recent_tasks/ on shutdown and in the
background. Their thumbnails are saved to
/data/system/recent_images/.

Change-Id: Ifb820a01c412fe1f8c0f6e41aa655fafd89eaa8d
ommonBundle.java
ersistableBundle.java
5ec9aed64cd03545eded622cca214c83c170ab22 23-May-2014 Jeff Sharkey <jsharkey@android.com> Merge "Offer to stream and fsync() install sessions."
78cc340c2de873d6995c283b777476f7237d690f 22-May-2014 Jeff Sharkey <jsharkey@android.com> Offer to stream and fsync() install sessions.

Installers are interested in both streaming APK data and establishing
a happens-after relationship to support resuming downloads after a
process kill or battery pull.

This exposes a generic OutputStream for writing, and hooks up flush()
to be a blocking call which returns only when all outstanding write()
data has been fsync()'ed to disk.

Tests to verify behavior.

Bug: 14975160
Change-Id: I38289867c80ac659163bb0c2158ef12d99cc570d
ileBridge.java
d0045026b6a1fe6eba0d7a20fa3c8004d6d3ae1d 21-May-2014 Todd Poynor <toddpoynor@google.com> BatteryProperty: Fix ENERGY_COUNTER property id

Change-Id: I0490c0d589c637744c3db73596d34c1c4772074b
atteryProperty.java
d862ebb6036a769cb3be371b396e9e33f89ee365 21-May-2014 Narayan Kamath <narayan@google.com> resolved conflicts for merge of fcc4fed3 to master

Change-Id: Icebca982b01debd67a1470c02651ef8936f6e5b0
fcc4fed3c16a57ef713a96b7298ed43aaeef2df4 21-May-2014 Jeff Brown <jeffbrown@google.com> am 6fb904bf: Merge "Make power button behavior configurable." into klp-modular-dev

* commit '6fb904bfd1f943547d6e5bc6f199ffec2290da01':
Make power button behavior configurable.
6d8fd27e51d799cf7418b14092b5e806d9792812 21-May-2014 Jeff Brown <jeffbrown@google.com> Make power button behavior configurable.

Allow power button to be used to either go to sleep as usual,
which may doze, or skip that completely and really go to sleep.
May also really go to sleep and go home all at once.

Bug: 14406056
Change-Id: Ia19e2551b9c2a72271bb2eddd5c0d1749761e019
PowerManager.aidl
owerManager.java
9f6c25f57e26f3e2f9c744547a139d14b7d3db5c 16-May-2014 Amith Yamasani <yamasani@google.com> Per-user telephony restrictions

Allow profile owners or administrators of restricted profiles
to restrict access to telephony features such as calling and
texting for a user.

Change-Id: I89f97608c07c647ad8a7b43fef9d1e6bc4a84e95
serManager.java
3fce73a866e58232b484ca26b58b1394b0121b6a 16-May-2014 Dianne Hackborn <hackbod@google.com> Merge "Fix recording of wake_lock_in."
9a7554300637902bbb25991ffba41a9b8f682eff 16-May-2014 Dianne Hackborn <hackbod@google.com> Fix recording of wake_lock_in.

There was a bug that would allow the nesting count
to get off. Also better documentation of times in
HistoryItem, and new option to disable resetting of
the stats when unplugging.

Change-Id: If1b39a02475c5b620c67b700a323a6d0462d5c61
atteryStats.java
540f4d6db34905b38ee1095ef35fe98d3fa38a9e 09-May-2014 Todd Poynor <toddpoynor@google.com> BatteryManager: Add property ENERGY_COUNTER and long data type properties

Change-Id: Ie7f9b19c5cd47a48bb33af03d51acddaa14b0243
atteryManager.java
atteryProperty.java
0a3103e755218c1ee48c7d078892eb6b42cc2081 15-May-2014 Dianne Hackborn <hackbod@google.com> Merge "Battery stats more wake history, power save mode."
cbefd8dd2befcb768f911a63becc427ec4c13250 14-May-2014 Dianne Hackborn <hackbod@google.com> Battery stats more wake history, power save mode.

Add new option for battery stats to record the full wake
lock history, and recording the current power save mode.

Also add in some additional error constants when generating
Binder error exceptions.

And fix issue #14974572: Avoid repeating wakeup_reason at
the beginning of history

Change-Id: I7c1a2ab9569de216634f63d8ad69f1294ef1d235
atteryStats.java
owerManagerInternal.java
27a964b54d10bbc2793bb06557f69fef47177ebd 15-May-2014 Narayan Kamath <narayan@google.com> am 35b884f8: am be3dc575: am 402120a2: Merge "Wait for secondary zygote before bringing up the system_server."

* commit '35b884f88e39c97056e71f329e73812a142103b5':
Wait for secondary zygote before bringing up the system_server.
35b884f88e39c97056e71f329e73812a142103b5 15-May-2014 Narayan Kamath <narayan@google.com> am be3dc575: am 402120a2: Merge "Wait for secondary zygote before bringing up the system_server."

* commit 'be3dc5754fd081f54a86df9894763c0da915eed3':
Wait for secondary zygote before bringing up the system_server.
be3dc5754fd081f54a86df9894763c0da915eed3 15-May-2014 Narayan Kamath <narayan@google.com> am 402120a2: Merge "Wait for secondary zygote before bringing up the system_server."

* commit '402120a2236b294dff9a51461cb22400a6ef67f6':
Wait for secondary zygote before bringing up the system_server.
402120a2236b294dff9a51461cb22400a6ef67f6 15-May-2014 Narayan Kamath <narayan@google.com> Merge "Wait for secondary zygote before bringing up the system_server."
3a44f3f1b446315ef894e01d2ab9b5388c2bd8c4 29-Apr-2014 Jeff Sharkey <jsharkey@android.com> Initial support for split APKs, PackageInstaller.

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
ileUtils.java
emoteException.java
93ffc21fc6accb8f9fb4b6069a20006e557cf090 14-May-2014 Torne (Richard Coles) <torne@google.com> am 41ecc8b1: am dcc9cf03: am 41ec8c96: Merge "Avoid supported ABI list containing "unknown"."

* commit '41ecc8b1e04794f3d6db01b594cb6daaafd8ae1d':
Avoid supported ABI list containing "unknown".
41ecc8b1e04794f3d6db01b594cb6daaafd8ae1d 14-May-2014 Torne (Richard Coles) <torne@google.com> am dcc9cf03: am 41ec8c96: Merge "Avoid supported ABI list containing "unknown"."

* commit 'dcc9cf03a846cb01d91de70d7a115d95c0c4db19':
Avoid supported ABI list containing "unknown".
dcc9cf03a846cb01d91de70d7a115d95c0c4db19 14-May-2014 Torne (Richard Coles) <torne@google.com> am 41ec8c96: Merge "Avoid supported ABI list containing "unknown"."

* commit '41ec8c9672fccce90a7156bcd856f59a36e93ad3':
Avoid supported ABI list containing "unknown".
da8c037c8b3b36d2edc42595cbf3a18d345c1489 14-May-2014 Torne (Richard Coles) <torne@google.com> Avoid supported ABI list containing "unknown".

If one of the ABI list system properties is undefined/empty (as
ro.product.cpu.abilist64 is on a 32-bit only device), getString returns
"unknown", which ends up creating a 1-element array with "unknown" as a
member. Fix this to instead just get the empty string and split that
into a 0-element array.

Change-Id: I0d0a54eb06bb04427bcf0487e2a16d4180b81116
uild.java
992f25257938ecc0378514f21c6e6e6375272976 28-Apr-2014 Paul Jensen <pauljensen@google.com> Separate network and interface addition/removal netd APIs.
This should facilitate stacked interfaces (i.e. clatd).

Change-Id: Ib3e7a4d3847ef6ec4449451f6da42e75959baa4f
NetworkManagementService.aidl
b2829fa165124264c7ec06a6e23b08a1d97b99e5 16-Apr-2014 Sreeram Ramachandran <sreeram@google.com> Specify netId when adding/removing routes.

Change-Id: I07fd950aee726e9721153f75c3e4c10d8e19d8e9
NetworkManagementService.aidl
f047f2a8f49cd06d9cb94238861f4acce937d87b 16-Apr-2014 Sreeram Ramachandran <sreeram@google.com> Update netd API.

Remove:
- resetOldSockets from setDefaultNetId: netd takes care of this automatically.
- {add,remove}DnsServersForNetId: equivalent to "resolver setnetdns".

Change-Id: I819a8be216d07cf9a8c05f51745b64658027ed02
NetworkManagementService.aidl
13e817df516a803fbedeacca2c802a9fc1c1370f 10-Apr-2014 Paul Jensen <pauljensen@google.com> Use NetId instead of interface name when communicating DNS changes to netd.

Change-Id: Ic82b73de6f50d39d56c5e1a32f5b1f3ebb80bb7d
NetworkManagementService.aidl
913c895216c0cb248ed0ce910e69dd84b285c064 08-Apr-2014 Robert Greenwalt <rgreenwalt@google.com> Update netd interface

Adding netId for route changes

bug:13732575
Change-Id: Id171412a0f580f71398c9b0b8742acb1f3ef5a1e
NetworkManagementService.aidl
568891d9282383747c418a59ee714281726f390a 04-Apr-2014 Robert Greenwalt <rgreenwalt@google.com> Add multinetwork netd calls

bug:13732575
Change-Id: I7f030bd63971ff71d32a221e50318c781e7f2370
NetworkManagementService.aidl
cd10d7c5950d979ac0bdca4e0a3635f951445fb4 14-May-2014 Adrian Roos <roosa@google.com> Merge "A better auto brightness"
daf7d410fc97647f2b3ab4254f73c09c923018de 13-May-2014 Adrian Roos <roosa@google.com> A better auto brightness

Bug: 14927472
Change-Id: I62d0695b7da16ffa7a27c465c3b6bc4b1515f9c0
owerManager.java
fc986d71caced8a758b74b699e6d8593dfd0bdc4 14-May-2014 Justin Koh <justinkoh@google.com> resolved conflicts for merge of 32c5f299 to master

Change-Id: I72656792e109fea82c63a3a42151c024630f5997
32c5f2998f709819ce82fcea5d9f9072c5dc5626 14-May-2014 Justin Koh <justinkoh@google.com> am 78b94de4: Set KITKAT_WATCH to be level 20, document API specific changes.

* commit '78b94de4b527c26bb3c038ae4f8cc351b3b4881f':
Set KITKAT_WATCH to be level 20, document API specific changes.
78b94de4b527c26bb3c038ae4f8cc351b3b4881f 14-May-2014 Justin Koh <justinkoh@google.com> Set KITKAT_WATCH to be level 20, document API specific changes.

Bug: 14116162
Change-Id: Iab094dbd0add414a365234c275bd473787b8803b
uild.java
64cd907af99ce9702e8975a657ee437c2626f8b5 13-May-2014 Narayan Kamath <narayan@google.com> Wait for secondary zygote before bringing up the system_server.

The zygote that's responsible for starting up the system server
now checks if there's another zygote on the system, and waits
for it to start up. Also, a few minor clean ups :

- Address a long standing TODO about zygote retries.
- Have functions throw IOException where appropriate and
wrap them in ZygoteStartFailedEx with a filled in cause.

bug: 14869939

Change-Id: I9e514659b79b3d2c98a4c5f93c0c376843f6c881
rocess.java
9ba9c58e4a249456794fbfb9989f27bd846d067e 20-Mar-2014 Robert Greenwalt <rgreenwalt@google.com> First pass on multinetwork framework

Starting to switch netd to use NetId.
Adding the Network identifying class

bug:13550136
Change-Id: Ie0db4fb17c9300bfafb63329adfa02339911b33d
NetworkManagementService.aidl
37de0989359be9c31b91d3608d2cfe63546c38ea 09-May-2014 Dianne Hackborn <hackbod@google.com> Battery stats tweaks.

- Generate currently active events when a partial
history is requested.
- Tag wake lock release with the wake lock name if it is
different than the one that was acquired.
- New RESET mark for the start of the history.

Change-Id: Ic105656649c46f52855946ed0ad7f98f1d24dedc
atteryStats.java
a8c5f577d0dfa23fb955faed4966e65dd8323bc6 09-May-2014 Jessica Hummel <jhummel@google.com> Merge "Add api for getting the parent of a profile."
bffcf1c2dae4fcfb8b7ee7d1ee7ff8951ad04d88 09-May-2014 Ashish Sharma <ashishsharma@google.com> Bump the batterystats checkin stats version number.

Change-Id: Ie403b89022e4d1f6ad0e07e70c95f39a1d5fa530
atteryStats.java
be81c800ae6216e30b6008b4c73172b36531c405 22-Apr-2014 Jessica Hummel <jhummel@google.com> Add api for getting the parent of a profile.

Change-Id: Ife59665cdf6531a118d74def864c8cfc92c92a42
UserManager.aidl
serManager.java
e22b3b143240f0f18e3d6d3c06686ad3c23b131b 08-May-2014 Dianne Hackborn <hackbod@google.com> Usage stats!

Start reworking the usage stats service to be able
to have an API we can publish.

The basic information it keeps is still the same, though
that will be changing in the future. The one big addition
here is that we are also now collecting configuration usage
stats.

Also introduce the start of an access model for usage stats,
using app ops. There is an new app op that gives an application
access to usage stats even if it normally wouldn't have it,
disabled by default.

Change-Id: I6ead28e18a7f08eafd057d6ff37dd9cb216358f4
arcelableParcel.aidl
394a6cdd987fed79bd040f39e2d3e47d4484bab4 07-May-2014 Emily Bernier <ember@google.com> New user restrictions for EDU

New user restrictions will allow schools to prevent students from 1) using
device microphones, 2) adjusting device volume, and 3) mounting physical
external media.

Change-Id: Ib2fcb7ce8fbc489a25d2c97a122b2124012a9e3c
serManager.java
d46d0f9dcd72dfaa93a57d07d896def6ce53bbae 23-Apr-2014 Julia Reynolds <juliacr@google.com> Add new EDU user restrictions.

Change-Id: I6aad10466d99cda6be378c72025df686fe665071
serManager.java
a93369a819c9d4cfd4fe7ce3dd519f1c974bce4d 06-May-2014 Jeff Brown <jeffbrown@google.com> am 84aaf124: Merge "Plumb display state and interactive information to BatteryStats. (DO NOT MERGE)" into klp-modular-dev

* commit '84aaf124b762b9eeb0957aaea9df8424a429b148':
Plumb display state and interactive information to BatteryStats. (DO NOT MERGE)
996e269d93d09615e242edcbd7a6218e065aeb7b 06-May-2014 Jeff Brown <jeffbrown@google.com> Merge "Plumb display state and interactive information to BatteryStats."
84aaf124b762b9eeb0957aaea9df8424a429b148 06-May-2014 Jeff Brown <jeffbrown@google.com> Merge "Plumb display state and interactive information to BatteryStats. (DO NOT MERGE)" into klp-modular-dev
e95c3cd89591ba586aa8a0f7a17660c6fb8770bc 03-May-2014 Jeff Brown <jeffbrown@google.com> Plumb display state and interactive information to BatteryStats.

Fixes an issue where dozing was treated the same as the screen
being fully on. Now dozing is treated the same as the screen
being fully off which is slightly better. The decision of how
to represent this state is now internal to the battery stats
so it can be improved later.

Removed noteInputEvent() since it is unused.

Bug: 14480844
Change-Id: Iee8cf8dce1a1f91c62678bb6d3d9fe567ad6db42
atteryStats.java
01ee6f6cf7de9fb98fc3a88509b43416caa71040 03-May-2014 Jeff Brown <jeffbrown@google.com> Plumb display state and interactive information to BatteryStats. (DO NOT MERGE)

Fixes an issue where dozing was treated the same as the screen
being fully on. Now dozing is treated the same as the screen
being fully off which is slightly better. The decision of how
to represent this state is now internal to the battery stats
so it can be improved later.

Removed noteInputEvent() since it is unused.

Bug: 14480844
Change-Id: Iee8cf8dce1a1f91c62678bb6d3d9fe567ad6db42
atteryStats.java
f99fc5405ea909e8fdea3446646afd8b26229c18 06-May-2014 Justin Koh <justinkoh@google.com> am 34f930f3: Fix build due to docs bug. DO NOT MERGE

* commit '34f930f3b591f08ee4be8c2f54ee602cabdacc33':
Fix build due to docs bug. DO NOT MERGE
34f930f3b591f08ee4be8c2f54ee602cabdacc33 06-May-2014 Justin Koh <justinkoh@google.com> Fix build due to docs bug. DO NOT MERGE

Fix build due to docs bug: needed to remove reference to stopMethodTracingSampling.

Change-Id: I878357b638b3862aecb4bc9d32ee166840b6c796
ebug.java
8b98c2130730b64917da0e0dbfb7e9202272f4f1 06-May-2014 Justin Koh <justinkoh@google.com> am bebfcb93: Merge "Hide startMethodTracingSampling DO NOT MERGE" into klp-modular-dev

* commit 'bebfcb93ef97095a7caa1f80a0b1b05a04e9fd8c':
Hide startMethodTracingSampling DO NOT MERGE
8fee5c857b2fe4be9509a9efd11b0cb2c82709b5 06-May-2014 Justin Koh <justinkoh@google.com> Hide startMethodTracingSampling DO NOT MERGE

Bug: 14116162
Change-Id: I68470f02a2b6c2f0d9a1cb52bb4b7eeea10b43cf
ebug.java
81850c48fd4fe1cb59c752cdfb4c81307631a46b 05-May-2014 Ashish Sharma <ashishsharma@google.com> Avoid creating new battery history types because of no separator.

Change-Id: I325743142bee21e4dbca5bf9ed6135b7ca5340ec
atteryStats.java
d06dcfd3db609d796165d602a2b7914c0b4f64bb 02-May-2014 Dianne Hackborn <hackbod@google.com> Change wake reason checkin tag to "wr".

The old "Wr" was also used for Wifi Running.

Also include discharge/charge time remaining in
checkin output.

Change-Id: I303a0be902002d0399b9eb76773857da9103e8ce
atteryStats.java
973a1d27417d22add96d716bfce702a48543931b 01-May-2014 Alexandra Gherghina <alexgherghina@google.com> Merge "Revert "Temporarily switch off returning only enabled profiles to support dogfooding""
4948f0eee8789c85e793965315514975fc07403f 01-May-2014 Narayan Kamath <narayan@google.com> Fix build.

Bad automatic merge by git resulted in a dup. of a function.

Change-Id: Idb8fd8a48e1a9f6aeac98a199d6b8c661efaab16
ileUtils.java
3a951e52d93697b7e232501b78f9ffb0ec605516 01-May-2014 Narayan Kamath <narayan@google.com> resolved conflicts for merge of 69da8a12 to klp-modular-dev-plus-aosp

Change-Id: Ie07b88f324749afcf8417b50d4dbbc6e2a271a2a
69da8a124e640c09d00546761c0502e1bcab79a6 01-May-2014 Narayan Kamath <narayan@google.com> am 2a9a0471: Merge "Package manager changes for dual zygote stack."

* commit '2a9a047140b8da8f9cd7147c8bed60eeb61d1b6a':
Package manager changes for dual zygote stack.
2e2c7d2325958166eba28499f7bd740ba319f840 01-May-2014 Narayan Kamath <narayan@google.com> am 6af42aea: am 9f34234f: am b916d8ad: Merge "Implement FileUtils#contains."

* commit '6af42aea725c2afd8e5fbff9bc33ba353c05e1a9':
Implement FileUtils#contains.
0338af46f968e2e1c2fd8c62e9387546fa9ed86b 01-May-2014 Narayan Kamath <narayan@google.com> am 99253c2d: am fde59428: Merge "Handle /oem and /vendor as well"

* commit '99253c2da945cbd4725efced6cac2dc40c858d6c':
Handle /oem and /vendor as well
6af42aea725c2afd8e5fbff9bc33ba353c05e1a9 01-May-2014 Narayan Kamath <narayan@google.com> am 9f34234f: am b916d8ad: Merge "Implement FileUtils#contains."

* commit '9f34234f1c0e39ee43c4a86e23d333ba2a30ec0e':
Implement FileUtils#contains.
0349e8c4785ed467d8de2ff383e28be3e41bdc3b 01-May-2014 Narayan Kamath <narayan@google.com> Package manager changes for dual zygote stack.

- Pass down the app's instruction set to dexopt so that
it can compile the dex file for the right architecture.

- Also pass down the app's instruction set to rmdex, movedex
and getSize so that they can construct the cache file
location properly.

- Temporarily compile "system" jars such as am,wm etc. for
both architectures. A follow up change will ensure that
they're compiled only for one architecture (the same
arch. as the system server).

- Java "shared" libraries are now compiled for the right
architecture when an app requires them.

- Improve the app native library ABI detection to account
for system apps installed in /system/lib{64}/<packagename>
and also handle sdcard and forward locked apps correctly.

(cherry-picked from commit b4d35dc8e9702f9d0d82d35a105f0eea35672b52)
uild.java
rocess.java
99253c2da945cbd4725efced6cac2dc40c858d6c 01-May-2014 Narayan Kamath <narayan@google.com> am fde59428: Merge "Handle /oem and /vendor as well"

* commit 'fde594288bff0b8f95567e6b27f273f50f0c5f87':
Handle /oem and /vendor as well
9f34234f1c0e39ee43c4a86e23d333ba2a30ec0e 01-May-2014 Narayan Kamath <narayan@google.com> am b916d8ad: Merge "Implement FileUtils#contains."

* commit 'b916d8adffd7ea3588bc178e1ee03f68f0a409e5':
Implement FileUtils#contains.
c84471c2e07c325e81568c4d764716f14fcb19fe 18-Apr-2014 Christopher Tate <ctate@google.com> Handle /oem and /vendor as well

Bug 13170859

(cherry-picked from commit 740888f62eae158d5775be716620f0d56d87f587)

Change-Id: I7b5e206697fcbec146cac6cd83fca5c583a8cbd7
nvironment.java
d6d1dbac3f71a292e071dd3108d8333cb5dae44d 01-May-2014 Narayan Kamath <narayan@google.com> Implement FileUtils#contains.

Partial cherry-pick of changes 4ca728c0 and 21de56a9, which
can't be cherry-picked due to their large surface area.

Change-Id: Ife46e150d360cd5241dea93863141749233c1805
ileUtils.java
df35d570ed25257c6782e632ab1bae5e1603855a 09-Apr-2014 Alexandra Gherghina <alexgherghina@google.com> Adds an enabled state in UserInfo instead of DevicePolicyManager

Bug: 14377459
Change-Id: Ib4ec43d87da96c3dddaf9b7ae1796f261863a182
UserManager.aidl
serManager.java
f2e7b3f56ae0ea9f49b5c50413b9be71d5249d6d 30-Apr-2014 Alexandra Gherghina <alexgherghina@google.com> Revert "Temporarily switch off returning only enabled profiles to support dogfooding"

This reverts commit 199c35a21ea9bddde80fdb435ec604f729b0cbe7 because client code has been updated.

Bug: 14132551
Change-Id: I7159087dfaded6f2bfe90ef103f74b242acb166c
serManager.java
0f206a149d27385ef092a34e0009a8607d663659 12-Apr-2014 Narayan Kamath <narayan@google.com> Package manager changes for dual zygote stack.

- Pass down the app's instruction set to dexopt so that
it can compile the dex file for the right architecture.

- Also pass down the app's instruction set to rmdex, movedex
and getSize so that they can construct the cache file
location properly.

- Temporarily compile "system" jars such as am,wm etc. for
both architectures. A follow up change will ensure that
they're compiled only for one architecture (the same
arch. as the system server).

- Java "shared" libraries are now compiled for the right
architecture when an app requires them.

- Improve the app native library ABI detection to account
for system apps installed in /system/lib{64}/<packagename>
and also handle sdcard and forward locked apps correctly.

Change-Id: I4f380b146137803e51d56fdf355c3bdfc92c409d
uild.java
rocess.java
293513a59d36cd96a3e474dde5981380d372d8c9 30-Apr-2014 Bill Yi <byi@google.com> Merge commit '0b62467b142b61ee1e449ba958ba37dfd961ef56' into HEAD
ab5c0ea43cf457b20ab4267a14b224f39e0511bf 29-Apr-2014 Dianne Hackborn <hackbod@google.com> Add IBatteryStats API to retrieve current charge times.

Also include charge/discharge information in dumpsys.

Change-Id: Ica1b333ad334dc698d4a67da391b378757662f41
atteryStats.java
e66b6890ee59d108ae5c608f6ec8d4ad20cb06a8 29-Apr-2014 Robin Lee <rgl@google.com> Assign AID_EVERYONE gid to newly-created processes

Change-Id: I0ec45e07d77a4e6a47b6ba0d761c8375f433f528
rocess.java
serHandle.java
10596fbcce710a76ffc7e917400df13af5c2ebcb 28-Apr-2014 Elliott Hughes <enh@google.com> resolved conflicts for merge of 3ce4f3d0 to master

Change-Id: Id5c5997ad8f801b32e1dbd97413ea42e38c27210
3ce4f3d0af8b20f915631ab927aafa76a6105135 28-Apr-2014 Elliott Hughes <enh@google.com> am 685a0a72: am bbd87eb9: Merge "Track libcore.os\' move to android.system."

* commit '685a0a72d445515167a2071330679cdf9b53a62d':
Track libcore.os' move to android.system.
34385d352da19805ae948215e2edbeedd16b7941 28-Apr-2014 Elliott Hughes <enh@google.com> Track libcore.os' move to android.system.

(This is partial, but should cover everything in AOSP master except
for the zygote.)

Change-Id: I1042c99245765746a744c44e714095cb2c6cb75d
ommonClock.java
ommonTimeUtils.java
ileUtils.java
arcelFileDescriptor.java
rocess.java
tatFs.java
bdd4491b322bebd96b99da508ec7b0b7d59d97ae 12-Apr-2014 Jeff Sharkey <jsharkey@android.com> Gracefully handle long fingerprints.

Otherwise derived fingerprints longer than the maximum system property
size put the device into a crash loop.

Bug: 13983493
Change-Id: I8a88e71b1fd396f1cd63b414e3a62bb25010430c
uild.java
5568772e8161205b86905d815783505fd3d461d8 10-Apr-2014 Jeff Sharkey <jsharkey@android.com> Derive fingerprint at runtime when undefined.

Some devices leave "ro.build.fingerprint" undefined at build time,
since they need to build it from the components at runtime.

Bug: 13340779
Change-Id: I4d74398817af22079a11c196dc6742b85d2bfb61
uild.java
250bb6e3e045a88022db526b074e7ab38c47d93c 25-Apr-2014 Amith Yamasani <yamasani@google.com> Merge "Allow profile owners to set user restrictions"
92d6aea86e5fbe59b6dd1dcc157118b1c57d7a57 25-Apr-2014 Alexandra Gherghina <alexgherghina@google.com> Temporarily switch off returning only enabled profiles to support dogfooding

Bug: 14132551
Change-Id: I3679c8fc248a799c816e5b80641b1fca6b7af061
serManager.java
2ac0462e7bdf0f7cfc8163bfa31cf4a90161a879 25-Apr-2014 Christopher Tate <ctate@google.com> Merge "Send factory reset notification broadcasts at foreground priority"
be46532c9fbebf3ab6498c1b78013a33f620cd31 24-Apr-2014 Amith Yamasani <yamasani@google.com> Allow profile owners to set user restrictions

Pass the setting along to UserManager.

Fixes a security exception when fetching the profile's enabled state.

Change-Id: If71698cf32c52cce1158cf2027443a339bc58488
serManager.java
ffcda1086185f217ebfbac0735f92fcc8a9196c8 24-Apr-2014 Dianne Hackborn <hackbod@google.com> Add support for muliple active development codenames.

The resource API level is also bumped by the number of
active codenames there are.

Change-Id: Ic1bac452d5c13dc3f48040ffa47f54b28abe2ccc
uild.java
e27ae55d6db8b5f80fb76c3e7637a834a14f5f0d 25-Apr-2014 Christopher Tate <ctate@google.com> Send factory reset notification broadcasts at foreground priority

Bug 14296706

Change-Id: I07b39e808dbf724f5edd4a11445de3e47c9e862b
ecoverySystem.java
2ffa11e4b71c545e34533ef827bdc1a07fbe8246 22-Apr-2014 Dianne Hackborn <hackbod@google.com> Start collecting mobile radio activity from the radio.

Hook in to the new radio API to find out when the radio
is active and use that to track its state in batter stats.
We also still have the data being tracked from the kernel's
emulation, and continue to use that if we don't get data from
the radio.

Currently this monitoring is turned off until some issues
in the radio can be fixed that are providing bad data.

Also add a new API to get estimated drain and charge times.

Change-Id: Ifc4900fabb8f848f9cda361dce698664ea75f175
atteryStats.java
385124d8cee38dee00d4fac31e8fbe46fb30565b 03-Apr-2014 Alexandra Gherghina <alexgherghina@google.com> Modify getUserProfiles to return only enabled profiles:

Add a new enabled state for a managed profile.
Expose that as a new API on DevicePolicyManager.
Set the new state when enabling the profile.
Return only enabled profiles from the user manager.

Bug: 13755441
Bug: 13755091
Change-Id: I2907b182e19b3562592da688b3f68ef5f4088557
UserManager.aidl
serManager.java
9c32cd498a8067d4487a97fbf93d8587bfcec1fd 23-Apr-2014 Emily Bernier <ember@google.com> Fix build.

Don't link to MANAGE_USERS permission in Javadoc.

Change-Id: Iad1391a0281a3fad06529a86b277f787791e94fc
serManager.java
5723febadc1877c045389afffa111913698e32e2 23-Apr-2014 Craig Mautner <cmautner@google.com> Merge "Introduce PersistableBundle"
8a0fa6e823ddbdfd17869d52f838b1cc0a46bd2b 23-Apr-2014 Emily Bernier <ember@google.com> Merge "Allow device or profile owner app to modify user restrictions."
7a2b4d11c741de8b78570c0e11f49deb165e35da 23-Apr-2014 Emily Bernier <ember@google.com> Allow device or profile owner app to modify user restrictions.

Currently this is gated on being a system or root app with the
MANAGE_USERS permission; third-party MDM apps set as device or profile
owner should have this ability as well.

Bug: 13585295

Change-Id: I61d21b13b9ec66fc0cb497ec2007ee732461d448
serManager.java
ceb5d17f6a2f5c144948ada1d59ec4f12da64799 23-Apr-2014 Neil Fuller <nfuller@google.com> am d720ef54: am caf6497b: am 683cf1bf: Merge "Changes to support asynchronous close interruption"

* commit 'd720ef541d06be87de3b3e03c1e7fb349299a21f':
Changes to support asynchronous close interruption
d720ef541d06be87de3b3e03c1e7fb349299a21f 23-Apr-2014 Neil Fuller <nfuller@google.com> am caf6497b: am 683cf1bf: Merge "Changes to support asynchronous close interruption"

* commit 'caf6497b9a0347da7d5acbe678adc2c8187176c0':
Changes to support asynchronous close interruption
43582df3dbcad1b1734b570c74246f5ff2f58027 11-Apr-2014 Neil Fuller <nfuller@google.com> Changes to support asynchronous close interruption

This change contains fixes to base from libcore change
I37de3e7d1a005a73821221e6156d10b95c595d7a

Bug: 13927110

Change-Id: I2d96e50307611c269dcf47886cd4d976854da8fc
arcelFileDescriptor.java
21de56a94668e0fda1b8bb4ee4f99a09b40d28fd 06-Apr-2014 Jeff Sharkey <jsharkey@android.com> Add directory selection to DocumentsProvider.

Introduce new ACTION_PICK_DIRECTORY that allows users to grant access
to an entire document subtree. Instead of requiring grants for each
individual document, this leverages new prefix URI permission grants
by defining new "via"-style URIs:

content://com.example/via/12/document/24/

This references document 24 by using a prefix grant given for
document 12. Internally, we use isChildDocument() to enforce that
24 is actually a descendant (child, grandchild, etc) of 12. Since
this is an optional API, providers indicate support with
Root.FLAG_SUPPORTS_DIR_SELECTION.

Extend DocumentsUI to support picking directories. Expose
createDocument() API to work with returned directories.

Offer to canonicalize via-style URIs into direct URIs, generating
exact permission grants along the way. Override openAssetFile()
to pass through CancellationSignal. Move testing code into ApiDemos.

Bug: 10607375
Change-Id: Ifffc1cff878870f8152eb6ca0199c5d014b9cb07
ileUtils.java
719e6b167041ffaffc2245f692714c8de191863f 05-Apr-2014 Craig Mautner <cmautner@google.com> Introduce PersistableBundle

The PersistableBundle class is similar to Bundle except that only
objects that have meaning across reboots can be stored and there
is a limited number of types that can be stored. More
specifically Binders, FileDescriptors, Parcelables, Booleans,
Bytes, Shorts, Chars, CharSequences, Floats, and ArrayLists
cannot be stored.

Fixes bug 13736007.

Change-Id: If6595b2e6fd92af6b7f60c4f7140ae867c258794
undle.java
ommonBundle.java
arcel.java
ersistableBundle.java
99009ea7dcc196cd97756d70ed69499025229bd9 19-Apr-2014 Dianne Hackborn <hackbod@google.com> Try to always print time stamp in battery history.

Also fix printing of string pool to quote the strings
and escape characters, and change history time stamps
to print starting at 0 and going up.

Change-Id: I2d0c080f2b5de7b27b20a7357c2c0cf481c82d8c
atteryStats.java
239751237c3431c9b9683fc08219c05f884f37d8 19-Apr-2014 Christopher Tate <ctate@google.com> Merge "Handle /oem and /vendor as well"
740888f62eae158d5775be716620f0d56d87f587 18-Apr-2014 Christopher Tate <ctate@google.com> Handle /oem and /vendor as well

Bug 13170859

Change-Id: I95dec4cd68e3d64517d08b3f08eefb849ce37b86
nvironment.java
5b5def547201b213bc2325400371c37d1612732e 11-Apr-2014 Michael Wright <michaelwr@google.com> Fixed a typo implying intents must and must not be explicit.

Change-Id: Id9746fad2e475b94d8d45f641bc5e2eaf9c874ae
uild.java
047f3c71a48d90a2b022bd886bf581add2d68326 16-Apr-2014 Jeff Brown <jeffbrown@google.com> resolved conflicts for merge of 3ee9dc58 to master

Change-Id: Idd045d01246367b77718210c8b6665110da58ac4
3ee9dc58e5e1e39fac184b98cac0c7c46af72dd9 16-Apr-2014 Jeff Brown <jeffbrown@google.com> am fa72a9ea: Merge "Declare VersionCodes.KITKAT_WATCH." into klp-modular-dev

* commit 'fa72a9eaae6170e65d9ba72720ee7b0d752f8847':
Declare VersionCodes.KITKAT_WATCH.
1c3f332c3fe2af24126739010d71d1cfe250eb0c 16-Apr-2014 Jeff Brown <jeffbrown@google.com> Declare VersionCodes.KITKAT_WATCH.

The constant does not have a final value yet but is useful for
documentation purposes during development.

Change-Id: Iddd9b956eff822a9a25e9df483b5bd3979189023
uild.java
8fd7f1ed7c11d35b3f2a97878e68ee38a551dd15 11-Apr-2014 Christoph Studer <chstuder@google.com> Rename basePkg to opPkg

...and actually populate the field correctly.

Change-Id: I3ce52efedb919d6af75dc9c3532e47764c467cac
VibratorService.aidl
ullVibrator.java
ystemVibrator.java
ibrator.java
e35872da97ac6bd07d2d9ac5af8a7c18ad290718 10-Dec-2013 Todd Poynor <toddpoynor@google.com> BatteryManager: Add API and service for battery property retrieval

Add service "batterymanager" and method getProperty to retrieve
battery properties. This is a public API.

Make BatteryProperty public. Cleanups for public-facing API.

Change-Id: I3637d131aabe4811dff40661728d5353eaf854c4
atteryManager.java
atteryProperty.java
8f993de81f9e9bcfd136c42bb6bf12114fedfd36 12-Apr-2014 Amith Yamasani <yamasani@google.com> Merge "Expose an API to generate a badged icon for managed profiles."
7dda2657be1fcc808566dab3482df9d643ceb0f5 11-Apr-2014 Amith Yamasani <yamasani@google.com> Expose an API to generate a badged icon for managed profiles.

Change-Id: I6257f43934ba6eefe752003942d8d3bcf207d5f9
serManager.java
6d8479d535f99db1e957cbc1c3ac396cb26287ed 11-Apr-2014 Narayan Kamath <narayan@google.com> am 88a99645: am 97953b30: am 4f4892d0: Merge "Workaround 64 bit devices that don\'t have zygotes yet."

* commit '88a996455b1f3906765cc177c461d38cc9bfda92':
Workaround 64 bit devices that don't have zygotes yet.
88a996455b1f3906765cc177c461d38cc9bfda92 11-Apr-2014 Narayan Kamath <narayan@google.com> am 97953b30: am 4f4892d0: Merge "Workaround 64 bit devices that don\'t have zygotes yet."

* commit '97953b308f9159a73061ae047e368eac503c1931':
Workaround 64 bit devices that don't have zygotes yet.
2d84a406bfc69eaad952078b01c3d5c76a489b41 11-Apr-2014 Narayan Kamath <narayan@google.com> Workaround 64 bit devices that don't have zygotes yet.

This can be fixed by tweaking their BoardConfig as well,
but that leads to all sorts of other problems.

For now, fall back to the primary zygote if the secondary
is unavailable. This will fail if shared libraries for the
primary zygote ABI are unavailable, but that won't be the
case just yet.

bug: 13970103
Change-Id: Ifa107e43ca95023d57a0d9c641e4fddaccd9a888
rocess.java
4e5c089ef3e62e7f658e71c0be262d09bd3e399b 11-Apr-2014 Jeff Brown <jeffbrown@google.com> resolved conflicts for merge of 337e764d to master

Change-Id: I8168dbf42b68c2f7b5ccb300e0080dddc627af26
337e764debde56b1462fb5f2794b3e917d8a42e2 11-Apr-2014 Jeff Brown <jeffbrown@google.com> am f24687e2: Merge "Plumb display power state through display manager." into klp-modular-dev

* commit 'f24687e2731811fd0e3803b691fd47a659f89329':
Plumb display power state through display manager.
037c33eae74bee2774897d969d48947f9abe254f 09-Apr-2014 Jeff Brown <jeffbrown@google.com> Plumb display power state through display manager.

Declare a new method, Display.getState() to retrieve the actual
power state of a display.

Improved documentation for Intent.ACTION_SCREEN_ON and
Intent.ACTION_SCREEN_OFF to clarify what they really mean in
terms of the interactive state of the device.

Deprecated PowerManager.isScreenOn() and replaced it with
PowerManager.isInteractive() with a more suggestive name and
better documentation.

Redirect display power state changes to go through the display
manager first and only then head over to the power manager for
legacy compatibility.

Eliminated the bright here and woke here policy flags since they
were unused. Simplified the input dispatch policy somewhat.

Ensure that screen wake locks are respected up until the point
when dozing really begins.

Fixed a regression in DreamService where onDreamingStarted
might be called before onWindowAttached.

Bug: 13133142
Bug: 13472578
Bug: 13929355
Bug: 13760290
Change-Id: Iabef96921dd554ce3768fb18619cefc3230b5fb0
PowerManager.aidl
owerManager.java
9502f990899ef576879048ec5147d403158ad89d 10-Apr-2014 Paul Lawrence <paullawrence@google.com> Merge "Allow encryption when keyguard is set to pattern or no protection"
f148f36d140e995ec8f755e60bbb0b37f33c3da7 10-Apr-2014 Narayan Kamath <narayan@google.com> am 9e289d70: am 1d26a3f1: am 09e13cc5: Merge "System services detect and register app CPU ABIs"

* commit '9e289d70a8baaed0030413b5991653792e2a816d':
System services detect and register app CPU ABIs
d11f223c535ed9ce628fe5aaf0fd5692dd0cf9e4 10-Apr-2014 Narayan Kamath <narayan@google.com> resolved conflicts for merge of 286a247e to master

Change-Id: I63df9d482da3ce2ac851959223b9180020ffad0c
9e289d70a8baaed0030413b5991653792e2a816d 10-Apr-2014 Narayan Kamath <narayan@google.com> am 1d26a3f1: am 09e13cc5: Merge "System services detect and register app CPU ABIs"

* commit '1d26a3f1efd0d965e8751e8515608c31789bdbe2':
System services detect and register app CPU ABIs
286a247e4c8fcecb59636f668678d24e33142744 10-Apr-2014 Narayan Kamath <narayan@google.com> am 0fd40cb1: am 80413c9f: Merge "Re-implement native library search and copies."

* commit '0fd40cb100bccbd5d9ad6109ca39c818a857f889':
Re-implement native library search and copies.
ff0c470833b2cb4130a30895093630242d5f238d 01-Apr-2014 Ramin Zaghi <ramin.zaghi@arm.com> System services detect and register app CPU ABIs

This patch uses the NativeLibraryHelper class to
match native libraries in an .apk package with
those listed in 'ro.cpu.abilist' property.
The result is stored in packages.xml and the
ApplicationInfo class.

This information will be used by the ActivityManager
to decide which zygote to use to launch the given
app.

Change-Id: I3ec3d050996d8f4621f286ca331b9ad47ea26fa0
rocess.java
1378aba7aeeb7f6dd6cc2503968ba7b0e58d9333 28-Feb-2014 Ramin Zaghi <ramin.zaghi@arm.com> Re-implement native library search and copies.

We now use a two step approach :

- First we look through the list of shared libraries in an
APK, and choose an ABI based on the (priority) list of ABIs
a given device supports.
- Then we look through the list of shared libraries and copy
all shared libraries that match the ABI we've selected.

This fixes a long-standing bug where we would sometimes copy
a mixture of different ABIs to the device, and also allows us
to clearly pick an ABI to run an app with.

The code in NativeLibraryHelper has been refactored so that all
file name validation & matching logic is done in a single place
(NativeLibrariesIterator). This allows us to avoid a lot of
redundant logic and straightens out a few corner cases (for eg.
where the abi determination & copying logic do not agree on
what files to skip).

bug: https://code.google.com/p/android/issues/detail?id=65053
bug: 13647418

Change-Id: I34d08353f24115b0f6b800a7eda3ac427fa25fef
Co-Authored-By: Zhenghua Wang <zhenghua.wang0923@gmail.com>
Co-Authored-By: Ramin Zaghi <ramin.zaghi@arm.com>
Co-Authored-By: Narayan Kamath <narayan@google.com>
uild.java
10bdb4b9e966f0a3d8e1099bf8eff4c41c31981c 09-Apr-2014 Narayan Kamath <narayan@google.com> am 769a2475: am b6ab8c17: am a6f5e79d: Merge "Allow connections to multiple zygotes."

* commit '769a247595cb78536fa159e8f5d54191a4ef90c6':
Allow connections to multiple zygotes.
769a247595cb78536fa159e8f5d54191a4ef90c6 09-Apr-2014 Narayan Kamath <narayan@google.com> am b6ab8c17: am a6f5e79d: Merge "Allow connections to multiple zygotes."

* commit 'b6ab8c17bd0163bf07ff3dbe03ab352d58b61cb3':
Allow connections to multiple zygotes.
4444dcd0adc7e035cca030b90ed91f0cff9a772b 03-Apr-2014 Narayan Kamath <narayan@google.com> Allow connections to multiple zygotes.

Adds a new String argument "abi" to Process.start.
This method will now query the zygotes to
determine what ABIs the primary and the secondary
zygote support (the secondary is optional) and dispatch
a fork request over the right zygote connection.

Both zygotes are assumed to be active at all points.

Change-Id: I460319b4481ff1c1666e8172223691820658a35c
rocess.java
33ea32fd4e5edd7920adecd17ca69defd0c4ba93 09-Apr-2014 Narayan Kamath <narayan@google.com> am dc7eb9c9: am 00cfbe82: am a5608acb: Merge "Don\'t allow MemoryFiles of negative length."

* commit 'dc7eb9c947f36cbd34021663845bcbb090c3169d':
Don't allow MemoryFiles of negative length.
9d43dc5e4eba1bf96f0b8fa5deae5ee61a7f85ad 09-Apr-2014 Kenny Guy <kennyguy@google.com> Merge "Finish rename of related users to profiles."
dc7eb9c947f36cbd34021663845bcbb090c3169d 09-Apr-2014 Narayan Kamath <narayan@google.com> am 00cfbe82: am a5608acb: Merge "Don\'t allow MemoryFiles of negative length."

* commit '00cfbe82fa80ef57f3b1c34e47836d3e28c381b8':
Don't allow MemoryFiles of negative length.
5abdbb656063160ff8df2306bd01feba0714d4c1 09-Apr-2014 Amith Yamasani <yamasani@google.com> Avoid security exception when requesting badging

When requesting badged icons, use APIs that don't require the caller
to have MANAGE_USERS permission.

Change-Id: I218cdf5194f38f4affa1874a6fcb43a040ed5295
serManager.java
4f58263d02f296430a9653126d28501e95c7bb6c 19-Feb-2014 Amith Yamasani <yamasani@google.com> Launcher APIs and broadcasts for managed profiles

UserManager
- Corp badging
- Querying list of managed profiles

Launcher API
- LauncherApps and Service to proxy changes in managed profile
to the launcher in the primary profile
- Querying and launching launchable apps across profiles

Change-Id: Id8f7b4201afdfb5f414d04156d7b81300119289e
serManager.java
f626ca2c96f629627a8df6944c9b0d774e6e67ae 08-Apr-2014 Narayan Kamath <narayan@google.com> Don't allow MemoryFiles of negative length.

Prevents us from converting a (signed) jint into an
(unsigned) size_t and having horrible things happen.

Change-Id: I0f04e2eb9852ae7fc49b435fd0974f56e86751a4
emoryFile.java
f20a5eb279035d462e1f5d9895f4eb66cc152215 02-Apr-2014 Ruchi Kandoi <kandoiruchi@google.com> PowerManager: add powerHint method

Add powerHint method to IPowerManager for passing power hints from other
processes.

Change-Id: Ic596ace2ed1796a6da4cddb2163dcc4536115e55
PowerManager.aidl
f17f0e0eb0eef424401caa122e51a648f5ef3801 04-Apr-2014 Paul Lawrence <paullawrence@google.com> Merge "Save OwnerInfo so CryptKeeper can display at boot time"
46791e752ca1eca35e6a882c47d7de7f4f66687c 03-Apr-2014 Paul Lawrence <paullawrence@google.com> Allow encryption when keyguard is set to pattern or no protection

Add type parameter to encryptStorage so we can set type when we encrypt

Depends on
https://googleplex-android-review.git.corp.google.com/#/c/444056/

Circular dependency on:
https://googleplex-android-review.git.corp.google.com/#/c/444201/

Bug: 13749169
Change-Id: I52034ec25de35f12f1bbfdd1b0f8584923a0be2e
torage/IMountService.java
abf564ac9c4c2e2ae5063932cc5d5cf947b07015 02-Apr-2014 Kenny Guy <kennyguy@google.com> Finish rename of related users to profiles.

Clean up methods left to avoid multi project commit.

Change-Id: Ibf506af2a4bcbbd7c8044b3f62a68761451242c7
serManager.java
e51dcf98a4ddb1340cffba88059ad89f0b90909a 18-Mar-2014 Paul Lawrence <paullawrence@google.com> Save OwnerInfo so CryptKeeper can display at boot time

Requires vold change from
https://googleplex-android-review.git.corp.google.com/#/c/435164/

Bug: 13526708
Change-Id: I33153df9961832f72c3b8103bd5e1d3a17e77df3
torage/IMountService.java
1ccace916c8fdc61f1a8db6677aed518d31647e6 02-Apr-2014 Kenny Guy <kennyguy@google.com> Merge "Rename related users to profiles."
2a764949c943681a4d25a17a0b203a0127a4a486 02-Apr-2014 Kenny Guy <kennyguy@google.com> Rename related users to profiles.

Rename the related user concept as profiles.
When returning profiles of a user include the
user as a profile of itself.

Change-Id: Id5d4f29017b7ca6844632ce643f10331ad733e1d
UserManager.aidl
serManager.java
b69bb445585a083b8e4ff8a13a1a1a63e9c22a6a 02-Apr-2014 Narayan Kamath <narayan@google.com> resolved conflicts for merge of 71ab4f4f to master

Change-Id: I888c231f7579523e12fbd68f820f0775019e51e0
71ab4f4f48a9b8b485d80adf18d568ef6265b1e8 02-Apr-2014 Narayan Kamath <narayan@google.com> am ea9e5eca: am 17b1b8fe: Merge "Move zygote startup logic to the frameworks."

* commit 'ea9e5ecac1e5240370f0e3f998b9c8b159ee9320':
Move zygote startup logic to the frameworks.
973b4663b0b5ee62006522bf4742af076096e548 31-Mar-2014 Narayan Kamath <narayan@google.com> Move zygote startup logic to the frameworks.

The Zygote class is now in com.android.internal.os. It is
responsible for the vast majority of work before and after
the call to fork(). It calls back into the Runtime via
the new dalvik.system.ZygoteHooks class to allow the Runtime
to perform pre fork cleanup and post fork initialization.

The native code in Zygote.cpp is a direct and straightforward
port of the existing code in art. Most differences are
superficial, for example :
- We use C style logging (ALOGE) instead of stream based
logging.
- We call env->FatalError() instead of using LOG(FATAL)

Change-Id: Ia101fb2af12d23894fe57e4134d2bc6d142e5059
rocess.java
945490c12e32b1c13b9097c00702558260b2011f 27-Mar-2014 Paul Lawrence <paullawrence@google.com> Don't double prompt on booting encrypted device

vold will store password securely until KeyGuard requests it
and hands it on to KeyStore.

This is a revision of

https://googleplex-android-review.git.corp.google.com/#/c/418123/

which was reverted. It had two bugs in LockSettingsService.checkVoldPassword.
1) We were not checking password for null, which caused an exception
2) checkPattern/checkPassword return true if there is no saved pattern or password.
This leads to situations where we get true returned even when the password
doesn't match. Call the correct one based on what is there, not what vold
thinks ought to be there.

Bug: 12990752
Change-Id: I05315753387b1e508de5aa79b5a68ad7315791d4
torage/IMountService.java
6ee7d25010d4f23b44a151f3953225ba253de8af 26-Mar-2014 Paul Lawrence <paullawrence@google.com> Revert "Don't prompt at boot if we already did that when decrypting"

This reverts commit 493e3e7e6523fd94cc1acae3e45935a1227d58c3.

Should fixes

Bug: 13611885
Bug: 13656830
Change-Id: I117c988bb6679f44f8add4fcc18f45cb8238dfb4
torage/IMountService.java
43111e897be9f79ababb0ecf99f155695416d956 24-Mar-2014 Dianne Hackborn <hackbod@google.com> Merge "Battery stats: wake locks, radio active, cleanup."
4590e52f3d0558e01322fe4dd55bb612afdfb079 24-Mar-2014 Dianne Hackborn <hackbod@google.com> Battery stats: wake locks, radio active, cleanup.

- Improve wake lock work source updates to also update the current
history tag, in case the new work source gets recorded in the
history.

- Fix bug in recording radio active time that was not distributing
any time to apps.

- No longer hold a wake lock while dispatching data conn active call,
since it comes with its own timestamp.

- Fix issue where the top app was not being cleared while the screen
was off.

- Remove obsolete STATS_LAST stats type.

- Fix bug that was not clearing the total run time when resetting
the stats.

Change-Id: Iabe17a9edf34f762374ae09fcffb8a819cf72e30
atteryStats.java
PowerManager.aidl
owerManager.java
ff3bb2fe95a7d0158f5a456368eb7fa91069bc23 24-Mar-2014 Chad Brubaker <cbrubaker@google.com> am 7f623d6b: am 9506e84b: am c7726147: am 1fce89d9: am de4e7b49: Merge "Include the interface for clearDnsInterfaceForUidRange" into klp-dev

* commit '7f623d6b9459bc982c49f0a74aa2c9911f8e1dd8':
Include the interface for clearDnsInterfaceForUidRange
3796594cd76238c46dd79a990ae1797f197dea85 24-Mar-2014 Mark Renouf <mrenouf@google.com> am a63cd9f4: Merge "Run finalizers before counting for StrictMode." into klp-modular-dev

* commit 'a63cd9f424d70a3f8ca059aa8f76b28be1f9fa07':
Run finalizers before counting for StrictMode.
a63cd9f424d70a3f8ca059aa8f76b28be1f9fa07 24-Mar-2014 Mark Renouf <mrenouf@google.com> Merge "Run finalizers before counting for StrictMode." into klp-modular-dev
a1bd79268be693f04f4adee90673d6ed400cc9fd 21-Mar-2014 Dianne Hackborn <hackbod@google.com> Battery stats: track actually running time

Use the uptime while creating the battery stats history to
generate a new event indicating when the CPU is actually running.
We can do this in combination with the new event reporting when
the CPU comes awake, looking at the difference between the
uptime and elapsed time at that point to determine when it last
when to sleep.

Also use this information to generate a new set of aggregated
states, the uptime caused by each wake reason.

Finally use new radio down timestamp to adjust the times we
compute for radio use. Note that this information is not (yet)
being used to adjust how these are recorded in the history.

Change-Id: I723b3b526c8e7d64de0cac9d1193e04132d5a3e4
atteryStats.java
aa5a99b3b8655f0d092f76fe97a33b477da5262b 22-Mar-2014 Chad Brubaker <cbrubaker@google.com> am 1fce89d9: am de4e7b49: Merge "Include the interface for clearDnsInterfaceForUidRange" into klp-dev

* commit '1fce89d946760a1bcf3a733f55494f963eab00c2':
Include the interface for clearDnsInterfaceForUidRange
9506e84b6f1b8a63abd5c7ecd580548386cc9aae 21-Mar-2014 Chad Brubaker <cbrubaker@google.com> am c7726147: am 1fce89d9: am de4e7b49: Merge "Include the interface for clearDnsInterfaceForUidRange" into klp-dev

* commit 'c77261471432e1577586395dd0a6a481ef7431b5':
Include the interface for clearDnsInterfaceForUidRange
c77261471432e1577586395dd0a6a481ef7431b5 21-Mar-2014 Chad Brubaker <cbrubaker@google.com> am 1fce89d9: am de4e7b49: Merge "Include the interface for clearDnsInterfaceForUidRange" into klp-dev

* commit '1fce89d946760a1bcf3a733f55494f963eab00c2':
Include the interface for clearDnsInterfaceForUidRange
1fce89d946760a1bcf3a733f55494f963eab00c2 21-Mar-2014 Chad Brubaker <cbrubaker@google.com> am de4e7b49: Merge "Include the interface for clearDnsInterfaceForUidRange" into klp-dev

* commit 'de4e7b4947998638e0345ab9a181bf35a8827bef':
Include the interface for clearDnsInterfaceForUidRange
717e0f5db7161ddfff98f21fe1cdb2a3b1a6c8b7 21-Mar-2014 Paul Lawrence <paullawrence@google.com> Merge "Don't prompt at boot if we already did that when decrypting"
8f1b19488787c98244da5ae32299a153566188ec 20-Mar-2014 Paul Lawrence <paullawrence@google.com> Merge "BatteryProperty: Add battery capacity property"
5a43cc6ddd2aa3d9af38891bae6fea866c7227f9 03-Mar-2014 Paul Lawrence <paullawrence@google.com> BatteryProperty: Add battery capacity property

Match change in native code
https://googleplex-android-review.git.corp.google.com/#/c/427553/

Change-Id: I0049ccbbef59fbbc0e14b50b9af7481d87a6d48c
atteryProperty.java
40c8725804f46c9d53f2815e0ee69e6cfb0152cc 20-Mar-2014 Dianne Hackborn <hackbod@google.com> batstats: fix wake lock tracking, service bug

- Fix bug I introduced in handling wake lock changes where
we weren't iterating over the new work sources correctly.
- Fix bug in ActiveServices that would wtf too much.
- Prepare to start tracking uptime in the battery history.

Change-Id: Ia94316be51bc6eab7b02f214a5c40c08e99cc3b1
atteryStats.java
a1bfe65daa15fe93ecd23486cfc4a9a722ca039d 20-Mar-2014 John Spurlock <jspurlock@google.com> Fix javadoc @links in Vibrator.

Change-Id: I5143334735a1bcdf8252687e703c74656ff9d126
ibrator.java
07cf4da1d004b145ba8b9055bbff314ef68528f3 19-Mar-2014 John Spurlock <jspurlock@google.com> Merge "Add stream-level suppression to vibrate/audio services."
1be762c1ba0f4ab57c9d2038620e03d45eeb1f0a 06-Mar-2014 Jeff Sharkey <jsharkey@android.com> Define an OEM directory, scan features and APKs.

To support OEM customizations, define a new top-level directory
that roughly mirrors the layout of the system partition. Scan this
location for (non-privileged) apps, and for additional features.

Bug: 13340779
Change-Id: Idb6d6626655061ee31ad952cab734d30ea6130b9
nvironment.java
1af30c7ac480e5d335f267a3ac3b2e6c748ce240 10-Mar-2014 John Spurlock <jspurlock@google.com> Add stream-level suppression to vibrate/audio services.

- Add new audio restriction layer to app-ops. Restrictions add
additional constraints to audio operations at a stream-level.
Restrictions do not affect the persistable state, and are purely
additive: that is, they can only impose additional contstraints, not
enable something that has already been disabled. Restrictions
also support a whitelisted set of exempt package names.

- Add new audio stream-level checks to app-ops.

- Implement a provisional OP_PLAY_AUDIO suppression to three
java entry points MediaPlayer, AudioTrack, & SoundPool.

- Enhance vibrator api to take stream information as an optional
hint - the constants correspond to AudioManager stream types.
OP_VIBRATE now supports the stream-level restriction check.

- Simplify Vibrator subclasses by adding default implementations
for two .vibrate calls.

- Migrate NoMan's zen-mode control to use the new app-ops
stream-level restriction mechanism.

Change-Id: Ifae8952647202f728cf1c73e881452660c704678
VibratorService.aidl
ullVibrator.java
ystemVibrator.java
ibrator.java
dd23853e6383df8f21c73bb01c2b665e28850822 18-Mar-2014 Doug Zongker <dougz@google.com> am 06fe82d8: am 2e6d960c: am cdf00888: add option to shutdown after factory reset

* commit '06fe82d8e01780b7b6c16364f81f8dd75d467420':
add option to shutdown after factory reset
2e6d960c85436b46f71a048a825c545a376fbf06 18-Mar-2014 Doug Zongker <dougz@google.com> am cdf00888: add option to shutdown after factory reset

* commit 'cdf008883921c2eb7daf10c82687e9a36461eb16':
add option to shutdown after factory reset
cdf008883921c2eb7daf10c82687e9a36461eb16 18-Mar-2014 Doug Zongker <dougz@google.com> add option to shutdown after factory reset

Add a new hidden method to recovery system to trigger a factory reset
followed by a shutdown, rather than a reboot back to the regular
system. Use this flag when the MASTER_CLEAR intent is broadcast with
a boolean extra "shutdown" set to true.

Change-Id: I2ceb25b715d9f0ef492a75b3d287d1e17cec89ef
ecoverySystem.java
10ad98223fd1fabb7b893de55d1384fd012aed7b 17-Mar-2014 Dianne Hackborn <hackbod@google.com> Start enforcing explicit intents for Context.bindService()

No longer prints a warning, now throws an exception.

Also fix a bug in UserManagerService that was causing an
exception while booting.

Change-Id: I3b43cfe08067da840b6850b9bed58664d36d34f1
uild.java
1b66923148130dec7139175a3bf4c4d534cabac4 20-Feb-2014 Chad Brubaker <cbrubaker@google.com> Include the interface for clearDnsInterfaceForUidRange

With netd allowing overlapping rules for uid range rules the interface
name is needed to make sure only the correct rule is removed.

Bug: 12134439
Change-Id: I94f77f154f49ca8d5f6cf49683a4473cc92c3eb7
NetworkManagementService.aidl
493e3e7e6523fd94cc1acae3e45935a1227d58c3 06-Feb-2014 Paul Lawrence <paullawrence@google.com> Don't prompt at boot if we already did that when decrypting

vold will store password securely until KeyGuard requests it
and hands it on to KeyStore.

Needs matching vold changes from
https://googleplex-android-review.git.corp.google.com/#/c/432050/

Bug: 12990752
Change-Id: I930ed8180cf0b8feb1e58db043d5fb6dff1bab20
torage/IMountService.java
9c5c56eb51e20c0789832d84a520a466a4ab5580 16-Jan-2014 Jeff Sharkey <jsharkey@android.com> Run finalizers before counting for StrictMode.

Otherwise we sometimes end up counting objects strongly referenced
by the finalizer queue, and falsely detecting an instance leak.

Bug: 12533002
Change-Id: I144c941a3dfb0cbb837b98e80d2f49ffc9ca13c7
(cherry picked from commit 6f3a38f3afd79ed6dddcef5c83cb442d6749e2ff)
trictMode.java
f0b56b580579c63caaa4d775231ccbad65b61af5 12-Mar-2014 John Spurlock <jspurlock@google.com> am 2fcac8ba: am b41c951f: am cb5f813b: am 0a3cb2ce: am b2bd63f0: Merge "Fix doc typos in Vibrator.java" into klp-docs

* commit '2fcac8ba6fe870d78eca7b75c0e846a229f08819':
Fix doc typos in Vibrator.java
b41c951fb1b2a27d3278948f809e90a7c203ca4b 11-Mar-2014 John Spurlock <jspurlock@google.com> am cb5f813b: am 0a3cb2ce: am b2bd63f0: Merge "Fix doc typos in Vibrator.java" into klp-docs

* commit 'cb5f813bb642e72777643dcd2bcbd92cc2039388':
Fix doc typos in Vibrator.java
cb5f813bb642e72777643dcd2bcbd92cc2039388 11-Mar-2014 John Spurlock <jspurlock@google.com> am 0a3cb2ce: am b2bd63f0: Merge "Fix doc typos in Vibrator.java" into klp-docs

* commit '0a3cb2ce1b2472b7e4ca6739eaeaa50975abf6ab':
Fix doc typos in Vibrator.java
e5167ca61e2c5607aad9041b44158581bc61b4d8 08-Mar-2014 Dianne Hackborn <hackbod@google.com> Reduce wake lock noise in battery history.

When the work source of a wake lock was changed, this would
cause the old wake lock to be released in battery stats before
the new one was acquired (the power manager would correctly
keep holding the associated wake lock). This resulted in a
pointless entry in the battery history showing the last wake
lock being released and a new one acquired.

This change adds a new path in to battery stats to report
when a wake lock has changed, allowing it to acquire the
new wake locks first before the old ones, so it can't drop
down to zero wake locks. This also provides better timing
information, as the same current time can be used for both
operations.

In addition, added a new kind of history entry for the
current time, so you can tell when in actual world clock
time the battery data is happening.

Change-Id: Ibbf2eed83bb93f31f60267889b7bc5b9e71e355f
atteryStats.java
5468a5c1179f5d27d2a6c52dfd1fc69ad233bfe9 10-Mar-2014 Greg Hackmann <ghackmann@google.com> am 9e413bf4: am bbfc08b3: Merge changes I6d4fdada,Ia34899a4

* commit '9e413bf4e562d98b6efeb157369f152edd5f0261':
open("/dev/rtc0") failure in AlarmManagerService.setTime() should be non-fatal
Move time setting code from SystemClock to AlarmManagerService
2bc68575325ab7bf082de24f5f095f20ea63f877 10-Mar-2014 Paul Lawrence <paullawrence@google.com> Merge "Clean up a few minor issues"
5becf411fb96c5d7841384fbcb276a46ad899939 10-Mar-2014 John Spurlock <jspurlock@google.com> am 0a3cb2ce: am b2bd63f0: Merge "Fix doc typos in Vibrator.java" into klp-docs

* commit '0a3cb2ce1b2472b7e4ca6739eaeaa50975abf6ab':
Fix doc typos in Vibrator.java
0a3cb2ce1b2472b7e4ca6739eaeaa50975abf6ab 10-Mar-2014 John Spurlock <jspurlock@google.com> am b2bd63f0: Merge "Fix doc typos in Vibrator.java" into klp-docs

* commit 'b2bd63f00631b68df3595a4369ec4802e6443bc7':
Fix doc typos in Vibrator.java
0f49c28e7a3667e680002beb8c557d8b5e3ad1d3 10-Mar-2014 John Spurlock <jspurlock@google.com> Fix doc typos in Vibrator.java

Change-Id: Ie95cd7fa16042897e6acf94badec98bc19bde57a
ibrator.java
6a4faf1c72f170ba65554633cda72432ed0f4320 08-Mar-2014 Elliott Hughes <enh@google.com> am b2f07b27: am 4a809272: Merge "Fix documentation for Parcel.readException()."

* commit 'b2f07b27725bed9716114c46df2cf636eb366f6f':
Fix documentation for Parcel.readException().
c51cf03cf2458c8c137f60c7379f2cccf681d16f 03-Mar-2014 Dianne Hackborn <hackbod@google.com> Start recording wakeup reasons in battery history.

Depends on a modification to libsuspend so that we can get
a callback each time the device wakes up, to read the current
wakeup reasons from the kernel. These are then stuffed in
to a new field in the battery history.

Also add new dump options --history-start and --charged
to better control what is dumped.

Finally the alarm manager uses a "*walarm*" tag for history
item wake locks that are coming from a wakeup alarm.

Change-Id: I457571973d5b2b5fdc4e4b63ab16275db20d7edd
atteryStats.java
6b786e0012a1d45c3f0cc670a737036a734d56cf 07-Mar-2014 Paul Duffin <paulduffin@google.com> am 75d67c6a: am d562a9b5: Merge "Improve Parcel\'s handling of non-primitive arrays"

* commit '75d67c6aa051392e711fde3b901a4f2c62f983db':
Improve Parcel's handling of non-primitive arrays
364d8180d51b7960e922baebb730892a169dfa36 07-Mar-2014 Narayan Kamath <narayan@google.com> am 149510e0: am b9f960e0: Merge "Fixed cancel() not working correctly"

* commit '149510e010b46a445355a8d7fcdb8401125b92c3':
Fixed cancel() not working correctly
97ae538554e5d894774ddd55c266434ce1d67492 06-Mar-2014 Dianne Hackborn <hackbod@google.com> Formalize time bases in battery stats.

Battery stats used to revolve around a single time base
it maintained, "battery uptime and realtime." This is derived
from the system's uptime and realtime, but only increments while
the device is on battery. It is used to update its timers for
things like the screen being on, wake locks, etc only while the
device is not plugged in to power.

This change formalizes that time base into a separate class that
maintains all of its state. This is used to introduce a new
time base, "battery screen off," which only increments while the
device is on battery *and* the screen is off. Wake locks are now
based on this time base, so we don't count them while the screen
is on -- it is misleading to have them increment while the screen
is on because the device is defined to always stay awake anyway
during that time, so what they are doing is irrelevant.

Change-Id: I020e20c930d8dca2953c6c3ddef1dc93c24161a5
atteryStats.java
15e0e8e514c26d6168ebfb28c015af5f1d06661c 04-Mar-2014 Jeff Brown <jeffbrown@google.com> Merge "Detect invalid uses of Message."
9867ed7aa98f5a719db4b50c39a290bc0ef38123 28-Feb-2014 Jeff Brown <jeffbrown@google.com> Detect invalid uses of Message.

Throw an exception when an application attempts to recycle or
resend messages that are still in-use.

Change-Id: I7096e8b7bd5bec41b7b8ef0c798c55ce3db6827e
ooper.java
essage.java
essageQueue.java
36c96866f316254ec3b22b2214eef0aa017421c0 03-Mar-2014 Patrick Tjin <pattjin@google.com> Merge "Fix typo in documentation"
77b987f1a1bb6028a871de01065b94c4cfff0b5c 27-Feb-2014 Dianne Hackborn <hackbod@google.com> Hold a wake lock while dispatching network activity events.

Also add new API for determining whether the current data network
is active, and thus better scheduling network operations. This
API is designed to not be tied to a mobile network -- regardless
of the network, apps can use it to determine whether they should
initiate activity or wait. On non-mobile networks, it simply always
reports as the network being active.

This changed involved reworking how the idle timers are done so
that we only register an idle timer with the current default
network. This way, we can know whether we currently expect to
get callbacks about the network being active, or should just always
report that it is active. (Ultimately we need to be getting this
radio active data from the radio itself.)

Change-Id: Iaf6cc91a960d7542a70b72f87a7db26d12c4ea8e
atteryStats.java
NetworkActivityListener.aidl
NetworkManagementService.aidl
d45665bf0b26fddf5716a0fd43036848d9301960 26-Feb-2014 Dianne Hackborn <hackbod@google.com> Collect per-uid mobile radio usage.

We now compute radio active time per application, by distributing
the active time across all applications each time the radio goes
down, weighting it by the number of packets transferred.

Per-app radio power use is now computed using this radio active
time.

This also gives us a new metric "ms per packet", which give an
idea of how effectively an application is using the radio. This
is collected and reported as a new set of stats in the human-
readable checkin. (It can be computed from the raw checkin data).

Also improve sync reporting to include the sync source as used
in wake locks, not just the component name.

Change-Id: I0b0185fadd1e47ae749090ed36728ab78ac24c5e
atteryStats.java
72fa3ed1a04d1d3344dfd231fc36dedfb133a8c0 25-Feb-2014 Patrick Tjin <pattjin@google.com> Fix typo in documentation

Change-Id: Ida827957623cf49981e5a0c2c9193ef4efe8d1ce
syncTask.java
a1f1a3c573acd91024fda0ceb3b921c73b186963 25-Feb-2014 Dianne Hackborn <hackbod@google.com> More battery stats.

- Add events for sync.
- Add more descriptive tags for wake events.
- Fix battery reset.
- Fix tracking of wifi data.

Change-Id: Ic07f2a86a5ed33e7da57eb1108c31c777ecd801f
atteryProperties.java
atteryStats.java
PowerManager.aidl
owerManager.java
a77cf8735432daddb233164f41103a0ff38408bb 25-Feb-2014 John Spurlock <jspurlock@google.com> Merge "Tabs -> spaces in frameworks/base."
8a985d24ce9a38f40ed88fecbdcd0e75e3a68f44 25-Feb-2014 John Spurlock <jspurlock@google.com> Tabs -> spaces in frameworks/base.

Change-Id: I5a84e8e93ac99b5ed0212b37bf66efa5e53864be
roadcaster.java
1a447535cef7e3739d5f763dfe13e568568b9789 20-Feb-2014 Kenny Guy <kennyguy@google.com> Hide managed profiles from user switchers.

Hide managed profiles from lockscreen user switcher on tablets.
Hide managed profiles from power menu user switcher on phones.
Add flag to enable multi user ui turned off by default.

Change-Id: I4c69a6f7b0f39c249fc85fd940318df1ddab073f
serManager.java
4418372b21e91f6d4b9e11931dd87a90a023d79e 22-Feb-2014 Greg Hackmann <ghackmann@google.com> am 5f652b9f: am 0cab896a: resolved conflicts for merge of 9e413bf4 to klp-modular-dev-plus-aosp

* commit '5f652b9fdfbcc279353955f7ef86b72d2ef9f5fb':
open("/dev/rtc0") failure in AlarmManagerService.setTime() should be non-fatal
Move time setting code from SystemClock to AlarmManagerService
0cab896a987f6687affd5c50c3bdbe10745c8dff 22-Feb-2014 Greg Hackmann <ghackmann@google.com> resolved conflicts for merge of 9e413bf4 to klp-modular-dev-plus-aosp

Change-Id: Ibc41f0248235afca9546829e00b31003d09f4f7e
bbfc08b3abc0934f67659f3238eb79dcac838c17 21-Feb-2014 Greg Hackmann <ghackmann@google.com> Merge changes I6d4fdada,Ia34899a4

* changes:
open("/dev/rtc0") failure in AlarmManagerService.setTime() should be non-fatal
Move time setting code from SystemClock to AlarmManagerService
38bf51466881b726f42832743d8cca6ee67bb148 20-Feb-2014 Greg Hackmann <ghackmann@google.com> Move time setting code from SystemClock to AlarmManagerService

On devices using /dev/rtc instead of /dev/alarm, updating the
time-of-day clock and RTC are separate syscalls. Hence the clock and
RTC could be left in inconsistent states if two threads called
SystemClock.setCurrentTimeMillis() simultaneously.

By moving this code into AlarmManagerService, we can put a global lock
around AlarmManagerService.setTime() and prevent the race condition.

Note that access to SystemClock.setCurrentTimeMillis() is now gated by
android.permission.SET_TIME, where before it was gated by filesystem
permissions (i.e., could the process write to /dev/alarm or /dev/rtc).

Change-Id: Ia34899a4cde983656305fd2ef466dfe908ed23c8
Signed-off-by: Greg Hackmann <ghackmann@google.com>
ystemClock.java
5784f159ab9da9dd89c82926abdda26916503325 21-Feb-2014 Elliott Hughes <enh@google.com> am 48dcf9d5: am d7d37256: am b2f07b27: am 4a809272: Merge "Fix documentation for Parcel.readException()."

* commit '48dcf9d5f59acf53a3ac0eda141ec323534a3321':
Fix documentation for Parcel.readException().
d7d37256c4bab388e99dae5e16b80a59756cc97d 21-Feb-2014 Elliott Hughes <enh@google.com> am b2f07b27: am 4a809272: Merge "Fix documentation for Parcel.readException()."

* commit 'b2f07b27725bed9716114c46df2cf636eb366f6f':
Fix documentation for Parcel.readException().
4a80927241b3168d9d5138c46c22385d6467a736 21-Feb-2014 Elliott Hughes <enh@google.com> Merge "Fix documentation for Parcel.readException()."
10102e4c0e501333a12b38a5cfe709d1558d84dd 21-Feb-2014 Jeff Brown <jeffbrown@google.com> resolved conflicts for merge of baaa080b to master

Change-Id: I3ee12321e298f7a2ea577a99f30c49f3bb497fae
90506a41c6b85cf7e65b663480e4fe003a99c8c2 20-Feb-2014 Jeff Brown <jeffbrown@google.com> am 07e6d1b9: Merge "Add a new "doze mode" based on Dream components." into klp-modular-dev

* commit '07e6d1b9a5f81ff5a5bf91f2b260ee487d5f2b65':
Add a new "doze mode" based on Dream components.
2687550272ba061448f5d5b914700dc335299ee7 31-Jan-2014 Jeff Brown <jeffbrown@google.com> Add a new "doze mode" based on Dream components.

When a doze component has been specified in a config.xml resource
overlay, the power manager will try to start a preconfigured dream
whenever it would have otherwise gone to sleep and turned the
screen off. The dream should render whatever it intends to show
then call startDozing() to tell the power manager to put the display
into a low power "doze" state and allow the application processor
to be suspended. The dream may wake up periodically using the
alarm manager or other features to update the contents of the display.

Added several new config.xml resources related to dreams and dozing.
In particular for dozing there are two new resources that pertain to
decoupling auto-suspend mode and interactive mode from the display
state. This is a requirement to enable the application processor
and other components to be suspended while dozing. Most devices
do not support these features today.

Consolidated the power manager's NAPPING and DREAMING states into one
to simplify the logic. The NAPPING state was mostly superfluous
and simply indicated that the power manager should attempt to start
a new dream. This state is now tracked in the mSandmanSummoned field.

Added a new DOZING state which is analoguous to DREAMING. The normal
state transition is now: AWAKE -> DREAMING -> DOZING -> ASLEEP.
The PowerManager.goToSleep() method now enters the DOZING state instead
of immediately going to sleep.

While in the doze state, the screen remains on. However, we actually
tell the rest of the system that the screen is off. This is somewhat
unfortunate but much of the system makes inappropriate assumptions
about what it means for the screen to be on or off. In particular,
screen on is usually taken to indicate an interactive state where
the user is present but that's not at all true for dozing (and is
only sometimes true while dreaming). We will probably need to add
some more precise externally visible states at some point.

The DozeHardware interface encapsulates a generic microcontroller
interface to allow a doze dream for off-loading rendering or other
functions while dozing. If the device possesses an MCU HAL for dozing
then it is exposed to the DreamService here.

Removed a number of catch blocks in DreamService that caught Throwable
and attempted to cause the dream to finish itself. We actually just
want to let the process crash. Cleanup will happen automatically if
needed. Catching these exceptions results in mysterious undefined
behavior and broken dreams.

Bug: 12494706
Change-Id: Ie78336b37dde7250d1ce65b3d367879e3bfb2b8b
owerManager.java
ca1bf21c511dc7d513b631a1af8498b5b08d107a 14-Feb-2014 Dianne Hackborn <hackbod@google.com> Implement wifi part of issue #12973036: Improve power_profile.xml

Add battery stats tracking of wifi state.

Also update when we retrieve the current time to use a more
consistent value across stats tracking.

Change-Id: I6a7c3efd58ff2c8ea86dac141c8f848e7996d63f
atteryStats.java
0a18029075fbe5e5da396c66ef26cfa7e7f1a082 13-Feb-2014 Paul Lawrence <paullawrence@google.com> Clean up a few minor issues

Make public some constants, remove unused imports.

See https://googleplex-android-review.git.corp.google.com/#/c/412885/
for when these were introduced.

Change-Id: I90d0e33a411ebdd84c36e3d9afae70d2f2847538
torage/StorageManager.java
a9f387bdf0a836de8bcb12a46a5cdfcb544fbb1a 14-Feb-2014 Paul Lawrence <paullawrence@google.com> Merge "Support default, pattern, pin and password encryption types"
d39ccd0ad9cb562b0093eaf78a5273b000c0aa7a 13-Feb-2014 Dianne Hackborn <hackbod@google.com> Merge "Start tracking radio up time."
e13c4c0b664dabdc069ca8f9601d96a337eb02f9 12-Feb-2014 Dianne Hackborn <hackbod@google.com> Start tracking radio up time.

We now always turn on network state tracking for mobile,
and push this information down to battery stats.

In battery stats we use this to both log the changes in
the history and keep track of the total time the mobile
radio was active.

Power computation is switched over to using this information
to help determine power use, which will hopefully make it
more accurate (not counting inaccuracies in knowing when it
actually goes down).

Note yet done is aggregating this data per-uid, to better
emphasize which apps are causing the radio to be up. Right
now we just spread the total time across all uids weighted
by the total number of packets they have sent and received.

Also put in the battery stats infrastructure for bluetooth to
address issue #12973036: Improve power_profile.xml

Change-Id: I39d11b7ff6ae4f336f253d1cba308d8569de7e0d
atteryStats.java
8e39736f91a08961cf59c87075e61d9026833b50 28-Jan-2014 Paul Lawrence <paullawrence@google.com> Support default, pattern, pin and password encryption types

Java plumbing to expose methods to get/set encryption type in
IMountService, and hooking up of those methods to the Settings app
so the type is set correctly.

Needs matching vold changes from
https://googleplex-android-review.googlesource.com/#/c/412649/

Bug: 8769627
Change-Id: I70c0ed72d11f5ab6f0958a7f9c101b6822b13baa
torage/IMountService.java
torage/StorageManager.java
5ea06c59be1f7a0495378f703562ee02eaad99d8 13-Feb-2014 Paul Duffin <paulduffin@google.com> am 4de91118: am 0741e11c: am 75d67c6a: am d562a9b5: Merge "Improve Parcel\'s handling of non-primitive arrays"

* commit '4de9111819638b70dd6fb58094d7a61477fc59da':
Improve Parcel's handling of non-primitive arrays
0741e11c65350aba95df150d52674c2fab41511a 12-Feb-2014 Paul Duffin <paulduffin@google.com> am 75d67c6a: am d562a9b5: Merge "Improve Parcel\'s handling of non-primitive arrays"

* commit '75d67c6aa051392e711fde3b901a4f2c62f983db':
Improve Parcel's handling of non-primitive arrays
ac5a0828c14eea59f2ffda85432ad1977d3e1ce0 03-Feb-2014 Paul Duffin <paulduffin@google.com> Improve Parcel's handling of non-primitive arrays

Treat arrays other than actual Object arrays (i.e. those whose component type
is actually Object) and the primitive arrays already handled specially by
Parcel as Serializable's.

Issue: 64583
Change-Id: I3ff797f3262e77e4de27f35709bceee5410d1ed4
arcel.java
a52dc3eb40777b055c0ca8d7885bd2c9577bcd1a 11-Feb-2014 Kenny Guy <kennyguy@google.com> Add concepts of related users and managed profiles to user manager.

Related users are a group that will share things like notifications.
Managed profiles are a profile of another user.

Change-Id: I2d0532f1abf939810f0fa3fc7c77ad13fa567833
UserManager.aidl
serManager.java
68ac5cef63a9fef595a0cd6b7d8f9170994672ad 07-Feb-2014 Dianne Hackborn <hackbod@google.com> Merge "Battery stats: more events, fixes."
eaf2ac464b1cd741d7d0fe700771b1b7c00ddb29 07-Feb-2014 Dianne Hackborn <hackbod@google.com> Battery stats: more events, fixes.

Add new history events for top application package and
foreground application packages.

Doing this involved a fair amount of improvement to history
events. The event code is now separated out to have "start"
and "finish" identifies, and we use that to now keep track
of which events are active. With that, when resetting the
stats, we can spit out all of the currently active events at
the front of the new history.

Also fixed some problems when I re-arranged the history delta
int bits that were conflicting with the packing of the battery
status bits. These packing structures are changed to work
together correctly.

Change-Id: Ic8b815060dd8a50ff4a0a209efc2e1044215cd88
atteryStats.java
ebf8ad5d91b22eb4359c75711a5b70ddcce0723d 31-Jan-2014 Jeff Sharkey <jsharkey@android.com> Update DrmOutputStream to use raw FileDescriptor.

This allows DownloadManager to use FDs, paving the way for downloading
directly to content:// Uris.

Also return flag indicating if deleteOlderFiles() actually deleted
anything. Update tests to verify.

Bug: 5287571
Change-Id: I2579e5e2113f31b2860d7b021bd61c91b6310963
ileUtils.java
3d658bf20e2d56e36941e7407deebeec1276fbcf 05-Feb-2014 Dianne Hackborn <hackbod@google.com> Improve logging of first wake lock, history size.

We now try to have a better label for the first wake lock
that is acquired in the log. This is done in two ways:

- The alarm manager now sorts the alarms it is going to
execute so that wakeup alarms are first, which are more
important w.r.t. which one should be logged.
- There is a new power manager facility to make a wake lock
as "unimportant for logging," which just means in battery
stats that a wake lock acquired after that can be considered
the actual one to log. This is only used by the alarm manager
to mark its TIME_TICK alarms as unimportant for logging.

Also reworked the battery history code to be cleaner and a bit
smaller. There is no longer a separate EVENT command, instead
the event code and tag are just another thing that can be included
in an UPDATE command.

The bits used in the first history int are also re-arrange, so
that only the ones that really change a fair amount in the state
bits are up at the top and there is no longer space used for
the command code (since now it is always just UPDATE). This
allows us to have more room for the time delta at the bottom,
to better avoid situations where we need to write an int delta.

Change-Id: I1bb860ae5b558a248800b090b03a84fbf7acd68a
atteryStats.java
owerManager.java
e8d916c04c3fb40667fbacb9b6fd1c775ce00b42 03-Feb-2014 Dianne Hackborn <hackbod@google.com> Merge "More battery history improvements."
71fc13eb583eecc677b177b8010538a08aebb43d 03-Feb-2014 Dianne Hackborn <hackbod@google.com> More battery history improvements.

- Better batching of history items. Fixed problems where empty
entries would be created because state toggles got lost.
- The string pool is now a HistoryTag pool, containing both a string
and uid; now an entry only requires 16 bits in the history data.
- Acquiring the first wake lock also now includes a HistoryTag
identifying who did the aquisition.
- Cleaned up printing of signal strengths and cell radio types.
- There was code that tried to allow you to add new history entries
while iterating the history... but these should never happen
together, so turned that into a failure... and fixed an issue
where we could leave the battery stats in a state where it
thinks it is continually iterating.

Change-Id: I1afa57ee2d66b186932c502dbdd633cdd4aed353
atteryStats.java
fd6a44d0b5b6bcfc606abf23520b316c4bf36fc4 31-Jan-2014 Narayan Kamath <narayan@google.com> am ff62e966: am 149510e0: am b9f960e0: Merge "Fixed cancel() not working correctly"

* commit 'ff62e966b60bb20dc7c3384485816b1e7bf06057':
Fixed cancel() not working correctly
ff62e966b60bb20dc7c3384485816b1e7bf06057 31-Jan-2014 Narayan Kamath <narayan@google.com> am 149510e0: am b9f960e0: Merge "Fixed cancel() not working correctly"

* commit '149510e010b46a445355a8d7fcdb8401125b92c3':
Fixed cancel() not working correctly
3cd12a515562b278c05dff88324f254995a60e9e 07-Aug-2013 jl1990 <jlcarrasco1990@gmail.com> Fixed cancel() not working correctly

The method handleMessage(Message msg) from mHandler variable was
not checking if the timer was cancelled, so
sendMessageDelayed(obtainMessage(MSG), delay) was keeping the
timer alive. The patch simply adds a boolean and checks if the
CountDownTimer was cancelled before calling
sendMessageDelayed(obtainMessage(MSG), delay)

bug: https://code.google.com/p/android/issues/detail?id=58668

Change-Id: Ic6bbb9d33a3616f8503db222513cc14ad2270cb8
Signed-off-by: jl1990 <jlcarrasco1990@gmail.com>
ountDownTimer.java
ef099b71838e15758c8e859af21748a123bb4a99 29-Jan-2014 Narayan Kamath <narayan@google.com> am 4a587146: am 09d07d0d: am e3e4b405: am 9846fb69: am 50afaefd: Merge "AArch64: Make Binder and Parcel 64-bit compatible"

* commit '4a58714606fdeb2e740b0ce51ea5074783e2ecf4':
AArch64: Make Binder and Parcel 64-bit compatible
4a58714606fdeb2e740b0ce51ea5074783e2ecf4 29-Jan-2014 Narayan Kamath <narayan@google.com> am 09d07d0d: am e3e4b405: am 9846fb69: am 50afaefd: Merge "AArch64: Make Binder and Parcel 64-bit compatible"

* commit '09d07d0d33d44fc87c02a8f607ecb7b96dbb4145':
AArch64: Make Binder and Parcel 64-bit compatible
09d07d0d33d44fc87c02a8f607ecb7b96dbb4145 29-Jan-2014 Narayan Kamath <narayan@google.com> am e3e4b405: am 9846fb69: am 50afaefd: Merge "AArch64: Make Binder and Parcel 64-bit compatible"

* commit 'e3e4b40577032f6fad38bfbeb9c2b40df89f0ef9':
AArch64: Make Binder and Parcel 64-bit compatible
e3e4b40577032f6fad38bfbeb9c2b40df89f0ef9 29-Jan-2014 Narayan Kamath <narayan@google.com> am 9846fb69: am 50afaefd: Merge "AArch64: Make Binder and Parcel 64-bit compatible"

* commit '9846fb695a3c41aabde4ca0061d583b35f9621d1':
AArch64: Make Binder and Parcel 64-bit compatible
5f4a5f9536eb171bf21a9293198d90c9891e7205 25-Jan-2014 Dianne Hackborn <hackbod@google.com> Add "start time" timestamp to battery stats.

Change-Id: I902269b98b40b2421245bfd8971f34df5ff9214e
atteryStats.java
8ab665dda40ab10e60fc69392022171f454af530 22-Jan-2014 Ashok Bhat <ashok.bhat@arm.com> AArch64: Make Binder and Parcel 64-bit compatible

Changes include
[x] Long is used to store native pointers

[x] Added new method obtain(long obj) to Parcel. Binder
uses this method instead of obtain(int obj).

[x] obtain(int) has been changed to throw unsupported
operation exception.

Change-Id: I408e0f2a24deb28c9277d86670653a51eb314266
Signed-off-by: Ashok Bhat <ashok.bhat@arm.com>
Signed-off-by: Craig Barber <craig.barber@arm.com>
Signed-off-by: Kévin PETIT <kevin.petit@arm.com>
inder.java
arcel.java
b34a4615f82a4ad8ce2c0687f47e2113e057e893 23-Jan-2014 Narayan Kamath <narayan@google.com> Hide android.os.Parcel.obtain(int).

This will break on 64 bit because 64 bit pointers are
wider than java int.

Also, this method technically isn't a public API because
it's a protected method on a final class. It shows up in
our api.txt files because of a quirk in the API generation
system.

Change-Id: I2b574943008ed34696b048195c0cac6af1aa0a3b
arcel.java
39e79006cf22f10eb62ac721238778aa6b7d3473 22-Jan-2014 Dianne Hackborn <hackbod@google.com> Merge "Battery stats improvements."
099bc627c463d9941e23e480f25a78a154429c55 22-Jan-2014 Dianne Hackborn <hackbod@google.com> Battery stats improvements.

- Adjust total power use when there is unaccounted power so that our
percentages don't end up > 100%.
- Fix accounting of isolated uids to be against the owning real app
uids.
- Rework how we put cpu use into the battery stats to no longer need
this uid name cache that can confuse the uid it is associated with.
- Finish implementing events in the history, adding a string pool and
reading/writing/dumping them.
- Add first two events: processes starting and finishing.
- Fix alarm manager reporting of wakeup alarms to be adjusted by the
WorkSource associated with the alarm, so they are blamed on the
correct app.
- New "--history" dump option allows you to perform a checkin of
only the history data.
- Fixed BitDescription bug that would cause incorrect printing of
changes in some states.

Change-Id: Ifbdd0740132ed178033851c58f165adc0d50f716
atteryStats.java
509cc13b705f8c488774e7097ab17471c3dacd2e 18-Jan-2014 Jeff Brown <jeffbrown@google.com> am e2c9cd58: Merge "Refactor display manager service to new pattern." into klp-modular-dev

* commit 'e2c9cd583f4f706b48270b8cbe84df627c69af24':
Refactor display manager service to new pattern.
4ccb823a9f62e57f9d221f83a97e82967e79a9e5 17-Jan-2014 Jeff Brown <jeffbrown@google.com> Refactor display manager service to new pattern.

Transform DisplayManagerService into a SystemService and start cleaning
up other local services that it uses from window manager and input manager.

Clean up service thread initialization.

Remove unnecessary static variables from ActivityManagerService.

It's starting to become clear that we really need a better way to manage
service dependencies. Boot phases don't quite cut it.

Change-Id: If319dbd7cbfbd4812fe55ece969e818d4b20755b
owerManagerInternal.java
a17059b78795e095c75a3d31ce8553e8713900c8 17-Jan-2014 Jeff Sharkey <jsharkey@android.com> Merge "Run finalizers before counting for StrictMode."
3b0218b0ae1fad67f539ff3c10d6d2f3abec1a11 14-Jan-2014 Doug Zongker <dougz@android.com> boot into recovery via the pre-recovery service

Change PowerManagerService to start the pre-recovery service rather
than rebooting directly, when requested to reboot into recovery. Add
a new RECOVERY permission which a caller needs (in addition to REBOOT)
in order to go to recovery.

Bug: 12188746
Change-Id: I39121b701c4724558fe751adfbad79f8567faa43
owerManager.java
6f3a38f3afd79ed6dddcef5c83cb442d6749e2ff 16-Jan-2014 Jeff Sharkey <jsharkey@android.com> Run finalizers before counting for StrictMode.

Otherwise we sometimes end up counting objects strongly referenced
by the finalizer queue, and falsely detecting an instance leak.

Bug: 12533002
Change-Id: I144c941a3dfb0cbb837b98e80d2f49ffc9ca13c7
trictMode.java
09d30981f8e882ffaa336aa4665bfe348557895a 16-Jan-2014 Jeff Brown <jeffbrown@google.com> resolved conflicts for merge of 6f357d32 to master

Change-Id: I1979e6ed1acddbe656f5010114fd900f10865e75
6f357d3284a833cc50a990e14b39f389b8972254 16-Jan-2014 Jeff Brown <jeffbrown@google.com> Start untangling system server early bootstrapping.

Refactored SystemServer to get rid of a bunch of legacy cruft related
to how the ServerThread used to be started up.

Create system context first when system server starts. This removes
the tangled initialization order dependency that forced us to start
the activity manager service before most anything else.

Moved factory test related constants into the FactoryTest class.

Partially migrated Installer, ActivityManagerService, and
PowerManagerService to the new SystemService pattern. There's more
work to be done here, particularly around the lifecycle of the
power manager.

Bug: 12172368
Change-Id: Ia527dd56e3b3fd90f9eeb41289dbe044921230d4
actoryTest.java
owerManagerInternal.java
ab8643452adcf91781991bce03be26f072311d89 16-Jan-2014 Narayan Kamath <narayan@google.com> Track AArch64 changes from AOSP.

mPtr is now long, not int.

Change-Id: I75297cbef3571f8f0cc02a35a06c1bc1f4fbe416
essageQueue.java
5875c94c591e3e10011509cd6a059844316b7f85 16-Jan-2014 Narayan Kamath <narayan@google.com> am 275586aa: am 7471dfc4: am 42defa02: am faa62aac: am 84ee7930: Merge "AArch64: Use long for pointers in android/os/MessageQueue"

* commit '275586aa53889a851e0b739e408896861d76e3a8':
AArch64: Use long for pointers in android/os/MessageQueue
1bf3ab08db3dc342461a77e7a261ee9f406a5060 16-Jan-2014 Narayan Kamath <narayan@google.com> am c45068e4: am d7a54c65: am 31f10bb2: am 80b3dd0d: am 27a647bf: Merge "AArch64: Use long for pointers in android/os/MemoryFile"

* commit 'c45068e4a48053447413783e549be7273e38ea97':
AArch64: Use long for pointers in android/os/MemoryFile
7471dfc4a894ade4cd83949d2b59b9b7e75bbf92 16-Jan-2014 Narayan Kamath <narayan@google.com> am 42defa02: am faa62aac: am 84ee7930: Merge "AArch64: Use long for pointers in android/os/MessageQueue"

* commit '42defa02337b94d25714fe737f749f2c3300c790':
AArch64: Use long for pointers in android/os/MessageQueue
d7a54c6574c3ca759e977f27912caecb6b40e827 16-Jan-2014 Narayan Kamath <narayan@google.com> am 31f10bb2: am 80b3dd0d: am 27a647bf: Merge "AArch64: Use long for pointers in android/os/MemoryFile"

* commit '31f10bb21b24824c5dbf60b420239513f02b9e55':
AArch64: Use long for pointers in android/os/MemoryFile
42defa02337b94d25714fe737f749f2c3300c790 16-Jan-2014 Narayan Kamath <narayan@google.com> am faa62aac: am 84ee7930: Merge "AArch64: Use long for pointers in android/os/MessageQueue"

* commit 'faa62aaca5f4a149f20487d42279fefc7d356428':
AArch64: Use long for pointers in android/os/MessageQueue
31f10bb21b24824c5dbf60b420239513f02b9e55 16-Jan-2014 Narayan Kamath <narayan@google.com> am 80b3dd0d: am 27a647bf: Merge "AArch64: Use long for pointers in android/os/MemoryFile"

* commit '80b3dd0d8e333905e9f2a3a844bc524d41df7da2':
AArch64: Use long for pointers in android/os/MemoryFile
84ee7930bb0f91f6a19662efa4c3f7c7044be426 16-Jan-2014 Narayan Kamath <narayan@google.com> Merge "AArch64: Use long for pointers in android/os/MessageQueue"
27a647bf382f12aea6d0c9584302423e1c44fbb0 16-Jan-2014 Narayan Kamath <narayan@google.com> Merge "AArch64: Use long for pointers in android/os/MemoryFile"
c46809e9979204aa9a131d8933da23d298411441 16-Jan-2014 Dianne Hackborn <hackbod@google.com> Whoops add a line separator.

Change-Id: Ie596527a39319fcf3f80a444fed9e62f90163ea5
atteryStats.java
c8345b32c9636d4d2984a2e9f23dd0391c664ba4 16-Jan-2014 Dianne Hackborn <hackbod@google.com> Merge "Add battery power use reporting to batterystats service."
4ca728c064aeab644f6d044e0285eaa056818b8a 11-Jan-2014 Jeff Sharkey <jsharkey@android.com> Detect removable and emulated secondary storage.

Also rename existing secondary storage API to match naming
convention in rest of class.

Bug: 11536709
Change-Id: I2684c817de4982b414893d2d9927a21e3f171d53
nvironment.java
ileUtils.java
a7c837f043c1ca0bdecd42645ba7da8c5717566d 16-Jan-2014 Dianne Hackborn <hackbod@google.com> Add battery power use reporting to batterystats service.

Move the BatteryStatsHelper class (which computes power use based
on the raw battery stats) out of the settings app and in to the
framework. It is now used by batterystats dump output to print
the computed power information from its current stats.

This involved a lot of refactoring of the BatteryStatsHelper code
to remove all of the UI dependencies. I also did a bunch of cleanup
in it, such as making all power computations be in terms of mAh.

Change-Id: I8ccf2c9789dc9ad34904917ef57050371a59dc28
atteryStats.java
70216e599e678d46b0630e261e25b5209465255a 15-Jan-2014 Jeff Hao <jeffhao@google.com> am ac20b469: am 6c13f384: am 56b11064: am 9a5005a3: am f6730d26: Merge "Add sample profiling interface to startMethodTracing."

* commit 'ac20b469259129df948bae1fa5434098b1801185':
Add sample profiling interface to startMethodTracing.
6c13f384749150e9fa6f930023a9161fe97402d0 15-Jan-2014 Jeff Hao <jeffhao@google.com> am 56b11064: am 9a5005a3: am f6730d26: Merge "Add sample profiling interface to startMethodTracing."

* commit '56b110649424534de36ca41b3e352a73b6bdf3c0':
Add sample profiling interface to startMethodTracing.
56b110649424534de36ca41b3e352a73b6bdf3c0 15-Jan-2014 Jeff Hao <jeffhao@google.com> am 9a5005a3: am f6730d26: Merge "Add sample profiling interface to startMethodTracing."

* commit '9a5005a3bfa419cb856a83ca34a67556d9fd5b74':
Add sample profiling interface to startMethodTracing.
d02e60fbd41e4f35160f1ea17a9c606d611bb60e 07-Jan-2014 Jeff Hao <jeffhao@google.com> Add sample profiling interface to startMethodTracing.

Frameworks base side of this change. Also changed art and libcore.

Change-Id: Ib5ba0445163dca714d1ae66430750346ff8811be
ebug.java
88926a5482552ddf2f4906df581bbbf1cc9d03aa 14-Jan-2014 John Spurlock <jspurlock@google.com> am 4b67b88e: am cce06eda: am b3436359: am e05190ea: am 85f98508: Merge "Docfixes: three typos and escape */*." into klp-docs

* commit '4b67b88e344a147317fc6b32e5364d4cfabf1e1d':
Docfixes: three typos and escape */*.
cce06eda6bd6af957b261f66eb8ea3623fe09caf 14-Jan-2014 John Spurlock <jspurlock@google.com> am b3436359: am e05190ea: am 85f98508: Merge "Docfixes: three typos and escape */*." into klp-docs

* commit 'b34363590953e4efd70168cdf03386d1e469a548':
Docfixes: three typos and escape */*.
b34363590953e4efd70168cdf03386d1e469a548 14-Jan-2014 John Spurlock <jspurlock@google.com> am e05190ea: am 85f98508: Merge "Docfixes: three typos and escape */*." into klp-docs

* commit 'e05190eae74be57dd517bb5afbccf901543329bf':
Docfixes: three typos and escape */*.
e05190eae74be57dd517bb5afbccf901543329bf 14-Jan-2014 John Spurlock <jspurlock@google.com> am 85f98508: Merge "Docfixes: three typos and escape */*." into klp-docs

* commit '85f98508366e8422f71553d2a5e682eb804c7419':
Docfixes: three typos and escape */*.
5002b8c972967b9f0f58dcefe6e37ea79fa9a179 10-Jan-2014 John Spurlock <jspurlock@google.com> Use custom classloader if provided for Serializables.

If an explicit classloader is provided during unparcel, use it
when deserializing java serializables.

Change-Id: I2b354f0b55359201528234b8095aa0bc102928ec
arcel.java
63a37153238d95cf8897939e6d6e8fbc56e9ec7f 10-Jan-2014 Ashok Bhat <ashok.bhat@arm.com> AArch64: Use long for pointers in android/os/MessageQueue

Long is used in android/os/MessageQueue class to store
pointers as native pointers can be 64-bit.

In addition, some minor changes have been done
to conform with standard JNI practice (e.g. use
of jint instead of int in JNI function prototypes)

Change-Id: I7e901b8515a5b5e3afe1dadaaf3e5c186955c2a0
Signed-off-by: Ashok Bhat <ashok.bhat@arm.com>
Signed-off-by: Kévin PETIT <kevin.petit@arm.com>
essageQueue.java
c20cadbdad0cdfe8e56431c22bd26ae666101e89 10-Jan-2014 Ashok Bhat <ashok.bhat@arm.com> AArch64: Use long for pointers in android/os/MemoryFile

Long is used in android/os/MemoryFile class to store
pointers as native pointers can be 64-bit.

In addition, some minor changes have been done
to conform with standard JNI practice (e.g. use
of jint instead of int in JNI function prototypes)

Change-Id: I07afc010524c16b5c852273b89becb0c08ff27d7
Signed-off-by: Ashok Bhat <ashok.bhat@arm.com>
Signed-off-by: Kévin PETIT <kevin.petit@arm.com>
emoryFile.java
3390018c6b45acffa6edf97a4174ca49f1e8c76d 02-Jan-2014 John Spurlock <jspurlock@google.com> Docfixes: three typos and escape */*.

Change-Id: I418d855b5d08a1a20eaca3d8e4d2e5d0fca23dd5
syncTask.java
91ecb36df50be3446809e9da2a8f571d157f7549 11-Jul-2013 Todd Poynor <toddpoynor@google.com> ActivityManagerService use lmkd low memory killer daemon -- DO NOT MERGE

Change-Id: Ie2f8af1e411c28d7f03be56c356ec39e1d71558e
rocess.java
879ea451cefa535803d9742506cf51e2e0df75a7 02-Jan-2014 Mark Doliner <markdoliner@google.com> Fix documentation for Parcel.readException().

The old documentation was kind of useless and not clear, so this is an
improvement.

In addition to this change, I think this method should probably be private
instead of public, especially since the values for code are private. But it's
too late to change that now. Also the method name is pretty poor, since it's
not actually reading anything. Something like "throwException" would be more
appropriate.

I'm open to suggestions on how to improve this situation. Maybe mark the
method as deprecated with a comment that it will be made private in the
future?

Change-Id: I830f2bcf606714bd130d8c953aa33974b33c9a83
arcel.java
a8cf4f2fd1f72e3fa6ded96e1516ea1788fe3a25 20-Dec-2013 David Christie <dnchrist@google.com> Document that Handler.postDelayed uses uptimeMillis() based counting.
-Make it clear that delay may be longer than requested.
-Potentially help developers avoid power bugs (e.g. releasing after delay).
Bug: 12015795

Change-Id: I8034466f6307f64bfcad985948c1dc06872297d3
andler.java
57ed6a6440ff010494a03c6c68ce6dc0924b57d6 10-Dec-2013 Dianne Hackborn <hackbod@google.com> Improvements to battery stats.

Now collect per-network packet usage data.

Big reworking of history to be able to start adding more events to it.
Also rework how the checking dump is done to make it more compact, so
maybe we can start uploading it.

Change-Id: I2b29e049ebe073671d0dbe38324223cc2ec0d043
atteryStats.java
09cee9d21f201b75241f6171728c3afb0e7b3139 11-Dec-2013 Marco Nelissen <marcone@google.com> am 4f6a1394: am c680bab3: am 69b46707: am ce3bd309: Merge "Parse UUID string with Long.parseLong"

* commit '4f6a139493e922f2db5e4ee7bb5364e4f8487322':
Parse UUID string with Long.parseLong
69b4670730ec557af6dc67f6c42aff20e5b0b86a 11-Dec-2013 Marco Nelissen <marcone@google.com> am ce3bd309: Merge "Parse UUID string with Long.parseLong"

* commit 'ce3bd309b12e9552c05d5a59a06d7883618c5ca0':
Parse UUID string with Long.parseLong
17d5c1b18132e82abb1b828dcc39ca17cff35dd3 06-Dec-2013 Tom Marshall <tdm.code@gmail.com> Parse UUID string with Long.parseLong

Integer.parseInt throws an NPE for values greater than 0x7fffffff.
torage/StorageVolume.java
64fe2b3a33a34f585d83c3f64798e745ca6a37a2 21-Nov-2013 Dirk Dougherty <ddougherty@google.com> am 3eddb621: am a40420c9: am 43eea0a6: Merge "Doc change: Change description for BRAND. Bug:11431921" into klp-docs

* commit '3eddb6213dc017c78e6d641f7f4a4685db09851e':
Doc change: Change description for BRAND. Bug:11431921
3eddb6213dc017c78e6d641f7f4a4685db09851e 21-Nov-2013 Dirk Dougherty <ddougherty@google.com> am a40420c9: am 43eea0a6: Merge "Doc change: Change description for BRAND. Bug:11431921" into klp-docs

* commit 'a40420c9c1c8216fd0251dc550bb22e9cc1dd177':
Doc change: Change description for BRAND. Bug:11431921
a40420c9c1c8216fd0251dc550bb22e9cc1dd177 21-Nov-2013 Dirk Dougherty <ddougherty@google.com> am 43eea0a6: Merge "Doc change: Change description for BRAND. Bug:11431921" into klp-docs

* commit '43eea0a640db07c4da05146f7e68eae567592bdb':
Doc change: Change description for BRAND. Bug:11431921
491b40d752578b4f6e73333a478fb8c547adb929 30-Oct-2013 Dirk Dougherty <ddougherty@google.com> Doc change: Change description for BRAND.
Bug:11431921

Change-Id: Id08bb58a52699942e0cf626aeb577ac05c84c575
uild.java
6090995951c6e2e4dcf38102f01793f8a94166e1 19-Nov-2013 John Spurlock <jspurlock@google.com> Remove unused imports from frameworks/base.

Change-Id: Ia1f99bd2c1105b0b0f70aa614f1f4a67b2840906
atteryStats.java
ommonClock.java
ommonTimeConfig.java
ountDownTimer.java
ebug.java
ropBoxManager.java
ileObserver.java
ileUtils.java
Binder.java
ooper.java
ullVibrator.java
egistrant.java
egistrantList.java
ystemProperties.java
ystemService.java
race.java
serManager.java
b25b890126f768b19e0a800e9bc73a913c3aad8e 15-Nov-2013 Dianne Hackborn <hackbod@android.com> am 6f5d8537: am 47b260d0: am 572b759a: Merge "Use index in SparseArray access properly"

* commit '6f5d85377be86f6d2856470788471bdda5832366':
Use index in SparseArray access properly
6f5d85377be86f6d2856470788471bdda5832366 15-Nov-2013 Dianne Hackborn <hackbod@android.com> am 47b260d0: am 572b759a: Merge "Use index in SparseArray access properly"

* commit '47b260d071859a8c20bb0af2bcc095e253f7046c':
Use index in SparseArray access properly
72cd81db365c0b2742cb91adf02faf994608d18e 13-Nov-2013 Scott Main <smain@google.com> am af623b99: am bb146981: am 29610421: Merge "Revised some text while reading up on traceview. this is what\'s left of this older CL that was left for dead: I5528b476d8110df51d45aaf690d878f72bc75c9f" into klp-docs

* commit 'af623b99dafbc16effc7b05de833e842654b75e1':
Revised some text while reading up on traceview. this is what's left of this older CL that was left for dead: I5528b476d8110df51d45aaf690d878f72bc75c9f
af623b99dafbc16effc7b05de833e842654b75e1 13-Nov-2013 Scott Main <smain@google.com> am bb146981: am 29610421: Merge "Revised some text while reading up on traceview. this is what\'s left of this older CL that was left for dead: I5528b476d8110df51d45aaf690d878f72bc75c9f" into klp-docs

* commit 'bb1469816451aeb24eb8208fac1f2596f528aa80':
Revised some text while reading up on traceview. this is what's left of this older CL that was left for dead: I5528b476d8110df51d45aaf690d878f72bc75c9f
b94d654d36d6352d56847d877450b80da7e0d5b4 13-Nov-2013 Igor Chernyshev <igorc@google.com> Use index in SparseArray access properly

The original code was calling get() rather than valueAt(),
treating index as if it was a key.

Change-Id: I52539dfcb49b3d2ee3cb027d38c50b46f73b5ee7
Signed-off-by: Igor Chernyshev <igorc@google.com>
undle.java
bb1469816451aeb24eb8208fac1f2596f528aa80 13-Nov-2013 Scott Main <smain@google.com> am 29610421: Merge "Revised some text while reading up on traceview. this is what\'s left of this older CL that was left for dead: I5528b476d8110df51d45aaf690d878f72bc75c9f" into klp-docs

* commit '29610421a32501661d6c20136c76ec426d6500fb':
Revised some text while reading up on traceview. this is what's left of this older CL that was left for dead: I5528b476d8110df51d45aaf690d878f72bc75c9f
c468240c1a2a393ec02d992f459c6586ae450161 13-Jun-2013 Scott Main <smain@google.com> Revised some text while reading up on traceview.
this is what's left of this older CL that was left for dead:
I5528b476d8110df51d45aaf690d878f72bc75c9f

Change-Id: I42f784d693c0a2a2e2e8ed4c582cbc10180191e7
race.java
d528d48e5d8444de0730d62b9f621b9cc2df5fbd 08-Nov-2013 Robert Greenwalt <rgreenwalt@google.com> resolved conflicts for merge of c3eef190 to master

Change-Id: I36fd3c7fcbb13e47e27ffc340484c03b5a553bb1
c3eef19047b897bfb6e3cf42220d5146b187c66e 07-Nov-2013 Robert Greenwalt <rgreenwalt@google.com> am f1612bcf: am e8c51298: Merge "Add BatteryStats for Wifi Batched Scanning." into klp-dev

* commit 'f1612bcfdd2cb517948f14369fd0977ceb55d19c':
Add BatteryStats for Wifi Batched Scanning.
a029ea131836725b050e1a7550aa171b68171522 26-Sep-2013 Robert Greenwalt <rgreenwalt@google.com> Add BatteryStats for Wifi Batched Scanning.

bug:10690989
Change-Id: Ia39b715ee6d5733970095bc76de0ed40ff8208c0
atteryStats.java
09e0244f72c6ed61ee205fa85e29e821d4c72b42 06-Nov-2013 Patrick Tjin <pattjin@google.com> am b4328566: am 5eecb9e8: am bd9513f3: Merge "Add HSPA+ to BatteryStats" into klp-dev

* commit 'b4328566fa415b69974a9721ec690a1b74880873':
Add HSPA+ to BatteryStats
b4328566fa415b69974a9721ec690a1b74880873 06-Nov-2013 Patrick Tjin <pattjin@google.com> am 5eecb9e8: am bd9513f3: Merge "Add HSPA+ to BatteryStats" into klp-dev

* commit '5eecb9e8d44b3864a3261a3c5ebfbb9c606e77f5':
Add HSPA+ to BatteryStats
b71703cfdfbac35a6e5afaa437d073cf835c25db 06-Nov-2013 Patrick Tjin <pattjin@google.com> Add HSPA+ to BatteryStats

HSPA+ was being shown as connection type other in battery
statistics because it was not updated when TelephonyManager
was changed.

Bug: 11552902
Change-Id: I85ce7c393bf93010a4ac8437f14684015ad0391a
atteryStats.java
aa2f9f01fa820ba93eaff8916b74cbc4a2bf0254 30-Oct-2013 Jeff Brown <jeffbrown@google.com> am 81b7caf0: resolved conflicts for merge of 5214dae4 to klp-dev-plus-aosp

* commit '81b7caf0d12fb56ab40592467d6b1cbcaef8f0b4':
handle negative temperature
81b7caf0d12fb56ab40592467d6b1cbcaef8f0b4 30-Oct-2013 Jeff Brown <jeffbrown@google.com> resolved conflicts for merge of 5214dae4 to klp-dev-plus-aosp

Change-Id: I769e7acbe207b9c3a60ff1576d11b3ab40b8c66d
e4d5f6e24e01d3da8f415e79ba8f37ea2d522f67 29-Oct-2013 Jeff Sharkey <jsharkey@android.com> am 8f541938: am 23ac234e: am 704269ec: Merge "Mention external storage changes in KITKAT docs." into klp-dev

* commit '8f5419383283c6e82d2038ca807c3c55281d8fa2':
Mention external storage changes in KITKAT docs.
6dbbba4e9adc3f1c2481698e42f4ffc0c68937f1 29-Oct-2013 Jeff Brown <jeffbrown@android.com> Merge "handle negative temperature"
8f5419383283c6e82d2038ca807c3c55281d8fa2 29-Oct-2013 Jeff Sharkey <jsharkey@android.com> am 23ac234e: am 704269ec: Merge "Mention external storage changes in KITKAT docs." into klp-dev

* commit '23ac234e9049512696c7e7c6f277e334fde50f7a':
Mention external storage changes in KITKAT docs.
3ec2f60ebde1e6fa6ee276b4d5dfaa5d56ed3cef 29-Oct-2013 Jeff Sharkey <jsharkey@android.com> Mention external storage changes in KITKAT docs.

Bug: 11388971
Change-Id: I97145472948867f54125f1d0f0237bf3b339535e
uild.java
a22010ebe533aafe1b3d488128f3df757f306dd0 26-Oct-2013 Marco Nelissen <marcone@google.com> am d19385bf: am 21657181: Merge "Add a method to set a list of uids for a wake lock" into klp-dev

* commit 'd19385bf58225069c8ea0a7ce5075ed28861b039':
Add a method to set a list of uids for a wake lock
2165718153c1288dee7e106f0c61d952f515600b 25-Oct-2013 Marco Nelissen <marcone@google.com> Merge "Add a method to set a list of uids for a wake lock" into klp-dev
92706ac8dfef79d65779ac1a886c0ce21529dbb9 25-Oct-2013 Jeff Sharkey <jsharkey@android.com> am d8a81d06: am fd38f940: am ac4bf7fd: Merge "Skip writing PFD status when comm is closed." into klp-dev

* commit 'd8a81d06e4649498b3ba884f2e5443701e13d023':
Skip writing PFD status when comm is closed.
d8a81d06e4649498b3ba884f2e5443701e13d023 25-Oct-2013 Jeff Sharkey <jsharkey@android.com> am fd38f940: am ac4bf7fd: Merge "Skip writing PFD status when comm is closed." into klp-dev

* commit 'fd38f940f4283f9ea68142185426a7cf45d58ae0':
Skip writing PFD status when comm is closed.
ac4bf7fd9ade1bf8448b67feb3935bf4620714d5 25-Oct-2013 Jeff Sharkey <jsharkey@android.com> Merge "Skip writing PFD status when comm is closed." into klp-dev
738ffdc9da55db3127146df1b3fcb15b5163a335 16-Oct-2013 Marco Nelissen <marcone@google.com> Add a method to set a list of uids for a wake lock

Cherrypicked from master.

b/9464621

Change-Id: Ia6a9d36d55129ae87d3ec070fbf10dc02f4b6cb4
PowerManager.aidl
27dab3889128c35d422cfc1132d1d0b14249667d 25-Oct-2013 Dianne Hackborn <hackbod@google.com> am f09a1b88: am aec8fbb3: am df033aed: Merge "Fix issue #11290095: Parcel change causing crashing in KLP..." into klp-dev

* commit 'f09a1b88ae87abb750bda62f97fce1633a9cab7d':
Fix issue #11290095: Parcel change causing crashing in KLP...
f09a1b88ae87abb750bda62f97fce1633a9cab7d 25-Oct-2013 Dianne Hackborn <hackbod@google.com> am aec8fbb3: am df033aed: Merge "Fix issue #11290095: Parcel change causing crashing in KLP..." into klp-dev

* commit 'aec8fbb354621dc49a4ac971a64706bee01e5806':
Fix issue #11290095: Parcel change causing crashing in KLP...
d99f9caba6600f1b5e0bc8a21681162ae42d6518 25-Oct-2013 Jeff Sharkey <jsharkey@android.com> Skip writing PFD status when comm is closed.

If the remote side of PFD has already written a status message, then
they've also closed their end of the comm FD, and we're going to
EPIPE if we try sending our own status. So, skip writing status if
a remote status is present.

Only one end of the openFile() comm socket needs to be blocking,
otherwise detachFd() would end up blocking forever.

Bug: 11385467
Change-Id: I346d40cc1ca4a6683cec4c2d2b7db2b32ac94a55
arcelFileDescriptor.java
8aee64d18b6b90e46e886a80d8de0467d682ddc4 25-Oct-2013 Dianne Hackborn <hackbod@google.com> Fix issue #11290095: Parcel change causing crashing in KLP...

...when reading from empty byte[]

Better handling of empty bundles and parcels.

Change-Id: Ie9182e43a52b8f163e8fb20bd1d110e0832683e6
undle.java
arcel.java
50ae3858942c3afb4006317a8b517bceb1b0114e 04-Oct-2013 Todd Poynor <toddpoynor@google.com> BatteryService: remove dumpsys-only info duplicated by systemhealth

Change-Id: I7fa605304b5f62ea19bcf3851d11abe7bf6c83f5
atteryProperties.java
c8c25943817252a591a6cc3cb326e21abdf90fb1 18-Oct-2013 Marco Nelissen <marcone@google.com> Merge "Add a method to set a list of uids for a wake lock"
b1eb620219de034b28a0130b07ca05140c4ff830 18-Oct-2013 Jeff Brown <jeffbrown@google.com> am 83bf4404: am 3e3296e5: am 82f31701: Merge "Log view root, input and looper state in bug reports." into klp-dev

* commit '83bf440440309a394f792e3d8a6acb98197d9d7c':
Log view root, input and looper state in bug reports.
83bf440440309a394f792e3d8a6acb98197d9d7c 18-Oct-2013 Jeff Brown <jeffbrown@google.com> am 3e3296e5: am 82f31701: Merge "Log view root, input and looper state in bug reports." into klp-dev

* commit '3e3296e526663306237fe551527146286e14f4e4':
Log view root, input and looper state in bug reports.
82f31701141f5c3057b162cba1d57f78cbad5091 18-Oct-2013 Jeff Brown <jeffbrown@google.com> Merge "Log view root, input and looper state in bug reports." into klp-dev
eeb58c79c0512b9a4bff0383327665875304a53f 18-Oct-2013 Jeff Sharkey <jsharkey@android.com> am 703840da: am 1a5804d7: am 0c0f1e2e: Merge "Include external storage devices in DocumentsUI." into klp-dev

* commit '703840da8a33c703f2d787526438c650b0318845':
Include external storage devices in DocumentsUI.
db289e0ac752ea204cf88abd7c38bf9b27e294c9 18-Oct-2013 Jeff Sharkey <jsharkey@android.com> am 47938450: am 306bb90d: am 8f4c15d8: Merge "Plumb through physical device UUID and label." into klp-dev

* commit '47938450b4d19f60edf774c8f451d53aa110ea0b':
Plumb through physical device UUID and label.
703840da8a33c703f2d787526438c650b0318845 18-Oct-2013 Jeff Sharkey <jsharkey@android.com> am 1a5804d7: am 0c0f1e2e: Merge "Include external storage devices in DocumentsUI." into klp-dev

* commit '1a5804d7aa253432f37fbd5d8eb89ac363501fe9':
Include external storage devices in DocumentsUI.
47938450b4d19f60edf774c8f451d53aa110ea0b 18-Oct-2013 Jeff Sharkey <jsharkey@android.com> am 306bb90d: am 8f4c15d8: Merge "Plumb through physical device UUID and label." into klp-dev

* commit '306bb90d97da583c3728d35073ebcb7f7ca5c467':
Plumb through physical device UUID and label.
1f706c6cd1cb841adadc2babc57a34e5728983ec 17-Oct-2013 Jeff Sharkey <jsharkey@android.com> Include external storage devices in DocumentsUI.

Include volume UUID in generated document IDs to uniquely identify
volumes over time. Show volume label to users. Watch for mount
changes to update available roots.

Bug: 11175082
Change-Id: Ia151bde768587468efde0c1d97a740b5353d1582
torage/StorageVolume.java
645513828b2127e6914f46475b5492c308f16a4a 17-Oct-2013 justinmuller <justin.muller@acm.org> Fixed grammar in the comment that introduces the Debug.MemoryInfo class.

Change-Id: Ic021e689b7a8c55367277875b321358535c04e6a
Signed-off-by: justinmuller <justin.muller@acm.org>
ebug.java
5aca2b8dc4f4ff2d466a64587d06666c7bbd9749 17-Oct-2013 Jeff Sharkey <jsharkey@android.com> Plumb through physical device UUID and label.

vold now parse out UUID and label for inserted physical devices,
and reports them to framework. Add these to hidden StorageVolume
class for use by DocumentsUI and MediaProvider.

Remove last JNI method in FileUtils!

Bug: 11175082
Change-Id: I1cfcd1ade61767b103f693319ea2600008ee2e3c
ileUtils.java
torage/StorageVolume.java
1125235da15a5655e1fdf3b5f24df48dafccee90 16-Oct-2013 Marco Nelissen <marcone@google.com> Add a method to set a list of uids for a wake lock

Change-Id: Ia6a9d36d55129ae87d3ec070fbf10dc02f4b6cb4
PowerManager.aidl
5182c780a8b42acd46a06d693ab63a0dd78c6d70 16-Oct-2013 Jeff Brown <jeffbrown@google.com> Log view root, input and looper state in bug reports.

Bug: 10948648
Change-Id: I956cce2a0fb516c02f9bbbc021f6238bcb226891
ooper.java
essage.java
essageQueue.java
3e41d9bf41480f9e36c8af6e99d2be81b56f989a 16-Oct-2013 Jeff Sharkey <jsharkey@android.com> am fc7c4b9d: am 2a48dbce: am 905c50a2: Merge "Improve DocumentsProvider and contract docs." into klp-dev

* commit 'fc7c4b9d7234b645adb31cb819b75ba925adab7a':
Improve DocumentsProvider and contract docs.
fc7c4b9d7234b645adb31cb819b75ba925adab7a 16-Oct-2013 Jeff Sharkey <jsharkey@android.com> am 2a48dbce: am 905c50a2: Merge "Improve DocumentsProvider and contract docs." into klp-dev

* commit '2a48dbcee91a3a37dacaa96763c92f116d916a15':
Improve DocumentsProvider and contract docs.
e8c00d8ed477e199b7f8d1b1e2f37e9cf8593372 16-Oct-2013 Jeff Sharkey <jsharkey@android.com> Improve DocumentsProvider and contract docs.

Bug: 10567557
Change-Id: I71e7f7ad172e9986e58b9c9533b1c948c5530397
arcelFileDescriptor.java
91695305f2556b48d17e8eafe7632c261b7348f6 15-Oct-2013 Jeff Sharkey <jsharkey@android.com> am 881cde33: am 16c4b8c5: am ddf5a170: Merge "Relax user constraint on storage state." into klp-dev

* commit '881cde33589859e23a0af0a08b3c59d2f90cfd10':
Relax user constraint on storage state.
881cde33589859e23a0af0a08b3c59d2f90cfd10 15-Oct-2013 Jeff Sharkey <jsharkey@android.com> am 16c4b8c5: am ddf5a170: Merge "Relax user constraint on storage state." into klp-dev

* commit '16c4b8c5999b4365bde5ad7c2f00337cee988dab':
Relax user constraint on storage state.
a6d19995292a82e6d480779acfbd8e140bebecb9 15-Oct-2013 Jeff Sharkey <jsharkey@android.com> Relax user constraint on storage state.

Otherwise we wtf() when called various places in the system.

Bug: 11223886
Change-Id: I514d28603db02e3debd4af1cf20049af0c7399f4
nvironment.java
183cd0ca649c9d79a70a6d79ba7e2217fe37fa25 14-Oct-2013 Kenny Root <kroot@google.com> am 7a2f4ae1: am 69779458: am 7878883e: Merge "Remove direct reference to X509CertImpl"

* commit '7a2f4ae13223bb804417e9ce3294b22bd9bda49a':
Remove direct reference to X509CertImpl
7a2f4ae13223bb804417e9ce3294b22bd9bda49a 14-Oct-2013 Kenny Root <kroot@google.com> am 69779458: am 7878883e: Merge "Remove direct reference to X509CertImpl"

* commit '69779458aeef3fa9d9c6f54487784cf558c850e8':
Remove direct reference to X509CertImpl
27e549428eb5ae77a0ae536f778b204430f8c743 14-Oct-2013 Kenny Root <kroot@google.com> Remove direct reference to X509CertImpl

This should use the system default X.509 certificate provider.

Change-Id: Ibdfd800a9d10f9dc566a360401efe7c3dc6cef5d
ecoverySystem.java
f22abb961b45f86f1e5df4b847738a755127bdcb 09-Oct-2013 Jeff Sharkey <jsharkey@android.com> am ac50f60d: am 58ff8af5: am a6af40cd: Merge "Add secondary external storage support." into klp-dev

* commit 'ac50f60da6ae9943321d4fe945e81d14dff0d4c2':
Add secondary external storage support.
ac50f60da6ae9943321d4fe945e81d14dff0d4c2 08-Oct-2013 Jeff Sharkey <jsharkey@android.com> am 58ff8af5: am a6af40cd: Merge "Add secondary external storage support." into klp-dev

* commit '58ff8af53a8378ee50375b039c390ca7f0a29126':
Add secondary external storage support.
44cbdec292c6b234d94aae59257721cf499989ba 08-Oct-2013 Jeff Sharkey <jsharkey@android.com> Add secondary external storage support.

When SECONDARY_STORAGE is defined by the hardware configuration,
include those paths in the new getExternalCacheDirs() and
getExternalFilesDirs() APIs. Give secondary volumes valid state
until vold reports back.

Bug: 10330128, 10330229
Change-Id: Ifa55bfda47fd7c750f462dd26c98792ad462ab91
nvironment.java
a37bbc6afc9700c4b7ff7f8e116f656c608c9ae0 04-Oct-2013 Dianne Hackborn <hackbod@google.com> am 8a5f7ab6: am 22c298a5: am 7192c6d7: Merge "KLP/KitKat is now API 19." into klp-dev

* commit '8a5f7ab6e18e05a54a3ae7e0acb7e1b728ad613c':
KLP/KitKat is now API 19.
6588538ec5121e058cf3f93df95c07d8b793abb6 04-Oct-2013 Dianne Hackborn <hackbod@google.com> am 7c55154d: am 80e75d39: am 0d763a90: Merge "Implement issue #11050739: Show swapped out RAM" into klp-dev

* commit '7c55154d4776896c3e602f4739fd5b9cbbf1dba4':
Implement issue #11050739: Show swapped out RAM
4bfeed94996c29e5879fa46d78759af5267dabf8 04-Oct-2013 Dianne Hackborn <hackbod@google.com> am 61509ca5: am 479dde0b: am 6a6f96a2: Merge "Fix issue #10378741: configupdater needs to be explicit when it calls startService()" into klp-dev

* commit '61509ca5bafbe59e29e1eaaaa938c5a668352cba':
Fix issue #10378741: configupdater needs to be explicit when it calls startService()
10a4d0b46eba85557b5414161eb11c50c3166e2c 04-Oct-2013 Dianne Hackborn <hackbod@google.com> am 495fe22d: am 2d3f995a: am d585f954: Merge "Fix issue #10921903: CTS: android.os.cts.ParcelTest#testReadBundle..." into klp-dev

* commit '495fe22d680c1674598184d08a01d5b961c13fc5':
Fix issue #10921903: CTS: android.os.cts.ParcelTest#testReadBundle...
2a0a5d102243e5fc5e955234a1359433fd8fa74d 04-Oct-2013 Marco Nelissen <marcone@google.com> am d9ff894e: am 05f56fc1: am 95867a65: Merge "Add PowerManager method to assign blame to a single uid" into klp-dev

* commit 'd9ff894eae0b3acd3c89585a80ebd2039ed1de8c':
Add PowerManager method to assign blame to a single uid
8a5f7ab6e18e05a54a3ae7e0acb7e1b728ad613c 04-Oct-2013 Dianne Hackborn <hackbod@google.com> am 22c298a5: am 7192c6d7: Merge "KLP/KitKat is now API 19." into klp-dev

* commit '22c298a5df7a9fa53826ecfa4925372b1eebf8bc':
KLP/KitKat is now API 19.
7c55154d4776896c3e602f4739fd5b9cbbf1dba4 04-Oct-2013 Dianne Hackborn <hackbod@google.com> am 80e75d39: am 0d763a90: Merge "Implement issue #11050739: Show swapped out RAM" into klp-dev

* commit '80e75d3946fd4c5cdd913d217df1b8d32ec464ee':
Implement issue #11050739: Show swapped out RAM
61509ca5bafbe59e29e1eaaaa938c5a668352cba 04-Oct-2013 Dianne Hackborn <hackbod@google.com> am 479dde0b: am 6a6f96a2: Merge "Fix issue #10378741: configupdater needs to be explicit when it calls startService()" into klp-dev

* commit '479dde0bc21a1e9d0bb8dad801cfe015f6c7e416':
Fix issue #10378741: configupdater needs to be explicit when it calls startService()
495fe22d680c1674598184d08a01d5b961c13fc5 04-Oct-2013 Dianne Hackborn <hackbod@google.com> am 2d3f995a: am d585f954: Merge "Fix issue #10921903: CTS: android.os.cts.ParcelTest#testReadBundle..." into klp-dev

* commit '2d3f995a65f2acd60559b1db57ae3ab2346a1df0':
Fix issue #10921903: CTS: android.os.cts.ParcelTest#testReadBundle...
d9ff894eae0b3acd3c89585a80ebd2039ed1de8c 04-Oct-2013 Marco Nelissen <marcone@google.com> am 05f56fc1: am 95867a65: Merge "Add PowerManager method to assign blame to a single uid" into klp-dev

* commit '05f56fc121e176ef4e227639a7b636a875f38037':
Add PowerManager method to assign blame to a single uid
7192c6d7c6272c788e5e72ca416354491119fbfa 03-Oct-2013 Dianne Hackborn <hackbod@google.com> Merge "KLP/KitKat is now API 19." into klp-dev
6bc3789b3982d25bf3fc09d257efa6cdb628e7f2 03-Oct-2013 Dianne Hackborn <hackbod@google.com> KLP/KitKat is now API 19.

Bug: 10348975

Change-Id: I19bf1a56064deda2e59085520960aac8ce3a825b
uild.java
0d763a901e6f205c05fbec3123225a41672def45 03-Oct-2013 Dianne Hackborn <hackbod@google.com> Merge "Implement issue #11050739: Show swapped out RAM" into klp-dev
6a6f96a296679c23f61b58b34985c8b25960a151 03-Oct-2013 Dianne Hackborn <hackbod@google.com> Merge "Fix issue #10378741: configupdater needs to be explicit when it calls startService()" into klp-dev
fd6c7b12c312bef3ab9de2a8fcdeef9260fd85f1 03-Oct-2013 Dianne Hackborn <hackbod@google.com> Fix issue #10378741: configupdater needs to be explicit when it calls startService()

Not enough time to fix everything, so instead we'll make it a warning
in this release and finish up turning it into a target-SDK based
exception in the next release.

Change-Id: I5aae64a1225a145f03ba4162238b53d5e401aba2
ebug.java
d585f95406f8b12e36ca436faea7113ecd8704fd 03-Oct-2013 Dianne Hackborn <hackbod@google.com> Merge "Fix issue #10921903: CTS: android.os.cts.ParcelTest#testReadBundle..." into klp-dev
4a7d824c3b41eafc4ff91d3253ff8a9ebd60a454 03-Oct-2013 Dianne Hackborn <hackbod@google.com> Fix issue #10921903: CTS: android.os.cts.ParcelTest#testReadBundle...

...fails from KRS84 across all platforms

My fix for issue #10807048 was wrong, wrong, wrong. The problem was
actually just a stupid mistake in ArrayMap.erase(). This makes it
all right.

Change-Id: I762f7a2d5100bceb86a091ab3d6368edc21b4266
undle.java
arcel.java
d983ba5cac232c01dff818556b57f497f7d99854 03-Oct-2013 Marco Nelissen <marcone@google.com> Add PowerManager method to assign blame to a single uid

Currently used by audioflinger to account for recording wakelocks.
b/10985160

Change-Id: I18fc8487f2a197bf02b5269a4bcae9e75b6c2207
PowerManager.aidl
8883ced18ac25199330843964634fdf70647a127 03-Oct-2013 Dianne Hackborn <hackbod@google.com> Implement issue #11050739: Show swapped out RAM

Add "swapped out" field to mem info everywhere.

Change-Id: I89abe8eb0e91fa5c193da93815dc592593c8a3c8
ebug.java
3d28abf392e7f2f727cc1b7e898385a97d141c5a 27-Sep-2013 Nick Kralevich <nnk@google.com> am 19db8894: am 19f9f445: am 7a56d949: Merge "Fix SELinux.java doc errors"

* commit '19db889424addfdf2eae9e3dac1c97d93e13cb74':
Fix SELinux.java doc errors
19db889424addfdf2eae9e3dac1c97d93e13cb74 27-Sep-2013 Nick Kralevich <nnk@google.com> am 19f9f445: am 7a56d949: Merge "Fix SELinux.java doc errors"

* commit '19f9f445bfe368f801f893aad6dbd372562746ac':
Fix SELinux.java doc errors
7a56d949ef524d00e4091827104ac2450e4ec9db 27-Sep-2013 Nick Kralevich <nnk@google.com> Merge "Fix SELinux.java doc errors"
9c437bcb57a7cf5eb3bd1a85a4f2322fd34f50a3 26-Sep-2013 Adam Lesinski <adamlesinski@google.com> am 7979e170: am bde988ad: Merge "Add Graphics alloc tracking via memtrack" into klp-dev

* commit '7979e170b5bdfb6922d758f2c66f06829b6b5d9b':
Add Graphics alloc tracking via memtrack
7979e170b5bdfb6922d758f2c66f06829b6b5d9b 26-Sep-2013 Adam Lesinski <adamlesinski@google.com> am bde988ad: Merge "Add Graphics alloc tracking via memtrack" into klp-dev

* commit 'bde988ade5f75c3d241422dce2ee4124871fab53':
Add Graphics alloc tracking via memtrack
bde988ade5f75c3d241422dce2ee4124871fab53 26-Sep-2013 Adam Lesinski <adamlesinski@google.com> Merge "Add Graphics alloc tracking via memtrack" into klp-dev
f3647c7bdc1733d28e878564facf49108c0dc2c6 26-Sep-2013 Dianne Hackborn <hackbod@google.com> am f9ad7b9d: am 66a9b2d7: Merge "Fix issue #10903002: com.facebook.katana keeps itself in A Services" into klp-dev

* commit 'f9ad7b9d92f0464bdffb36f4b9f9f63292ba9863':
Fix issue #10903002: com.facebook.katana keeps itself in A Services
f9ad7b9d92f0464bdffb36f4b9f9f63292ba9863 26-Sep-2013 Dianne Hackborn <hackbod@google.com> am 66a9b2d7: Merge "Fix issue #10903002: com.facebook.katana keeps itself in A Services" into klp-dev

* commit '66a9b2d7392a7f6334b5fe23d00ba718f3fa1851':
Fix issue #10903002: com.facebook.katana keeps itself in A Services
cbd9a52f256087426feb19ac6e51eff772e81375 25-Sep-2013 Dianne Hackborn <hackbod@google.com> Fix issue #10903002: com.facebook.katana keeps itself in A Services

Now when memory low, if a service's process is above
a selected pss, then the process is not allowed to go
in to the service a list.

Also simplified the normal meminfo details dump to not
include the shared dirty and shared clean sizes by
default, since these can be very confusing. You will
still get to see them with the "-a" flag.

Finally some small steps to better managing service
processes in the LRU list, so hopefully we can some
day be better about letting them drop down in the list
when there isn't really much interesting happening in
the process. Not yet used at this point.

Change-Id: I654bfd6d05de2a63120185ebb15ffda8cbeb5dac
ebug.java
5b4ef81f2b79dd5d597b1681de4d0311d46693aa 23-Sep-2013 Adam Lesinski <adamlesinski@google.com> Add Graphics alloc tracking via memtrack

Any OpenGL memory reported by /proc/pid/smaps will not be included
in the GPU GL memory count and will be considered Unknown. This is
an artifact of how some memory reporting is done in libmemtrack
and some is done in this module.

bug:10294768

Change-Id: Id8fb63b2e86520f4dbc8410573a509e66b96b13b
ebug.java
6885d577cbfe8dedcdb82fc066a4408ea762204f 25-Sep-2013 Dianne Hackborn <hackbod@android.com> am 8715dc14: am 4213e68f: am 3a7d5f71: Merge "Replace SEAndroid with SELinux."

* commit '8715dc1401557f5ec068f9214ab0712291a3b403':
Replace SEAndroid with SELinux.
8715dc1401557f5ec068f9214ab0712291a3b403 25-Sep-2013 Dianne Hackborn <hackbod@android.com> am 4213e68f: am 3a7d5f71: Merge "Replace SEAndroid with SELinux."

* commit '4213e68f67d59c0912d2a8729fcec4539197756a':
Replace SEAndroid with SELinux.
3a7d5f71456b57f712b0f878beb5317f0ce6d564 25-Sep-2013 Dianne Hackborn <hackbod@android.com> Merge "Replace SEAndroid with SELinux."
49580f5ce440b6af663a7e0f689dda67796d29f0 24-Sep-2013 David Christie <dnchrist@google.com> am f6a63c92: am fe538cb6: Merge "Fix broken method WorkSource.set (names aren\'t applied)." into klp-dev

* commit 'f6a63c92448be250208556520900c4309917a010':
Fix broken method WorkSource.set (names aren't applied).
dd3a021f4a3f7b78d1a5b330b70f39d914507d72 24-Sep-2013 David Christie <dnchrist@google.com> Fix broken method WorkSource.set (names aren't applied).

Change-Id: I89273b99e312e48adc10debbb4e40d8684cceb23
orkSource.java
c430e0dc7693a8fbe02900a02bb4be7e089b3cef 21-Sep-2013 Dianne Hackborn <hackbod@google.com> am 28db9c64: am 90d51b1a: Merge "Fix issue #10807048: Groupon: The application crash when user rotates..." into klp-dev

* commit '28db9c64172c046118eede06a5cc6f8d729c50c8':
Fix issue #10807048: Groupon: The application crash when user rotates...
90d51b1abe64442927c7e6bdbafc99f41a55f393 21-Sep-2013 Dianne Hackborn <hackbod@google.com> Merge "Fix issue #10807048: Groupon: The application crash when user rotates..." into klp-dev
e784d1e4cfeaf3a9accd7caa33c087abd8f39040 21-Sep-2013 Dianne Hackborn <hackbod@google.com> Fix issue #10807048: Groupon: The application crash when user rotates...

...device to another mode (portrait or landscape) on Main page.

So, it turns out that Bundle claimed to have an invariant that either
mParcelledData or mMap would hold its data, never both. The new
implementation on top of ArrayMap assumed this was the case. However,
there is one situation where it is not true: an application can take
an existing Bundle that contains data, and call readFromParcel() on it.
The implementation of readFromParcel() would just pull out the
parceled data and stuff it in to mParcelledData for later unparceling,
even if that Bundle already had a non-empty mMap.

To fix this, we just look for this case in readFromParcel() and
immediately unparcel at that point into the existing map, using a
new unparcelling method that doesn't rely on the target map being
empty.

Change-Id: Ib816b6876a6cd2760b7a3372c7a79ca2f12dfeba
undle.java
arcel.java
5fc67f98b92ac1542eda7739ea9604cf69e18dc5 21-Sep-2013 Adam Lesinski <adamlesinski@google.com> am a35ff661: am d473ebb7: Merge "Surfaces ParcelFileDescriptor#parseMode() as API" into klp-dev

* commit 'a35ff66127d07117e93268482d7e9719abfd58c3':
Surfaces ParcelFileDescriptor#parseMode() as API
f439bcd953f34a1e5784ddc74d4fd093939ace85 21-Sep-2013 Jeff Sharkey <jsharkey@android.com> am 578f67c2: am dfed2448: Merge "Delegate mkdirs() to vold when lacking perms." into klp-dev

* commit '578f67c25c6bb160cf30bf39b7e41bc039000a5c':
Delegate mkdirs() to vold when lacking perms.
d473ebb7c4f212cb9f74fe748bb8b95d7d126417 21-Sep-2013 Adam Lesinski <adamlesinski@google.com> Merge "Surfaces ParcelFileDescriptor#parseMode() as API" into klp-dev
dfed244876d6c0ddd8d8bd2b8f3b970cd0a1ab95 21-Sep-2013 Jeff Sharkey <jsharkey@android.com> Merge "Delegate mkdirs() to vold when lacking perms." into klp-dev
eb8c3f93edc826413ff4143284dec01c1061d5cc 20-Sep-2013 Adam Lesinski <adamlesinski@google.com> Surfaces ParcelFileDescriptor#parseMode() as API

Moves ContentResolver#modeToMode() to ParcelFileDescriptor#parseMode()

bug:10711271
Change-Id: I28a5de4ca70adfbec4caf739863b77f0fd7fd9a4
arcelFileDescriptor.java
2d8b4e801332e02d6aad615b85cc9dd056ef805c 18-Sep-2013 Jeff Sharkey <jsharkey@android.com> Delegate mkdirs() to vold when lacking perms.

Apps without sdcard_r or sdcard_rw are still able to write to
their package-specific directory, but someone needs to first make
that directory on their behalf. This change will delegate the
mkdirs() call through to vold when an app fails to create directly.

MountService validates that the path belongs to the calling user, and
that it's actually on external storage, before passing to vold.

Update Environment to make app-vs-vold paths clearer.

Bug: 10577808
Change-Id: I43b4a77fd6d2b9af2a0d899790da8d9d89386776
nvironment.java
torage/IMountService.java
2875fb8586a9ffa42d63fd078fc5115791564680 20-Sep-2013 David Christie <dnchrist@google.com> am 0e500803: am f31a7897: Merge "Clear names from externally supplied WorkSources to WifiManager (b/10733757)" into klp-dev

* commit '0e50080395d2ed9e3c703f769ea3fb84706f989a':
Clear names from externally supplied WorkSources to WifiManager (b/10733757)
f31a78977401b155c0781dfe7d7cb6b7b38543c0 20-Sep-2013 David Christie <dnchrist@google.com> Merge "Clear names from externally supplied WorkSources to WifiManager (b/10733757)" into klp-dev
a31510e47a0f0c2525702c2f10a85064322a28f2 20-Sep-2013 David Christie <dnchrist@google.com> Clear names from externally supplied WorkSources to WifiManager (b/10733757)

Change-Id: I36102f13962df2093c1e35fb40081ead647eff32
orkSource.java
af7968497ed40514902456809f72a076032bd0e8 20-Sep-2013 Dianne Hackborn <hackbod@google.com> am 2d696ff9: am 76e6bcb8: Merge "Fix issue #10310128: CTS: android.security.cts.ServicePermissionsTest" into klp-dev

* commit '2d696ff910479457b0f01421c93f2f8516f64b13':
Fix issue #10310128: CTS: android.security.cts.ServicePermissionsTest
a2067473e8cb3e026503cf0c58dec51ea748b952 20-Sep-2013 Dianne Hackborn <hackbod@google.com> Fix issue #10310128: CTS: android.security.cts.ServicePermissionsTest

Change-Id: Id6432fc1b62db41c6c291ec08450c2fc37ced899
inder.java
0125d4bd257276ce59f192f298ce9924dd268afa 19-Sep-2013 Amith Yamasani <yamasani@google.com> am 2f9fd33f: am e8c01ddb: Merge "Changes to PFD based on API review" into klp-dev

* commit '2f9fd33fd9cad3bbd8edffefa9c65cbeb7e50c94':
Changes to PFD based on API review
e8c01ddbe748490463f7f516df9b1b4784228913 19-Sep-2013 Amith Yamasani <yamasani@google.com> Merge "Changes to PFD based on API review" into klp-dev
b433bb8c96f98d280f4a8508ba500bd8f196a773 19-Sep-2013 Amith Yamasani <yamasani@google.com> Changes to PFD based on API review

Removed boolean param to ask for exception on detached fd. Use a
subclass of IOException instead.

Bug: 10461576
Change-Id: If7db16120297edcdb7d5d5905ed453003be0e38e
arcelFileDescriptor.java
dc7e0464b8f304a10293328ca83365b381c79b24 18-Sep-2013 Amith Yamasani <yamasani@google.com> am a8b4da87: am 840b3bd6: Merge "Fix provider leak in PFD" into klp-dev

* commit 'a8b4da872a1824408b52fb1730699fde780cad04':
Fix provider leak in PFD
487c11a3101c6cd9fc18758b3032383666f55e46 18-Sep-2013 Amith Yamasani <yamasani@google.com> Fix provider leak in PFD

Code path to release content provider associated with the PFD was
inadvertently bypassed by a previous change. Reinstate that code
when closing the PFD.

Bug: 10767447
Change-Id: I23306cfb3c28c99e587892b17ca85efd3f7a8a07
arcelFileDescriptor.java
3f7867b6033b04d0755c9d0b427e44e64ff64fc8 14-Sep-2013 Dianne Hackborn <hackbod@google.com> am 570d0ca3: am fc9122ec: Merge "Implement #10666712: NetworkOnMainThreadException should be..." into klp-dev

* commit '570d0ca39cd8d11faf7cc453cfd8096e07c3877b':
Implement #10666712: NetworkOnMainThreadException should be...
6180e84410963ff9ab66c87a04c2f2cc3762a102 14-Sep-2013 David Christie <dnchrist@google.com> am 691a3191: am 5f68f717: Merge "Strip names out of externally supplied WorkSources to WifiManager (b/10710007)." into klp-dev

* commit '691a3191e3efb11f0607c45f29e460d2baf8188e':
Strip names out of externally supplied WorkSources to WifiManager (b/10710007).
fc9122ecae06339283602bdc78c5d704d95e3f29 14-Sep-2013 Dianne Hackborn <hackbod@google.com> Merge "Implement #10666712: NetworkOnMainThreadException should be..." into klp-dev
5f68f717019433ce4fa284386ba48bd1b571073a 14-Sep-2013 David Christie <dnchrist@google.com> Merge "Strip names out of externally supplied WorkSources to WifiManager (b/10710007)." into klp-dev
6ab2284c98c08df68ed1ca8f7ac9748387ba6cb2 14-Sep-2013 David Christie <dnchrist@google.com> Strip names out of externally supplied WorkSources to WifiManager (b/10710007).

Change-Id: I69bd7ce9e942c2f9327415b2821d805e1b50a1a4
orkSource.java
7e7144218e8681fff2065a891de517bad6fe1b38 14-Sep-2013 Dianne Hackborn <hackbod@google.com> Implement #10666712: NetworkOnMainThreadException should be...

...relayed back to calling application

What's one more exception between friends?

Change-Id: Ib83c7bfbddd397457dcdbe506a8cd2bc0f4fb70b
arcel.java
e05498665714d83212eb2e2a4bb39be3ca080506 14-Sep-2013 Dianne Hackborn <hackbod@google.com> am 5b7359aa: am 76adfd71: Merge "Fix issue #10461477: KLP API Review: Debug.MemoryInfo" into klp-dev

* commit '5b7359aa442a120c2853a05bc987c501da659df2':
Fix issue #10461477: KLP API Review: Debug.MemoryInfo
1cd9a73ac020bfb2db32da3c8e853c4a514be858 14-Sep-2013 Dianne Hackborn <hackbod@google.com> am f3b4cf7d: am 28eeb420: Merge "Implement #10749688: Improve low memory reporting" into klp-dev

* commit 'f3b4cf7d01b68418dd652e201868d140de081bd8':
Implement #10749688: Improve low memory reporting
4c7c51480e182a4960797f295f5ce4800cd546e0 14-Sep-2013 Jeff Sharkey <jsharkey@android.com> am f5513f41: am 0bf2ed90: Merge "Move search to roots; Documents root; hide empty." into klp-dev

* commit 'f5513f41fe041bef29ec70abdce7cc6f582a11c2':
Move search to roots; Documents root; hide empty.
3fa8969021793cf75f95540742cac04e6893488e 14-Sep-2013 Dianne Hackborn <hackbod@google.com> Fix issue #10461477: KLP API Review: Debug.MemoryInfo

Oops.

Change-Id: I2143790af9e6649dba8d74618358c47232cf6cc4
ebug.java
28eeb42012018bfa3cffc77e9a970e8f5c13f70b 14-Sep-2013 Dianne Hackborn <hackbod@google.com> Merge "Implement #10749688: Improve low memory reporting" into klp-dev
8e69257a9c7e9c1781e1f53d8856358ada38921d 11-Sep-2013 Dianne Hackborn <hackbod@google.com> Implement #10749688: Improve low memory reporting

This significantly reworks the logging we do when
all cached processes are killed:

- We now collect the list of processes in-place so we
have a snapshot of exactly when the low memory situation
happened.
- In that snapshot we include the key process state: oom
adj, proc state, adj reasons.
- The report then asynchronously collects pss information
for those processes.
- The ultimate data printed to the log looks like a mix
between the "dumpsys meminfo" and "dumpsys activity"
output. This code no longer uses "dumpsys meminfo"
itself, so some of that data is no longer included,
in particular pss organized by allocation type.

In doing this, I realized that the existing code that is
supposed to run "procstats" is not currently working. And
at that point I realized, really, when we are collecting
this pss data we'd really like to include all those native
processes using ghod-only-knows how much RAM. And guess
what, we have a list of processes available in
ProcessCpuTracker.

So we now also collect and print information for native
processes, and we also do this for "dumpsys meminfo" which
really seems like a good thing when we are printing summaries
of all pss and such.

I also improved the code for reading /proc/meminfo to be
able to load all the interesting fields from there, and
am now printing that as well.

Change-Id: I9e7d13e9c07a8249c7a7e12e5433973b2c0fdc11
ebug.java
3e1189b3590aefb65a2af720ae2ba959bbd4188d 13-Sep-2013 Jeff Sharkey <jsharkey@android.com> Move search to roots; Documents root; hide empty.

Documents searches now happen root-wide, instead of only under a
subdirectory. Updates abstract class and flags to match. Add flag
for a root to indicate it's empty, and hide empty roots in UI unless
creating.

Define "Documents" public directory and storage backend to contain
files.

Bug: 10712057, 10710865, 10710758
Change-Id: I8716367568969f9cb1d83927b2bf5a7013809350
nvironment.java
123eeea6d62a80fb9660ad623fd378d2f2f0c904 12-Sep-2013 Jeff Sharkey <jsharkey@android.com> am e2d76fa8: am cecccecc: Merge changes Ib1274847,I2eb2a1bf into klp-dev

* commit 'e2d76fa8c6d0f5c3d1a73a3ec9756c4bc545806d':
Fix SDK build.
Request all tethering interfaces, fix corruption.
8d717b917cfe0b7d47743e2c80fd22131048ef3a 12-Sep-2013 Dianne Hackborn <hackbod@google.com> resolved conflicts for merge of 03422d26 to master

Change-Id: I5d012fb122224c949a0039450bf0a9a475dc8e82
ceccceccffbd2668b98e21487f2323f80d2c7b98 11-Sep-2013 Jeff Sharkey <jsharkey@android.com> Merge changes Ib1274847,I2eb2a1bf into klp-dev

* changes:
Fix SDK build.
Request all tethering interfaces, fix corruption.
95d785346b4dae808a2d8f77356175e55a572d96 11-Sep-2013 Dianne Hackborn <hackbod@google.com> Fix issue #10688644: Java crash in com.android.phone:

java.lang.SecurityException: Operation not allowed

There was a situation I wasn't taking into account -- components
declared by the system has a special ability to run in the processes
of other uids. This means that if that code loaded into another
process tries to do anything needing an app op verification, it will
fail, because it will say it is calling as the system package name but
it is not actually coming from the system uid.

To fix this, we add a new Context.getOpPackageName() to go along-side
getBasePackageName(). This is a special call for use by all app ops
verification, which will be initialized with either the base package
name, the actual package name, or now the default package name of the
process if we are creating a context for system code being loaded into
a non-system process.

I had to update all of the code doing app ops checks to switch to this
method to get the calling package name.

Also improve the security exception throw to have a more descriptive
error message.

Change-Id: Ic04f77b3938585b02fccabbc12d2f0dc62b9ef25
owerManager.java
ystemVibrator.java
e4984bea95a07dea0ef0259fefa1e52f0bbb1533 11-Sep-2013 Jeff Sharkey <jsharkey@android.com> Request all tethering interfaces, fix corruption.

netd now tracks statistics for tethered interfaces across tethering
sessions, so switch to asking for all tethering stats. (Currently
we're double-counting all tethering data, ever since it started
tracking across sessions.)

Also catch OOME to handle corrupt stats files, which we then dump to
DropBox and then start over.

Bug: 5868832, 9796109
Change-Id: I2eb2a1bf01b993dd198597d770fe0e022466c6b9
NetworkManagementService.aidl
605839066af9a5825c074e54e3db90cf88a2220a 10-Sep-2013 Jeff Brown <jeffbrown@google.com> Fix crash when Looper used after quit.

Calling Looper.loop() after quit() isn't supported but it shouldn't
crash either.

Bug: 8808624
Change-Id: I73ea54444ed908c2e8964645f4a8cd08b842baac
essageQueue.java
c677ff8c3b332aa5080d6662b13c283185810397 07-Sep-2013 Jeff Brown <jeffbrown@google.com> am cbf2b02d: am 23a5f44c: Merge "Fix native crash when message queue quits." into klp-dev

* commit 'cbf2b02d6c288c49f5bdbcb70d87c44d26086ba4':
Fix native crash when message queue quits.
23a5f44c5a306b4a70821722a697da55cc3c5db8 07-Sep-2013 Jeff Brown <jeffbrown@google.com> Merge "Fix native crash when message queue quits." into klp-dev
013cf847bcfd2828d34dced60adf2d3dd98021dc 07-Sep-2013 Jeff Brown <jeffbrown@google.com> Fix native crash when message queue quits.

Fix a race when quitting the looper's message queue that could
cause the mPtr field to be zeroed out and the native object to
be destroyed while still in use.

This happened due to an optimization that was intended to release
the native looper's file descriptor as soon as the last message
was processed rather than waiting for the finalizer to run.

Bug: 9726217
Change-Id: I695a9a657acfdb3ce65a5737ff20cd11113d15fa
essageQueue.java
e52785e6a7e48b39d881aa2190d38d9b3c8b9dab 07-Sep-2013 Robert Greenwalt <rgreenwalt@google.com> am 9234e15d: am ecd0db5a: Merge "Setting MTU size for specific network." into klp-dev

* commit '9234e15d8d4d99b211e6bb5c199790a77cf36be7':
Setting MTU size for specific network.
ecd0db5a7391e8234b3ea5d9e21c19f5d6589b0a 07-Sep-2013 Robert Greenwalt <rgreenwalt@google.com> Merge "Setting MTU size for specific network." into klp-dev
1775ebb76fecaad3c708d9a022aa49d50f50c333 07-Sep-2013 Dianne Hackborn <hackbod@google.com> am b6459eb2: am 3e1fdd9e: Merge "Implement issue #10550827: watching gpu memory for occam_svelte" into klp-dev

* commit 'b6459eb25f0593561389d7cb3da38a4f960cce14':
Implement issue #10550827: watching gpu memory for occam_svelte
9d9b74a900696191048aa97cc3c854072640428b 01-Sep-2013 sy.yun <sy.yun@lge.com> Setting MTU size for specific network.

Able to config network specific MTU size. Normally, the default size of MTU is 1500.
US - ATT 1410, TMUS 1440, SPRINT 1422
KR - SKT 1440, KT 1450, LGU+ 1428
JP - KDDI 1420, SoftBank 1340
CA - RGS 1430, FIDO 1430, MTS 1430, BELL 1358, SaskTel 1358
AU - TEL 1400

Bug: 10195070
Change-Id: Ie18650b37a3d44af944f2dae4aa97c04fb12cd5e
NetworkManagementService.aidl
37c99432625e2adeb50baf25f471abc8481b2b3e 06-Sep-2013 Dianne Hackborn <hackbod@google.com> Implement issue #10550827: watching gpu memory for occam_svelte

Well, it would work if the published file permissions gave the
system process access to them. :(

Change-Id: I99e0c506f52c212384b20a042dcdd35516cf49c2
ebug.java
a94db2467cdc03929c2fc97bf3b451c51a421873 06-Sep-2013 Igor Murashkin <iam@google.com> am 76f883e0: am 034052b3: Merge "Binder: Log exceptions originating from the binder stub for oneway calls" into klp-dev

* commit '76f883e0a8fa6d62110824399440c779a1b68874':
Binder: Log exceptions originating from the binder stub for oneway calls
034052b352e14054d5271ea42985497f6b101b4f 06-Sep-2013 Igor Murashkin <iam@google.com> Merge "Binder: Log exceptions originating from the binder stub for oneway calls" into klp-dev
cd57b4950f5df4c3c435ec3995d730ad98b525dc 06-Sep-2013 Amith Yamasani <yamasani@google.com> am 3d27c9f9: am f1eebfc2: Merge "Remove unused APIs and rename others based on API review" into klp-dev

* commit '3d27c9f973b1dd35ed457785b452851316cdca8a':
Remove unused APIs and rename others based on API review
f1eebfc2cf47b7fb6ed8dfd06fb124f78ca3519e 06-Sep-2013 Amith Yamasani <yamasani@google.com> Merge "Remove unused APIs and rename others based on API review" into klp-dev
7eb6cfe10b1df1f9d6f4d449dff554e7fbca0362 16-Aug-2013 Igor Murashkin <iam@google.com> Binder: Log exceptions originating from the binder stub for oneway calls

- Under a normal situation, if an exception happens in managed, the stack trace
will be printed to logcat.
- Hitherto, the Binder#execTransact call silently caught exceptions and passed
them to the remote side with Parcel#writeException
- Although this behavior might be acceptable when there is a remote side,
for FLAG_ONEWAY calls the exception effectively disappeared.
- From the user point of view, it looked like code execution "halted" when an
exception was thrown.

This tries to make the binder exception handling behavior more like normal,
by printing the exception to the log, to give a better indication of what
happened.

Change-Id: I1f37f0468f61e766a71db60d2fda2104936ab096
inder.java
f55ba05cf8c64a6abc98dc5cf2a540f2dd194325 05-Sep-2013 Mike Lockwood <lockwood@google.com> Merge "ParcelFileDescriptor: Add comments to warn that parcelling must stay in sync with Parcel.cpp implementation"
672fcd5c9a90ed4e133d441fee3b0130c7acd769 05-Sep-2013 Chet Haase <chet@google.com> am 04f31501: am a9fa33b3: Merge "Change build version from KEY_LIME_PIE to KITKAT" into klp-dev

* commit '04f31501602a87ae9526983f4a92e623b4d68bb3':
Change build version from KEY_LIME_PIE to KITKAT
d304af69891483aad808356af1ac5f00e90c8edf 05-Sep-2013 Amith Yamasani <yamasani@google.com> Remove unused APIs and rename others based on API review

Restrictions challenge is only to be used by device admins.

Bug: 10461761
Change-Id: I3db1249e2ce99f386602de59ed930302bb0a97fb
UserManager.aidl
serManager.java
8b85164c506e9a02e6aedfc53823276ba309b419 05-Sep-2013 Mike Lockwood <lockwood@google.com> ParcelFileDescriptor: Add comments to warn that parcelling must stay in sync with Parcel.cpp implementation

Change-Id: If9fcdada0b2dbaae4973ac236b02e527e2e6b198
arcelFileDescriptor.java
e8222dddaf2e3da14380101e818d4254899e0c0d 05-Sep-2013 Chet Haase <chet@google.com> Change build version from KEY_LIME_PIE to KITKAT

Issue #10631619 Change build version to KitKat

Change-Id: I6ad13f6169ad74204078d36929479998b498ad8b
uild.java
nvironment.java
2e9992583c014a9199cd270cbaaf0909ab05bd1f 05-Sep-2013 Todd Poynor <toddpoynor@google.com> Merge "BatteryProperty: Add average current property"
1703c54a0e033f90a8ea5c723d0f3b4fe99c8960 05-Sep-2013 Dianne Hackborn <hackbod@google.com> am 021a138b: am 8144585c: Merge "Fix issue #10422349: Limit/change the battery history data in batterystats" into klp-dev

* commit '021a138bdc0a8d1561cd7a429936afb8983c68b0':
Fix issue #10422349: Limit/change the battery history data in batterystats
be7d9e399e9b73d326df172c6f85e2a0fa3455a2 28-Aug-2013 Todd Poynor <toddpoynor@google.com> BatteryProperty: Add average current property

Change-Id: I48907708024bddae9770bc1a3f0149ad901075c4
atteryProperty.java
49021f5f790c31f62d4cee9fafcae13505bed798 05-Sep-2013 Dianne Hackborn <hackbod@google.com> Fix issue #10422349: Limit/change the battery history data in batterystats

Don't include history in real checkins; have a new compact option
for bug reports.

Change-Id: I077f9218b365154f6bae9cc685c2c6b378e0283a
atteryStats.java
ef00641cbf891e7640d3abb976f35226489635ba 04-Sep-2013 David Christie <dnchrist@google.com> am 55e4889c: am 61edc94a: Merge "Make location QuickSettings multi-user compatible (b/10563313)" into klp-dev

* commit '55e4889cea528253ff91fe5c1806c0c0b75d9827':
Make location QuickSettings multi-user compatible (b/10563313)
b12ba933f3db9280edcb6a3591741d29c109a4e2 04-Sep-2013 David Christie <dnchrist@google.com> Make location QuickSettings multi-user compatible (b/10563313)

Change-Id: I8ae5238e66fa2d6890ffe5697d3e6d5f50413c3e
serManager.java
bfdd62323e7b3bb724c98730e4143afa3e4d9cb5 11-Jul-2013 Todd Poynor <toddpoynor@google.com> ActivityManagerService use lmkd low memory killer daemon

Change-Id: Ie2f8af1e411c28d7f03be56c356ec39e1d71558e
rocess.java
6f0a04f5d2fbd9507bcb1b4e766623d444503ae5 29-Aug-2013 Jeff Hao <jeffhao@google.com> Change IsMethodTracingActive to GetMethodTracingMode for frameworks.

(cherry picked from commit ffbe799f3824f4be705ca726988355d3943a9004)

Change-Id: Ic87a254171fca7dfdf02c8643cd367055c8889cd
ebug.java
c0a38c227e7affdeeac5ac392ca2e7569eec6089 30-Aug-2013 Jeff Hao <jeffhao@google.com> am 3a9c7161: am 6627e5b2: Merge "Change IsMethodTracingActive to GetMethodTracingMode for frameworks." into klp-dev

* commit '3a9c7161dfd6f16baddd2eb209a013609b927da7':
Change IsMethodTracingActive to GetMethodTracingMode for frameworks.
ac27705f75e74f022de8c7888b14b49fed899176 29-Aug-2013 Jeff Hao <jeffhao@google.com> Change IsMethodTracingActive to GetMethodTracingMode for frameworks.

Bug: 9968521

Change-Id: Ic63340e0d2fef18f27fdfabdd056ac5304c3d54f
(cherry picked from commit ffbe799f3824f4be705ca726988355d3943a9004)
ebug.java
7be3a138d57713bbe6d624998620081807e65b71 23-Aug-2013 Jeff Hao <jeffhao@google.com> Add frameworks support for sample profiling from traceview gui.

(cherry picked from commit ca307d3138ff1e5d0bcf190eb24f3b8dbcabfaa9)

Change-Id: I3553bafe24ac8deb4fa3f9a4d78939c3848b3850
ebug.java
98486543ccb2fc5b46baecf12508808af7a71e72 29-Aug-2013 Jeff Sharkey <jsharkey@android.com> am 6607275b: am 9fd81a90: Merge "Stronger DocumentsProvider contract." into klp-dev

* commit '6607275b3a99b28f4176f8f8cc87f46c5ed051db':
Stronger DocumentsProvider contract.
6607275b3a99b28f4176f8f8cc87f46c5ed051db 29-Aug-2013 Jeff Sharkey <jsharkey@android.com> am 9fd81a90: Merge "Stronger DocumentsProvider contract." into klp-dev

* commit '9fd81a9008d5c8dd33272b6a451d89fa2fa1841e':
Stronger DocumentsProvider contract.
aeb16e2435f9975b9fa1fc4b747796647a21292e 28-Aug-2013 Jeff Sharkey <jsharkey@android.com> Stronger DocumentsProvider contract.

Using a contract class requires that a provider implement it exactly
with little help. This change introduces a DocumentsProvider abstract
class that provides a client-side implementation of the contract that
greatly reduces developer burden, and improves correctness.

This also moves to first-class DocumentRoot objects, and moves calls
with complex side effects to be ContentProvider.call() invocations,
offering more granular permission control over Uri operations that
shouldn't be available through Uri grants.

This new design also relaxes the requirement that root information be
burned into every Uri. Migrate ExternalDocumentsProvider and
DocumentsUI to adopt new API.

Bug: 10497206
Change-Id: I6f2b3f519bfd62a9d693223ea5628a971ce2e743
undle.java
f46f843171e963a7869cc0f1d37974096688e014 28-Aug-2013 Jeff Hao <jeffhao@google.com> am 5d21168b: am 366291e2: Merge "Add frameworks support for sample profiling from traceview gui."

* commit '5d21168bb4b33fb5eb8770996895a729880c7dbc':
Add frameworks support for sample profiling from traceview gui.
ffee626c3ab32888014a03f69e1048368fdd5c19 23-Aug-2013 Jeff Hao <jeffhao@google.com> Add frameworks support for sample profiling from traceview gui.

(cherry picked from commit ca307d3138ff1e5d0bcf190eb24f3b8dbcabfaa9)

Change-Id: Ic193ddadf01c42905fc7c35a1a8bf89fba4556e9
ebug.java
e3d54fe23adfdf9ffb0fa7b7a679ab491bb652a9 23-Aug-2013 Jeff Hao <jeffhao@google.com> Add frameworks support for sample profiling from traceview gui.

Change-Id: I702f12cdd8bd27b762f30e158fbe824909421dee
(cherry picked from commit ca307d3138ff1e5d0bcf190eb24f3b8dbcabfaa9)
ebug.java
f026518672ed93f0c9d4a9ec5c75cc146d4da0a3 27-Aug-2013 Svetoslav Ganov <svetoslavganov@google.com> am e0612ffe: am 826debf5: Merge "Print UI bug fixing and printer discovery refactoring." into klp-dev

* commit 'e0612ffe5495602134d60422f63bfc05387512e1':
Print UI bug fixing and printer discovery refactoring.
44720af55a8fdf991929983dad5d53c02851dd1e 21-Aug-2013 Svetoslav Ganov <svetoslavganov@google.com> Print UI bug fixing and printer discovery refactoring.

1. Added support for selecting a printer from the all printers activity
that is not in the initial printer selection drop down. The user
initially sees a sub set of the printers in the drop down and the
last option is to see all printers in a separate activity. Some
of the printers in the all printers activity are not shown in the
initial drop down.

2. Refactored printer discovery by adding (private for now) printer
discovery app facing APIs. These APIs are needed to support multiple
printer selection activities (print dialog and all printers activities)
and also the settings for showing all printers for a service.

Now multiple apps can request observing for printers and there is
a centralized mediator that ensures the same printer discovery
session is used. The mediator dispatches printer discovery specific
requests to print services. It also aggregates discovered printers
and delivers them to the interested apps. The mediator minimizes
printer discovery session creation and starting and stopping discovery
by sharing the same discovery session and discovery window with
multiple apps. Lastly, the mediator takes care of print services
enabled during discovery by bringing them up to the current
discovery state (create discovery session and start discovery if
needed). The mediator also reports disappearing of the printers
of a service removed during discovery and notifies a newly
registered observers for the currnet printers if the observers are
added during an active printer discovery session.

3. Fixed bugs in the print UI and implemented some UX tweaks.

Change-Id: I4d0b0c5a6c6f1809b2ba5dbc8e9d63ab3d48f1ef
emoteCallbackList.java
d7b34771cbb89c056e7c0f8976db431cad1ace8c 15-Aug-2013 Todd Poynor <toddpoynor@google.com> java-side interface for reading individual battery properties on demand

Change-Id: I60a84ed936f1115fdb122f34986f2e605ae274de
atteryProperty.aidl
atteryProperty.java
BatteryPropertiesRegistrar.aidl
da5a3e12f4f8f965c57d6f93c74190f43ea233f3 11-Aug-2013 Jeff Sharkey <jsharkey@android.com> Richer ParcelFileDescriptor close events.

When reading from the end of a pipe or socket, there is no way to
tell if the other end has finished successfully, encountered an error,
or outright crashed. To solve this, we create a second socketpair()
as a communication channel between the two ends of a pipe or
socket pair, sending a status code with details about why the
ParcelFileDescriptor was closed.

The writer end of a pipe or socket can closeWithError() to send a
message to the reader end. When the reader encounters EOF, they
call checkError() to detect if any error occured. This also detects
the case where the remote process died without sending a success
message.

This design is also extended to support regular files on disk, using
the communication channel above to detect various remote close events
or crashes, and delivering that event to a supplied OnCloseListener.

Replaces JNI with best-practice Libcore.os calls, and deprecates
some flags to match Context.

Bug: 10330121
Change-Id: I8cfa1e4fb6f57397667c7f785106193e0faccad3
arcel.java
arcelFileDescriptor.java
6e14b22cfe2ac923825d4b085e4e48b1fbd98f09 12-Aug-2013 Jeff Sharkey <jsharkey@android.com> Merge "APIs for multiple external storage devices." into klp-dev
1abdb7123025e52512b2ed7a518f8c754c35f50a 12-Aug-2013 Jeff Sharkey <jsharkey@android.com> APIs for multiple external storage devices.

Provide developer APIs to discover application-specific paths on
secondary external storage devices. Covers files, cache, and OBB
directories. Apps will not have write access outside their package-
specific directories on secondary devices, so only primary storage is
exposed through Environment.

Creation of .nomedia files will be handled by FUSE daemon in future
change.

Change-Id: Ifcce6201a686d80269d7285adb597c008cf8fa7c
nvironment.java
719c44e03b97e850a46136ba336d729f5fbd1f47 10-Aug-2013 Romain Guy <romainguy@google.com> Prevent AsyncTask from creating too many threads
Bug #10228005

From the ThreadPoolExecutor documentation:

- If fewer than corePoolSize threads are running, the Executor
always prefers adding a new thread rather than queuing.
- If corePoolSize or more threads are running, the Executor
always prefers queuing a request rather than adding a new thread.
- If a request cannot be queued, a new thread is created unless
this would exceed maximumPoolSize, in which case, the task will
be rejected.

Before this change AsyncTask could create up to 128 threads because
of the limited queue of 10 items (the capacity of a blocking queue
is fixed.)

This change increases the size of the queue to 128 items and reduces
the maximum number of threads to the number of CPU cores * 2 + 1.
Apps can still submit the same number of tasks.

Change-Id: I015d77b53b6a9fda39c618830b34d45a10de5571
syncTask.java
184a0100abc431fc3d6d8dd1b20212b84958cada 11-Jul-2013 Jeff Sharkey <jsharkey@android.com> Allow packages.list access with new GID.

The FUSE daemon is using packages.list to map from package name to
appId after it drops permissions, so create a new "package_info" GID
to grant read access.

Also switches FileUtils to use Libcore.os.

Change-Id: I9451ca4e90e8a985526805c6df0888a244a1db36
ileUtils.java
rocess.java
8a0de58ece89c467c8e7415097d193e5f8db9db8 08-Aug-2013 Dianne Hackborn <hackbod@google.com> Get ProcessStats callable from other processes.

Also fix a bug where, when parceling the stats, we were
computing the final duration values too late. We need to
do that before we write the long table.

Change-Id: Idb6c1ed95417448c56973fe5866bfb3570e525f4
atteryStats.java
df89ca3308544cfdd1ca12b22eac4a1d16e04410 31-Jul-2013 Todd Poynor <toddpoynor@google.com> batteryservice: add battery current now and charge counter data

Available for retrieval via future APIs if desired. Dumped by dumpsys.
Not added to batterystats or ACTION_BATTERY_CHANGED intents at this point.

Also fixes a formatting problem in the existing dumpsys output for voltage.

Change-Id: I5320b19035914256fb872c13095c09c648dd522a
atteryProperties.java
d2932243e3313b59e7538641731aa98852bc5ac7 06-Aug-2013 Dianne Hackborn <hackbod@google.com> Refactor ProcessStats, ProcessTracker.

ProcessStats is now called ProcessCpuTracker.

ProcessTracker is now ProcessStatsService, and its inner State
class is broken out into a separate top-level ProcessStats class.
This ProcessStats is moved to the framework, so we will be able
to use it elsewhere.

Change-Id: I6a127bcb835b6b474b72647c0b99b82c2137e5c5
inder.java
221ea892dcc661bd07d6f36ff012edca2c48aed4 05-Aug-2013 Dianne Hackborn <hackbod@google.com> Start restricting service calls with implicit intents.

The bindService() and startService() calls have always had
undefined behavior when used with an implicit Intent and there
are multiple matching services. Because of this, it is not
safe for applications to use such Intents when interacting with
services, yet the platform would merrily go about doing... something.

In KLP I want to cause this case to be invalid, resulting in
an exception thrown back to the app. Unfortunately there are
lots of (scary) things relying on this behavior, so we can't
immediately turn it into an exception, even one qualified by the
caller's target SDK version.

In this change, we start loggin a WTF when such a call happens,
and clean up some stuff in Bluetooth that was doing this behavior.

Change-Id: I62e25d07890588d2362104e20b054aebb6c0e007
uild.java
2a805f930463ece57bc0d0fd8dee7f5d50681b22 01-Aug-2013 Elliott Hughes <enh@google.com> resolved conflicts for merge of 368d81fe to master

Change-Id: I4bc59cd9a54cbc1b62ac135cf86dc73ac85968d5
6d4b1e24aef5b74b40de4d8f6e63c21874ce8e3a 01-Aug-2013 Elliott Hughes <enh@google.com> Switch Process.myTid over to the libcore JNI too.

Change-Id: I80eaecff014fabf809f4be3c9ee8b26aa64bf0cf
rocess.java
406ec15647b7664cadadde41dbaaa10e298c582b 30-Jul-2013 Jeff Hao <jeffhao@google.com> Replace native Process getpid/getuid with calls to libcore equivalents.

The Process natives were getting called were getting called while
handling a jdwp packet before the vm had a chance to register them.

(cherry-pick of 5bce6a308fc8a3c1e449cf905b8b6e8ace4ef3e2.)

Change-Id: Ia2b4f79b11e427283a712b2d0c52948f394640bf
rocess.java
bd19b9ee305c11d8aa3cbb105bf2d3a6b06389b5 12-Apr-2013 Stephen Smalley <sds@tycho.nsa.gov> Replace SEAndroid with SELinux.

Change-Id: Ibbe544a9f025d71ad416bc01cee2145b62d7b2d4
Signed-off-by: Stephen Smalley <sds@tycho.nsa.gov>
rocess.java
c7e9e8b4f3e264375b416eff830739ecf0dc206c 15-Jan-2013 Sungmin Choi <sungmin.choi@lge.com> handle negative temperature

When the battery temperature drops to below zero, BatteryLevelInit()
fails to show negative temperature. Because the type is unsigned
and the size of bit field is 10 bits.
So to handle negative temperature, change the type of battery temperature
from "char" to "short". And extend the size of temperature bit field
from 10 to 11 bits, which first bit is used for the sign bit.

Before:
31 24 14 0
+---------------+---------------------+-----------------+
| Battery Level | Battery temperature | Battery Voltage |
+---------------+---------------------+-----------------+

After:
31 25 14 0
+-------------+-----------------------+-----------------+
|Battery Level| Battery temperature | Battery Voltage |
+-------------+-----------------------+-----------------+

Bits 31..25: battery level percentage (7 bits unsigned)
Bits 24..14: battery temperature (11 bits signed)
First bit is used for the sign and others for the temperature
Bits 13..0: battery voltage in 0.001 volt units (14 bits unsigned)

Becuase of changing the format, let the BatteryStatsImpl.VERSION field
increment.

Bug: 8009514
Change-Id: Iaa12f4d3f14e6cf4d73bc1a23d81c60f9677a499
atteryStats.java
a9de3462a6f4eaea63e12d82aaa0eb5728b1f812 23-May-2013 Todd Poynor <toddpoynor@google.com> Add libbatteryservice AIDL and java interfaces

Add IBatteryPropertiesRegistrar and IBatteryPropertiesListener AIDLs,
BatteryProperties class.

Change-Id: Ic8e71178c02b04868eca29c3da88e877bc2590ca
atteryProperties.aidl
atteryProperties.java
BatteryPropertiesListener.aidl
BatteryPropertiesRegistrar.aidl
5830e0752121c5565da184727888de6567b50e3a 23-Jul-2013 Geremy Condra <gcondra@google.com> Merge "Fix supplimentary network connections with VPNs"
0343ec3abb205b21d554ab432710ff854f3d9d75 22-Jul-2013 Amith Yamasani <yamasani@google.com> User restriction API to disable single-user restrictions feature.

Change-Id: I80e08b38b5e32f3cb1af51398907510508ec199f
serManager.java
450d8c5b7c936b00fd0d40b5d68670df0fe56daa 20-Jul-2013 Dianne Hackborn <hackbod@google.com> Fix issue #9940105: IllegalArgumentException in ArrayMap

Try to deal with unmarshalling old parcels. Turns out someone
was writing a parcel to disk storing a Bundle. Naughty, naughty.
This helps us not completely keel over.

Change-Id: Id343da2690b7bab89f6c3cb6fad1b92f270dad03
undle.java
f336d722c773855402d91a227fc290eafca23335 16-Jul-2013 Chad Brubaker <cbrubaker@google.com> Fix supplimentary network connections with VPNs

Enables the use of supplimentary mobile networks like MMS, and HIPRI
while VPNs are running.

Change-Id: I313f57a905b4e16bd4322c68687cbff1cfbe9d3e
NetworkManagementService.aidl
7e81dd274f36265e1421d0859727bb253fe75e91 19-Jul-2013 Amith Yamasani <yamasani@google.com> Merge "Have UserManagerService clear the restrictions and unblock apps"
127c5ef5d7bf2dc44fc53deeda9058a17e27addb 19-Jul-2013 Dianne Hackborn <hackbod@google.com> Fix crash.

Change-Id: I0b5d846d5a9e6b1c7c3756b653833c263634270b
undle.java
1a7472e7220a2b027464fb4a2281550f784a2ca3 02-Jul-2013 Amith Yamasani <yamasani@google.com> Have UserManagerService clear the restrictions and unblock apps

Since this is an operation that could take a few seconds to run and needs to be
completed even if Settings dies, best to do it in the user manager.

Refactored PIN challenge/setup UI with a field to verify existing pin
when changing to a new one.

Change-Id: I0b7df5b2ccb7f343aa9282a9245d3bc2b577a794
UserManager.aidl
serManager.java
b87655b3e551c6a32f34084c8533800bbd1aff7d 18-Jul-2013 Dianne Hackborn <hackbod@google.com> Switch Bundle's implementation over to ArrayMap.

That was... um... easier than I thought it was going to be.

Change-Id: Id8f2211c1d5f8145e0bb009dca0f62a590f2b860
undle.java
arcel.java
cdae0f3c608ed5aee5ddbdf9c54ac86a5619e64b 16-Jul-2013 Dianne Hackborn <hackbod@google.com> Merge "Switch proc stats to use new process state constants."
0a880d040203ddbd89253d4a80ea03c10a5e8798 16-Jul-2013 Rom Lemarchand <romlem@google.com> Merge "Increase swappiness of processes when memcgroups are enabled"
c8230519728b14065effd3b7d4eca273ff86160c 14-Jul-2013 Dianne Hackborn <hackbod@google.com> Switch proc stats to use new process state constants.

These new constants are a better mapping to the kind of
information that procstats is wanting to collect about
processes. In doing this, the process states are tweaked
to have a bit more information that we care about for
procstats.

This changes the format of the data printed by procstats,
so the checkin version is bumped to 2. The structure is
the same, however the codes for process states have all
changed. The new codes are, in order of precedence:

p -- persistent system process.
t -- top activity; actually any visible activity.
f -- important foreground process (ime, wallpaper, etc).
b -- important background process
u -- performing backup operation.
w -- heavy-weight process (currently not used).
s -- background process running a service.
r -- process running a receiver.
h -- process hosting home/launcher app when not on top.
l -- process hosting the last app the user was in.
a -- cached process hosting a previous activity.
c -- cached process hosting a client activity.
e -- cached process that is empty.

In addition, we are now collecting uss along with pss
data for each process, so the pss checkin entries now
have three new values at the end of the min/avg/max uss
values of that process.

With this switch to using process state constants more
fundamentally, I realized that they could actually be
used by the core oom adj code to make it a lot cleaner.
So that change has been made, that code has changed quite
radically, and lost a lot of its secondary states and flags
that it used to use in its computation, now relying on
primarily the oom_adj and proc state values for the process.

This also cleaned up a few problems -- for example for
purposes of determing the memory level of the device, if a
long-running service dropped into the cached oom_adj level,
it would start being counted as a cached process and thus
make us think that the memory state is better than it is.
Now we do this based on the proc state, which always stays
as a service regardless of what is happening like this, giving
as a more consistent view of the memory state of the device.

Making proc state a more fundamentally part of the oom adj
computation means that the values can also be more carefully
tuned in semantic meaning so the value assigned to a process
doesn't tend to change unless the semantics of the process
has really significantly changed.

For example, a process will be assigned the service state
regardless of whether that services is executing operations
in the foreground, running normally, or has been dropped to
the lru list for pruning. The top state is used for everything
related to activities visible to the user: when actually on
top, visible but not on top, currently pausing, etc.

There is a new Context.BIND_SHOWING_UI added for when system
services bind to apps, to explicitly indicate that the app
is showing UI for the system. This gives us a better metric
to determine when it is showing UI, and thus when it needs
to do a memory trim when it is no longer in that state. Without
this, services could get in bad states of continually trimming.

Finally, more HashSet containers have been changed to ArraySet,
reducing the temporary iterators created for iterating over
them.

Change-Id: I1724113f42abe7862e8aecb6faae5a7620245e89
ebug.java
5534ba91ac0a0c9af822af62bcf92e2c5a8d6ec8 13-Jul-2013 Rom Lemarchand <romlem@google.com> Increase swappiness of processes when memcgroups are enabled

When memcgroups are enabled, migrate heavier and lower priority processes
to the sw memcgroup.

Change-Id: Iba07a723037a599736ef23dea16a30a26634428a
rocess.java
6098c5d3555860f272d8ddbd353a42f4c8474e1c 17-Jun-2013 John Spurlock <jspurlock@google.com> Docfixes in IBinder, Context, View, and Intent.

Fix links in @throws clauses, typos, redundant "returns"
and use @code for true + false in returns.

Change-Id: Ic3c4c75d6061732d997a386dc3232475c992c188
Binder.java
f33468e68a6e78c6a2c88d90de4fbce55cad7eac 12-Jul-2013 Geremy Condra <gcondra@google.com> Merge "Add NetworkManagement support for fwmark routes"
cca54c4decc70dd49382cc7ebe297845c94ee706 28-Jun-2013 Chad Brubaker <cbrubaker@google.com> Add NetworkManagement support for fwmark routes

Add NetworkManagementService binds for netd's fwmark routes

Change-Id: I55cf6b198d56f1fb0d20818ddf176a0f779a33b6
NetworkManagementService.aidl
a7ac8be1f564ad27c0b1f4796b60f3eaaa8dc611 11-Jul-2013 Elliott Hughes <enh@google.com> am dff4ec87: am e16a21c6: resolved conflicts for merge of 4a59376d to stage-aosp-master

* commit 'dff4ec87e7b942b7b4410f639fc74c2cffb386d6':
Track libcore API change.
e16a21c6b4f108813e5f5e00f30e0ff075de504c 10-Jul-2013 Elliott Hughes <enh@google.com> resolved conflicts for merge of 4a59376d to stage-aosp-master

Change-Id: I0e40180b46dc58781c218b8d382299dab73d49cc
befd0b1bdfb4492425944a1b7fcf6d10eaed9b4c 09-Jul-2013 Elliott Hughes <enh@google.com> Track libcore API change.

Change-Id: Ib818a7f21325c5f918bf497033a90d76b25ec9e7
tatFs.java
a4cc205ee840a5374a96c9635dc5121d82a3eaf9 09-Jul-2013 Dianne Hackborn <hackbod@google.com> More procstats work.

The historical data is now a more central part of the stats.
When a checkin happens, the data is not deleted, just marked
as checked in so we can continue to access it.

The default procstats dump is now a new "summary" mode that
shows a more useful set of data for all of the running processes.
By default the current and all committed states are shown; you
use "--current" to only show the current. Use "--details" to
get the previous more detailed data (which now includes detailed
process data like the per-package data).

Also tweaked uid printing to be a little more compact.

Change-Id: I5414ea7c07134ebd5dc83f6f7b9f6e30151eda85
atteryStats.java
serHandle.java
053f61d6a6e23825e680dc49982e55c5b4299d61 27-Jun-2013 Dianne Hackborn <hackbod@google.com> Work on issue #9586838: Crash after waking up Hammerhead device

I made the power manager more rigid, not allowing different uids
to use the same wake lock. This never should happen. I would
guess there is somewhere that the activity manager is acquiring
the wake lock without clearing the calling identity... but it is
hard to follow all the paths this may happen in. So here we add
some checks when acquiring/releasing the wake lock to make sure
it is being done as the system uid.

Also:

- Protect the new activity stack calls with a permission, and
make sure to clear the calling uid once past that.
- Collect uid data from process stats so we can correctly
associate CPU use with a uid even if we don't know about the
pid for some reason.
- Fix battery stats dump commands to clear calling uid before
executing so they aren't broken.

Change-Id: I0030d4f7b614e3270d794ecfc3669139a5703ce9
ileUtils.java
5fa9f2b127c2d7c40da419540f3425ac45a89439 27-Jun-2013 Amith Yamasani <yamasani@google.com> Merge "Single-user restrictions"
13ac041b9f21043bc7c848a743be618bfd7a67e9 26-Jun-2013 Dianne Hackborn <hackbod@google.com> Update procstats to start collecting/reporting pss.

Completely reworked how it manages its data, since trying
to keep track of all of the possible pss data with the old
data structures would have made it huge. Now we have a sparse
data structure for pss and process times. (Will switch service
times over to it soon.)

Currently the only thing that collects pss data is running
"dumpsys meminfo". More will be added later.

Modified checkin output to also scale better as more distinct
data categories are added, and added output of pss data. Now
instead of dumping every possible entry as a comma-separated
list, it dumps a comma-separated list of only the entries with
data, tagged with the state they go with.

Also fixed some problems in the checkin reporting of batterystats
(it needs to escape commas), added checkin reporting of the history
list, fixed parsing of kernel wake locks to strip quotes, fixed
wake lock name that the sync manager generates to be more sane.

Change-Id: Ibf4010838a9f685ebe1d93aff86c064ccc52b861
atteryStats.java
rocess.java
655d0e2029e6ae77a47e922dce4c4989818b8dd1 12-Jun-2013 Amith Yamasani <yamasani@google.com> Single-user restrictions

Introduces a new "blocked" state for each package. This is used to temporarily
disable an app via Settings->Restrictions.

PIN creation and challenge activities for use by Settings and other apps. PIN
is stored by the User Manager and it manages the interval for retry attempts
across reboots.

Change-Id: I4915329d1f72399bbcaf93a9ca9c0d2e69d098dd
UserManager.aidl
serManager.java
8c84109b9fbbf473b225707a38261ff5f99d95fb 24-Jun-2013 Dianne Hackborn <hackbod@google.com> Use FastPrintWriter... everywhere.

One problem this turned up is, because FastPrintWriter does
its own buffering, a lot of code that used to use PrintWriter
would fail -- if it pointed to a StringWriter, there was no
buffering, so it could just immediately get the result. Now
you need to first flush the FastPrintWriter.

Also added some new constructors to specify the size of buffer
that FastPrintWriter should use.

Change-Id: If48cd28d7be0b6b3278bbb69a8357e6ce88cf54a
ebug.java
trictMode.java
4b9a4d16872bbb50712e007b419ac0b35ff1582d 12-Jun-2013 Svetoslav Ganov <svetoslavganov@google.com> Print - platform APIs

Related changes:
Skia (inlcude PDF APIs): https://googleplex-android-review.googlesource.com/#/c/305814/
Canvas to PDF: https://googleplex-android-review.googlesource.com/#/c/319367/
Settings (initial version): https://googleplex-android-review.googlesource.com/#/c/306077/
Build: https://googleplex-android-review.googlesource.com/#/c/292437/
Sample print services: https://googleplex-android-review.googlesource.com/#/c/281785/

Change-Id: I104d12efd12577f05c7b9b2a5e5e49125c0f09da
ancellationSignal.java
db4e33f1f1d766afa3218a6bbdbb561e7962c854 02-Apr-2013 Dianne Hackborn <hackbod@google.com> Faster PrintWriter.

Change-Id: I4e1ae7e0357214deb7e19ae65f8701b69b347c6e
inder.java
fbf7a9aea201484ff40e827de97a6db903b53ac3 15-Jun-2013 Dianne Hackborn <hackbod@google.com> Merge "More work on process tracking."
91268cf21eace600792d04db1ac62e9268f48002 14-Jun-2013 Dianne Hackborn <hackbod@google.com> More work on process tracking.

Re-arranged code to be more flexible, now track
state of services, dump ordered list of running
processes while memory was critical and low.

Also rename battery stats service from "batteryinfo" to "batterystats".

Change-Id: I0f4f0c8d443c49d255cb84d0fc917e8ec18b152e
atteryStats.java
214816da8ebfae411610c8f9ec4c4285b8f6f359 15-Jun-2013 Jeff Sharkey <jsharkey@android.com> Merge "Cache AndroidBlockGuardPolicy to avoid allocation."
a2934d5ff0b5c4098408cd583c2c259edf37c118 14-Jun-2013 Jeff Sharkey <jsharkey@android.com> Cache AndroidBlockGuardPolicy to avoid allocation.

Every incoming Binder call ends up triggering a BlockGuardPolicy
update, which would thrash between new AndroidBlockGuardPolicy
instances and BlockGuard.LAX_POLICY, causing GC churn.

This change avoids the extra allocations by recycling a single
AndroidBlockGuardPolicy in a ThreadLocal. Worst-case thrashing case
is now 10% faster; from 7.46us to 6.65us.

Bug: 9424568
Change-Id: I9c3b1c097a2aecc9b1f109a824cf3ea319fb3393
trictMode.java
e08d54b92e32244a44283a84d7fae9ca37ff51b5 14-Jun-2013 Geremy Condra <gcondra@google.com> Merge "Add NetworkManagement methods for netd uid binds"
a5512f2e0ed8fc9656304b3a78c2123ae4f68370 13-Jun-2013 Kristian Monsen <kristianm@google.com> Merge "Add javadoc to Handler.Callback.handleMessage"
3277620a69b6b9f27126f0b2651ea4293731cd09 12-Jun-2013 Chad Brubaker <cbrubaker@google.com> Add NetworkManagement methods for netd uid binds

Add methods to NetworkManagementService for per uid routing and DNS and
for setting up fwmark tables for interfaces.

Change-Id: Icf2c4a46f7f422660031ef73b537745922286246
NetworkManagementService.aidl
cbfd23ee6f14445c3e17c5169abbc80c216fa137 11-Jun-2013 Dianne Hackborn <hackbod@google.com> Add new API to retrieve a dumpsys of a single package.

Adds a platform API, and pm command. Fixes some issues with
dumping per-package data in package manager, makes battery
stats able to dump per-package state.

Change-Id: I76ee6d059f0ba17f7a7061886792b1b716d46d2d
atteryStats.java
7a1c3fce478122b9f03464117dc94d44f7c1995e 04-Jun-2013 Jeff Sharkey <jsharkey@android.com> Accumulate network statistics based on deltas.

Network stats are now read out of the kernel in one sweep, instead of
reading per-UID. We now accumulate the delta traffic between each
stats snapshot using the well-tested SamplingCounter pattern.

Since Wi-Fi and mobile traffic have different costs, track each
separately. Avoids counting misc interfaces like loopback and
ethernet under total.

Bug: 5543387
Change-Id: I642004dc530113c27ef79f2abbae51d8af30117f
atteryStats.java
1d3b409cd93f803aa7a0bbafa2ac5fa90866bc33 06-Jun-2013 Kristian Monsen <kristianm@google.com> Add javadoc to Handler.Callback.handleMessage

Describing param and return value. There is a public bug for this at:
https://code.google.com/p/android/issues/detail?id=6464

Change-Id: Ia917cd4e047b629e6511bf12a91a5e953da8ae2e
andler.java
390517be2d60dd6e6264150c190c372d89bb331a 31-May-2013 Dianne Hackborn <hackbod@google.com> Clean up some temporary allocations.

Yay to ArrayMap, letting me get rid of a bunch of temporary
iterators in core code paths like updateOomAdj. (Now I definitely
need an ArraySet to finish that up.)

Also clean up various other things that are doing unnecessary
allocations, clean up some debug output, make more of the debug
output respect package filtering.

Change-Id: Ib4979faf4de8c7912739bc0937c3fa9e7bfcde67
emoteCallbackList.java
trictMode.java
80b12fcaaec458377d966803c3a61504f0897ea1 30-May-2013 Romain Guy <romainguy@google.com> Disable the AssetAtlas when running under valgrind
Bug #9191438

When running under valgrind, the ppid will be different from the ppid
of the system server (which always gets forked from zygote.)

Change-Id: I42cbf99fd0084aeab76c30de9beb7c49ed1fc7d8
rocess.java
df6f42394bb75837516a4dd6a148b17effd122a8 24-May-2013 Tim Murray <timmurray@google.com> Merge "Add support to Java for RS tracing."
6d7a53cbddbffba30f7e9f82ced9c1ab46214f5a 24-May-2013 Tim Murray <timmurray@google.com> Add support to Java for RS tracing.

Change-Id: I95c365345fea3a1e132a7eb2270d541be0745d02
race.java
64770d16b0907a8e1ee81ef6c8fa398a6bdbee79 24-May-2013 Dianne Hackborn <hackbod@google.com> Some improvements to meminfo output.

- Rename "Swappable PSS" to "PSS Clean" which I think is what it
means and is consistent with the other memory metrics.
- Split at the top level the dalvik heap from other dalvik allocations,
so when you look on the dalvik allocations line things are consistent
with the allocator's data and it is clear what are app allocations vs.
other data in dalvik.
- Don't print lines that are all 0.
- Don't print the detailed Dalvik allocation data by default; add a new
option to have it printed.

Here's what a typical system process dump now looks like:

** MEMINFO in pid 6358 [system] **
Pss Pss Shared Private Shared Private Heap Heap Heap
Total Clean Dirty Dirty Clean Clean Size Alloc Free
------ ------ ------ ------ ------ ------ ------ ------ ------
Native Heap 0 0 0 0 0 0 6964 3599 2048
Dalvik Heap 7541 0 4344 7356 0 0 11768 11194 574
Dalvik Other 3553 0 2792 3448 0 0
Stack 28 0 8 28 0 0
Cursor 4 0 0 4 0 0
Ashmem 5 0 12 0 0 0
Other dev 4004 0 24 4000 0 4
.so mmap 3959 684 2500 2280 5468 684
.apk mmap 173 68 0 0 692 68
.dex mmap 4358 3068 0 0 9276 3068
Other mmap 60 0 8 8 244 36
Unknown 4387 0 508 4380 0 0
TOTAL 28072 3820 10196 21504 15680 3860 18732 14793 2622

Objects
Views: 10 ViewRootImpl: 1
AppContexts: 8 Activities: 0
Assets: 3 AssetManagers: 3
Local Binders: 176 Proxy Binders: 341
Death Recipients: 141
OpenSSL Sockets: 0

SQL
MEMORY_USED: 473
PAGECACHE_OVERFLOW: 98 MALLOC_SIZE: 62

DATABASES
pgsz dbsz Lookaside(b) cache Dbname
4 68 49 7/21/7 /data/data/com.android.providers.settings/databases/settings.db
4 20 17 0/13/1 /data/system/locksettings.db
4 20 21 96/14/2 /data/system/locksettings.db (1)
4 20 21 75/13/2 /data/system/locksettings.db (2)
4 80 29 4/17/3 /data/system/users/0/accounts.db

Change-Id: Ifd511a7baaa8808f82f39509a5a15c71c41d1bac
ebug.java
3c61506b7147e13b9d39fc07fb189504fcab4541 13-May-2013 Anwar Ghuloum <anwarg@google.com> Add more memory usage stats

Added support for teasing apart different parts of the dalvik heap.

Note this adds more public api and we should talk to hackbod before going into master with this.

(cherry picked from commit 73407daf3f6110e933d8614605b21586c4c5fde2)

Change-Id: If4431f50e67e18bcc42e00694c97805477bd6815
ebug.java
3a8ce1bec819c9b104880493a6862fd2a9546132 27-Apr-2013 Anwar Ghuloum <anwarg@google.com> More stats for meminfo

Added shared clean tracking (for pageable stuff). Renamed .oat and .art mmap.

(cherry picked from commit 967d53b17b6010c3a675ca9c3bbd0e9dd2f2f092)

Change-Id: I741e0dbe0d3f9aee6975c6fad8af9905942962d4
ebug.java
88887d0a53f866e61a7524b0edfc95e6dde57d72 19-Mar-2013 Anwar Ghuloum <anwarg@google.com> break out boot.art

breaking out boot.art mapped pages

(cherry picked from commit eaa3f2d59adaeb87cd8d1726b696521f984659c4)

Change-Id: Ie89477bd3a93a15de3a4db76ef5eae497c3087e3
ebug.java
8884ef4fe80505bc6e41c167b67efbb93e43475d 15-Mar-2013 Anwar Ghuloum <anwarg@google.com> Break out Oat footprint for ram

Breaking out oat footprint in meminfo.

(cherry picked from commit c92f177d96b5952e0bfde01597972fc607aed93a)

Change-Id: I7b0452045c265b7544c41d3a5953e10a081c5315
ebug.java
66d5369e79182dbe65306b27a4da7f4a7e25c723 22-May-2013 Richard Haines <richard_c_haines@btinternet.com> Fix SELinux.java doc errors

This fixes five errors when building the Java docs. It also
removes two obsolete lines.

Signed-off-by: Richard Haines <richard_c_haines@btinternet.com>
ELinux.java
713df150b92a0a5eea877f99405e31eefbf93a09 17-May-2013 Dianne Hackborn <hackbod@google.com> Add app ops for wake locks.

Currently only supports auditing, not disabling.

Change-Id: Ie85f02c29b490d96e073f54d59e165d48c7c00c9
PowerManager.aidl
owerManager.java
b14e42f1211940baa76b15589bfa696611fea87f 10-May-2013 Dianne Hackborn <hackbod@google.com> Merge "Cleanup some of the thread merging."
fa98345745049cb352fe5c2cca525a612dcb5007 09-May-2013 Daniel Sandler <dsandler@android.com> am 617055d7: am 5d6dc425: Merge "Filter out dangerous CharSequences in Notification." into jb-mr2-dev

* commit '617055d7a9e2c30d1a99bf7e596f8d9e32fab723':
Filter out dangerous CharSequences in Notification.
5d6dc425287e5651e3a1fdc32591b8791dd9dd18 09-May-2013 Daniel Sandler <dsandler@android.com> Merge "Filter out dangerous CharSequences in Notification." into jb-mr2-dev
8afcf4411ef472256c030b4c747132c6a4bfdec0 09-May-2013 Jamie Gennis <jgennis@google.com> am 211eae98: am d28653df: Merge "Add the trace tag for Dalvik." into jb-mr2-dev

* commit '211eae98fce88c7c502eb8f59d956c1a249d77bc':
Add the trace tag for Dalvik.
dcbaf661bfa931f481022c27987798a03ce7a932 26-Apr-2013 Daniel Sandler <dsandler@android.com> Filter out dangerous CharSequences in Notification.

If an app mistakenly puts some Parcelable implementation of
CharSequence in here, Bundle will try to marshal the derived
class, which is going to be bad news when we try to unparcel
it in another process.

Additionally add a proper stack trace to unparceling
failures (otherwise you have no idea where the bad parcel
was being used).

Bug: 8725271
Change-Id: Ide19b986d65c7f47929cf2dde4e62b762c469fee
arcel.java
d28653df6580b76559374580764aa2e86d6c2f48 08-May-2013 Jamie Gennis <jgennis@google.com> Merge "Add the trace tag for Dalvik." into jb-mr2-dev
efa92b2182ab581873aa8e75d596e2e363bd5e6d 03-May-2013 Dianne Hackborn <hackbod@google.com> Cleanup some of the thread merging.

Adds an optimization for checking whether a looper is stuck,
with a new Looper method to see if its thread is currently
idle. This will allow us to put a large number of loopers
in the monitor efficiently, since we generally won't have to
do a context switch on each of them (since most looper threads
spend most of their time idle waiting for work).

Also change things so the system process's main thread
is actually running on the main thread. Because Jeff
asked for this, and who am I to argue? :)

Change-Id: I12999e6f9c4b056c22dd652cb78c2453c391061f
ooper.java
essageQueue.java
0cc84cefdd4e947f984678dfe854d3c53ded0475 08-May-2013 Jamie Gennis <jgennis@google.com> Add the trace tag for Dalvik.

Bug: 8856374
Change-Id: Id0fbdb8f7a487c5831edcd2c6c64a7da63aec03d
race.java
3aa49b6fece334ace7525d42c1f6d0b7cdc1fbfb 27-Apr-2013 Dianne Hackborn <hackbod@google.com> New UndoManager.

Basic implementation of an undo manager. Supports
multi-level undo/redo, building on the top undo state
as edits occur, managing multiple distinct entities in
the undo state (such as embedded objects in a document),
and saving/restoring the full undo state. Still some
work remaining on correctly dealing with dependencies
between undo states that hold multiple owners.

Also do a simple implementation of undo state in TextView
to see how things actually work. The implementation here
is very primitive: it needs a lot more work to correctly
identify when to merge undo ops, is not trying to do
anything smart with style spans, etc.

Change-Id: Ie30f4e133351e2f569ffb48c6c44a2b19cadee27
arcelableParcel.java
add582122dcec5aeb20d9e8f8c49348e00a5fe76 07-May-2013 Kenny Root <kroot@google.com> resolved conflicts for merge of 485d7a31 to master

Change-Id: I058e19af8732df44457bdc614ee810a642dc25e4
5b88a2fd7b77880f6e09ae4a1de509bebe28bc3a 04-May-2013 Dianne Hackborn <hackbod@google.com> Debugging help for issue #8734824: WATCHDOG KILLING SYSTEM PROCESS

IActivityController has a new callback which the Watchdog calls
when it detects that the system process is hung. This may be
use full monkey. All hail the monkey!

Also add a new private feature to Binder to be able to turn off
all incoming dump() calls to a process. The watchdog uses this
when it reports it is hung, so that if someone, say, wants to
collect a bug report at this point they won't get stuck waiting
for things that are all busted.

Change-Id: Ib514d97451cf3b93f29e194c1954e29f948c13b1
inder.java
ec43a6bc17d90058ba2c00e016846c863ab239bc 30-Apr-2013 Jeff Sharkey <jsharkey@android.com> Better --unplugged support when dumping battery.

Also fixes logBatteryStatsLocked() to output valid dump data, instead
of just a usage message.

Bug: 8708665
Change-Id: Ie0d8d90e1a470b7e1e902643333309c2cf7bdb72
atteryStats.java
fe9270712ec9e84ba37dc13c42495b0b6ec3753e 26-Apr-2013 Amith Yamasani <yamasani@google.com> am 83a61421: am bbd90f8e: Merge "Hide isLinkedUser()" into jb-mr2-dev

* commit '83a6142173fbd3ddf5c4285e2b6359e44beaddb0':
Hide isLinkedUser()
3e013e85b0dfb9db58a4401b80d672a7eeb09d47 25-Apr-2013 Jeff Sharkey <jsharkey@android.com> Track foreground activities in battery stats.

To help correlate battery usage against actual foreground app usage,
start tracking time on a per UID basis. It uses the nesting feature
of StopwatchTimer to track multiple PIDs inside the same UID.

Improves units on docs, and persists foreground CPU time with a
consistent ordering. Reports foreground activities time and
foreground CPU time.

Change-Id: I95d12963923e3fd421730f6fbfc842dfd8d3a055
atteryStats.java
2555dafce87e60fae28d71913730abf73e40fcd7 25-Apr-2013 Amith Yamasani <yamasani@google.com> Hide isLinkedUser()

It's not the best API to use to determine anything. Defer to other
APIs such as UserManager.getUserRestrictions()

Bug: 8720520
Change-Id: Ie49589056ab52b4fdbcc736f8cdefadb8ba5d9d8
serManager.java
023c1f4a1e94ae93a4ab4578ea87a0c26eb83667 24-Apr-2013 Ian Rogers <irogers@google.com> am 896ee5b6: am be4536d2: Merge "Adding matching @deprecated."

* commit '896ee5b6f8354567464a371025088156ed49bc32':
Adding matching @deprecated.
282a7e1b1db121c910f25b13081242a8c7611708 19-Apr-2013 Ian Rogers <irogers@google.com> Adding matching @deprecated.

Bug: 8657266

(Cherry-pick of c2a3adbd56e763ef0ad045fd8c58a54e41d1639d)

Change-Id: Idbd22dc647f11441d15da12eb23723539768cf4c
ebug.java
eadbcd3352fa58c685f83e4128f4a01c904b9c7e 23-Apr-2013 Dianne Hackborn <hackbod@google.com> resolved conflicts for merge of 8c3cb811 to master

Change-Id: I1cd4186b6b2dcb3d1d7d21c346384dbcc6e6a8df
896ee5b6f8354567464a371025088156ed49bc32 23-Apr-2013 Ian Rogers <irogers@google.com> am be4536d2: Merge "Adding matching @deprecated."

* commit 'be4536d214eedc3d12b50f0f30b47bba773b8dbc':
Adding matching @deprecated.
d2eeed635d2d7fdeeda0a1eaa6ec9e659198c45f 22-Apr-2013 Dianne Hackborn <hackbod@google.com> JB MR2 == API 18.

Change-Id: Ia62a81f8ebc79ae0e01b181f4ef47ef192c71592
uild.java
94e602d7b5f8c6fb6dbfa71d646a96aad0354640 19-Apr-2013 Jeff Sharkey <jsharkey@android.com> am 1b50e4ea: am ca2a6374: Merge "Environment should only warn when asked." into jb-mr2-dev

* commit '1b50e4ead5463f4dcc03f9c5ed64963af0d4d9eb':
Environment should only warn when asked.
48749fc78afc982ac32cf98790a85ab2b8bed515 19-Apr-2013 Jeff Sharkey <jsharkey@android.com> Environment should only warn when asked.

Instead of warning on Process.SYSTEM_UID, which is also used by the
Settings app, change to have the parent process explicitly ask for
warnings.

Bug: 8667286
Change-Id: Ib26676694a4041ff4e6d3ffdcc14055b7eba13c7
nvironment.java
50474f91e3453e0e6448803c956d39e2e143e604 19-Apr-2013 Jeff Sharkey <jsharkey@android.com> am dde9559b: am 24b55f25: Merge "Deprecate StatFs methods returning small values." into jb-mr2-dev

* commit 'dde9559b78a93344ec0b568c2bac7329621de31f':
Deprecate StatFs methods returning small values.
c2a3adbd56e763ef0ad045fd8c58a54e41d1639d 19-Apr-2013 Ian Rogers <irogers@google.com> Adding matching @deprecated.

Bug: 8657266
Change-Id: Idbd22dc647f11441d15da12eb23723539768cf4c
ebug.java
b81440bd9bcb22ba93c2bfec4e3c2da39a57c95d 19-Apr-2013 Jeff Sharkey <jsharkey@android.com> Deprecate StatFs methods returning small values.

Bug: 8656794
Change-Id: Ic904bd1bc016ef48b5a304b7c68250afe23e98bc
tatFs.java
8844892a8859c5231cb5bfa76719c6bd46075710 19-Apr-2013 Jeff Brown <jeffbrown@google.com> am ba8fdcac: am 6f575bb3: Merge "Fix change of behavior in Looper.quit()." into jb-mr2-dev

* commit 'ba8fdcac4cc4ae3d9dcac8fa6a64c55facd6f25f':
Fix change of behavior in Looper.quit().
8b60e4514702edd1eb4b6f2bfc027e04a94369c0 19-Apr-2013 Jeff Brown <jeffbrown@google.com> Fix change of behavior in Looper.quit().

It seems some applications rely on Looper.quit() terminating the
loop immediately without processing all messages. Rather than
risk breaking them, make the safer behavior optional.

Also take care to properly drain the message queue before quitting
so that all of the Message instances are recycled. This may
help release storage sooner in case the Looper doesn't get GC'd
promptly and its remaining queue of undelivered messages sticks
around.

Improve docs on runWithScissors.

Bug: 8596303
Change-Id: I8cbeb6f7a5f6b8e618b5109f87a03defc1486b9f
andler.java
andlerThread.java
ooper.java
essageQueue.java
c1ce6e1a795935a9dfb34878370706e301758baf 17-Apr-2013 Amith Yamasani <yamasani@google.com> am ac16c21d: am a0042742: Merge "Modify restrictions bundle per api council recommendations" into jb-mr2-dev

* commit 'ac16c21d11c1545efb8deafbcb7c120a5e0821a1':
Modify restrictions bundle per api council recommendations
7e99bc02c8e2f44dd92d70bfa6e654297e5286d8 17-Apr-2013 Amith Yamasani <yamasani@google.com> Modify restrictions bundle per api council recommendations

Use a Bundle for persisting and passing to the application, but use a
list to return data back from an application that's exposing restrictions.

Changed the xml reading/writing code to store the value type in the Bundle
so that it can be reproduced when reading. Earlier we were assuming only
String and String[].

Bug: 8633967

Change-Id: I523d5553728edcf28a1e9d432f490b4956f34215
UserManager.aidl
serManager.java
a720a87fded1704d1a7490956bc5ec682b67a4fb 17-Apr-2013 Jamie Gennis <jgennis@google.com> am a0b28ca7: am 95a869f9: Merge "Disable tracing from Zygote" into jb-mr2-dev

* commit 'a0b28ca74806dcf46300d82ebb689b002bd36955':
Disable tracing from Zygote
057d3eb1bd13adac7b0a78e419c8932c92c13b00 17-Apr-2013 Doug Zongker <dougz@android.com> Merge "RecoverySystem: update comment to reflect signature changes"
6ad0452e6301c0650f58f3991f7c523f6f279ddb 16-Apr-2013 Jamie Gennis <jgennis@google.com> Disable tracing from Zygote

This change disables all atrace tracing in Zygote immediately after it is
initialized. This is necessary because Zygote has no way to receive
notifications that the enabled trace tags have been changed. Tracing is
re-enabled when other processes fork from Zygote.

Change-Id: If2983858fb0c4890ba9ab041849b1c4d98f66c13
race.java
60113556355f25d02d9d0e0556a02483cad8ff48 14-Apr-2013 Amith Yamasani <yamasani@google.com> am 6064c5cf: am e1375908: Rename isUserLimited to isLinkedUser

* commit '6064c5cf22b16464a82f04f0a9560f412ba2a90a':
Rename isUserLimited to isLinkedUser
e1375908a5f05e5c926e95049970c4505e4dfad9 14-Apr-2013 Amith Yamasani <yamasani@google.com> Rename isUserLimited to isLinkedUser

A linked user is derived from another user and shares their accounts.

Change-Id: Ia2e63d573ccb635495ec54f31ac7b174725ad7a8
serManager.java
11dc37686fa284f3c6c63b911febd4547d5bb92b 13-Apr-2013 Dianne Hackborn <hackbod@google.com> am 18e99d1d: am 15fed390: Merge "Add new resources trace, also trace apk dex loading." into jb-mr2-dev

* commit '18e99d1d5f7bb2e35fb9f5c3edbb4265d66e3d93':
Add new resources trace, also trace apk dex loading.
15fed390c44972932f6dd7ce3bef1004e8b98b61 13-Apr-2013 Dianne Hackborn <hackbod@google.com> Merge "Add new resources trace, also trace apk dex loading." into jb-mr2-dev
8c176b2513fb296fe2cf43072262574254bcd808 13-Apr-2013 Amith Yamasani <yamasani@google.com> am b0511d47: am e107aa43: Merge "Rename isUserRestricted to isUserLimited" into jb-mr2-dev

* commit 'b0511d47eb15f4f7941d278467964f2cd6dd2871':
Rename isUserRestricted to isUserLimited
e107aa43866ce06cd08a7a3f2500a22bf81bbe79 13-Apr-2013 Amith Yamasani <yamasani@google.com> Merge "Rename isUserRestricted to isUserLimited" into jb-mr2-dev
46bc4ebb87232b39d7b02ac0135c8ccf2c33f233 12-Apr-2013 Amith Yamasani <yamasani@google.com> Rename isUserRestricted to isUserLimited

Avoid confusion with user restrictions which can be applied to
non-limited users as well.

Updated the java docs.

Change-Id: I4097c50b528b01a49cebcb0832d09f2b06998faa
serManager.java
f7be4800df28d7cb6a96003046bf90245e7054ab 12-Apr-2013 Dianne Hackborn <hackbod@google.com> Add new resources trace, also trace apk dex loading.

Change-Id: Ia48566efb21ee018659bd976ddb3a0f4997b9a3a
race.java
190a0f24dbba2fde41a77faf555da30bf2b1b79c 12-Apr-2013 Romain Guy <romainguy@google.com> am a378bab7: am 50b68bf8: Merge "Add async events tracing to android.os.Trace" into jb-mr2-dev

* commit 'a378bab7a7ea4f748c72b0d14acbdf9359dbebfb':
Add async events tracing to android.os.Trace
50b68bf8364fd728553cb8066ece8f7905885625 12-Apr-2013 Romain Guy <romainguy@google.com> Merge "Add async events tracing to android.os.Trace" into jb-mr2-dev
d65b268fcd7aadbbd22bdfbe9af6ffdf6005be21 12-Apr-2013 Emily Bernier <ember@google.com> am 9b8abb5a: am ce70311b: Merge "Add user restrictions (credentials, user removal)" into jb-mr2-dev

* commit '9b8abb5abde4264b6ed4e022804c743faf68323d':
Add user restrictions (credentials, user removal)
ce70311b67c3dba6ed4fbda41617f4e24c82dfc7 12-Apr-2013 Emily Bernier <ember@google.com> Merge "Add user restrictions (credentials, user removal)" into jb-mr2-dev
b97ebedeb3183b7453fc763df2ddf618e42b2157 12-Apr-2013 Jeff Brown <jeffbrown@google.com> am dc5711ea: am bf26c9cf: Merge "Ensure looper quits after all other messages are handled." into jb-mr2-dev

* commit 'dc5711eaef8662d5299f0088edf6e47fff77a872':
Ensure looper quits after all other messages are handled.
024136f57e5f8b4c11a4fe0fd83061eb6d372d26 12-Apr-2013 Jeff Brown <jeffbrown@google.com> Ensure looper quits after all other messages are handled.

Bug: 8596303
Change-Id: Ie8bfbbe810f5ade2afd870c8e675ce1353a80e5d
ooper.java
essageQueue.java
b223f73a69f76f5e32a0bca267f945f464776f9d 11-Apr-2013 Emily Bernier <ember@google.com> Add user restrictions (credentials, user removal)

Created constants in current.txt and UserManager.java, modified restrictions access in UserManagerService.java.

Change-Id: If8d778d84af81dcbf5784f6e0afd9ef966cc8ecf
serManager.java
3e4e221e6dd0e5c6fd4ef6036a37b166bd1053e4 11-Apr-2013 Jamie Gennis <jgennis@google.com> am 8a675b9a: am 6e8a2dd3: Merge "Trace: unhide app tracing APIs" into jb-mr2-dev

* commit '8a675b9aca36fdccdefd67d20128c9b5bc03644a':
Trace: unhide app tracing APIs
6e8a2dd3e66e65008a70fc09f6532b231d9b5f27 11-Apr-2013 Jamie Gennis <jgennis@google.com> Merge "Trace: unhide app tracing APIs" into jb-mr2-dev
5800fc881e9919bc8a0ce12199f2a16230c6cbbf 10-Apr-2013 Jamie Gennis <jgennis@google.com> Trace: unhide app tracing APIs

Change-Id: I48316623fe0394d3fe77e9abca3f6dbf791d0c08
race.java
9425f923fae8977d09d924436148d3808032ea98 11-Apr-2013 Romain Guy <romainguy@google.com> Add async events tracing to android.os.Trace

Change-Id: I106a50732a88c03a00602c328f8b46626bf66e08
race.java
ea13f6ff99d1304a74f2933f04948a51a8477534 10-Apr-2013 Dianne Hackborn <hackbod@google.com> am a92e95e5: am 064fab54: Merge "Fix issue #7691456: adbd CPU usage identified as Bluetooth in battery stats" into jb-mr2-dev

* commit 'a92e95e5d9c7e6a35541708a0a51ce9b54704b17':
Fix issue #7691456: adbd CPU usage identified as Bluetooth in battery stats
2323dd8d1e2564e5a7b912bf57838802571e8777 10-Apr-2013 Dianne Hackborn <hackbod@google.com> Fix issue #7691456: adbd CPU usage identified as Bluetooth in battery stats

Bluetooth GID was wrong and pointless and dumb and now gone.

Change-Id: Ibde563ef0c10c6d316428e1e683b013005b934d4
rocess.java
c9a9ffc5264c2c9405b7b98e1e993279e10f994f 10-Apr-2013 Doug Zongker <dougz@android.com> RecoverySystem: update comment to reflect signature changes

No functionality change is needed.

Change-Id: I2dd4775e484ffa96daa0d8778add5feb6c257424
ecoverySystem.java
097fc7ef72ea8a005028d7315ca7cca2f1aa1972 10-Apr-2013 Jamie Gennis <jgennis@google.com> am bb2e031a: am 65b08486: Merge "Add APIs for application-generated systrace events" into jb-mr2-dev

* commit 'bb2e031ace9072a0bd71f6316269f3060f04aa27':
Add APIs for application-generated systrace events
f9c7d6bc15b68393c1f0aa85c3c023c31244c3f2 25-Mar-2013 Jamie Gennis <jgennis@google.com> Add APIs for application-generated systrace events

This change adds new APIs to enable applications to generate custom Systrace
begin/end events. Application-generated events use the ATRACE_APP_TAG tag,
which is enabled only if either the application has declared itself debuggable
in its manifest or ro.debuggable is set to 1 on the device.

Change-Id: I311d09e2e6ed1a30f5ffa84907f250e11cc0d48d
race.java
b437a79b050e8928ce7187899b7754f049008085 09-Apr-2013 Jeff Brown <jeffbrown@google.com> resolved conflicts for merge of 21dffd5d to master

Change-Id: I37c48dee471c9d43f19c1fe4a01f70db53e2441f
3a2854bcee08e3af3ca1b042c1fef6ca68f8c70a 09-Apr-2013 Jeff Brown <jeffbrown@google.com> Merge "Queues, queues, queues and input." into jb-mr2-dev
f9e989d5f09e72f5c9a59d713521f37d3fdd93dd 05-Apr-2013 Jeff Brown <jeffbrown@google.com> Queues, queues, queues and input.

Redesigned how ViewRootImpl delivers input events to views,
the IME and to native activities to fix several issues.

The prior change to make IME input event delegation use
InputChannels failed to take into account that InputMethodManager
is a singleton attached to the main looper whereas UI may be
attached to any looper. Consequently interactions with the
InputChannel might occur on the wrong thread. Fixed this
problem by checking the current thread and posting input
events or callbacks to the correct looper when necessary.

NativeActivity has also been broken for a while because the
default event handling logic for joysticks and touch navigation
was unable to dispatch events back into the native activity.
In particular, this meant that DPad synthesis from touch navigation
would not work in any native activity. The plan is to fix
this problem by passing all events through ViewRootImpl as usual
then forwarding them to native activity as needed. This should
greatly simplify IME pre-dispatch and system key handling
and make everything more robust overall.

Fixed issues related to when input events are synthesized.
In particular, added a more robust mechanism to ensure that
synthetic events are canceled appropriately when we discover
that events are no longer being resynthesized (because the
application or IME is handling or dropping them).

The new design is structured as a pipeline with a chain of
responsibility consisting of InputStage objects. Each InputStage
is responsible for some part of handling each input event
such as dispatching to the view hierarchy or to the IME.
As a stage processes an input event, it has the option of
finishing the event, forwarding the event to the next stage
or handling the event asynchronously. Some queueing logic
takes care to ensure that events are forwarded downstream in
the correct order even if they are handled out of order
by a given stage.

Cleaned up the InputMethodManager singleton initialization logic
to make it clearer that it must be attached to the main looper.
We don't actually need to pass this looper around.

Deleted the LatencyTimer class since no one uses it and we have
better ways of measuring latency these days using systrace.

Added a hidden helper to Looper to determine whether the current
thread is the indicated Looper thread.

Note: NativeActivity's IME dispatch is broken by this patch.
This will be fixed later in another patch.

Bug: 8473020
Change-Id: Iac2a1277545195a7a0137bbbdf04514c29165c60
atencyTimer.java
ooper.java
ae9d6aa6d96ad382bba27e8104ea99ad06d81008 05-Apr-2013 Jeff Brown <jeffbrown@google.com> am 4c2a7b23: am 4a706bc6: Merge "Correctly manage the lifecycle of IME InputChannels." into jb-mr2-dev

* commit '4c2a7b23f5f012cf00357035f840a32d4da20eb5':
Correctly manage the lifecycle of IME InputChannels.
4a706bc6f1dcf4483b282d5758e22482cf02506f 05-Apr-2013 Jeff Brown <jeffbrown@google.com> Merge "Correctly manage the lifecycle of IME InputChannels." into jb-mr2-dev
1951ce86c21445ac191e4d2d95233f4f5c096b56 05-Apr-2013 Jeff Brown <jeffbrown@google.com> Correctly manage the lifecycle of IME InputChannels.

InputChannels are normally duplicated when sent to a remote process
over Binder but this does not happen if the recipient is running within
the system server process. This causes problems for KeyGuard because the
InputMethodManagerService may accidentally dispose the channel
that KeyGuard is using.

Fixed the lifecycle of InputChannels that are managed by the IME
framework. We now return a duplicate of the channel to the application
and then take care to dispose of the duplicate when necessary.
In particular, InputBindResult disposes its InputChannel automatically
when returned through Binder (using PARCELABLE_WRITE_RETURN_VALUE).

Bug: 8493879
Change-Id: I08ec3d13268c76f3b56706b4523508bcefa3be79
inder.java
e4d9a01bfc7451afff1ed399a5801c7aa2af2831 29-Mar-2013 Dan Morrill <morrildl@google.com> Phase 1 of refactoring SystemServer.

SystemServer is currently a monolithic class that brings up key system
services. This change is the first phase of refactoring it to be more
configurable. Specifically, it adds a set of on/off switches used to control
startup of individual services. Future plans include finer grained controls
and a more explicit and consistent startup sequence for these services.

Change-Id: I7299f5ce7d7b74a34eb56dffb788366fbc058532
nvironment.java
552d7c1099510e21855dd36f7f8e5a8f59e1074a 04-Apr-2013 Ying Wang <wangying@google.com> am 6690203c: am 0fa30372: Fix doc build.

* commit '6690203c7ff16ce4fcf3cc9a9d305d7acbcc4428':
Fix doc build.
0fa30372c7768692f9deef3e33655382e8a683fd 04-Apr-2013 Ying Wang <wangying@google.com> Fix doc build.

Change-Id: I954a45866d968b0571040ba99cc93b818d02aeb5
trictMode.java
5c1994eeff841ab6c44113d7138bc4e34e6694dd 04-Apr-2013 Jeff Sharkey <jsharkey@android.com> am 04e740a6: am 0f8e8b03: Merge "Warn when exposing file:// Uris beyond a process." into jb-mr2-dev

* commit '04e740a65e2399c4a4b211408bd84f2d545d9f4a':
Warn when exposing file:// Uris beyond a process.
a14acd20b8d563319ea1a5974dca0e9a29f0aaef 03-Apr-2013 Jeff Sharkey <jsharkey@android.com> Warn when exposing file:// Uris beyond a process.

Check for file:// Uris inside Intents, ClipData, Notifications and
RemoteViews when StrictMode option is enabled.

Also introduces Intent.prepareToLeaveProcess() to uniformly handle
Intents about to leave an app process.

Bug: 8529070
Change-Id: I8efb43877cbc5f21eb029fc6492b3ee1415059ef
trictMode.java
76703d8fe5f2a374201ec668ddf4c2289509517d 02-Apr-2013 Jeff Brown <jeffbrown@google.com> am 21b41af7: am d42ae93c: Merge "Make MessageQueue and Looper final." into jb-mr2-dev

* commit '21b41af7ea418be8e0ec94800bb2d0cc12c4965e':
Make MessageQueue and Looper final.
67fc67cf3e1dba17b0eae4f3923f3e93a78c7575 01-Apr-2013 Jeff Brown <jeffbrown@google.com> Make MessageQueue and Looper final.

Applications already cannot subclass these classes because
their constructors are not visible.

Change-Id: Id979d86dd05f7bcc888fe4ea499ab9b95d3d5dde
ooper.java
essageQueue.java
bb49e8573e22cb6325dc31bf007a500fb7c136eb 31-Mar-2013 Amith Yamasani <yamasani@google.com> resolved conflicts for merge of 15935aad to master

Change-Id: I9664186a62cf7b11844c6a14967f5b8c2b67c289
27db46850b708070452c0ce49daf5f79503fbde6 31-Mar-2013 Amith Yamasani <yamasani@google.com> Block access to accounts for limited users.

Make sure that apps that have access to restricted accounts can see them.
If they don't have access, they shouldn't be able to add a new account either.
Show an error message in the account picker if the user/app is not authorized.

Change-Id: I117c0b14d7d06c5ac4e66506df156b174567f5f3
serManager.java
c78453f12bfdc34cd30da24c0aefab5f7ad71cbb 28-Mar-2013 Maggie Benthall <mbenthall@google.com> am b3c060a1: am c92342bb: Merge "Add user restrictions for bluetooth, sideloading, usb file transfer" into jb-mr2-dev

* commit 'b3c060a166e9d5a141a6500e4c443a20d4e002b6':
Add user restrictions for bluetooth, sideloading, usb file transfer
c92342bb01f67597c45f97bbd0debf8221f0ad0d 28-Mar-2013 Maggie Benthall <mbenthall@google.com> Merge "Add user restrictions for bluetooth, sideloading, usb file transfer" into jb-mr2-dev
62a2cb09026bf7b0658c1e41c905f38649a3c77c 28-Mar-2013 Robert Greenwalt <rgreenwalt@google.com> am 766991ae: am 5acc8632: Merge "Add BT - DataTracker connection" into jb-mr2-dev

* commit '766991ae212f50695754c3ded5d9815fb0d99b24':
Add BT - DataTracker connection
665e1aed5e99af1e66af56c0d73e32fd86f57273 22-Aug-2012 Robert Greenwalt <rgreenwalt@google.com> Add BT - DataTracker connection

Allows the external BT stack the means to communicate with
ConnectivityService during reverse tethering.

bug:8445208
Change-Id: Ice7dfb0b50c9481d359aed14a51372878185171c
NetworkManagementService.aidl
a12fccf57d5ec289793699d9b22ff45daccd3933 14-Mar-2013 Maggie Benthall <mbenthall@google.com> Add user restrictions for bluetooth, sideloading, usb file transfer

Created constants for these in UserManager and current.txt. Also created
an accessor for individual user restrictions that takes the restriction key
(removing individual methods for particular restrictions).

Change-Id: Ibb5517cbcdffadd3925f52cbe67d7d525813faa9
serManager.java
ee6a2a91f22fa4e4109397e071a7014e4c096454 27-Mar-2013 Amith Yamasani <yamasani@google.com> am 88139986: am e450c3cd: Merge "Fix docs build." into jb-mr2-dev

* commit '88139986284f30ae97727495b0e545ad41e60660':
Fix docs build.
ca050adc13b48c58c978255dd5ce6d9654549cb0 27-Mar-2013 Amith Yamasani <yamasani@google.com> Fix docs build.

Change-Id: I959db164f0ed7badfcdf921ffa1bfff60b4fb952
serManager.java
a1535223fe949742f995aa296a6bf49e514e1cdf 26-Mar-2013 Amith Yamasani <yamasani@google.com> am f3dc9f0a: am df5e9fe1: Merge "Device Owner, a special kind of device admin" into jb-mr2-dev

* commit 'f3dc9f0aa91d2785b715f251b144487ec1b57ecc':
Device Owner, a special kind of device admin
df5e9fe1819099097901641b1267374ca0bbc319 26-Mar-2013 Amith Yamasani <yamasani@google.com> Merge "Device Owner, a special kind of device admin" into jb-mr2-dev
71e6c697e54a43d357cc25d87a446d140f17396a 25-Mar-2013 Amith Yamasani <yamasani@google.com> Device Owner, a special kind of device admin

A Device Owner cannot be uninstalled and is available to all users. It must
be registered before the device_provisioned flag is set.

Device admins can be disabled until used, but visible to device policy
manager, so that users wont be bothered with update requests.

Opened up a few related APIs for use by a system-installed Device Owner.

Change-Id: I847b5fe68c0f724863f778a67602b5bddc79d8e5
UserManager.aidl
serManager.java
0d0002b5bfb08c6272ee4c6a527968ef4fed01ec 26-Mar-2013 Michael Wright <michaelwr@google.com> am 1426be82: am c3d8790d: Merge "Remove misleading documentation from SystemClock" into jb-mr2-dev

* commit '1426be82b4440ce87ac7654cfd889ee7e174fb8f':
Remove misleading documentation from SystemClock
c8ee44d4b68a524f324c0d02cafe6bdfd94e1152 23-Mar-2013 Michael Wright <michaelwr@google.com> Remove misleading documentation from SystemClock

Change-Id: Ic97f911dca5c2b8911a4b2c670c4c79578f2cec0
ystemClock.java
e32011e8c06b994d840e6d568b5ffa8915320909 21-Mar-2013 Amith Yamasani <yamasani@google.com> resolved conflicts for merge of 99755cd3 to master

Change-Id: I752c387c013c3deaad836df9b0c2294e7149a32a
df2e92a535e19c00edd37318d974dab992ccc2c1 02-Mar-2013 Amith Yamasani <yamasani@google.com> Application restrictions API

Adds the ability for apps to export some restrictions. The restrictions
are presented in Settings based on the restriction type. The user's
selections are stored by UserManagerService and provided to the
target user's application as a list of RestrictionEntry objects which
contain the key, value(s).

Also introduce a manifest entry for system apps to request that the
app be automatically installed in all users, so that they cannot be
deselected by the owner user.

Shared account filtering for non-whitelisted apps.

Change-Id: I15b741e3c0f3448883cb364c130783f1f6ea7ce6
UserManager.aidl
serManager.java
e7a4e42d3d29f891d556c903e8a6358f5fbc7c1b 14-Mar-2013 Jeff Sharkey <jsharkey@android.com> am 49ca328f: am debbeec5: Merge "Move deleteOlderFiles() to framework, tests." into jb-mr2-dev

* commit '49ca328fc0c3bdb090b323e5bae23bfb696e6099':
Move deleteOlderFiles() to framework, tests.
d9526907d1a51ef0b35bfbbeee43fa209d8b5bbf 14-Mar-2013 Jeff Sharkey <jsharkey@android.com> Move deleteOlderFiles() to framework, tests.

Supports both age and count based constraints. Added light docs and
tests to verify behavior.

Bug: 8387555
Change-Id: If4d0dac8bc54ce705c2a339bc09a60ea748728b8
ileUtils.java
547f1c42cd71eaccf97d48b1abbc1834e6a8311f 07-Mar-2013 Scott Kennedy <skennedy@google.com> am 16c0cf0d: am b1b6efd0: Merge "Specify the size of the Map in the constructor" into jb-mr2-dev

* commit '16c0cf0deb94cb3cfb19a7c1e62fbb80ca1ee7d0':
Specify the size of the Map in the constructor
8ad7fbae871c9e08b217554b0b5757365ff487c1 06-Mar-2013 Scott Kennedy <skennedy@google.com> Specify the size of the Map in the constructor

Change-Id: Ie3325f387cec72216cb70c1b764370e6f3dd1a3e
undle.java
5d2bfa1604419fbe7ce2a3709dce82a60d429b84 05-Mar-2013 Dianne Hackborn <hackbod@google.com> Welcome, Key Lime Pie.

Change-Id: I00ebaffda975b368aa5f727963899e80a233c744
uild.java
2e0da1ea5f2493d968b4b83d4a0dd54e2cc63849 02-Mar-2013 Jeff Sharkey <jsharkey@android.com> Merge "Improve performance of storage measurement." into jb-mr2-dev
63d0a067997cecf9c6e97a17852f9b657bbba48e 02-Mar-2013 Jeff Sharkey <jsharkey@android.com> Improve performance of storage measurement.

When calculating directory sizes of data living on emulated external
storage, translate the path to use the internal backing data, which
avoids going through the emulation layer. It carefully retreats to
the original path when it runs into trouble.

Testing with a hierarchy of 10 directories deep and 2 directories
and 10 files wide at each level, this change improves performance
from 5900ms before to 250ms after; over 20 times faster (!).

Bug: 8172425
Change-Id: Ia7365416f091e102bf7345a49f7d7209a22580a9
nvironment.java
79751848d1c3a5139eb5ccd6ddecaf84c2a09783 28-Feb-2013 Lorenzo Colitti <lorenzo@google.com> Expose clatd commands to NetworkManagementService.

For now, we only support running one clat at a time. This is
enforced by the netd ClatdController code.

Bug: 8276725
Change-Id: I8a50305f9182f4da0f80716081211625a0202583
NetworkManagementService.aidl
7e112d51c4d203e4e3b2b875dc7c8457e1d9e056 27-Feb-2013 Ian Rogers <irogers@google.com> am 14d0ab55: am de3c20bc: Merge "Track stack memory in MemoryInfo."

* commit '14d0ab55e983d314128bb7b3293023f4a237d991':
Track stack memory in MemoryInfo.
7c9f30bfb361ccb864e6d130e0f4f2af53fc1c32 27-Feb-2013 Ian Rogers <irogers@google.com> Track stack memory in MemoryInfo.

In /proc/pid/maps the main stack is identified as "[stack]". In Linux 3.4
thread stacks are identified as "[stack:<tid>]" where <tid> is the thread ID of
the thread using that stack. Add support in MemInfo's otherStats to track
memory being used by the stack.

Add sanity check on the length of the otherStats array.
Add detail messages to two null pointer exceptions.

Bug: 8265251

Change-Id: I2b228b147da9bdc5c7a4d825dfc628fcc7923927
ebug.java
0493d7997e22376524d707e407662d0f98f40c47 27-Feb-2013 Ian Rogers <irogers@google.com> am 75dcb333: am 545464df: Merge "Deprecate and document memory allocation counting."

* commit '75dcb3338d85d12991249598e1ed407c8a6be1eb':
Deprecate and document memory allocation counting.
fe067a4cc586631881f51d0fd48100dd0f7cadf2 23-Feb-2013 Ian Rogers <irogers@google.com> Deprecate and document memory allocation counting.

Bug: 8241521
Change-Id: I174c4024600c5b78e74030ecc99e784a98295f09
ebug.java
4b141acde00840db4cd850e5cddbe2cf849830aa 26-Feb-2013 Dianne Hackborn <hackbod@google.com> Merge "Add Bundle APIs for putting/getting Binder objects." into jb-mr2-dev
3cbdddbd5ce6f52688d88f120c1e5214ed6afbda 26-Feb-2013 Dianne Hackborn <hackbod@google.com> Add Bundle APIs for putting/getting Binder objects.

This is really useful for certain cases, you just need
to be thoughtful and careful about what you are doing.

Change-Id: I314592480e447a6d8346f5089fade35da50b3510
undle.java
035045f8bbd54933b50026c7578d814bf3c5fefc 26-Feb-2013 Dianne Hackborn <hackbod@google.com> Merge "Add version code constant for JB MR2." into jb-mr2-dev
45e9ede55f3c5049fed1fc5002bd5084d1cd7eac 26-Feb-2013 Dianne Hackborn <hackbod@google.com> Add version code constant for JB MR2.

Change-Id: I60fc76bbeb3c5e85d716179e9e3ea5758bafaf69
uild.java
6794458f8626c3be27eac3db3a5c89d94f132675 22-Feb-2013 Maggie Benthall <mbenthall@google.com> Add location sharing toggle user restriction.

And add support for respecting it.

Change-Id: Ia5cf9134c5f5741c3f55afadbe54f862da7bfe5b
serManager.java
be72215c39916af9ae42332260c04b696bc73d7f 16-Feb-2013 Jeff Sharkey <jsharkey@android.com> Better API for low disk space warnings.

Provides uniform interface to ask about low disk thresholds; can
be mocked by other tests. Opens door to adjust thresholds based on
disk type.

Switch monitor service to using new API, and use filesystem paths
from Environment instead of hard-coding.

Change-Id: Ifdb536e36a453f1b67bc65849037ec3cc0232cf2
torage/StorageManager.java
b65ce57675ecd983c85dd4d755fe0167f33ecc87 14-Feb-2013 Jeff Sharkey <jsharkey@android.com> Expose longer statfs values, add derived values.

Since fsblkcnt_t is 8 bytes, provide methods to access larger value
instead of casting to int. This would start being an issue around
8TB filesystems.

Also add convenience methods to calculate values in bytes.

Change-Id: Ib924425d8d6d82785466f611ca71800cc1e952b6
tatFs.java
636c61ed41f08b4a8de11ab9146903a8125a4aa0 12-Feb-2013 Amith Yamasani <yamasani@google.com> Merge "Starting point for User Restrictions API"
e4cf73437a18c1444055f88a1fcc0d146ec23ac5 17-Dec-2012 Amith Yamasani <yamasani@google.com> Starting point for User Restrictions API

Restrictions saved as key/value pairs, mostly booleans right now
but might be expanded to other types later.

Save and restore restrictions in the user manager service.
Enforce some of the restrictions at the framework level. Some
are enforced (also) at the app level, such as in Settings.

Change-Id: Id11ffe129cb6a177e094edf79635727388c26f40
UserManager.aidl
serManager.java
034170cd4ca17bdda2d0baae5f438f2786805147 07-Feb-2013 Robert Greenwalt <rgreenwalt@google.com> Merge "Second pass tying into dns cache per interface"
8b47b3601f82f299bb8c135af0639b72b67230e6 23-Aug-2011 Mattias Falk <mattias.falk@sonyericsson.com> Second pass tying into dns cache per interface

Set dns servers for secondary nets and attach the
processes (pids) that are using the secondary nets
to the secondary nets associated dns cache.

bug:5465296
Change-Id: I1eaf92d5c6b81d287e9fb2763b3d972d9de34395
NetworkManagementService.aidl
33c239f74816449979456e8535b8e058057373d7 06-Feb-2013 Mathias Agopian <mathias@google.com> Merge "allow the framework to access a Sensor's handle"
7f84c065fa1615ee9afb5c229ec9b9319ab88920 05-Feb-2013 Mathias Agopian <mathias@google.com> allow the framework to access a Sensor's handle

this is needed in another CL to fix an issue where
sensors power usage is always reported as 0.

Change-Id: Ie496b98bf4b7e69911bdc99bee14cc924e1d71e8
atteryStats.java
f265ea9d8307282ff1da3915978625a94fc2859e 01-Feb-2013 Dianne Hackborn <hackbod@google.com> App ops: vibration, neighboring cells, dialing, etc.

Improve handling of vibration op, so that apps are
better blamed (there is now a hidden vibrator API that
supplies the app to blame, and the system now uses this
when vibrating on behalf of an app).

Add operation for retrieving neighboring cell information.

Add a new op for calling a phone number. This required
plumbing information about the launching package name through
the activity manager, which required changing the internal
startActivity class, which required hitting a ton of code that
uses those internal APIs.

Change-Id: I3f8015634fdb296558f07fe654fb8d53e5c94d07
VibratorService.aidl
ullVibrator.java
ystemVibrator.java
ibrator.java
5988335aacdbea5b60b597fa2c52583bc655e30f 29-Jan-2013 Jeff Brown <jeffbrown@google.com> Merge "Optimize Looper JNI code."
864693461b6223a995038847591b17abe2de647e 28-Jan-2013 Jeff Brown <jeffbrown@google.com> Optimize Looper JNI code.

Use static native methods.

Release the native looper objects as soon as the Looper quits
instead of waiting until the GC finalizer to take care of it.

Change-Id: I02783e48782a8f972ec2138862f700ade33d8e78
essageQueue.java
5e45ee6752528791deb66b83d76250685de15d47 25-Jan-2013 Dianne Hackborn <hackbod@google.com> App ops: you can now turn off operations.

Also add new ops for calendar and wi-fi scans, finish
implementing rejection of content provider calls, fix
issues with rejecting location calls, fix bug in the
new pm call to retrieve apps with permissions.

Change-Id: I29d9f8600bfbbf6561abf6d491907e2bbf6af417
orkSource.java
20da885caa27ee8148c61be0ff56451ad6bf8146 19-Jan-2013 Robert Greenwalt <rgreenwalt@google.com> Merge "Revert "Second pass tying into dns cache per interface""
63837f455d08605173985042a89d5f9ba06883d1 19-Jan-2013 Robert Greenwalt <rgreenwalt@google.com> Revert "Second pass tying into dns cache per interface"

This reverts commit f60f94a89e49c125f4aff6496710a0fb66579545

Change-Id: If52dffd5100a6b03275da0eabfa05e24c5ecada9
NetworkManagementService.aidl
d8e1dbb6bc1fbaf4f2e38c3ba92ced94270deaac 18-Jan-2013 Dianne Hackborn <hackbod@google.com> Rework ParceledListSlice to be much easier to use.

Take advantage of this to return better information about
packages filtered by permissions -- include the permissions
they have in the requested array.

Also fix issue #8026793 (Contact picture shows default pic
while searching for a contact in qsb) by using the base
package name of the Context when reporting the app name
of an operation. Otherwise you could make a resource-only
context for another application and do calls through that
and get reported as the wrong app.

Change-Id: I5e0488bf773acea5a3d22f245641828e1a106fb8
arcel.java
ystemVibrator.java
9e57c414f39e1a31349bc215635fdcfaf1902cee 17-Jan-2013 Jeff Sharkey <jsharkey@android.com> Add method to get process group.

Change-Id: Ia62223228a54a6a4e3cdfc5c2e8c73ee194e77ef
rocess.java
0f8d155363c361199a9d9aa5dcdbc4088990f893 17-Jan-2013 Robert Greenwalt <rgreenwalt@google.com> Merge "Second pass tying into dns cache per interface"
f849124b6bc769bdaf98909279124ff9716c9107 16-Jan-2013 Sasha Levitskiy <sanek@google.com> Merge "Removed Throttle Manager as obsolete"
ca6486e7f579fa885b6213513f26ce2ca49f873b 15-Jan-2013 Sasha Levitskiy <sanek@google.com> Removed Throttle Manager as obsolete

Change-Id: I63e8514f34c880d0badaab33a347f54a80c84da6
NetworkManagementService.aidl
0d31c74b2eff3ce37133a2fe9fb57db7d4d84a91 14-Jan-2013 Dianne Hackborn <hackbod@google.com> Merge "WorkSource can now track package names."
369da18ffb8686f66bcbe081419bd4b1aa31442c 12-Jan-2013 Irfan Sheriff <isheriff@google.com> Merge "Handle missing static for CREATOR"
002a54e2291eeb3a3fd0b6b3f9dbc96a7c805062 11-Jan-2013 Dianne Hackborn <hackbod@google.com> WorkSource can now track package names.

Use this to track the package name of applications
accessing GPS.

And now the app ops service can enforce that callers
must provide valid package names.

Change-Id: I842a0abe236ea85f77926d708547f0f95c24bd49
orkSource.java
f60f94a89e49c125f4aff6496710a0fb66579545 23-Aug-2011 Mattias Falk <mattias.falk@sonyericsson.com> Second pass tying into dns cache per interface

Set dns servers for secondary nets and attach the
processes (pids) that are using the secondary nets
to the secondary nets associated dns cache.

Change-Id: Id865c2c3fdc0ec1c3e30c134e9ea4109f4f2fbeb
bug:5465296
NetworkManagementService.aidl
97a72f6693a7bee3255b2307c6bb18f66669a36c 11-Jan-2013 Irfan Sheriff <isheriff@google.com> Handle missing static for CREATOR

I made a mistake of missing out on static for CREATOR on a Parcelable
and it threw a NPE which was not obvious. We do not get NoSuchFieldException
when CREATOR exists but is not static.

Change-Id: Ib06f60797c00722075255d45e8189f8cebef9ae2
arcel.java
6f028480faf9f87c2808c3b82797b553eb6ac257 10-Jan-2013 Scott Main <smain@google.com> am 8a05d13e: am 5b56d432: am 9107fa5d: am 66adf0d0: am 70af3cdb: Merge "docs: resolve bugs from external tracker" into jb-mr1-dev

* commit '8a05d13ef656b0147d85e1826b70a55f6b32e1e3':
docs: resolve bugs from external tracker
ee49a3a007b9eb63bcb27eac492060b50ff75ce7 10-Jan-2013 Nick Kralevich <nnk@google.com> Merge "Add K api version."
6b0fb368707a2d47dd3fbeaf01c214de5227baa0 10-Jan-2013 Nick Kralevich <nnk@google.com> Merge "Revert "App home directories are now 0700 for targetSdkVersion > 17""
a985c3bb145c75176f105e1188cd42c8373d503d 10-Jan-2013 Nick Kralevich <nnk@google.com> Add K api version.

Change-Id: I2b74e06f8bda8b23c5cc4280af4b18a5ad66a6c2
uild.java
1506921e8e7897be8297365dcaf15f4c6d6eb472 10-Jan-2013 Nick Kralevich <nnk@google.com> Revert "App home directories are now 0700 for targetSdkVersion > 17"

This reverts commit 92091fa9636403728fe94cc83400495a8612c2d3.

Bug: 7966399
Bug: 7208882
uild.java
a06de0f29b58df9246779cc4bfd8f06f7205ddb6 12-Dec-2012 Dianne Hackborn <hackbod@google.com> New "app ops" service.

Initial implementation, tracking use of the vibrator, GPS,
and location reports.

Also includes an update to battery stats to also keep track of
vibrator usage (since I had to be in the vibrator code anyway
to instrument it).

The service itself is only half-done. Currently no API to
retrieve the data (which once there will allow us to show you
which apps are currently causing the GPS to run and who has
recently accessed your location), it doesn't persist its data
like it should, and no way to tell it to reject app requests
for various operations.

But hey, it's a start!

Change-Id: I05b8d76cc4a4f7f37bc758c1701f51f9e0550e15
atteryStats.java
VibratorService.aidl
ystemVibrator.java
serHandle.java
8a05d13ef656b0147d85e1826b70a55f6b32e1e3 08-Jan-2013 Scott Main <smain@google.com> am 5b56d432: am 9107fa5d: am 66adf0d0: am 70af3cdb: Merge "docs: resolve bugs from external tracker" into jb-mr1-dev

* commit '5b56d43237d959403bb8a32de25376deee2dab22':
docs: resolve bugs from external tracker
66adf0d04d92257e60a583617fb97f136fefd192 08-Jan-2013 Scott Main <smain@google.com> am 70af3cdb: Merge "docs: resolve bugs from external tracker" into jb-mr1-dev

* commit '70af3cdb90bafc081ffa693a350b95ced48b6cfd':
docs: resolve bugs from external tracker
6aad995042599dd0f5def79fea85cee90439c9a8 08-Jan-2013 Scott Main <smain@google.com> docs: resolve bugs from external tracker

Change-Id: I680970ec63701197103f6c5ab55c25c736aa0519
ileObserver.java
116751d84f6d276f2cac7074abd9f8ba23742958 21-Dec-2012 Christopher Tate <ctate@google.com> Shrink Bundle.getString(key, default) and getCharSequence(key, default)

They previously duplicated the full logic of getString(key) and
getCharSequence(key) independently. Now they both use the no-default
version internally, resulting both in a single point of implementation
for test & isolation purposes and in a (small) decrease in code size.

Change-Id: If1b1e1fa4a549a0ec4cf221e54998f4fd438f3a2
undle.java
92091fa9636403728fe94cc83400495a8612c2d3 13-Dec-2012 Nick Kralevich <nnk@google.com> App home directories are now 0700 for targetSdkVersion > 17

Pass targetSdkVersion to installd so it knows the appropriate
permissions to apply to the app's home directory.

Bug: 7208882
Change-Id: Ia62ed36b32ee5af01077fb10a586024411be8ed4
uild.java
abe998c5e0550f37d27f9c03dbaf56cc07a03dcb 13-Dec-2012 Nick Kralevich <nnk@google.com> Remove dead code.

Android no longer supports a security manager.
System.getSecurityManager() always returns null.

Change-Id: Id44ae8e100da901f2e3054dab905376423a8ff5b
arcelFileDescriptor.java
7a96c39c510923ef73bbb06ab20109f0168b8eb1 15-Nov-2012 Jeff Sharkey <jsharkey@android.com> Move lingering services to services.jar.

This helps reduce the pressure on framework.jar, and makes it clear
that it should only be used by the system_server.

Bug: 7333397
Change-Id: I0858904239535380fbf30562b793e277d8c3f054
chedulingPolicyService.java
a3b7e450bcc8f7a1533eeac97eb2bf8343b10ec5 01-Dec-2012 Nicolas Klein <foxykeep@google.com> am ca4199ef: am 04f3b12f: am 5ea914f2: am 759c1005: Merge "Fix some typos and missing @param in android.os.Bundle" into jb-mr1-dev

* commit 'ca4199ef8b70f73f914b72ec69fc596c2ca600e2':
Fix some typos and missing @param in android.os.Bundle
ca4199ef8b70f73f914b72ec69fc596c2ca600e2 01-Dec-2012 Nicolas Klein <foxykeep@google.com> am 04f3b12f: am 5ea914f2: am 759c1005: Merge "Fix some typos and missing @param in android.os.Bundle" into jb-mr1-dev

* commit '04f3b12f1f82784d0b1b8c0812a3d0017b17b69e':
Fix some typos and missing @param in android.os.Bundle
5ea914f21b397ae57195decd0b5e37544d85db8c 30-Nov-2012 Nicolas Klein <foxykeep@google.com> am 759c1005: Merge "Fix some typos and missing @param in android.os.Bundle" into jb-mr1-dev

* commit '759c1005b3f96ea8bbf59192d206aacece315655':
Fix some typos and missing @param in android.os.Bundle
9f6cb87522d395eacd87dff1da525f4dc9809d27 30-Nov-2012 Nicolas Klein <foxykeep@google.com> Fix some typos and missing @param in android.os.Bundle

getChar(String) and getChar(String, char) had wrong description in their
javadoc.
Also most of the get methods with default value were missing the corresponding
@param tag for the default value parameter.

Change-Id: I0f38b3caacf9cabd70e0c1ada36af3662f5566d0
undle.java
a0e1f91b989f34d5c2ca695ec5de208f9fe2b1e2 29-Nov-2012 Elliott Hughes <enh@google.com> am 565de5f6: am 820b3e29: Merge "Make transactGetSockaddr locale safe"

* commit '565de5f6cb75631f6b23011fcac4fcf8be8d5c5e':
Make transactGetSockaddr locale safe
565de5f6cb75631f6b23011fcac4fcf8be8d5c5e 29-Nov-2012 Elliott Hughes <enh@google.com> am 820b3e29: Merge "Make transactGetSockaddr locale safe"

* commit '820b3e29caab93de9535f18d98c6fd264c7fa983':
Make transactGetSockaddr locale safe
3251d363139cbda760af27755f5685a14afe6655 29-Nov-2012 Alex Ray <aray@google.com> Merge "core: Update Java wrappers for atrace."
8a6787b1c7f5192388436373465c35655cc8ef7c 15-Nov-2012 Alex Ray <aray@google.com> core: Update Java wrappers for atrace.

Atrace functionality moved to cutils. Add ATRACE_TAG_HAL.

Change-Id: I80e1c9438bfd2436559b64e94e4009cb9c5dbc09
race.java
816a5d9c27890fab17e2884fa3a67e4154ce8196 28-Nov-2012 Dianne Hackborn <hackbod@google.com> am 360acd03: am 78551bc7: am ba4ac518: Merge "Improve debugging for issue #7586414: AlarmManager wakelocks held" into jb-mr1.1-dev

* commit '360acd03bfe0d597ee845d2392d715633a89e12b':
Improve debugging for issue #7586414: AlarmManager wakelocks held
360acd03bfe0d597ee845d2392d715633a89e12b 27-Nov-2012 Dianne Hackborn <hackbod@google.com> am 78551bc7: am ba4ac518: Merge "Improve debugging for issue #7586414: AlarmManager wakelocks held" into jb-mr1.1-dev

* commit '78551bc7d5541c86503b32db0e3e2564218bf179':
Improve debugging for issue #7586414: AlarmManager wakelocks held
8103890a59de6ed4abaedaad80e66666ea59f9b5 27-Nov-2012 Dianne Hackborn <hackbod@google.com> Improve debugging for issue #7586414: AlarmManager wakelocks held

In alarm manager, print a summary of the top 10 alarms by time
being executed. Keep track of execution time (and wake count) of
each type of alarm for each application so this can be printed in
the summary (and used to compute the top 10 alarms). Rework how
the alarm summary stats are tracked so that we don't need to hold
on to the full Intent for each stat and can get the Intent information
at the time the alarm is sent rather than waiting for whatever Intent
comes back in the result.

Also in the battery stats: sort the kernel wake locks by time, add
a new section showing all partial wake locks across all applications
sorted by time.

Finally a new LocalLog class that is used by AlarmManager to log
important warning messages, so these can also be later found in
its dumpsys output.

Change-Id: Icc07810053e60fb623a49937e696819cb8352b06
atteryStats.java
f4f35f8e8d16c57a76befdd66dd39b894ac93548 26-Nov-2012 Craig Mautner <cmautner@google.com> am 1ee927f4: am 8de91ce1: am 7f2a9896: Merge "Ignore invalid combination of PowerManager flags." into jb-mr1.1-dev

* commit '1ee927f42bea9817fc16d5ee6532ce46e099f4b4':
Ignore invalid combination of PowerManager flags.
1ee927f42bea9817fc16d5ee6532ce46e099f4b4 26-Nov-2012 Craig Mautner <cmautner@google.com> am 8de91ce1: am 7f2a9896: Merge "Ignore invalid combination of PowerManager flags." into jb-mr1.1-dev

* commit '8de91ce1e037408064f453b26f1fe725cd6377e3':
Ignore invalid combination of PowerManager flags.
636c0ff499e01b3dfe90264fc26f3df5ca6346cf 28-Aug-2012 Johan Redestig <johan.redestig@sonymobile.com> Make transactGetSockaddr locale safe

Explicitly use Locale.US transactGetSockaddr to avoid
unexpected results in some locales.

Change-Id: If8316e543e21e133dc0c821cc390a2b55fe6fcdf
ommonTimeUtils.java
6edb6db512198aa0eef66341d163926b3531bca3 21-Nov-2012 Craig Mautner <cmautner@google.com> Ignore invalid combination of PowerManager flags.

ACQUIRE_CAUSES_WAKEUP is supposed to be ignored if combined with
PARTIAL_WAKE_LOCK. Instead it was being carried out for any values
of the WakeLock level.

This change reverts behavior to closely match
previous releases of the framework by only honoring
ACQUIRE_CAUSES_WAKEUP for screen wake lock levels. The only
difference being that in previous releases ACQUIRE_ could have been
combined with PROXIMITY_SCREEN_OFF_WAKE_LOCK (it never was) and
now such a combination will ignore the ACQUIRE_ flag.

Bug 7532258 fixed.

Change-Id: I46e848d8fd1b57e54c63141bf3d4f353986b5bdf
owerManager.java
60bfacd8ef765f7f8ee43224a9d85960dea2b1c8 16-Nov-2012 Robert Greenwalt <rgreenwalt@google.com> Merge "Support for dns domain."
8058f621891b41c6864b6004c1c47647436a0ac1 09-Nov-2012 Robert Greenwalt <rgreenwalt@google.com> Support for dns domain.

bug:6799630
Change-Id: I10070eddb65b7b60f0bc2b3e1e320e1aa4ec6e98
NetworkManagementService.aidl
9634e970679c687572e2da84250adc8baf91a8c3 15-Nov-2012 Jeff Sharkey <jsharkey@android.com> am bfea4f04: am f5377a72: Merge "Useful annotations for code documentation." into jb-mr1.1-dev

* commit 'bfea4f04f226f1adf374412628d5945c380382a7':
Useful annotations for code documentation.
9077ca586e083fd0e2913c4232915416b3719e7d 15-Nov-2012 Jeff Sharkey <jsharkey@android.com> am dcb72dbb: am 445767c1: Merge "Watch for leaked ParcelFileDescriptors." into jb-mr1.1-dev

* commit 'dcb72dbb39227674e4a54167efabcdc8add4548a':
Watch for leaked ParcelFileDescriptors.
f5377a7242d71e221807150f0778a0521e1270b6 15-Nov-2012 Jeff Sharkey <jsharkey@android.com> Merge "Useful annotations for code documentation." into jb-mr1.1-dev
7407c948cbe7305c63ca33c471cf9e2a78674368 12-Nov-2012 Jeff Sharkey <jsharkey@android.com> Watch for leaked ParcelFileDescriptors.

Bug: 7426029
Change-Id: I18f7ac7d7b357b092bf9ec91ffb9fa3de5ca0271
arcelFileDescriptor.java
8b2c3a14603d163d7564e6f60286995079687690 12-Nov-2012 Jeff Sharkey <jsharkey@android.com> Useful annotations for code documentation.

Bug: 6537978
Change-Id: I806c3c09e3255f8789455f13bf37c1dde2a93f1f
nvironment.java
9d42794dde0dc6f83b6cf29ba66c3cf535ec9ae3 10-Nov-2012 Andy McFadden <fadden@android.com> am a7113f70: am 798de53c: Merge "Reduce emulator logspam" into jb-mr1.1-dev

* commit 'a7113f70c55517b5dbf3c54827c4559304faff4f':
Reduce emulator logspam
325be8a1ea03308de2ac35d613a2fe751bf16d94 30-Oct-2012 Andy McFadden <fadden@android.com> Reduce emulator logspam

The emulator doesn't support systrace, but we should point that out
at most once per process.

Bug 7436352

Change-Id: I30e0094dc3b24bc3ab6bc2799ce81ca0a6bb7d9d
race.java
58ed5d748c0b9b64845975ef5844ad313de7c3f6 07-Nov-2012 Kenny Root <kroot@google.com> am 768d9e1a: Merge "Correct executable bit for source files"

* commit '768d9e1a72ceee7d4a5f608776b87b62d6ce4a04':
Correct executable bit for source files
3a084af2e90849aaa8beb3a610189e3399c63ea0 07-Nov-2012 Kenny Root <kroot@google.com> Correct executable bit for source files

Many media files and source code files were marked as executable in Git.
Remove those.

Also a shell script and python script were not marked as executable.

Change-Id: Ieb51bafb46c895a21d2e83696f5a901ba752b2c5
HardwareService.aidl
VibratorService.aidl
okenWatcher.java
ef03a7f441cf0cbef5a5f7fafb58a7d5aea7ef52 30-Oct-2012 Dianne Hackborn <hackbod@google.com> Work on issue #7343200: Fails to show wallpaper in the background...

...for lockscreen sometimes and remains black / blank

Add some debug output to try to track down what is going on.

Change-Id: I98a96c5da9c04b988e948f6fc2766d927db49ebf
ebug.java
7b9a28892b1821a657bc9de5245528557d15a154 28-Oct-2012 Dirk Dougherty <ddougherty@google.com> Doc change: fix some table formatting.

Change-Id: I1533be695347697f5afd5c8d2719a0ff0b07abaa
owerManager.java
b26306ad5277097b3abb345112b24d9a142fb299 25-Oct-2012 Dianne Hackborn <hackbod@google.com> Fix issue #7408647: Add getUserCount() API

Change-Id: Ib4e8e2300757e0941fae8fbc46c4323f5e2d7d6b
serManager.java
d401a53c6472921ce7785059195a4f031feea7cc 24-Oct-2012 Andy McFadden <fadden@android.com> Merge "Improve systrace tag propagation" into jb-mr1-dev
b76a0c40d4b638064aab358a1370b47d010442d7 23-Oct-2012 Jeff Sharkey <jsharkey@android.com> Avoid mentioning hidden API in docs.

Change-Id: If83c179ec0d1b038e94a7fdca386c8ddf324e391
nvironment.java
d11ca4dd2ca90e1412b24f4526a56f7b963054a8 23-Oct-2012 Andy McFadden <fadden@android.com> Improve systrace tag propagation

The native side of the tracing code latches a copy of the tags from a
system property on first use. The Java-side tracing code latches a
copy of the native's copy during class init. The tracing code is
preloaded by the zygote, which means we get the flags during zygote
init and don't update them when we launch a new app.

This changes the Java sources to also defer initialization until
first use, so that newly-launched apps will use the current value
of the system property.

Bug 7323431

Change-Id: I7db048ec54345ae9565088a35c2e2b4c82f993fd
race.java
8c16579994a58c5763788b4f6be864e8a8219575 22-Oct-2012 Jeff Sharkey <jsharkey@android.com> Update docs for multi-user storage behavior.

Define external storage as being isolated for each user, with the
caveat for shared OBB files. Also mention external storage
permissions.

Bug: 7384941
Change-Id: Ib156b5874c5587749d7bc066791e9e88d931b174
nvironment.java
6f931ccd31bc0a8a402072c1d87e682c8a30a404 17-Oct-2012 Romain Guy <romainguy@google.com> Fix javadoc

Change-Id: Ie98dd00f41add876f3740f5d37781a10c6bd41fe
syncTask.java
90619816d99154d504a14774c6f2d5f4254ff780 13-Oct-2012 Guang Zhu <guangzhu@google.com> use BufferedInputStream in readTextFile

With FileInputStream, using assumption of bytes read (as
returned by read function) not matching buffer size as EOF is
not correct, we hit this when reading from /proc in some cases.

BufferedInputStream's behavior matches that assumption due to
its implementation.

Bug: 7342759
Change-Id: Ibb06dbe1fbe33f6f880524f7555ff5542889ea50
ileUtils.java
ff54920ed222a2bd6abe618743a5a3e9fe10bd4b 12-Oct-2012 Amith Yamasani <yamasani@google.com> Temporarily disable multiuser for specific builds

Enable switching through power menu for other builds

Change-Id: I0bd8450583e078b0a83fb639337427ab84db5ab8
serManager.java
9cf36b7a77bb8e821f9e593fdbb200f8a1742ff0 11-Oct-2012 Jeff Brown <jeffbrown@google.com> Don't process UEvents in Dalvik unless they match a pattern.

On some devices, vsync is delivered from the kernel to userspace
over a netlink socket via UEvent. The result is that a thread wakes
up, reads a message, creates a new String then searches it for matches
against a pattern on every single frame.

Reduce the overhead by performing the initial pattern matching in
native code.

Bug: 7326329
Change-Id: Icb22db1c38330694207bec1153840e0c06f502d6
EventObserver.java
a8a9bd65bf5865d83ef44f54552ca39522bfbcf0 10-Oct-2012 Dianne Hackborn <hackbod@google.com> Fix issue #7311376: Add API to allow apps to know if they are...

...running as the foreground user

Add UserManager.isUserRunning() which is the public version of the
existing method on ActivityManager.

Also add UserManager.isUserRunningOrStopping() since that seems like
it will be useful.

And fix the internal function that returns the array of currently
running users to not include stopped users.

Change-Id: I84672fa8748fc027fd402729586b5603f640e498
serManager.java
0cdbd0776d141011567e63158aa0a430362425ef 05-Oct-2012 Dianne Hackborn <hackbod@google.com> Merge "Fix issue #7290206: Need API to get/look up user serial number" into jb-mr1-dev
33f9cb8cf01e0a6288eb5b9ce724c56aa4e1e382 05-Oct-2012 Dianne Hackborn <hackbod@google.com> Fix issue #7290206: Need API to get/look up user serial number

Change-Id: I1713215e7c205b1b66c36488f89e3fbf4572cb97
serManager.java
93cbbb25a56356cd36523809783a277fe92e312e 04-Oct-2012 Jeff Brown <jeffbrown@google.com> Allow phone to go to sleep while in call.

Bug: 7279383
Change-Id: Ia05490218f40a1843507b95ff48fa07910e582d4
owerManager.java
c428aae6429c3fd5e2037c3793af399d9f6e23bf 04-Oct-2012 Dianne Hackborn <hackbod@google.com> Fix issue #7267494, issue #7212347

7267494 Calendar is not syncing
Check for whether a content provider is dead before returning
it. This is kind-of a band-aid, but probably the right thing
to do; I'm just not sure exactly the full details of why this
problem is happening. Hopefully this "fixes" it, though I don't
have a way to repro to tell.

7212347 System power off dialog is only visible to user 0
Make it visible. Also turn on some battery debugging stuff and
clean it up so we can just keep it.

Change-Id: I5add25bf2a763c8dfe1df23bc5c753a9ea5d157a
PowerManager.aidl
owerManager.java
a4d8204e3068b9d8d6908d4cf3440e81967867a3 03-Oct-2012 Jeff Brown <jeffbrown@google.com> Fix some synchronization issues in BatteryService.

Some of the BatteryService state was being locked
sometimes and it wasn't at all consistent.

Bug: 7158734
Change-Id: I46e75f66fde92c5a577a80a6bd99c9573066f3c1
atteryManager.java
db21284a7fb081065d26137891594bd8495b116f 01-Oct-2012 Jeff Brown <jeffbrown@google.com> Disable use of twilight mode for auto-brightness.

This adjustment is still experimental.

Bug: 7165399
Change-Id: I3fcf361933995d02a5329eeaec80155b39371ba3
owerManager.java
1e3b98d47df596d0c4eadbdf60143709f8465b28 01-Oct-2012 Jeff Brown <jeffbrown@google.com> New internal API to eliminate poke locks.

Added a new WindowManager.LayoutParams inputFeatures flag
to disable automatic user activity behavior when an input
event is sent to a window.

Added a new WindowManager.LayoutParams field userActivityTimeout.

Bug: 7165399
Change-Id: I204eafa37ef26aacc2c52a1ba1ecce1eebb0e0d9
PowerManager.aidl
ocalPowerManager.java
edce6a797878792de2b0bde4360f3171b9e9d9d2 01-Oct-2012 Jeff Brown <jeffbrown@google.com> Remove clearUserActivityTimeout().

This function is not implemented and not needed.

Bug: 7165399
Change-Id: Ib1c50fabad6292ccf670404ba70aeb1242c4614d
PowerManager.aidl
fc4947491f785600b8770112fa1d19ece06d42f9 28-Sep-2012 Dianne Hackborn <hackbod@google.com> Update APIs to JB MR1 level 17.

17 is current, resources are fixed, cleanup is done.

Change-Id: I6de446e209f59c5dd5fe1cde311776ab222817ea
uild.java
120664816a9bf325b618d8dd40febae2e3636ec8 29-Sep-2012 Jeff Brown <jeffbrown@google.com> Get rid of preventScreenOn().

Bug: 7165399
Change-Id: I1968265ecd74fff4d85efd2ca03b1983425ea518
PowerManager.aidl
eed8f06f7f5d8f934ea99f16ef987a3ae1bd99b2 27-Sep-2012 Philip Milne <pmilne@google.com> Merge "Fix for bug: #7173350. elapsedRealtimeNano() -> elapsedRealtimeNanos()" into jb-mr1-dev
62c82e4d92cc0b856059f905d81885f7808a0e7d 26-Sep-2012 Jeff Brown <jeffbrown@google.com> Make DreamManagerService more robust.

Clearly isolated the DreamManagerService and DreamController
responsibilities. DreamManagerService contains just enough logic to
manage the global synchronous behaviors. All of the asynchronous
behaviors are in DreamController.

Added a new PowerManager function called nap() to request the device
to start napping. If it is a good time to nap, then the
PowerManagerService will call startDream() on the DreamManagerService
to start dreaming.

Fixed a possible multi-user issue by explicitly tracking for
which user a dream service is being started and stopping dreams
when the current user changes. The user id is also passed to
bindService() to ensure that the dream has the right environment.

Fix interactions with docks and the UI mode manager. It is
important that we always send the ACTION_DOCK_EVENT broadcast
to the system so that it can configure audio routing and the like.
When docked, the UI mode manager starts a dock app if there is
one, otherwise it starts a dream.

This change resolves issues with dreams started for reasons other
than a user activity timeout.

Bug: 7204211
Change-Id: I3193cc8190982c0836319176fa2e9c4dcad9c01f
PowerManager.aidl
owerManager.java
1951db86f527ff4e8c2ddf4306779ce956cd372d 26-Sep-2012 Jeff Sharkey <jsharkey@android.com> Merge "Multi-user ringtone playback." into jb-mr1-dev
4118012da9a22694b3353040a485f8cdc27e2f17 26-Sep-2012 Philip Milne <pmilne@google.com> Fix for bug: #7173350. elapsedRealtimeNano() -> elapsedRealtimeNanos()

Change-Id: Ie38952bbaace080e81e41e61350cda172951d548
ystemClock.java
65c4a2b26cd8776b0927e9b0e07ecf53bd31b627 26-Sep-2012 Jeff Sharkey <jsharkey@android.com> Multi-user ringtone playback.

Change RingtonePlayer to open content:// Uris based on requesting
UserHandle. Grant SystemUI visibility to all emulated storage so
it can play ringtones for apps without READ_EXTERNAL_STORAGE.

Resolve canonical file:// Uris before passing out of source app,
replacing any /emulated_legacy/-style paths with user-specific
variant so they can be opened by SystemUI. Calling for RemoteViews,
Ringtones, and Notifications.

Bug: 7202982
Change-Id: Ibf0eca8df80c1486711144a7b648f464aadfe099
serHandle.aidl
4fbbda4cecb078bd3867f416b02cc75f5455284f 25-Sep-2012 Jeff Sharkey <jsharkey@android.com> Handle multi-user mountObb() requests.

Since emulated external storage paths differ based on execution
context, carefully fix up paths for various use-cases:

1. When sending paths to DefaultContainerService, always scope
OBB paths as belonging to USER_OWNER.
2. When sending paths to vold, always build emulated storage paths
visible to root.
3. Always use the original untouched path when talking with apps.

Mount OBB containers using shared app GID, so that an app can read
the mount point across users.

Handle legacy paths like "/sdcard" by resolving the canonical path
before sending to MountService. Move tests to servicestests, and
add tests for new path generation logic.

Bug: 7212801
Change-Id: I078c52879cd08d9c8a52cc8c83ac7ced1e8035e7
nvironment.java
torage/IMountService.java
torage/StorageManager.java
7d8bcb498d4cfb90202335781df1ffa92e96c18b 24-Sep-2012 Jeff Sharkey <jsharkey@android.com> Move multi-user OBB under user-specific path.

Bug: 7212801
Change-Id: I0ab83c1d9cb21914d61a7da45a32e89956e22ec8
nvironment.java
466bd636812684aeb8161f144597cc3b3ed39078 21-Sep-2012 Dan Morrill <morrildl@google.com> Merge "New method returning user metadata." into jb-mr1-dev
920ace0bbc2d4133dbec991d2636c99a57d6245e 21-Sep-2012 Amith Yamasani <yamasani@google.com> Query users excluding any being removed

Keep track of user creation and last logged-in time.
adb shell dumpsys users
User switcher shouldn't show users about to be removed.
No need to check for singleton for activities.

Bug: 7194894
Change-Id: Ic9a59ea5bd544920479e191d1a1e8a77f8b6ddcf
UserManager.aidl
serManager.java
e4ab16ad98b183afbf7a21ad7314372de41a8b57 21-Sep-2012 Dan Morrill <morrildl@google.com> New method returning user metadata.

Change-Id: Ic1a42cf54152fe2e6bcd01b1bd9f1edb77d1710e
serManager.java
4673e7ea8d1f869910a9c0f9c211d4d27ad50b41 19-Sep-2012 Jeff Sharkey <jsharkey@android.com> Migrate UI to supportsMultipleUsers().

Bug: 7194531
Change-Id: Ifbbe3b4d954f8d11fb1c94674e5e7f8e21264c75
serManager.java
3fe5bf6d69f146077ce9b5e588be8651462b0cd2 19-Sep-2012 Jeff Sharkey <jsharkey@android.com> Make getMediaStorageDirectory() user-aware.

Bug: 7173591
Change-Id: I4513afbd8c3d6a31cd66d8a149be4071d5a4d24c
nvironment.java
27bd34d9d9fe99f11b80aa0bbdb402fb47ef4158 16-Sep-2012 Jeff Sharkey <jsharkey@android.com> Multi-user MTP.

The current MTP kernel driver at /dev/mtp_usb is exclusive, meaning
only one process can have it open. In addition, each MTP session
with a desktop requires unique object IDs, which doesn't hold true
across users on the device.

To solve these two issues, when switching users we cycle the USB host
stack to disconnect both local and remote MTP connections, giving the
new user's media process a chance to claim /dev/mtp_usb, and causing
the desktop to initiate a new MTP session.

This change also allows BroadcastReceivers to registerReceiver()
allow retrieval of a current sticky broadcast. Adds a system property
to override maximum users. Removes MOUNTED broadcasts for secondary
users. Allows INTERACT_ACROSS_USERS to getCurrentUser().

Bug: 6925114
Change-Id: I02b4a1b535af95fb2142655887b6d15a8068d18a
serManager.java
f7a6dfcafc1eaa8014b4fa796e4b31208f72fd36 18-Sep-2012 Amith Yamasani <yamasani@google.com> Merge "Pass Bitmap instead of ParcelFileDescriptor in UserManager" into jb-mr1-dev
e928d7d95dbb64627e6ff3a0572190c555b59d96 18-Sep-2012 Amith Yamasani <yamasani@google.com> Pass Bitmap instead of ParcelFileDescriptor in UserManager

Add a USER_INFO_CHANGED intent for lockscreen and quicksettings to use
to monitor changes to the user name or icon.

Bug: 7164040
Change-Id: Id6fb8b6d38ce04ccd02bbadcf0c10699783d6c03
UserManager.aidl
serManager.java
c33f94e2a50c9b03cb771237e8672743da8b1314 18-Sep-2012 Dianne Hackborn <hackbod@google.com> Merge "Fix API review bugs." into jb-mr1-dev
8832c18d8b63367929c2d394c9c508f56003d400 18-Sep-2012 Dianne Hackborn <hackbod@google.com> Fix API review bugs.

7173152 API REVIEW: android.content.pm.PackageUserState
7172969 API REVIEW: android.app.PendingIntent
7172730 API REVIEW: android.content.Context
7172726 API REVIEW: android.manifest.permission

Change-Id: Iad470256d3b5ca5596487f6a699ec1871457c3b5
serManager.java
3b49f07a452e0a77c1d22db2065255689a461d31 17-Sep-2012 Amith Yamasani <yamasani@google.com> Add UserManager.getUserIcon()

So that we don't abuse the setUserIcon() for reading. So the new method won't try
to create the file, only return it if it exists.

Change-Id: I7a81d3f1b29d14d37e71f531744ce39f21d827ac
UserManager.aidl
serManager.java
d0c6ccbafdebc73d03cf3cd47f02f9f6c78a69ff 15-Sep-2012 Jeff Sharkey <jsharkey@android.com> Move NetworkPolicy from apps to UID.

For multi-user devices, switch to storing policy per-user instead of
per-app. Also watch for user added/removed broadcasts to clean up
policies and apply global restrictions.

Bug: 7121279
Change-Id: Ia7326bd0ebe0586fa4ec6d3a62f6313dc8814007
serHandle.java
24271a8c4c55a60047fd3d35c8a7af98b0f4e666 13-Sep-2012 Kenny Root <kroot@google.com> Merge "Use shared app gid for forward-locked processes" into jb-mr1-dev
dfa45309e09bcdbad877e4e6a6005f348962d64d 13-Sep-2012 Jeff Sharkey <jsharkey@android.com> Give DefaultContainerService all external storage.

Now we can bind to just one instance of DCS, instead of requiring
one-per-user. This also means we can operate on otherwise-stopped
users.

Bug: 7003520
Change-Id: I4881e064ae8942907f6a02c6b868926223455cdc
nvironment.java
b049e212ab7fe8967893c202efcb30fecfdb82fb 08-Sep-2012 Jeff Sharkey <jsharkey@android.com> Include user identifier in external storage paths.

When building external storage paths, always include user in path
to enable cross-user paths and aid debugging.

Each Zygote process continues to only have access to the appropriate
user-specific emulated storage through bind mounts. A second set of
mounts continue supporting legacy /sdcard-style paths. For example,
a process running as owner has these mount points:

/storage/emulated_legacy
/storage/emulated_legacy/Android/obb
/storage/emulated/0
/storage/emulated/obb

Since Environment is created before Zygote forks, we need to update
its internal paths after each process launches.

Bug: 7131382
Change-Id: I6f8c6971f2a8edfb415c14cb4ed05ff97e587a21
ebug.java
nvironment.java
torage/IMountService.java
torage/StorageManager.java
torage/StorageVolume.java
e091f22e226f7177e45e23850670c1ad9b63fd75 12-Sep-2012 Kenny Root <kroot@google.com> Use shared app gid for forward-locked processes

Use a shared app gid for each app across different users which allows
forward-locked applications to share the same APK file.

Change-Id: Ifecf51ee7865547117746f83e9733083d3dd5111
rocess.java
serHandle.java
8a9f5d42a5cc373439ee8bbb9185dcce9086770d 11-Sep-2012 Dianne Hackborn <hackbod@google.com> USER_CURRENT_OR_SELF had the same int as USER_CURRENT!

Change-Id: I0f2b0fa4fb82d1f871450b509a7a4d13e9817320
serHandle.java
1edf63ef4c7484355a6d9371bea912d6518a7d1e 09-Sep-2012 Jeff Brown <jeffbrown@google.com> Merge "Enable auto-brightness adjustment feature with system prop." into jb-mr1-dev
631938f26dbc89e7e9530bb85d9f37706dba59f3 09-Sep-2012 Jeff Brown <jeffbrown@google.com> Enable auto-brightness adjustment feature with system prop.

This feature is experimental and disabled by default.

Change-Id: I183534370da7613557e4d1535f556873f8a763df
owerManager.java
74ee8652e02fc94901177214fc9370659732c921 08-Sep-2012 Dianne Hackborn <hackbod@google.com> Add Binder.getCallingUserHandle().

Change-Id: I2a7eedfdc7baeeb4c2cd2ca0153aa95e0cf0bf45
inder.java
9545dc020ea11649d70dcbe911a8e82a3254a4ea 07-Sep-2012 Jeff Sharkey <jsharkey@android.com> Include primary flag in StorageVolume.

Bug: 7003520
Change-Id: Iaae2ae22253820c954c51e0199c31087bc825f3f
torage/StorageVolume.java
1cf70bbf96930662cab0e699d70b62865766ff52 06-Aug-2012 Svetoslav Ganov <svetoslavganov@google.com> Screen magnification - feature - framework.

This change is the initial check in of the screen magnification
feature. This feature enables magnification of the screen via
global gestures (assuming it has been enabled from settings)
to allow a low vision user to efficiently use an Android device.

Interaction model:

1. Triple tap toggles permanent screen magnification which is magnifying
the area around the location of the triple tap. One can think of the
location of the triple tap as the center of the magnified viewport.
For example, a triple tap when not magnified would magnify the screen
and leave it in a magnified state. A triple tapping when magnified would
clear magnification and leave the screen in a not magnified state.

2. Triple tap and hold would magnify the screen if not magnified and enable
viewport dragging mode until the finger goes up. One can think of this
mode as a way to move the magnified viewport since the area around the
moving finger will be magnified to fit the screen. For example, if the
screen was not magnified and the user triple taps and holds the screen
would magnify and the viewport will follow the user's finger. When the
finger goes up the screen will clear zoom out. If the same user interaction
is performed when the screen is magnified, the viewport movement will
be the same but when the finger goes up the screen will stay magnified.
In other words, the initial magnified state is sticky.

3. Pinching with any number of additional fingers when viewport dragging
is enabled, i.e. the user triple tapped and holds, would adjust the
magnification scale which will become the current default magnification
scale. The next time the user magnifies the same magnification scale
would be used.

4. When in a permanent magnified state the user can use two or more fingers
to pan the viewport. Note that in this mode the content is panned as
opposed to the viewport dragging mode in which the viewport is moved.

5. When in a permanent magnified state the user can use three or more
fingers to change the magnification scale which will become the current
default magnification scale. The next time the user magnifies the same
magnification scale would be used.

6. The magnification scale will be persisted in settings and in the cloud.

Note: Since two fingers are used to pan the content in a permanently magnified
state no other two finger gestures in touch exploration or applications
will work unless the uses zooms out to normal state where all gestures
works as expected. This is an intentional tradeoff to allow efficient
panning since in a permanently magnified state this would be the dominant
action to be performed.

Design:

1. The window manager exposes APIs for setting accessibility transformation
which is a scale and offsets for X and Y axis. The window manager queries
the window policy for which windows will not be magnified. For example,
the IME windows and the navigation bar are not magnified including windows
that are attached to them.

2. The accessibility features such a screen magnification and touch
exploration are now impemented as a sequence of transformations on the
event stream. The accessibility manager service may request each
of these features or both. The behavior of the features is not changed
based on the fact that another one is enabled.

3. The screen magnifier keeps a viewport of the content that is magnified
which is surrounded by a glow in a magnified state. Interactions outside
of the viewport are delegated directly to the application without
interpretation. For example, a triple tap on the letter 'a' of the IME
would type three letters instead of toggling magnified state. The viewport
is updated on screen rotation and on window transitions. For example,
when the IME pops up the viewport shrinks.

4. The glow around the viewport is implemented as a special type of window
that does not take input focus, cannot be touched, is laid out in the
screen coordiates with width and height matching these of the screen.
When the magnified region changes the root view of the window draws the
hightlight but the size of the window does not change - unless a rotation
happens. All changes in the viewport size or showing or hiding it are
animated.

5. The viewport is encapsulated in a class that knows how to show,
hide, and resize the viewport - potentially animating that.
This class uses the new animation framework for animations.

6. The magnification is handled by a magnification controller that
keeps track of the current trnasformation to be applied to the screen
content and the desired such. If these two are not the same it is
responsibility of the magnification controller to reconcile them by
potentially animating the transition from one to the other.

7. A dipslay content observer wathces for winodw transitions, screen
rotations, and when a rectange on the screen has been reqeusted. This
class is responsible for handling interesting state changes such
as changing the viewport bounds on IME pop up or screen rotation,
panning the content to make a requested rectangle visible on the
screen, etc.

8. To implement viewport updates the window manger was updated with APIs
to watch for window transitions and when a rectangle has been requested
on the screen. These APIs are protected by a signature level permission.
Also a parcelable and poolable window info class has been added with
APIs for getting the window info given the window token. This enables
getting some useful information about a window. There APIs are also
signature protected.

bug:6795382

Change-Id: Iec93da8bf6376beebbd4f5167ab7723dc7d9bd00
emoteCallbackList.java
2701f325a6d4acd920637d2ff6fd6972a9cf836b 01-Sep-2012 Dianne Hackborn <hackbod@google.com> Merge "Remove Binder.getOrigCallingUid()." into jb-mr1-dev
430e5b23cf702d57aa662972c43d546806147d76 01-Sep-2012 Amith Yamasani <yamasani@google.com> Merge "Centralize the creation of the user system directory" into jb-mr1-dev
4ed8fe75e1dde1a2b9576f3862aecc5a572c56b5 31-Aug-2012 Jeff Brown <jeffbrown@google.com> More improvements to the display manager.

Added more complete support for logical displays with
support for mirroring, rotation and scaling.

Improved the overlay display adapter's touch interactions.

A big change here is that the display manager no longer relies
on a single-threaded model to maintain its synchronization
invariants. Unfortunately we had to change this so as to play
nice with the fact that the window manager wants to own
the surface flinger transaction around display and surface
manipulations. As a result, the display manager has to be able
to update displays from the context of any thread.

It would be nice to make this process more cooperative.
There are already several components competing to perform
surface flinger transactions including the window manager,
display manager, electron beam, overlay display window,
and mouse pointer. They are not manipulating the same surfaces
but they can collide with one another when they make global
changes to the displays.

Change-Id: I04f448594241f2004f6f3d1a81ccd12c566bf296
andler.java
61f57379ca2c5b6290c8da7548fa17128f7ab24f 31-Aug-2012 Amith Yamasani <yamasani@google.com> Centralize the creation of the user system directory

Environment.getUserSystemDirectory(int userId)

Use it all relevant places that was hardcoding it.
Also, wipe out the user's system directory when user is removed, otherwise old state
might be transferred to a new user.

Change-Id: I788ce9c4cf9624229e65efa7047bc0c019ccef0a
nvironment.java
4120375d46091df8527bb701882e056fbb0e6b06 31-Aug-2012 Dianne Hackborn <hackbod@google.com> Remove Binder.getOrigCallingUid().

Replaced all remaining places that used it with explicit user
specification.

While doing this, I ran into stuff that was creating PendingIntent
objects (that now need to specify the explicit user they are for),
which are also posting notifications... but have no way to specify
the user for the notification.

So the notification manager in the system process now also gets a
formal concept of a user associated with the notification, which
is passed in to all the necessary aidl calls. I also removed the
old deprecated aidl interface for posting/cancelling notifications,
since we now always need a user supplied.

There is more work that needs to be done here, though. For example
I think we need to be able to specify USER_ALL for a notification that
should be shown to all users (such as low storage or low battery).
Along with that, the PendingIntent creation needs to be tweaked to
be able to handle USER_CURRENT by evaluating the user at the point the
pending intent is sent.

That's for another change, however.

Change-Id: I468e14dce8def0e13e0870571e7c31ed32b6310c
inder.java
5ac72a29593ab9a20337a2225df52bdf4754be02 30-Aug-2012 Dianne Hackborn <hackbod@google.com> Improve multi-user broadcasts.

You can now use ALL and CURRENT when sending broadcasts, to specify
where the broadcast goes.

Sticky broadcasts are now correctly separated per user, and registered
receivers are filtered based on the requested target user.

New Context APIs for more kinds of sending broadcasts as users.

Updating a bunch of system code that sends broadcasts to explicitly
specify which user the broadcast goes to.

Made a single version of the code for interpreting the requested
target user ID that all entries to activity manager (start activity,
send broadcast, start service) use.

Change-Id: Ie29f02dd5242ef8c8fa56c54593a315cd2574e1c
ecoverySystem.java
serHandle.java
e217ee4d7a8223289a1af7363627c69956c46d41 29-Aug-2012 Jeff Sharkey <jsharkey@android.com> Access to all users' external storage.

System services holding this permission have external storage bound
one level higher, giving them access to all users' files.

Bug: 7003520
Change-Id: Ib2bcb8455740c713ebd01f71c9a2b89b4e642832
rocess.java
c53abc4d42a707caddf7ec9bb7d041125a09dbd7 29-Aug-2012 Jeff Brown <jeffbrown@google.com> Run with scissors.

Add a useful (if somewhat dangerous) method which will help
replace similarly dangerous code patterns in a few different places.

Change-Id: If1295f7ab9652c906ce718d94eb7914d143e1939
andler.java
a2910d0abbbe18ba1710dfd4a31af45769632255 25-Aug-2012 Jeff Brown <jeffbrown@google.com> Make it easier to create asynchronous Handlers.

There are potentially very many Handlers owned by services
that should not be blocked by barriers introduced by UI traversals
occurring on the same thread (if that ever happens).
Add some convenience constructors to make it easy to switch
these Handlers over to being async.

Bug: 7057752
Change-Id: I64d9bffe81e7c52ada4cfad4e89d4340153f4688
andler.java
7767eac3232ba2fb9828766813cdb481d6a97584 24-Aug-2012 Dianne Hackborn <hackbod@google.com> Keep track of whether an app is installed for each user.

This add a new per-user state for an app, indicating whether
it is installed for that user.

All system apps are always installed for all users (we still
use disable to "uninstall" them).

Now when you call into the package manager to install an app,
it will only install the app for that user unless you supply
a flag saying to install for all users. Only being installed
for the user is just the normal install state, but all other
users have marked in their state for that app that it is not
installed.

When you call the package manager APIs for information about
apps, uninstalled apps are treated as really being not visible
(somewhat more-so than disabled apps), unless you use the
GET_UNINSTALLED_PACKAGES flag.

If another user calls to install an app that is already installed,
just not for them, then the normal install process takes place
but in addition that user's installed state is toggled on.

The package manager will not send PACKAGE_ADDED, PACKAGE_REMOVED,
PACKAGE_REPLACED etc broadcasts to users who don't have a package
installed or not being involved in a change in the install state.
There are a few things that are not quite right with this -- for
example if you go through a full install (with a new apk) of an
app for one user who doesn't have it already installed, you will
still get the PACKAGED_REPLACED messages even though this is
technically the first install for your user. I'm not sure how
much of an issue this is.

When you call the existing API to uninstall an app, this toggles
the installed state of the app for that user to be off. Only if
that is the last user user that has the app uinstalled will it
actually be removed from the device. Again there is a new flag
you can pass in to force the app to be uninstalled for all users.

Also fixed issues with cleaning external storage of apps, which
was not dealing with multiple users. We now keep track of cleaning
each user for each package.

Change-Id: I00e66452b149defc08c5e0183fa673f532465ed5
serHandle.java
1552586283f329253edc4786a6cf40c5bb69ea36 24-Aug-2012 Jeff Sharkey <jsharkey@android.com> Merge "Clean up firewall interface method names." into jb-mr1-dev
2c0929850ae495d54efb91a68e4bbd29a2e0ec95 24-Aug-2012 Jeff Sharkey <jsharkey@android.com> Clean up firewall interface method names.

Change-Id: I653f0a01af7c90fc96b201abb31ea8354b036e74
NetworkManagementService.aidl
96702ad6d736fd2b145968843d5d83615b104a16 24-Aug-2012 Jeff Sharkey <jsharkey@android.com> Merge "Framework interface for netd firewall." into jb-mr1-dev
c268f0b19efd0b6c6c89c21be0893787f3cc9cf7 24-Aug-2012 Jeff Sharkey <jsharkey@android.com> Framework interface for netd firewall.

Bug: 5756357
Change-Id: If8b9f738fcea2cf16bd01682220718b57346c7cc
NetworkManagementService.aidl
d5fc86f0677575333556fe579838353fae10ce52 24-Aug-2012 Jeff Sharkey <jsharkey@android.com> Merge "Begin moving VPN to NetworkStateTracker pattern." into jb-mr1-dev
899223b97c9b0ae56a8211a46600914c0ecfd854 05-Aug-2012 Jeff Sharkey <jsharkey@android.com> Begin moving VPN to NetworkStateTracker pattern.

Created base tracker that handles common bookkeeping, and move VPN
to become a tracker. VPN status is now reflected in NetworkInfo, and
is mapped to LegacyVpnInfo.

Legacy VPN now "babysits" any init services it starts, watching for
when they stop unexpectedly.

Bug: 5756357
Change-Id: Iba7ec79da69469f6bd9a970cc39cf6b885b4c9c4
ystemService.java
d8b6fa293133324d77040e45d0d4625fc90917ba 23-Aug-2012 Doug Zongker <dougz@google.com> Merge "pass --locale argument to recovery" into jb-mr1-dev
e33b4007ee56e843d5e99cfb92627425a551058d 23-Aug-2012 Doug Zongker <dougz@google.com> pass --locale argument to recovery

When RecoverySystem boots into recovery (to install an update or wipe
data and/or cache), pass the --locale argument with the currently
selected locale.

Change-Id: Ib280330932a402be2011207bff8f05caa9b999cd
ecoverySystem.java
3451dc90648b8bd176030425ce91c019460ba88c 23-Aug-2012 Jeff Sharkey <jsharkey@android.com> Merge "Iteration on multi-user external storage." into jb-mr1-dev
b9b56954ec5a242f7c4945942539106539f98ffb 22-Aug-2012 Craig Mautner <cmautner@google.com> Merge "Eliminate special battery calls by WindowManager" into jb-mr1-dev
2bca868361b41ff6a8228824cbecadc4c5deb44e 22-Aug-2012 Jeff Sharkey <jsharkey@android.com> Iteration on multi-user external storage.

Remove single-user bind mounts, since they need to remain as raw
mounts to correctly propagate when remounted. This means we're back
to using sdcard_r GID to enforce READ_EXTERNAL_STORAGE.

Bug: 6925012
Change-Id: I41b5d7ddc985a5df2e288632a0a80d4724089e00
rocess.java
259328c04ce16c554b48a14f68d8af94dc54d7ec 22-Aug-2012 Craig Mautner <cmautner@google.com> Eliminate special battery calls by WindowManager

Previous to this change the WindowManager was notifying the
BatteryDtatsService about windows that keep the screen on. WM used a
custom WakeLock tag to indicate to PowerManagerService that it had
already notified the BatteryStatsService.

This change eliminates WindowManager notifying the BatteryStatsService
and lets PowerManagerService do the job.

Fixes bug 7030326.

Change-Id: I666dc6ef8f094b8d3d109fea6876be058e057b4f
owerManager.java
98dddda7912428241ed61c053c7300d4a6702fa7 22-Aug-2012 Amith Yamasani <yamasani@google.com> Merge "Remove permission requirement for some UserManager calls" into jb-mr1-dev
1952637425eece18aa1ce3d80d4b49086ef3bcf7 22-Aug-2012 Amith Yamasani <yamasani@google.com> Remove permission requirement for some UserManager calls

Update javadocs to be explicit about permissions.
Minor fixes in UserManagerService

Change-Id: I0d355e0a60e5dbdb49ed06091111d480ff249f3d
serManager.java
11167b887aa2af52b861f5ffd31efa0882c80ec5 22-Aug-2012 Jeff Brown <jeffbrown@google.com> Merge "Make the screen brightness setting limits configurable." into jb-mr1-dev
f9bba13692c10ff99a52f79d6d0f04c96117ff57 22-Aug-2012 Jeff Brown <jeffbrown@google.com> Make the screen brightness setting limits configurable.

Change-Id: Ica84951c482edef6b7faebe1af22c609a1b9e8be
owerManager.java
892f371c6b8c33268dceaeb89ac09c73ad72ad79 21-Aug-2012 Jeff Brown <jeffbrown@google.com> Merge "Encapsulate locks in UEventObservers." into jb-mr1-dev
008b1762a8d5c908281a832ff90817ade6c7f9f6 21-Aug-2012 Jeff Brown <jeffbrown@google.com> Encapsulate locks in UEventObservers.

Synchronized methods make me cry so fixing this first before
I introduce any new functionality that could result in a deadlock.

Bug: 6548391
Change-Id: I9c006dc491ce205bfd86acf828dcebda2a63b2ca
EventObserver.java
4b72463d7cb807912ca359f3b5a160f59d985c1d 21-Aug-2012 Jeff Brown <jeffbrown@google.com> Merge "Add factory test feature to shut off on long press power." into jb-mr1-dev
a5d5d608ccd885d8328879dde782a8cc93b7cf4f 21-Aug-2012 Brian Muramatsu <btmura@google.com> Merge "add wireless charger support" into jb-mr1-dev
9a538ee7bde42ad36f43edc48594282d98e191a4 20-Aug-2012 Jeff Brown <jeffbrown@google.com> Add factory test feature to shut off on long press power.

Bug: 6847329
Change-Id: I2f4f975c3af2d13ccc06812a5a42e79032700862
actoryTest.java
80618d66b02d8cce325cdaa184435f43818a062b 20-Aug-2012 Kenny Root <kroot@google.com> am 7d5b22af: am f029c22f: Merge "Use Libcore.os.umask for setting umask"

* commit '7d5b22afae8525cdf80ba1bf8e18b87d597f830d':
Use Libcore.os.umask for setting umask
7d5b22afae8525cdf80ba1bf8e18b87d597f830d 20-Aug-2012 Kenny Root <kroot@google.com> am f029c22f: Merge "Use Libcore.os.umask for setting umask"

* commit 'f029c22f82573e7fee7c7e0cca4439fe78300bac':
Use Libcore.os.umask for setting umask
4c74f8c1713fa82904b10beec4da9ad8ebb97375 17-Aug-2012 Kenny Root <kroot@google.com> Use Libcore.os.umask for setting umask

Libcore.os now provides a umask method call, so just use that since it's
available.

Change-Id: I8826fa40bcab3d61a424ff98a8050d3e44f7ec34
ileUtils.java
37a37f445cbcd64376af153dd79ea2a123d9405d 15-Aug-2012 Brian Muramatsu <btmura@google.com> add wireless charger support

bug: 6879638

- add new enum value BATTERY_PLUGGED_WIRELESS
- check for sys online file with contents "Wireless"

Change-Id: I22dc3c40f50573c98643e7b5cbcb237d0216530d
atteryManager.java
atteryStats.java
79af1dd54c16cde063152922b42c96d72ae9eca8 17-Aug-2012 Dianne Hackborn <hackbod@google.com> Switch public APIs to use new UserHandle class for identifying users.

Gets rid of "yet another integer" confusion.

Change-Id: Id07ea7307aea7c62f0087c6663a1f1c08e2e5dee
rocess.java
serHandle.java
serManager.java
2a00329c6d55c6cd9166e01963d7410e95d80d21 15-Aug-2012 Amith Yamasani <yamasani@google.com> UserHandle to UserSerialNo mapping

Use AtomicFile for usermanager files.

Added a MANAGE_USERS permission that apps (signature permission) can use
to create/query/modify/remove users.

Change-Id: I5cf232232d0539e7508df8ec9b216e29c2351cd9
UserManager.aidl
serManager.java
9a994b5350731b8169a9b25463f57266ee2988fb 17-Aug-2012 Kenny Root <kroot@google.com> am 050c87f8: am a950daf5: Merge changes Ieb566a2a,I953057cd

* commit '050c87f87e2a48c7bc90f5b15fb6e4e37e667286':
Use Libcore's stat instead of FileUtils#getFileStatus
Use Libcore.os.stat instead of FileUtils
050c87f87e2a48c7bc90f5b15fb6e4e37e667286 17-Aug-2012 Kenny Root <kroot@google.com> am a950daf5: Merge changes Ieb566a2a,I953057cd

* commit 'a950daf5c14a0009c2c62e9c3e0e8d51eb0cf7d9':
Use Libcore's stat instead of FileUtils#getFileStatus
Use Libcore.os.stat instead of FileUtils
520ee7bcadafdc5768fa8fc8890199ebe29886da 17-Aug-2012 Kenny Root <kroot@android.com> am a2e8365c: am 9b0da58e: Merge "Introduce a restorecon JNI binding."

* commit 'a2e8365cc883de0d3e56e9f4af350ecfe1b8fc4c':
Introduce a restorecon JNI binding.
a2e8365cc883de0d3e56e9f4af350ecfe1b8fc4c 17-Aug-2012 Kenny Root <kroot@android.com> am 9b0da58e: Merge "Introduce a restorecon JNI binding."

* commit '9b0da58e3a30b760de37138cdd51d20f269c383e':
Introduce a restorecon JNI binding.
98e15e78934a00cf46f2be55472b7fd7a39ac0de 16-Aug-2012 Kenny Root <kroot@google.com> Use Libcore's stat instead of FileUtils#getFileStatus

Remove the last user of FileUtils#getFileStatus and move it to
Libcore.os.stat instead. Then we can remove the JNI code that does the
equivalent of a stat.

Change-Id: Ieb566a2a8a17c2dd0150724b4eb3ac1cc41c823d
ileUtils.java
786cbcacd2efbd94476eb05a4d5b77211f20d434 16-Aug-2012 Kenny Root <kroot@google.com> Use Libcore.os.stat instead of FileUtils

PackageManagerService just needed to know the owner for this file, so
just use stat instead so we can remove the old JNI code.

This is the last user of FileUtils#getPermissions so just remove the
FileUtils method as well.

Change-Id: I953057cd6b9de4410f33b6f22e4bddff02fe2988
ileUtils.java
9b0da58e3a30b760de37138cdd51d20f269c383e 16-Aug-2012 Kenny Root <kroot@android.com> Merge "Introduce a restorecon JNI binding."
c584b65b2093396c9a0c9303dab6ff6cb81ac315 16-Aug-2012 Jeff Sharkey <jsharkey@android.com> Merge "Multi-user external storage support." into jb-mr1-dev
a579f7926af72597f1c11c5df0486253d5d2c435 16-Aug-2012 Kenny Root <kroot@google.com> am d69b47c0: am 8942e5a3: Merge "Use libcore Posix class for StatFs implementation"

* commit 'd69b47c087a87355df76a5276ab18af847f64367':
Use libcore Posix class for StatFs implementation
d69b47c087a87355df76a5276ab18af847f64367 16-Aug-2012 Kenny Root <kroot@google.com> am 8942e5a3: Merge "Use libcore Posix class for StatFs implementation"

* commit '8942e5a32ae2d1a36b65efe5b26cc06227ea0ca5':
Use libcore Posix class for StatFs implementation
f02b60aa4f367516f40cf3d60fffae0c6fe3e1b8 16-Aug-2012 Dianne Hackborn <hackbod@google.com> Rename UserId to UserHandle.

This is the start of turning this into a formal public API.

Change-Id: I5786d2c320f1de41a06ed5d0f65adb68967287a0
inder.java
rocess.java
serHandle.java
serId.java
bdd23ae9f5ea2b3e0720e76711345cad0fa8d6dd 16-Aug-2012 Kenny Root <kroot@google.com> Use libcore Posix class for StatFs implementation

Remove some JNI and duplicated functionality and use libcore's Posix
class for the statfs function instead.

Change-Id: Ic1e161dc10c18c2c6ee81d895a0efd8910086dbf
tatFs.java
5b1ada2562c17921adf6a62ea62bcb445160983c 15-Aug-2012 Jeff Sharkey <jsharkey@android.com> Multi-user external storage support.

Emulated external storage always has multi-user support using paths
like "/data/media/<user_id>". Creates and destroys these paths along
with user data. Uses new ensure_dir() to create directories while
always ensuring permissions.

Add external storage mount mode to zygote, supporting both single-
and multi-user devices. For example, devices with physical SD cards
are treated as single-user. Begin migrating to mount mode instead
of relying on sdcard_r GID to enforce READ_EXTERNAL_STORAGE.

Bug: 6925012
Change-Id: I9b872ded992cd078e2c013567d59f9f0032ec02b
rocess.java
9630704ed3b265f008a8f64ec60a33cf9dcd3345 28-Jul-2012 Jeff Brown <jeffbrown@google.com> Power manager rewrite.

The major goal of this rewrite is to make it easier to implement
power management policies correctly. According, the new
implementation primarily uses state-based rather than event-based
triggers for applying changes to the current power state.

For example, when an application requests that the proximity
sensor be used to manage the screen state (by way of a wake lock),
the power manager makes note of the fact that the set of
wake locks changed. Then it executes a common update function
that recalculates the entire state, first looking at wake locks,
then considering user activity, and eventually determining whether
the screen should be turned on or off. At this point it may
make a request to a component called the DisplayPowerController
to asynchronously update the display's powe state. Likewise,
DisplayPowerController makes note of the updated power request
and schedules its own update function to figure out what needs
to be changed.

The big benefit of this approach is that it's easy to mutate
multiple properties of the power state simultaneously then
apply their joint effects together all at once. Transitions
between states are detected and resolved by the update in
a consistent manner.

The new power manager service has is implemented as a set of
loosely coupled components. For the most part, information
only flows one way through these components (by issuing a
request to that component) although some components support
sending a message back to indicate when the work has been
completed. For example, the DisplayPowerController posts
a callback runnable asynchronously to tell the PowerManagerService
when the display is ready. An important feature of this
approach is that each component neatly encapsulates its
state and maintains its own invariants. Moreover, we do
not need to worry about deadlocks or awkward mutual exclusion
semantics because most of the requests are asynchronous.

The benefits of this design are especially apparent in
the implementation of the screen on / off and brightness
control animations which are able to take advantage of
framework features like properties, ObjectAnimator
and Choreographer.

The screen on / off animation is now the responsibility
of the power manager (instead of surface flinger). This change
makes it much easier to ensure that the animation is properly
coordinated with other power state changes and eliminates
the cause of race conditions in the older implementation.

The because of the userActivity() function has been changed
so that it never wakes the device from sleep. This change
removes ambiguity around forcing or disabling user activity
for various purposes. To wake the device, use wakeUp().
To put it to sleep, use goToSleep(). Simple.

The power manager service interface and API has been significantly
simplified and consolidated. Also fixed some inconsistencies
related to how the minimum and maximum screen brightness setting
was presented in brightness control widgets and enforced behind
the scenes.

At present the following features are implemented:

- Wake locks.
- User activity.
- Wake up / go to sleep.
- Power state broadcasts.
- Battery stats and event log notifications.
- Dreams.
- Proximity screen off.
- Animated screen on / off transitions.
- Auto-dimming.
- Auto-brightness control for the screen backlight with
different timeouts for ramping up versus ramping down.
- Auto-on when plugged or unplugged.
- Stay on when plugged.
- Device administration maximum user activity timeout.
- Application controlled brightness via window manager.

The following features are not yet implemented:

- Reduced user activity timeout for the key guard.
- Reduced user activity timeout for the phone application.
- Coordinating screen on barriers with the window manager.
- Preventing auto-rotation during power state changes.
- Auto-brightness adjustment setting (feature was disabled
in previous version of the power manager service pending
an improved UI design so leaving it out for now).
- Interpolated brightness control (a proposed new scheme
for more compactly specifying auto-brightness levels
in config.xml).
- Button / keyboard backlight control.
- Change window manager to associated WorkSource with
KEEP_SCREEN_ON_FLAG wake lock instead of talking
directly to the battery stats service.
- Optionally support animating screen brightness when
turning on/off instead of playing electron beam animation
(config_animateScreenLights).

Change-Id: I1d7a52e98f0449f76d70bf421f6a7f245957d1d7
PowerManager.aidl
ocalPowerManager.java
owerManager.java
orkSource.java
109025d778c12d78f8585920447320aaf0f1d2f8 15-Aug-2012 Jeff Brown <jeffbrown@google.com> Make all messages in KeyguardViewMediator asynchronous.

We don't want these messages to get blocked by UI traversals.

Added a convenience for creating Handlers that always send
asynchronous messages.

Change-Id: Id568e87fcb8b169e8c52c5fe1dc76a4a5771570b
andler.java
aac71ff465399251fa8e830407f2917b986988d9 14-Aug-2012 Christopher Tate <ctate@google.com> Don't back up / restore non-primary users' data

For now only the device owner "user" gets cloud backups. Also, only the
device owner account has access to local backup/restore.

Bug 6956438

Change-Id: I87d7ba5969e606c23f4214469f9bf2fd47a6c61b
serId.java
258848d2ae04f447ff1c18023fa76b139fcc0862 11-Aug-2012 Amith Yamasani <yamasani@google.com> User Manager service to manage users and query user details

Moved a bunch of methods from PackageManager to UserManager.

Fix launching of activities from recents to correct user.

Guest creation APIs

Change-Id: I0733405e6eb2829675665e225c759d6baa2b708f
UserManager.aidl
serManager.java
0412423f06ec633203b96f68b51f0720c33a2473 29-Jun-2012 Haoyu Bai <bhy@google.com> Setup idletimer for network interface.

Cherry-picked from commit f71ca8a5728e425de61ba794c9653dd0b04f16e3 in
master. DO NOT MERGE

Change-Id: I6101c7ae041b4cc1237ce7a9983753dbdfa301d3
NetworkManagementService.aidl
06439fd29f9bbf7031f58f5b06aa6c022ac9897a 10-Aug-2012 Jean-Baptiste Queru <jbq@google.com> am cb80cb70: am 37548994: Merge "StorageManager: fix issue that GREF has increased to 2011 in system server with intel stress test."

* commit 'cb80cb700d15319c20686998e822aed32a56adf5':
StorageManager: fix issue that GREF has increased to 2011 in system server with intel stress test.
cb80cb700d15319c20686998e822aed32a56adf5 10-Aug-2012 Jean-Baptiste Queru <jbq@google.com> am 37548994: Merge "StorageManager: fix issue that GREF has increased to 2011 in system server with intel stress test."

* commit '37548994e69292932e9e2fafb7cba6c53e3a2bcd':
StorageManager: fix issue that GREF has increased to 2011 in system server with intel stress test.
37548994e69292932e9e2fafb7cba6c53e3a2bcd 10-Aug-2012 Jean-Baptiste Queru <jbq@google.com> Merge "StorageManager: fix issue that GREF has increased to 2011 in system server with intel stress test."
8264408f5995534f8e3147b001664ea0df52aaa5 03-Aug-2012 Amith Yamasani <yamasani@google.com> Start the correct settings from the status bar.

Added a new method to Context: startActivityAsUser() requiring the
INTERACT_ACROSS_USERS_FULL permission.

Show the correct Recents list, based on current user.
Added a getRecentTasksForUser() in ActivityManager. Hidden and requires
the INTERACT_ACROSS_USERS_FULL permission.

Change-Id: If5b56465efdd3ead36601a3b51ed4af157bbf35c
serId.java
82f479d0647855148af84fe2ba5484cb188c92cc 09-Aug-2012 Jeff Sharkey <jsharkey@android.com> Merge "Cleaner controls between Vpn and init services." into jb-mr1-dev
04c7923c74eca791d1bea853b9ac246af2ad3db0 08-Aug-2012 Jean-Baptiste Queru <jbq@google.com> am 74913572: am 6fb8fe9a: Merge "StrictMode.permitCustomSlowCalls() should call disable(DETECT_CUSTOM)"

* commit '749135722c6edb681fc27fcbab5beba25f938d82':
StrictMode.permitCustomSlowCalls() should call disable(DETECT_CUSTOM)
749135722c6edb681fc27fcbab5beba25f938d82 08-Aug-2012 Jean-Baptiste Queru <jbq@google.com> am 6fb8fe9a: Merge "StrictMode.permitCustomSlowCalls() should call disable(DETECT_CUSTOM)"

* commit '6fb8fe9aba75681509d84f68d536ed78d292bd44':
StrictMode.permitCustomSlowCalls() should call disable(DETECT_CUSTOM)
2caec6c682853ccbfe73ef5ae15c1d03ea043e8a 08-Aug-2012 Nick Kralevich <nnk@google.com> Fix link typo.

Change-Id: I182b9c04caddcc4a985f206eddf5c23b06afe0e3
uild.java
9d16c219f1ca0836a832e25a61fcaf9c1d0dd67b 08-Aug-2012 Nick Kralevich <nnk@google.com> Merge "Content Providers: change default for android:exported" into jb-mr1-dev
537915828b45693e846a126292e026c5b4f05152 08-Aug-2012 Dianne Hackborn <hackbod@google.com> Merge "More mult-user API work." into jb-mr1-dev
7d19e0242faac8017033dabb872cdf1542fa184c 08-Aug-2012 Dianne Hackborn <hackbod@google.com> More mult-user API work.

- You can now use android:singleUser with receivers and providers.
- New API to send ordered broadcasts as a user.
- New Process.myUserHandle() API.

For now I am trying out "user handle" as the name for the numbers
representing users.

Change-Id: I754c713ab172494bb4251bc7a37a17324a2e235e
rocess.java
b53e9b42c302a5c5ccd837aece6bfffdf0cb5bf2 07-Aug-2012 Scott Main <smain@google.com> am a8583c29: am 40eee61e: docs: fix broken links and update sitemap text file

* commit 'a8583c2934836572632bb82d1fe7607392d4ca72':
docs: fix broken links and update sitemap text file
a8583c2934836572632bb82d1fe7607392d4ca72 07-Aug-2012 Scott Main <smain@google.com> am 40eee61e: docs: fix broken links and update sitemap text file

* commit '40eee61e25fb887f5267686f8a0a7c5bd9f95769':
docs: fix broken links and update sitemap text file
f097b16cfddce2dbb097b929458fe9b0a402963e 28-Jul-2012 Nick Kralevich <nnk@google.com> Content Providers: change default for android:exported

Change the default value of android:exported to true
for applications which target a newer API version.
This will help stop inadvertent content provider
exposure to untrusted apps.

Bug: 3306452

Change-Id: I8cb34e823aef9551319951ce92217345c54cee63
uild.java
40eee61e25fb887f5267686f8a0a7c5bd9f95769 07-Aug-2012 Scott Main <smain@google.com> docs: fix broken links
and update sitemap text file

Change-Id: I6982c3f029c46135ae856b8484d906c2882bad3a
inder.java
088f29f55eebc6862a4cb5dddeaefacf24f74d95 05-Aug-2012 Jeff Sharkey <jsharkey@android.com> Cleaner controls between Vpn and init services.

Change-Id: I35edf054f4a1190f7fb7b4c48ee832e899c9528b
ystemService.java
6614bb657929c70dad988fb14b4b91f3b9d4f7fc 28-May-2012 Chuanxia Dong <chuanxiao.dong@intel.com> StorageManager: fix issue that GREF has increased to 2011 in system server with intel stress test.

Issue description:
When run ICS stress test, always meet GREF issue. one of contributor is MountService$MountServiceBinderListener.
log info
19:21:11.609 222 24316 W dalvikvm: 24 of com.android.server.am.ActivityManagerService$AppDeathRecipient (24 unique instances)
19:21:11.609 222 24316 W dalvikvm: 479 of com.android.server.MountService$MountServiceBinderListener (479 unique instances)
19:21:11.619 222 24316 W dalvikvm: 7 of com.android.server.accessibility.AccessibilityManagerService$6 (7 unique instances)
Note: PID 222 is system server.

Issue alaysis:
Everyone can call getSystemService(Context.STORAGE_SERVICE) to get service.
When other service get StorageManager, StorageManager will new MountServiceBinderLister and
register a listener in MountService, which won't be unregistered. It's easy to generate a lot of
instance of unused MountService$MountServiceBinderListener in system server.

Issue fix:
So change the policy to be:
1. Doesn't new MountServiceBinderLister in construction.
2. when other service needs to register listener in StorageManager,
StorageManager will register listener with MountService.
3. When other service needs to unregister listener in StorageManager,
if there is no more other listeners in StorageManager, StorageManager
will unregister listener in MountService.

Change-Id: Iaaf889f44a1a5f62b9f65b3ab1b486c9b7dcaf7f
Author: Chuanxiao Dong <chuanxiao.dong@intel.com>
Signed-off-by: Bo Huang <bo.b.huang@intel.com>
Signed-off-by: Jack Ren <jack.ren@intel.com>
Signed-off-by: Bruce Beare <bruce.j.beare@intel.com>
torage/StorageManager.java
4c7a4a776741ddaa49df1361aa3a8f3977e59196 03-Aug-2012 Raph Levien <raph@google.com> Fix bug 6930875: ArrayIndexOutOfBoundsException on Battery details

The wrong constant was used to count the number of user activity types.
The number of types changed recently, so before then nothing bad
happened. Now we get an AIOOB.

This is the change to NUM_USER_ACTIVITY_TYPES:

Change-Id: I05045180129b30fa09fe5f5e1e3b0ac25fee23b4
https://googleplex-android-review.googlesource.com/#/c/211982/
atteryStats.java
435cdb4604d9112c2fa8b2bb8d0ec49468bfdcf2 31-Jul-2012 Dianne Hackborn <hackbod@google.com> New API level 17 for JB MR1.

Change-Id: If71ce3b521fe17578feb5c2a2f7fd65696720554
uild.java
b696de5c10ebcc7bf42d8487fc0e56e0e937754d 28-Jul-2012 Jeff Brown <jeffbrown@google.com> Move and rename user activity event type constants.

Change-Id: Ie565808796773b6896e71ddfac6aaaf8031de846
ocalPowerManager.java
owerManager.java
155fc70252fd9ccee1f05da4e6966a99ec86d499 27-Jul-2012 Jeff Brown <jeffbrown@google.com> Flatten power manager wake lock constants.

We only support a few basic kinds of wake locks. Rather than
pretend that we could support other weird combinations of features,
just get rid of the feature bits.

Deprecated other wake lock types. We really want to encourage
developers to use FLAG_KEEP_SCREEN_ON instead of managing
their own wake locks, even though its behavior is not
exactly equivalent.

Change-Id: Idfeb0bc6efff0ef2736e47f72a06e69e5a16996e
owerManager.java
94838913abf6363532cd32b9c795917d808228cc 27-Jul-2012 Jeff Brown <jeffbrown@google.com> Implement equals() and hashCode() like a good little object.

Change-Id: I06fc8f96586c72095ffa142d52fbd71af05cee97
orkSource.java
df693de4fe12f081555b449e2726e205fbd86572 27-Jul-2012 Jeff Brown <jeffbrown@google.com> Fix inconsistency in user activity types.

Looks like BatteryStats was not updated when we reduced the number
of user activity types from 7 to 3.

Change-Id: I7465f86c78baa561a6555c33f681553b870827f2
atteryStats.java
ddd88726a247e4100cb62b3dc9d0887ca2ae2ec4 26-Jul-2012 Jeff Smith <whydoubt@yahoo.com> am 71930dd7: am a45746ef: Fix several cases of broken droiddoc syntax external issue 35214

* commit '71930dd77e4dc6f6be5c648019d2ab0da5f0584c':
Fix several cases of broken droiddoc syntax external issue 35214
71930dd77e4dc6f6be5c648019d2ab0da5f0584c 25-Jul-2012 Jeff Smith <whydoubt@yahoo.com> am a45746ef: Fix several cases of broken droiddoc syntax external issue 35214

* commit 'a45746efadd11bb7dfab026fb3c81a25fae74ca4':
Fix several cases of broken droiddoc syntax external issue 35214
a45746efadd11bb7dfab026fb3c81a25fae74ca4 19-Jul-2012 Jeff Smith <whydoubt@yahoo.com> Fix several cases of broken droiddoc syntax
external issue 35214

patch contributed by Jeff Smith <whydoubt@yahoo.com>

Change-Id: I70dcee88a140699bf3e1ab369bed6dcd2fdd3d83
torage/StorageManager.java
554cb0c290406f5bba34908489db5382a69d0a9a 05-Jul-2012 rpcraig <rpcraig@tycho.ncsc.mil> Introduce a restorecon JNI binding.

Label the vmdl.*\.tmp files and the final .apk file differently.
Modify the WallpaperManagerService to restorecon the wallpaper file.

Signed-off-by: rpcraig <rpcraig@tycho.ncsc.mil>

Change-Id: Idfc056e9ec0508d7e11100626a7114f341f1af70
ELinux.java
95f1158908d990bbf954d7cc78f3f214a6c84f1f 19-Jul-2012 Nick Pelly <npelly@google.com> Introduce SystemClock#elapsedRealtimeNano.

Change-Id: I47e1b14d45c5321f959d46e1805f86aafd72f5d4
ystemClock.java
ff1baef86c3b34fe2aec33a22bc2d06112af4c03 20-Jul-2012 Jeff Brown <jeffbrown@google.com> Fix keyguard wake-up issue.

Bug: 6835809
Change-Id: I7a23b50286592b4c4b104b0b6429f2d05fb5e01b
owerManager.java
0f42037eb7b5118015c2caca635538324ccf0ccf 12-Apr-2012 fredc <fredc@broadcom.com> Non persistent adapter service

Change-Id: Ib13d5c77416e58161df0e04d7a15ec0dddbde8b5

Conflicts:

core/java/android/bluetooth/BluetoothInputDevice.java

Conflicts:

core/java/com/android/internal/app/ShutdownThread.java
services/java/com/android/server/SystemServer.java

Conflicts:

services/java/com/android/server/SystemServer.java
services/java/com/android/server/pm/ShutdownThread.java
NetworkManagementService.aidl
3a6794cad739c2b6fcc9b3fc6c4461f88728af8a 17-Jul-2012 Matthew Xie <mattx@google.com> Merge "Changes to Bluetooth Service structure."
1abb1cb3a8fe17f7866150604c2fd73751da787e 26-Jan-2012 Jaikumar Ganesh <jaikumar@google.com> Changes to Bluetooth Service structure.

Changes to make Bluetooth Service part of the system_service.
These changes may be temporary.

Changes to update to the new disable API.

Change-Id: If89dba17e6e6c6daa53c37684221763a2da076e9

Conflicts:

services/java/com/android/server/pm/PackageManagerService.java
rocess.java
097fbf2e98e0d32baf6cbd1a5659c4145afb191f 13-Jul-2012 Qi Wang <wangqi0316@gmail.com> StrictMode.permitCustomSlowCalls() should call disable(DETECT_CUSTOM)
trictMode.java
430c25428a351bbf3d02b152050c7403457875e2 04-Jun-2012 Glenn Kasten <gkasten@google.com> Increase SchedulingPolicyService.PRIORITY_MAX to 3

This allows selected kernel workers to use 1, while audio preempts them
with 2 and 3.

Bug: 6461925
Change-Id: Ie132235f3027964749509f493fea44b48426c491
chedulingPolicyService.java
287a64af979451fde58148e723ef0ff89824718e 22-Jun-2012 Kenny Root <kroot@android.com> am ae017c55: am a9543a3d: Merge "Pass additional inputs when spawning apps via the Zygote and add SELinux permission checks."

* commit 'ae017c55824ca345186b0c9fc204401153bd8a23':
Pass additional inputs when spawning apps via the Zygote and add SELinux permission checks.
ae017c55824ca345186b0c9fc204401153bd8a23 21-Jun-2012 Kenny Root <kroot@android.com> am a9543a3d: Merge "Pass additional inputs when spawning apps via the Zygote and add SELinux permission checks."

* commit 'a9543a3dad0da58f30580bdf99b76bc2ab97a2df':
Pass additional inputs when spawning apps via the Zygote and add SELinux permission checks.
e6d2016be01273cb58ea58424596f3aa2b302a74 20-Jun-2012 Jeff Brown <jeffbrown@google.com> Merge "Clean up PowerManager API."
1244cdaedd5bb4518fc75c9a25b834190ea31877 20-Jun-2012 Jeff Brown <jeffbrown@google.com> Clean up PowerManager API.

Mostly just moved the code around and improved the docs.

Fixed a minor inefficiency in WakeLock.setWorkSource() where
we would tell the power manager that the work source was changed
even when the old work source and new work source were both null.

Fixed a bug in WakeLock.setWorkSource() where we would not
notify the power manager that the work source was changed if
there was no work source previously specified.

Added synchronized to WakeLock.setReferenceCounted.

Added a checked in WakeLock.acquireLocked() and WakeLock.release()
to check whether the wake lock is actually not held / held
before performing the corresponding operation. This change avoids
making redundant calls into the power manager service in the
case where the wake lock is not reference counted and acquire()
or release() have been called multiple times.

Made the PowerManager and WakeLock classes final. They are not
directly instantiable by applications so this change does not
break the API.

Removed a little dead code (one private constructor and an
unused constant).

Change-Id: I4e10cf893506115938a35756136c101256dccf30
owerManager.java
90542758d4fef2e5ff8badaf3b40c2a227fbfc47 20-Jun-2012 Irfan Sheriff <isheriff@google.com> Cleanup softap interface to netd

Change-Id: I01e6c5b5a5a8ddaf05b979f9cc6d1293c86e8773
NetworkManagementService.aidl
4d2bef3f850e75744ade93f95615c7cb4a7fefa0 19-Jun-2012 Nicolas Falliere <nicof@google.com> am 277c09f6: am 56bb344c: Merge "Added or fixed doctrings for required permissions." into jb-dev

* commit '277c09f6c16c4adfd50407e2fa4dbf61a0e06e55':
Added or fixed doctrings for required permissions.
277c09f6c16c4adfd50407e2fa4dbf61a0e06e55 19-Jun-2012 Nicolas Falliere <nicof@google.com> am 56bb344c: Merge "Added or fixed doctrings for required permissions." into jb-dev

* commit '56bb344ccfd3d261cea9987c98a17d0820279b17':
Added or fixed doctrings for required permissions.
9530e3a22d5ffa2019d1a5177b6a441d4d6d048b 19-Jun-2012 Nicolas Falliere <nicof@google.com> Added or fixed doctrings for required permissions.

Bug: 6591338
Change-Id: Ia2092f9994854701b5fa1425c371817367ae07ec
ibrator.java
10c45b6965baf9e0fbadd8b0b5742290689c6319 16-Jun-2012 Nick Pelly <npelly@google.com> Merge "Include WIFI scan's in Battery Stats."
6ccaa540a18a69e5343e3e4d507f341880fcde5a 16-Jun-2012 Nick Pelly <npelly@google.com> Include WIFI scan's in Battery Stats.

Call noteWifiScanStartedFromSource() when a scan is started.
Call noteWifiScanStoppedFromSource() when a scan is finished.

The current implementation tracks to UID that requested the scan, and
correctly tracks the duration of the scan. It ignores scan requests
that occur when a scan is already in progress. It does not distinguish
between active and passive scans.

Repurpose all the noteScanWifiLockAcquired/Released() plumbing
for WIFI scan tracking. The WIFI scan locks were never reported
to the user. Use noteFullWifiLock() when WIFI scan locks are used -
this makes sense because the power draw for a WIFI scan lock
should be about the same as for a full WIFI lock.

Bug: 6642581
Change-Id: Ida6e87992853698545b89f875c973a239218317d
atteryStats.java
be782a6aa0f7c656ed0dce468b9722c3acde8358 11-Jun-2012 Dianne Hackborn <hackbod@google.com> am 3857681e: am a7e3a1e0: Merge "Include important native processes in watchdog stacks." into jb-dev

* commit '3857681e5885b64e593dcc3e28492b156d860ed3':
Include important native processes in watchdog stacks.
3857681e5885b64e593dcc3e28492b156d860ed3 11-Jun-2012 Dianne Hackborn <hackbod@google.com> am a7e3a1e0: Merge "Include important native processes in watchdog stacks." into jb-dev

* commit 'a7e3a1e0e7d308e7e78a1992038a34485d04ab29':
Include important native processes in watchdog stacks.
f72467ad9843bf5d4b75fb308386e77ebb5c3447 09-Jun-2012 Dianne Hackborn <hackbod@google.com> Include important native processes in watchdog stacks.

Helps us track down deadlocks involving native service processes.

Bug: 6615693
Change-Id: I580047550772e29586195a8cf440141574e3f40c
ebug.java
rocess.java
450f21a97da3d12fa835ed436cab251bbc34cf89 08-Jun-2012 Kenny Root <kroot@google.com> am d26f7139: Merge "resolved conflicts for merge of 9855f6e2 to jb-dev-plus-aosp" into jb-dev-plus-aosp

* commit 'd26f7139a7ff42ca1be470657515767f7509955b':
Add JNI bindings for some of the libselinux interfaces.
e38b1c4d156a569efc646e86a72ab3a3e3ccf6fc 08-Jun-2012 Kenny Root <kroot@google.com> resolved conflicts for merge of 9855f6e2 to jb-dev-plus-aosp

Change-Id: I012bd3b5946dedba3439285caa93739d44ebc60f
20e14948f2f1f2d5f490104f43411732e0e7cb91 06-Jun-2012 Dianne Hackborn <hackbod@google.com> am 82811d45: am 533fce25: Merge "Docs (mostly): enumerate JELLY_BEAN target SDK changes." into jb-dev

* commit '82811d45ed21ccdff77d11495fa2045c7942bd6d':
Docs (mostly): enumerate JELLY_BEAN target SDK changes.
636fd528f7ad51f565a390226d9f469f8c675ccf 06-Jun-2012 Dianne Hackborn <hackbod@google.com> Docs (mostly): enumerate JELLY_BEAN target SDK changes.

Okay this isn't entirely docs. I have un-hidden the new permission
for binding to accessibility services; we were going to go out with
it hidden since it didn't go into factory ROM, but now that we are
doing other things we might as well expose it.

Also changed a log from E to W, since it is not an error.

Change-Id: I9226c95e3b63e12218fe41dc3f4290d9824a9e5c
uild.java
9c0d9cf25ffdf4f6545e489b22ba621bf0b7ba29 01-Jun-2012 Eino-Ville Talvala <etalvala@google.com> Add camera as an ATRACE tag

Change-Id: I7b4fc51f8b0eb97190817f8cbc9f743b0d112922
race.java
0100625bb316ecbd99873b72756ffba8613c3456 24-May-2012 Fabrice Di Meglio <fdimeglio@google.com> Merge "Fix bug #6522190 MountService should respond to configuration changes ("INTERNAL STORAGE" string should be translated dynamically)" into jb-dev
13fe2a5330a5df662d7b1b136e7b08fe34c94a42 19-May-2012 Fabrice Di Meglio <fdimeglio@google.com> Fix bug #6522190 MountService should respond to configuration changes ("INTERNAL STORAGE" string should be translated dynamically)

- use an ID instead of a String for StorageVolume description
- use this ID for getting the correct localized version of the description string

Change-Id: I30f3080fce2c889be38bfdf9f5121dffcf8a99e8
torage/StorageVolume.java
d525baa3a84928e16973fcf7f3d464adac513c1d 23-May-2012 Jeff Sharkey <jsharkey@android.com> Add media directory, hidden for now.

Bug: 6539384
Change-Id: I8f3f7b92d27f15e82a43bb2fec02f2d9ed0280e1
nvironment.java
13b907353f18215b52b5ceda24bbf520d91d72a1 21-May-2012 Romain Guy <romainguy@google.com> Remove unused, obsolete debug code

All these features have either been abandonned and left un-maintained
for years or can be replaced by systrace.

Change-Id: I42e4579a8078744047e5fe08a7a15254970b09bc
ooper.java
2c1b8c744daf1dfb3cc545effaf9a43e342a3d38 21-May-2012 Romain Guy <romainguy@google.com> Update AsyncTask documentation

Change-Id: I678506309f027bb12d0c3f42436a60611aca5d8c
syncTask.java
51a573c76737733638c475f52e441c814e6645cc 17-May-2012 Kenny Root <kroot@google.com> Wait for ASECs to be scanned before proceeding

Move MountService up the list, then pause waiting for MountService to
finish scanning ASECs before the services that require those packages to
be ready.

Additionally, don't automatically mark all ASEC apps as FLAG_EXTERNAL on
reboot. This prevents AppWidgets and other things from being used with
ASECs which are on internal storage.

Bug: 6445613
Change-Id: I3e0b3e244fec966814d7a5ea93de5d337aea79bd
torage/IMountService.java
f558780c20b25b85e2e8f3f03ab76c460fb8bf1d 17-May-2012 Jeff Brown <jeffbrown@google.com> Add a label for the new video trace tag.

Change-Id: Ie296b4b5ca73987cdea7766f8698fc43704b2e81
race.java
58770232216cd735afdfd3dd53151070e06de5ce 12-May-2012 Jeff Brown <jeffbrown@google.com> Merge "Move power HAL interactions to PowerManagerService." into jb-dev
7304c343821309dd15f769b18f1de2fa43751573 12-May-2012 Jeff Brown <jeffbrown@google.com> Move power HAL interactions to PowerManagerService.

This refactoring sets the stage for a follow-on change that
will make use additional functions of the power HAL.

Moved functionality from android.os.Power into PowerManagerService.
None of these functions make sense being called outside of the
system server. Moving them to the PowerManagerService makes it
easier to ensure that the power HAL is initialized exactly once.

Similarly, moved ShutdownThread out of the policy package and into
the services package where it can tie into the PowerManagerService
as needed.

Bug: 6435382
Change-Id: I958241bb124fb4410d96f5d5eb00ed68d60b29e5
ower.java
owerManager.java
d83fdd03a1daaf577d80c8abda86c7c01bf6d3bb 12-May-2012 Jamie Gennis <jgennis@google.com> Merge "Trace: add a tracing tag for video" into jb-dev
24dae6c611455ec38675554033e4d18810d77d6c 11-May-2012 Jamie Gennis <jgennis@google.com> Trace: add a tracing tag for video

Change-Id: If4c3c76b049a475ca99eb258dc3d432435e77dc0
race.java
fa61f0b2e25382d3a8ea35024dd227606151e87a 10-May-2012 Dianne Hackborn <hackbod@google.com> JellyBean is now 4.1.

Change-Id: Ie37a7c4356d593010686d5dc7d6e715d30099e1e
uild.java
59325eb31f25704bb88c348160bb69e7c1aa3b48 10-May-2012 Dianne Hackborn <hackbod@google.com> Add new API to find total RAM.

Change-Id: Iad2dff3c44f471515f093e7f0d0d959528881ab9
rocess.java
a53de0629f3b94472c0f160f5bbe1090b020feab 09-May-2012 Dianne Hackborn <hackbod@google.com> Add callback hack to find out when to load system properties.

Use this to reload the trace and layout bounds properties.

This is ONLY for debugging.

Change-Id: I1c4bdb52c823520c352c5bac45fa9ee31160793c
Binder.java
erviceManagerNative.java
ystemProperties.java
race.java
feecf9d7869c87dfe11d594640d0c7ad2045d1fb 09-May-2012 Dianne Hackborn <hackbod@google.com> Merge "Support for changing traces from development settings." into jb-dev
83e6eb11d7ec24e7c363beccab0806989ad89ec5 08-May-2012 Dianne Hackborn <hackbod@google.com> Support for changing traces from development settings.

Publish information needed to build UI, fix SystemProperties.getLong()
to be able to read this property, fix some issues in
MultiCheckPreference.

Change-Id: I10c8ff84a167fdb42f6c93500201b78b844cfb8b
race.java
947f1c8db00bd3805838ff49a5f4d220df507b47 08-May-2012 Jeff Brown <jeffbrown@google.com> Merge "Move CancellationSignal to android.os package." into jb-dev
a7771df3696954f0e279407e8894a916a7cb26cc 08-May-2012 Jeff Brown <jeffbrown@google.com> Move CancellationSignal to android.os package.

Bug: 6427830
Change-Id: I39451bb1e1d4a8d976ed1c671234f0c8c61658dd
ancellationSignal.java
CancellationSignal.aidl
perationCanceledException.java
ebd6016b8c6faf70b44283c59461023cda1ca6b0 08-May-2012 Glenn Kasten <gkasten@google.com> Merge "Add audio tag to systrace" into jb-dev
ed853fc4e0ba8ce0692d65064e12cf129b5d1f3e 07-May-2012 Glenn Kasten <gkasten@google.com> Add audio tag to systrace

Change-Id: I3c5af7c5d166ff24ef57918a4dbda6327b03cc1f
race.java
a2ad65692481510496e367b593facf778f49249b 07-May-2012 Romain Guy <romainguy@google.com> Increase the Message pool size

Change-Id: If609c9ffbea800ff6409b0096a82f0b899f29343
essage.java
d0c66f6a8f15bb95648b4306d2583575d0bb9935 06-May-2012 Pin Ting <pinting@google.com> Merge "Fix javadoc." into jb-dev
c4be1b7e963413c110d8a6ee9fdd4fd7443fb2e0 04-May-2012 Andy Stadler <stadler@google.com> Merge "Add System Tracing capability to Sync Manager" into jb-dev
09b45a3ad96379b4181d32f8391f63e9c57dc316 04-May-2012 Andy Stadler <stadler@google.com> Add System Tracing capability to Sync Manager

This tracing code is enabled via "systrace.py --set-tags sync"

Change-Id: Ia8bc01adbba345a568405b0ac8ade96e56b40cc1
race.java
e8914c36276710de50b347c1e6aecfa45d6a56cd 02-May-2012 Jeff Sharkey <jsharkey@android.com> Begin collecting xtables iface counters.

Add method to parse new iface_stat_fmt proc stats, or return null
when kernel support is unavailable. Add test and remove older, unused
parsing code. Create new "xt" recorder to persist the new xtables
counters when available.

Add SSID support to NetworkIdentity to fix policy tests.

Bug: 6422414
Change-Id: I77f70e9acb79a559ab626f3af5c4f3599801ed43
NetworkManagementService.aidl
32c8113510b2774f865e8ac763976b90d9db2706 01-May-2012 Jeff Brown <jeffbrown@google.com> Fix Javadoc.

Bug: 6418632
Change-Id: Ib17218c413cbdf26bab19ccd873de33e67dd3397
andler.java
8e6159b821c0782776c030ab588c3e0d1d0143f6 27-Apr-2012 Dianne Hackborn <hackbod@google.com> Merge "Add traces for window manager and activity manager." into jb-dev
1ded0b1f6af65c2f95f8327f7f3df4cee1bf2346 26-Apr-2012 Dianne Hackborn <hackbod@google.com> Add traces for window manager and activity manager.

Change-Id: I525d762db328e4c597da27b6b56d9a808e199756
race.java
14a9310efd936149c82ecfcc37c7c8308968f67c 25-Apr-2012 Pin Ting <pinting@google.com> Fix javadoc.

Change-Id: Ibbfee452cae76a379dcd360412de962e90f29da5
onditionVariable.java
andlerThread.java
6dceb88f1c7c42c6ab43834af2c993d599895d82 12-Apr-2012 Kenny Root <kroot@google.com> Allow forward locked apps to be in ASECs

We couldn't put forward-locked apps in ASEC containers before since we
didn't have any permissioned filesystems. This adds the ability for
forward-locked applications to be in ASEC containers.

This means that forward locked applications will be able to be on the SD
card now.

This change also removes the old type of forward-locking that placed
parts of apps in /data/app-private. Now all forward-locked applications
will be in ASEC containers.

Change-Id: I17ae0b0d65a4a965ef33c0ac2c47e990e55707ad
torage/IMountService.java
bb9d6e6d8f3062302f229b8e2d133eae312a148b 25-Apr-2012 Jeff Sharkey <jsharkey@android.com> Merge "Relax global restrict for system services."
5294a2fc2f401cd248a4bc3f0f9ee1e2854f4e9a 25-Apr-2012 Jeff Sharkey <jsharkey@android.com> Relax global restrict for system services.

Since we control system services, we can ensure they are using little
data when data usage is globally restricted. Continue restricting
AID_MEDIA and AID_DRM, since they respond to app requests.

Bug: 6377903, 5772564
Change-Id: I196bf334f903397ea6a67e6802240ee792e47b54
rocess.java
07b0465095bd9ab3412caefa4fcacbdc3825c64b 24-Apr-2012 Glenn Kasten <gkasten@google.com> Scheduling policy service

Change-Id: I6178b96896ffbb3323210f93784a65d724a3e694
SchedulingPolicyService.aidl
rocess.java
chedulingPolicyService.java
ba6be8a62dcdb3ffd210cd36b9af4e3a658eac47 24-Apr-2012 Romain Guy <romainguy@google.com> Prevent WebView from crashing when detached from the window
Bug #6365056

WebView enqueues a functor in the hardware renderer to handle
animations and this functor is called at a later time by the
hardware renderer. However, the functor was not removed from
the queue when WebView was removed from the window. This could
cause the hardware renderer to attempt to execute an invalid
functor and lead to a crash.

Change-Id: I9d38e80f3fdc5e29d4d0cdfa1e893c251a954508
andler.java
essageQueue.java
f1b56449f58963e4f0473d5e26961f68c31759f4 16-Mar-2012 Glenn Kasten <gkasten@google.com> Scheduling group cleanup

The C++ API for scheduling groups is going away, so use the C API.

Renumber THREAD_GROUP_* constants to have the same values as SP_*.
They are @hide so this should be OK.

The old THREAD_GROUP_FG_BOOST constant is removed, and replaced by a
(private) THREAD_GROUP_FOREGROUND constant that is just a placeholder
to correspond to SP_FOREGROUND. It is not usable at this level.

Improved performance of android_os_Process_setProcessGroup:
avoid unnecessary syscall to getpriority for each tid.

Fixed error handling in android_os_Process_setThreadGroup.
It raises an exception if set_sched_policy() returns an error.

Add comments and fix typos in existing comments.

Change-Id: Ib922e92c945985c695ef0addbd2b83b8e82865f8
rocess.java
4b12171c64176aa8967b7a91c293ab0403b26e46 18-Apr-2012 Jeff Sharkey <jsharkey@android.com> Merge "Update Environment fallback defaults."
a51a9564fd53b661446cd63eea23208656acc678 18-Apr-2012 Craig Mautner <cmautner@google.com> Add call-stack reporting methods into Debug

Added two public methods to Debug. These methods return a String
indicating the caller (getCaller()) or callers (getCallers(int depth))
of the calling method. The String indicates the class, method and line
number of the caller(s). Similar to using Throwable.fillInStackTrace()
but much more concise.

Change-Id: I53d0085aa50e4501d28e8eb3ad5b91ef700ac218
ebug.java
e704a15bbf0d8f2595215e13175c1f6cdcc8f5e5 18-Apr-2012 Jeff Sharkey <jsharkey@android.com> Update Environment fallback defaults.

Change-Id: Ia385b03023e38c01546e57635ccf9b29d017220a
nvironment.java
192a65e9f6ebdc452520e19f95c68c270b3f96da 17-Apr-2012 Chris Craik <ccraik@google.com> Add webview tracing bit

Change-Id: I7e292cf780fa2e59f183debb0e7e2bc61f27543d
race.java
a47425a13c19f95057df78b8bb65bb25657e8753 13-Apr-2012 Jeff Brown <jeffbrown@google.com> Add support for input devices that have vibrators.

Added a getVibrator() method to InputDevice which returns a Vibrator
associated with that input device. Its uses the same API as the
system vibrator which makes it easy for applications to be modified
to use one or the other.

Bug: 6334179
Change-Id: Ifc7f13dbcb778670f3f1c07ccc562334e6109d2e
ullVibrator.java
c2346134bb519a54d50655cbef940fc3fdec60a9 13-Apr-2012 Jeff Brown <jeffbrown@google.com> Extract Vibrator implementation from interface.

Moved the core logic of Vibrator into SystemVibrator, potentially
allowing for the creation of other Vibrator subclasses.

Fixed several places where we were creating new Vibrator
instances unnecessarily instead of getting it from the Context.

It is safe to make Vibrator abstract because its constructor
was hidden from the SDK so it was not possible to subclass it.

Bug: 6334179
Change-Id: I18ece6544c26a7efb2d5099f8346a10aef8a5e18
ystemVibrator.java
ibrator.java
8f3b8e32993d190a26c70c839a63d8ce4c3b16d9 28-Mar-2012 Romain Guy <romainguy@google.com> Allow fine-grained control over functors execution

Adds non-drawing execution mode

Change-Id: I82f92cf1b9a3b9ff2ca6d7427c4e02b73e04e6bf
essage.java
83d9eda9c2c411e3480c52f01e192bf3c86be8e9 13-Jan-2012 Stephen Smalley <sds@tycho.nsa.gov> Pass additional inputs when spawning apps via the Zygote and add SELinux permission checks.

When spawning an app process, the ActivityManagerService has additional information
about the app package that may be useful in setting a SELinux security context on the
process. Extend the Process.start() interface to allow passing such information
to the Zygote spawner. We originally considered using the existing zygoteArgs
argument, but found that those arguments are appended after the class name and
left uninterpreted by ZygoteConnection, merely passed along to the class or wrapper.
Thus we introduce a new seInfo argument for this purpose.

Modify the ZygoteConnection to interpret the new option and convey it to
forkAndSpecialize, as well as passing the nice name as a further input.
Also modify the ZygoteConnection to apply SELinux permission checks on
privileged operations.

Change-Id: I66045ffd33ca9898b1d026882bcc1c5baf3adc17
rocess.java
c07fca3831baf4d812dd724f506b4ed23dcc39e0 13-Jan-2012 Stephen Smalley <sds@tycho.nsa.gov> Add JNI bindings for some of the libselinux interfaces.

Change-Id: Ifcc68cb06f9f56a04f3bc64dd9906a9436fabc88
ELinux.java
0c44525a4888de321c9497204d59c8515f828499 24-Mar-2012 Jeff Sharkey <jsharkey@android.com> Merge "Copy EXTRA_STREAM into ClipData and grant."
678d04f1b6d189b2d867d518065f90dce7292863 23-Mar-2012 Jeff Sharkey <jsharkey@android.com> Copy EXTRA_STREAM into ClipData and grant.

When sending SEND or SEND_MULTIPLE intents, copy any EXTRA_STREAM
Uris to ClipData and set GRANT_READ_URI_PERMISSION flag.

Bug: 6216357
Change-Id: I3c9b0d1d4b7e0c4655b47c4192150b0c3641e0e8
undle.java
ad812a23df775062f0185076557e7f3fdfa57943 22-Mar-2012 Amith Yamasani <yamasani@google.com> Merge "Package restrictions per user"
8a8b581e669f6187b397f856a567a76ed8aba2c2 22-Mar-2012 Jeff Sharkey <jsharkey@android.com> Move network policy to per-appId (instead of UID).

To support multi-user, store network policy per-appId and expand to
apply rules to all UserInfo on device.

Bug: 6140462
Change-Id: Ic0866b4d41c8c60cc1c0a597f0de927b92b65b1e
serId.java
483f3b06ea84440a082e21b68ec2c2e54046f5a6 14-Mar-2012 Amith Yamasani <yamasani@google.com> Package restrictions per user

Packages can be enabled/disabled per user.
This requires maintaining stopped/launched states and
enabled / disabled components and packages per user.

Refactored pm.Settings and PackageSettingsBase to keep
track of states per user.

Migrated the stopped-packages.xml to users/<u>/package-restrictions.xml

Changed intent resolution to handle individual user restrictions.
Bunch of IPackageManager calls now have a userId argument.
Make AppWidgetService handle removals of packages.

Added some tests for pm.Settings and PackageManager.

Change-Id: Ia83b529e1df88dbcb3bd55ebfc952a6e9b20e861
serId.java
ab750c5e29afa8543a067bf05f502b1fa6748216 20-Mar-2012 Kenny Root <kroot@google.com> Merge "Add VPN UID to list in Process"
26993b37d525fd64efebd51daec1b4abfebd8a74 19-Mar-2012 Kenny Root <kroot@google.com> Add VPN UID to list in Process

The VPN user ID is defined in android_filesystem_config.h as 1016. Add
it to android.os.Process so it can be referred to in Java code.

Change-Id: If3da3765747afda4e5e0761e289c45eebc7cddd5
rocess.java
3761f33387f980d7a6c6e06555a5a932ba7247a2 16-Mar-2012 Jeff Sharkey <jsharkey@android.com> Move StrictMode timers to postAtFrontOfQueue().

StrictMode posts a message to estimate how long the main thread was
blocked during a violation. Currently, any pending messages are
counted against the violation. To avoid this, switch to using
postAtFrontOfQueue().

Bug: 6119289
Change-Id: I94530632ca678b78b75a698cf9193641b102be9a
trictMode.java
a8c67eb904b7b78856ef58ef6a4ec10e6dccccb2 12-Mar-2012 Jeff Brown <jeffbrown@google.com> Merge "Add Java wrappers for new atrace functionality."
481c1570dc5cdf58265b53f657801709dd05d1df 09-Mar-2012 Jeff Brown <jeffbrown@google.com> Add Java wrappers for new atrace functionality.

Instrument a few parts of the input dispatcher and the
view hierarchy.

Change-Id: I49285c9fb3502253baa1ffed60f521b8c24fccaf
race.java
f76a50ce8fdc6aea22cabc77b2977a1a15a79630 09-Mar-2012 Ken Wakasa <kwakasa@google.com> Fix obvious typos under frameworks/base/core

Change-Id: Ia5fc3db1bb51824e7523885553be926bcc42d736
arcel.java
arcelUuid.java
047238ced42eea812de9d39a9f32e94d002bfa5c 08-Mar-2012 Jeff Sharkey <jsharkey@android.com> Switch Parcel to static JNI calls, pass pointer.

Instead of using parcelForJavaObject(), pass down the mNativeObj
pointer explicitly. Benchmarks show that writeInt() is roughly 3x
faster with this approach.

Change-Id: I24ca235c334c44be716070aa8066ec8a429eadb7
arcel.java
061ccee7f384925f11b51a68f8d48f2f27baba87 09-Mar-2012 Jeff Sharkey <jsharkey@android.com> Merge "Deprecate some FileUtils, pointing to Os instead."
929b5899a348d2d43f67902f7a807d6660226a64 08-Mar-2012 Jeff Sharkey <jsharkey@android.com> Deprecate some FileUtils, pointing to Os instead.

Change-Id: I5d306784ea924ffd8c32c4768f975190445932a4
ileUtils.java
e61cad321d2888f2b6b7e0322158211e3b3e0c46 08-Mar-2012 Dirk Dougherty <ddougherty@google.com> resolved conflicts for merge of 532679a5 to master

Change-Id: Id60d047c0e1f288acff97526c016cca632873b6b
4d7bc65538c7cd9fbb1fbbcf22d1da47fcee1219 28-Jan-2012 Dirk Dougherty <ddougherty@google.com> Doc change: String changes for Android Market

Change-Id: I823812a4fd24021bec906ad856479c92a8d2a759
trictMode.java
6569625beef705ec489662b80d372c4423f9c7f7 06-Mar-2012 Dianne Hackborn <hackbod@google.com> Fix issues #6103378 and #5959515.

Change-Id: I762d86dd7119c9ac02f4b8803c4a250c6b7637c7
6103378: APR: IOOBE at android.content.pm.PackageParser.generatePackageInfo(
PackageParser.java:355)
5959515: PackageManager doesn't validate className in setComponentEnabledSetting
uild.java
09c8f48c105c4ed299617aaa892c7f0cd891b144 05-Mar-2012 Jeff Sharkey <jsharkey@android.com> Merge "Report leaked Context registrations to StrictMode."
eb00769e8983a02397db26a5413147a975b47c1f 03-Mar-2012 Jeff Sharkey <jsharkey@android.com> Merge "Allow disk I/O while performing dump()."
e861b423790e5bf2d5a55b096065c6ad0541d5bb 02-Mar-2012 Jeff Sharkey <jsharkey@android.com> Allow disk I/O while performing dump().

Add Closeable to ParcelFileDescriptor, and always close any incoming
PFDs when dumping.

Bug: 6106309
Change-Id: I25b465692d5e1da0a5980a307cb48a058bc2bca7
arcelFileDescriptor.java
d7026f1612a7c1e8cc9b484038fa99b7fc29cfd7 02-Mar-2012 Jeff Sharkey <jsharkey@android.com> Report leaked Context registrations to StrictMode.

When tearing down any leaked BroadcastReceiver or ServiceConnection
Context registrations, report through StrictMode.

Bug: 6084353
Change-Id: I5e78039299e2c9c1440cd1fd09317da78ffee82a
trictMode.java
b1ec5ef460ac62fa8d3e621794787336e513a8ef 02-Mar-2012 Jeff Brown <jeffbrown@google.com> Shouldn't catch Throwable in AsyncTask.

Throwable includes classes of Error that really should be fatal.

Bug: 5945222
Change-Id: I602f958396048451f404dd2306cdf5e57172acf0
syncTask.java
8662cab5c6a01ea5c426512e6f6d2cf3e158aea0 23-Feb-2012 Christopher Tate <ctate@google.com> Merge: Introduce UpdateLocks

An "UpdateLock" works similarly to a wake lock in API: the caller is
providing a hint to the OS that now is not a good time to interrupt
the user/device in order to do intrusive work like applying OTAs.
This is particularly important for headless or kiosk-like products
where ordinarily the update process will be automatically scheduled
and proceed without user or administrator intervention.

UpdateLocks require that the caller hold the new signatureOrSystem
permission android.permission.UPDATE_LOCK. acquire() and release()
will throw security exceptions if this is not the case.

The "is now convenient?" state is expressed to interested parties
by way of a sticky broadcast sent only to registered listeners. The
broadcast is protected; only the system can send it, so listeners
can trust it to be accurate. The broadcast intent also includes a
timestamp (System.currentTimeMillis()) to help inform listeners that
wish to implement scheduling policies based on when the device became
idle.

The API change here is a tiny one: a dump(PrintWriter) method has been
added to the TokenWatcher class to facilitate getting information out
of it for dumpsys purposes. UpdateLock itself is still @hide.

Bug 5543442

Change-Id: I3709c831fc1883d7cb753cd2d3ee8e10a61e7e48
UpdateLock.aidl
okenWatcher.java
pdateLock.java
94d0024557f415b8463f085c9784a3e1d02b58c6 12-Jan-2012 Todd Poynor <toddpoynor@google.com> Power HAL PowerManagerService hookup

Use PowerHAL to set system awake/suspend state.

Change-Id: If58a6f548564ea141b68f304455997d9ff04eace
Signed-off-by: Todd Poynor <toddpoynor@google.com>
ower.java
aa917f852241c07a6cea7022ff6e42df33975869 17-Feb-2012 Jeff Brown <jeffbrown@google.com> Merge "Improve MessageQueue sync barrier implementation."
0f85ce3837633a03460a61405087a5d28a4bf955 16-Feb-2012 Jeff Brown <jeffbrown@google.com> Improve MessageQueue sync barrier implementation.

Instead of acquiring and releasing a barrier using an up/down
counter, we post a message to the queue that represents the
barrier. This is a more natural representation of the barrier
and better matches what we want to do with it: stall messages
behind the barrier in the queue while allowing messages earlier
in the queue to run as usual.

Refactored the MessageQueue a little bit to simplify the quit
logic and to better encapsulate the invariant that all
messages within the queue must have a valid target. Messages
without targets are used to represent barriers.

Bug: 5721047
Change-Id: Id297d9995474b5e3f17d24e302c58168e0a00394
andler.java
ooper.java
essageQueue.java
37237839e87988208296a57d70767ebbd9c6880b 12-Jan-2012 John Grossman <johngro@google.com> Add Java interfaces to the common_time services.

Add classes to handling binder marshalling to and from the native
common_time interfaces (config and clock)

Change-Id: I04fc429d9af27736c4f7f9b5468011ffdd4d7eaa
Signed-off-by: John Grossman <johngro@google.com>
ommonClock.java
ommonTimeConfig.java
ommonTimeUtils.java
e799cb78b4be61d3882e71c6812fa62c9a83fd5d 14-Feb-2012 Jeff Brown <jeffbrown@google.com> Add a barrier mechanism to the MessageQueue.

The synchronization barrier enables selectively blocking
execution of synchronous messages until the barrier is released.
Asynchronous messages may continue running in the meantime.

The barrier is intended to be used to implement more sophisticated
scheduling policies related to view hierarchy traversals. While
traversals are pending, most messages posted to the message queue
must be held up. This is to satisfy the invariant that traversals
will occur before subsequently posted messages are handled.

The exception to this rule are "asynchronous" messages that represent
external events or interrupts that come from other components such
as VSYNC pulses, input events or sensor events. Because these messages
are typically delivered at arbitrary times, they are independent of
traversals or other typical synchronization boundaries.

Messages can now be flagged as asynchronous to indicate that they
are weakly ordered.

Bug: 5721047
Change-Id: I1446dcfbc896f33b48355adc28967ace8c8c9b9b
essage.java
essageQueue.java
f0451db4224e2b6360efa39cd65c88cd391f14e0 10-Feb-2012 Amith Yamasani <yamasani@google.com> Merge "Multi-user - wallpaper service"
37ce3a8af6faab675319d0803b288ab1dddc76be 06-Feb-2012 Amith Yamasani <yamasani@google.com> Multi-user - wallpaper service

- Allow each user to have their own wallpaper (live or static).
- Migrate old wallpaper on upgrade.
- Update SystemBackupAgent to backup/restore from primary user's
new wallpaper directory.

Reduce dependency on Binder.getOrigCallingUser() by passing the
userId for bindService.

Change-Id: I19c8c3296d3d2efa7f28f951d4b84407489e2166
serId.java
cba928cef7d614d375253246f014c4a52bb8b913 18-Aug-2011 Mike Lockwood <lockwood@android.com> SystemServer: Add support for disabling AudioService and MountService

Using the same convention in system_init.cpp, you can disable these
services by setting system properties:

system_init.startaudioservice=0
system_init.startmountservice=0

Signed-off-by: Mike Lockwood <lockwood@android.com>
torage/StorageManager.java
21fbd1f7da53dc044737803dccddf8099f1fc1e9 10-Feb-2012 Dianne Hackborn <hackbod@google.com> Some cruft removal.

Change-Id: If4a94bfd4a033748eb13e8f3ff25e24382746778
rocess.java
a573f6a1d9b12393fbdfd2c0850499973849854b 10-Feb-2012 Dianne Hackborn <hackbod@google.com> Some hardening of isolated processes by restricting access to services.

Services now must explicitly opt in to being accessed by isolated
processes. Currently only the activity manager and surface flinger
allow this. Activity manager is needed so that we can actually
bring up the process; SurfaceFlinger is needed to be able to get the
display information for creating the Configuration. The SurfaceFlinger
should be safe because the app doesn't have access to the window
manager so can't actually get a surface to do anything with.

The activity manager now protects most of its entry points against
isolated processes.

Change-Id: I0dad8cb2c873575c4c7659c3c2a7eda8e98f46b0
ServiceManager.java
erviceManager.java
erviceManagerNative.java
serId.java
a0c283eac33dd2da72235751bbfa4f2d9898d5ea 09-Feb-2012 Dianne Hackborn <hackbod@google.com> Add new feature for running services in "isolated" sandbox processes.

This reserves a range of uids (for each user) in which these processes
run. These uids are not associated with an application, so they
effectively run with no permissions. When a Service requests to
run in such a process through android:isolatedProcess="true", each
time it is brought up a new isolated process is started with its
own unique uid.

What we have so far gives us the basic infrastructure; more work
remains to further lock down what these uids have access to.

Change-Id: Ibfd27c75619cba61f528f46ede9113f98dc5f45b
rocess.java
742a67127366c376fdf188ff99ba30b27d3bf90c 04-May-2011 Amith Yamasani <yamasani@google.com> Multi-user - 1st major checkin

Switching activity stacks
Cache ContentProvider per user
Long-press power to switch users (on phone)

Added ServiceMap for separating services by user
Launch PendingIntents on the correct user's uid
Fix task switching from Recents list
AppWidgetService is mostly working.

Commands added to pm and am to allow creating and switching profiles.

Change-Id: I15810e8cfbe50a04bd3323a7ef5a8ff4230870ed
inder.java
serId.java
5e9120d4adfb07aeeadb0e0de1de2eb9ebbd80e0 30-Jan-2012 Romain Guy <romainguy@google.com> Always initialize AsyncTask on the main thread.

Change-Id: I039e5d6cb7157a0c8873e0d29161daf1cbda5577
syncTask.java
81e9276a479fd3a5ccc3129505c0fb018941934b 10-Oct-2011 Dianne Hackborn <hackbod@google.com> Added JELLY_BEAN version name; update some targetSdkVersion docs.

Change-Id: Ia38ff5b9ad2b63c2cf667260881222d9ff168052
uild.java
d9ea468d6a9cb6018ce33d3dcf9db72f02773af1 21-Jan-2012 Dianne Hackborn <hackbod@google.com> New brightness setting to adjust auto-brightness mode.

Change-Id: Icfec22be99d8c79e9ff5720b80fb9dacbba36134
PowerManager.aidl
a7f656206550dea94e51dd8c9bb2dd8734bcdf92 17-Jan-2012 Glenn Kasten <gkasten@google.com> Merge "Add android.os.Process.setThreadScheduler"
7f97e65add29b3887755e998804b013168f773b1 15-Dec-2011 Jeff Sharkey <jsharkey@android.com> Clear reply before writing exception.

Changes Binder.execTransact() to clear any partial reply before
writing the exception. Specifically, this fixes case where an
onTransact() could leave a writeNoException() floating in the reply.

Bug: 5686023
Change-Id: Ibc944464a010f5ec2fd8ef3cc84ac23d8260a491
inder.java
84a0060ea1379eec2f6f2a9e48fa7e1ada3a4fa9 08-Dec-2011 Joe Malin <jmalin@google.com> am bea42859: am aa2719df: am 3937e055: Merge "DOC CHANGE: Add text for android.os.storage" into ics-mr0

* commit 'bea4285934b4cd5bab21f7c69ac82d871b6ee05f':
DOC CHANGE: Add text for android.os.storage
aa2719df72225402737009b1cc2e3cfea8e74bc7 08-Dec-2011 Joe Malin <jmalin@google.com> am 3937e055: Merge "DOC CHANGE: Add text for android.os.storage" into ics-mr0

* commit '3937e055708a8618f184feab204fed4bb41f3f6e':
DOC CHANGE: Add text for android.os.storage
13235db8f780a3cb322545687041b066dd74e736 06-Dec-2011 Joe Malin <jmalin@google.com> DOC CHANGE: Add text for android.os.storage

Change-Id: Ia5785cff3860907af4c53cbe769126496ee338c3
torage/package.html
138d870fb7b83bc2af54e87546abb883476298ff 07-Dec-2011 Dianne Hackborn <hackbod@google.com> am 1f1fa7ed: am fb90df8c: Merge "Truthiness is good." into ics-mr1

* commit '1f1fa7edd608137863b863da44ee26efb5a93e23':
Truthiness is good.
478237db07b1fc1f19d20a61adf2dc08e713e881 06-Dec-2011 Dianne Hackborn <hackbod@google.com> Truthiness is good.

Change-Id: Iedd4d4027576001fc5e829bb0a1023dd2aefce99
uild.java
fe0d3523a52d7f05d54cbf917670d808e0765bb2 05-Dec-2011 Romain Guy <romainguy@google.com> Merge "Make sure onPostExecute() is never called after cancel() Bug #5651553"
657f51371cc631a82a8d30cd4a796c48077d474b 05-Dec-2011 Romain Guy <romainguy@google.com> Make sure onPostExecute() is never called after cancel()
Bug #5651553

As dfined by the documentation.

Change-Id: I627a49ee000d6990b61fd64dde9b06f72cd5cbae
syncTask.java
a2a56f82a8577625003931664240246c10552867 02-Dec-2011 Dianne Hackborn <hackbod@google.com> am 48e07296: am bfb3dec2: Merge "More social integration." into ics-mr1

* commit '48e07296800c49f8bc9b34cc57372593021f79a1':
More social integration.
a3d487cb13983643d5024e493e4d56c96736f1eb 02-Dec-2011 Dianne Hackborn <hackbod@google.com> More social integration.

Change-Id: I9be09e08bda5db6c05f5beabc380708a11ead43b
Binder.java
082ccca5ff36568b513a317a0dc72c05868cfc9f 22-Nov-2011 Nick Pelly <npelly@google.com> am 4fb747f3: am 043a8b14: Merge "Replace vendor specific NfcGoogle.apk with generic Nfc.apk" into ics-mr1

* commit '4fb747f329523d6b3a7efc59a4360a249cdaa5ad':
Replace vendor specific NfcGoogle.apk with generic Nfc.apk
a5cb9f42174a52afbeb7e33dab64282f52f8cedb 21-Nov-2011 Nick Pelly <npelly@google.com> Replace vendor specific NfcGoogle.apk with generic Nfc.apk

The access control changes allow us to just use Nfc.apk with
the regular platform certificate, instead of the custom signed
NfcGoogle.apk. So we can compeltely get rid of vendor/google/apps/NfcGoogle
and just build it out of packages/apps/Nfc now.

The package name is also reverted from com.android.nfc3 to com.android.nfc

The NFC uid needs to get bumped (25 to 27) to allow the cert change.

Bug: 5608249
Change-Id: I09a81a896ff3cceb5a8de331d3399921b870932a
rocess.java
fe2d4abdd917aa98baf56d4b903999c2d8b68a7d 10-Nov-2011 Jeff Brown <jeffbrown@google.com> am 698d3de6: am e7de36e6: Merge "Throw TransactionTooLargeException when Binder transaction fails. Bug: 5578022" into ics-mr1

* commit '698d3de681bf85047675baa61f9b28961f3d6862':
Throw TransactionTooLargeException when Binder transaction fails. Bug: 5578022
0bde66a837542e5bd901d8b8e47c5bd7c4c99fe4 07-Nov-2011 Jeff Brown <jeffbrown@google.com> Throw TransactionTooLargeException when Binder transaction fails.
Bug: 5578022

Previously, Binder transactions failed silently, which caused
problems because apps would carry on assuming that the operation
had succeeded. Often, the apps would crash soon due to a violated
invariant, but sometimes they managed to do some damage first...

Change-Id: Ia9cc98b3b761a8160e7c4e87507860b5912c0451
emoteException.java
ransactionTooLargeException.java
08d153fb8e3c92716405d9303cc700095308a8af 05-Nov-2011 Robert Greenwalt <rgreenwalt@google.com> am fd900f05: am 348297ab: Merge "Start using IP tool for advanced routing." into ics-mr0

* commit 'fd900f05fb67046b97701f20626f7fd408fd8990':
Start using IP tool for advanced routing.
fd900f05fb67046b97701f20626f7fd408fd8990 04-Nov-2011 Robert Greenwalt <rgreenwalt@google.com> am 348297ab: Merge "Start using IP tool for advanced routing." into ics-mr0

* commit '348297abc0e03fb87a1d22465020b580d83fdd61':
Start using IP tool for advanced routing.
e2d58e95a09590a63f1c597bb808b925bcab9a69 04-Nov-2011 Doug Zongker <dougz@android.com> close input streams obtained from otacerts zip file

Quells a StrictMode warning from OTA verification.

Change-Id: Ie3e4c345551d1925fcc37c3ae9ce5c45713be93a
ecoverySystem.java
3b28e9a3daede9eac44faeb736ab4c8386ddd089 02-Nov-2011 Robert Greenwalt <rgreenwalt@google.com> Start using IP tool for advanced routing.

bug:5495862
bug:5396842
Change-Id: I5e31b352b14a4dc746cacce4d61cf8d9ad7382a0
NetworkManagementService.aidl
bc6f0ce8be64a74b695fb21dab5f4805b68dce16 03-Nov-2011 Christopher Tate <ctate@google.com> Add persistent property to disable strict mode

Setting persist.sys.strictmode.disable to 'true' will disable strict
mode on eng/userdebug builds where it is turned on by default.
Explicitly enabling it in the Settings UI will override this, so
it's still possible to toggle it there even when this property
has been set on the device.

Change-Id: Ifd971f948fb2f803d509c2a06112c4bb932a5b1f
trictMode.java
f35fe23669aeeebd2db2acb6baacae503dba03a8 02-Nov-2011 Dianne Hackborn <hackbod@google.com> Add new OOM adjustment for the "previous" process.

This is the process that you had previously been interacting with
in the UI before the current one. Treating it specially should
allow us to improve the scenario of switching back and forth
between two apps.

Also add API constent for ICS MR1.

Change-Id: Ib3fe4df36b270be11dfd6b7e8d107c9994058a4d
uild.java
bce45617083209583d61afbea50994f2cdcda459 30-Oct-2011 Jeff Brown <jeffbrown@google.com> resolved conflicts for merge of 2d280f75 to ics-mr1

Change-Id: I459e1cb0b60fb94dfb12862fedb9f8d949c226a7
89101cd9d9b5c1a6ff1ed85eba0613ca4c4802e2 28-Oct-2011 Jeff Brown <jeffbrown@google.com> Improve the slow query instrumentation.

On user-debug and eng builds, you can set the
"db.log.slow_query_threshold" system property to queries that
take longer than the specified number of milliseconds.
Set it to 0 to log all queries.

This property has been around for a while but it was implemented
poorly. In particular, it *changed* the behavior of the query
by calling getCount() while holding the Db connection.
In normal operation, the query will not actually run until later.

By putting the timing logic into fillWindow() instead, we ensure
that we only measure queries that actually ran. We also capture
cases where the cursor window gets filled multiple times.

Bug: 5520301
Change-Id: I174f5e1ea15831a1d22a36e9a804d7755f230b38
uild.java
cf0ca99a22d65615d78f727cfb8ecf324a9b32c4 20-Oct-2011 Michael Chan <mchan@android.com> Fix typos

Change-Id: I6406b33f52bd8fb126a9b346d1bfe30ca2c2144b
http://code.google.com/p/android/issues/detail?id=14614
http://code.google.com/p/android/issues/detail?id=3563
http://code.google.com/p/android/issues/detail?id=5960
ountDownTimer.java
3585a3dfc6824581e8b4b46bfa1207bb18fad0cf 19-Oct-2011 Dianne Hackborn <hackbod@google.com> am 47f8367a: Merge "Work on issue #5465917: Wakelock *overflow* held for very long times" into ics-mr0

* commit '47f8367ab79247501d5d204632a7797fa8a888e5':
Work on issue #5465917: Wakelock *overflow* held for very long times
c24ab866b0d46685f6ddd340b9c84375cf8d6831 19-Oct-2011 Dianne Hackborn <hackbod@google.com> Work on issue #5465917: Wakelock *overflow* held for very long times

- Fix ordering problem in sync manager that would cause its wake
locks to slightly appear in the system process when they should
be fully accounted against the app.
- Allow the system process to have more wake lock names in its
battery stats.
- In the bug report output, print totals of the wake locks for each
process, to make it easier to parse what is being printed for things
like the system process with a huge number of individual wake locks.

Change-Id: I3cf39330f22f3c51c11e65e4124150d73a7da2dd
atteryStats.java
b9c1acfb0b4a41ffb5a4d9c38ef298c3a1eb9599 10-Oct-2011 Christopher Tate <ctate@google.com> DO NOT MERGE - Require device encryption password for adb backup/restore

This supersedes any backup-password that the user might supply. Per
design, the device encryption password is also always used to encrypt
the backup archive.

The CL introduces two new strings, used for prompting the user for
their device encryption password rather than their settings-defined
"backup password" when confirming a full backup or restore operation.

Bug 5382487

Change-Id: I278737927a4ecbb765bfb5ecfd28a4cb8dae52ef
torage/IMountService.java
32418be49e5b61c2e9281528cb8fb67939e301e8 10-Oct-2011 Christopher Tate <ctate@google.com> Require device encryption password to perform adb backup/restore

This supersedes any backup-password that the user might supply. Per
design, the device encryption password is also always used to encrypt
the backup archive.

The CL introduces two new strings, used for prompting the user for
their device encryption password rather than their settings-defined
"backup password" when confirming a full backup or restore operation.

Bug 5382487

Change-Id: I0b03881b45437c944eaf636b6209278e1bba7a9f
torage/IMountService.java
0bbd8d8273c1dde9e0504f67bd8eb159bef2406a 12-Oct-2011 Romain Guy <romainguy@google.com> Revert "Check whether an AsyncTask is created/executed on a looper thread."

This reverts commit 7498ccb6b9a1e61281d998fc81adc9a4a5e87e56.
syncTask.java
5e7f2d0b227df38f6dbc2313ac8b5c9f225c135e 12-Oct-2011 Romain Guy <romainguy@google.com> Revert "Fix the build"

This reverts commit 4db2504adab21e4439c123d2675db555e0143afa.
syncTask.java
f751210b4b040458df789e217f168bccbb95117a 11-Oct-2011 Romain Guy <romainguy@google.com> Merge "Fix the build"
4db2504adab21e4439c123d2675db555e0143afa 11-Oct-2011 Romain Guy <romainguy@google.com> Fix the build

Change-Id: I3071feab62abee7393557ceb920786b476fb0b02
syncTask.java
df61887feb5348f1d30a2e86b13ae64c271c4acc 11-Oct-2011 Romain Guy <romainguy@android.com> Merge "Check whether an AsyncTask is created/executed on a looper thread."
7498ccb6b9a1e61281d998fc81adc9a4a5e87e56 17-Sep-2011 Romain Guy <romainguy@android.com> Check whether an AsyncTask is created/executed on a looper thread.

Change-Id: I181b253c50a6579f35e61cd4b0c500379462e035
syncTask.java
be7c29c9f7e3d7b75d4374c8b5c0ca43c9d09c68 11-Oct-2011 Jeff Brown <jeffbrown@google.com> Don't log BlockGuard violations on ENG builds.

We want to see CloseGuard violations in the log in ENG builds
because they indicate serious problems, but BlockGuard is
too noisy and is best viewed in the aggregate from the
drop box based tools.

Change-Id: I77d4d0a561a4299355c111d0ccb5a2147646245b
trictMode.java
d5875d98f06817f78bd974842a8a9c2d41802d20 09-Oct-2011 Jeff Brown <jeffbrown@google.com> Always log StrictMode violations on ENG builds.

The drop-box is too quiet and it masking real problems from
developers. On ENG builds, use both logging and the drop-box
to ensure that problems are noticed promptly.

Change-Id: Id8fb8d392a7e01b532b73cb1a026b0d1f17af742
trictMode.java
01017cdf7452baa13908cba6aa26632114544b33 05-Oct-2011 Dianne Hackborn <hackbod@google.com> Merge "Some new ICS target SDK changes."
cac15eb21cab68e5b76fe06f9aff273978c92054 04-Oct-2011 Joe Fernandez <joefernandez@google.com> Merge "docs: add developer guide cross-references, Project ACRE"
b54e7a3d9f60ac605f404f9eb3c5e92ca51bbd23 04-Oct-2011 Joe Fernandez <joefernandez@google.com> docs: add developer guide cross-references, Project ACRE

Change-Id: I5df1c4e13af67ff4c4a5b22f3cb1247bf0103b09
syncTask.java
c04db7e06737c5b9bae276ac462858d44002672e 04-Oct-2011 Dianne Hackborn <hackbod@google.com> Fix handling of "allow fds" state.

Didn't take into account nesting of bundles. Boo.

Change-Id: Ic8cf21ad8d6f4938a3e105128624c9d162310d01
undle.java
arcel.java
9ecebbfbf768fd63e9a6c9a09c86d81c7737ee2d 29-Sep-2011 Dianne Hackborn <hackbod@google.com> Add mechanism for Parcel to not allow FDs to be written to it.

This is to help implement issue #5224703.

Change-Id: I026a5890495537d15b57fe61227a640aac806d46
undle.java
arcel.java
7960d9f888e31602e17b8856c77a3826bf8c841e 29-Sep-2011 repo sync <isheriff@google.com> Fix IPv6 on wifi

Bug: 5388757
Change-Id: I3c8c776c26dad1daa9801d0455fde749c0206401
NetworkManagementService.aidl
9d0e37e27cc4e71088afb2cda927454bca14b939 22-Sep-2011 Dianne Hackborn <hackbod@google.com> Some new ICS target SDK changes.

Change-Id: I5a500a5faddadbcb98bf181ad413c6d9fd7e663e
uild.java
cdd02c5d76d3dd4e21b5bb922d7fcfb86efec85f 16-Sep-2011 Jeff Sharkey <jsharkey@android.com> Collect and persist tethering stats.

Use new "gettetherstats" netd command to retrieve statistics for
active tethering connections. Keep tethering poll events separate
from UID poll, even though they end up same historical structures.

Bug: 5244846
Change-Id: Ia0c5165f6712c12b51586f86c331a2aad4ad6afb
NetworkManagementService.aidl
67eb4320d2832b43fe3150ba07fd05ea98ea617f 15-Sep-2011 Dianne Hackborn <hackbod@google.com> Merge "ICS is API 14."
0784cfb4b75e5ec3f4cc2ff57000c007f93b50b1 14-Sep-2011 Dianne Hackborn <hackbod@google.com> ICS is API 14.

Change-Id: I95f500f94ce206ae6ca6938d17537431d8799237
uild.java
7329361cdce711775542b112663bf71a6e0d5cef 14-Sep-2011 Irfan Sheriff <isheriff@google.com> Add support to change IPv6 privacy extensions

Bug: 3360737
Change-Id: I9136992d05f7abf15bdfd92aad3a3e0c0fe3bee2
NetworkManagementService.aidl
13c7197da8a16f77f6398708a6314c80cb01e0d1 08-Sep-2011 Ben Komalo <benkomalo@google.com> Revert encryption mapping for device wipes.

External storage volumes that were emulated+encrypted needed to have
their encryption mapping removed so that it doesn't try to encrypt the
volume after formatting them.

This just wires through an argument through vold, and assumes that vold
will do the right thing even if there is no encryption mapping set.

Bug: 5017638
Change-Id: I858fae3d12cb415bc34637f520f71220ad9daaad
torage/IMountService.java
444eca232964dbf27d0c4d01447c1493f89186e0 02-Sep-2011 Ben Komalo <benkomalo@google.com> Expose getting encryptstate through IMountService

- this really just calls cryptfs cryptocomplete
- needed so that UI logic can present a factory reset option if
encryption screwed up

Bug: 3384231
Change-Id: I553de87f0d03a65851030c9c5266e85866d30fa6
torage/IMountService.java
62f20ecf492d2b29881bba307c79ff55e68760e6 16-Aug-2011 Dianne Hackborn <hackbod@google.com> Add new am option to profile the launching of an activity.

Change-Id: Ie71a8043eafe41f53a0b3dbb5170276d87acbc9b
arcelFileDescriptor.java
6e90a362bc66cc67b1beae27b21d3f0148403b08 15-Aug-2011 Adam Powell <adamp@google.com> Fix bug 5159736 - Make DeviceDefault the default

Have the framework refer to the DeviceDefault themes for ICS apps that
don't explicitly request another theme.

Change-Id: I27dd0bbaa60f71df4f36e47d260f556d923ba075
uild.java
7f9f99ea11051614a7727dfb9f9578b518e76e3c 11-Aug-2011 Xavier Ducrohet <xav@android.com> Make some methods/fields package private so that layoutlib can access them.

Change-Id: I4aeadfbaf8a4f6a459fa19937c21ac23d9e5fb64
andlerThread.java
ooper.java
7244c977ecbc1f73e4cfd9d824fc2b68aa886139 06-Aug-2011 Irfan Sheriff <isheriff@google.com> Ensure interface down before wpa_supplicant start

Now that the driver is built into the kernel, a runtime crash
followed by a driver unload and reload does not reset the interface.

Ensure interface is down before bringing up supplicant

Bug: 5032635
Change-Id: Ib8f3d47617e587139a8a91a82146ee3a2f329700
NetworkManagementService.aidl
cb30b22ff507a5a9a5d9c584f8b082f5e96c4d02 30-Jul-2011 Irfan Sheriff <isheriff@google.com> Add firmware reload support for P2P

Refactor firmware reload call to support various modes - AP, STA & P2P

Bug: 5002384
Change-Id: I10d20fe5a7842437cf80861bc8a834990db87db5
NetworkManagementService.aidl
588d8560b3fabcbc0d90c63f386b2fa0d56643de 04-Aug-2011 Kristian Monsen <kristianm@google.com> Fix for bug 5115066 Handler override of toString() hides derived class name

Dynamically getting the class name.

Change-Id: I3140bee67ee2e5a1790e53cf4dfc240d3bb25218
andler.java
b437e090ec03a2bab10bdfcb9484577a7f34e157 06-Aug-2011 Dianne Hackborn <hackbod@google.com> Improved memory use reporting.

Change-Id: I38e53e6228bba92a142bafeedb5af8df4e4e5724
ebug.java
63d27a9233fed934340231f438493746084a681d 04-Aug-2011 Jeff Sharkey <jsharkey@android.com> Network stats with varint, omit parcel fields.

Persist NetworkStatsHistory using variable-length encoding; since
most buckets have small numbers, we can encode them tighter. Initial
test showed 44% space savings. Also persist packet and operation
counters.

Let NetworkStatsHistory consumers request which fields they actually
need to reduce parcel overhead.

Tests for verify varint and history field requests, also verify end-
to-end by persisting history into byte[] and restoring. Expose
bandwidth control enabled state. Extend random generation to create
packet and operation counts. Moved operation counts to long.

Fix bug that miscalculated bytes since last persist, which would
cause partial stats loss when battery pulled.

Bug: 4581977, 5023706, 5023635, 5096903
Change-Id: If61e89f681ffa11fe5711471fd9f7c238d3d37b0
NetworkManagementService.aidl
41ff7ec82422a5b6d00892afdb3232bc0e53d851 26-Jul-2011 Jeff Sharkey <jsharkey@android.com> Revise data limit notifs, watch kernel alerts.

Teach NetworkPolicy limits to "snooze" when requested by user, and
notify with both dialog and notification. Register for network alerts
through NMS to trigger updates immediately instead of waiting for
next stats update.

Enforce that all NetworkPolicy are unique on a template basis, and
move SCREEN_ON/OFF broadcasts to background thread. Launch SystemUI
and Settings directly instead of using actions, and include full
NetworkTemplate in extras.

Tests to verify notification and snooze behavior.

Bug: 5057979, 5023579, 4723336, 5045721
Change-Id: I03724beff94a7c0547cb5220431ba8d4cd44d077
NetworkManagementService.aidl
d8d3276a29aab91855a5a5e88042abbfd40124a3 27-Jul-2011 Eric Laurent <elaurent@google.com> Merge "Fix issue 4604090: notification sound interrupted."
22d93a0d71d965970f581cd9aa1cbf2efbb5998f 27-Jul-2011 Robert Greenwalt <rgreenwalt@google.com> resolved conflicts for merge of 41394a36 to honeycomb-plus-aosp

Change-Id: If4dc99c558dc45c9a7ff8d3ea5be69578b4ee793
6dbdc40e9a317488fc5f6e14cf9e699bce9a9387 22-Jul-2011 Eric Laurent <elaurent@google.com> Fix issue 4604090: notification sound interrupted.

The problem is that the audio HAL fails to acquire the wake lock when playing the notification.
This is because of a change that removed the mediaserver process form the system group for honeycomb.

The fix consists in requesting the wake lock from PowerManagerService when AudioFlinger mixer
wakes up.

A consequence of this change is that audio HALs or pcm drivers do not have to hold wake locks
anymore as in the past.

Change-Id: I4fb3cc84816c9c408ab7fec75886baf801e1ecb5
PowerManager.aidl
572b7048a6ed6cf6c5f6bc6c9d542dc377d601ff 26-Jul-2011 Robert Greenwalt <rgreenwalt@google.com> Use dns proxy a bit.

Sets the current default interface and sets the dns per interface.
port of changes 23041 and 22098 from opensource.
bug:5060618

Change-Id: I80e7ef88727eeb8ff2b48059f69b270e5a6b5c16
NetworkManagementService.aidl
23eb297c771bd996fe8559178feb1a07be43ad72 23-Jul-2011 Irfan Sheriff <isheriff@google.com> Handle hostapd and tether interface changes

The set config will only update hostapd config file right now and we need to restart after that happens.

Also, softap interface is changed to be the regular interface

Bug: 5069108
Change-Id: Ibe80129b58e5339f06f186870bcd8f37569c6db3
NetworkManagementService.aidl
466ed24810d329add4f9200edf8c1918a3e80716 22-Jul-2011 Dianne Hackborn <hackbod@google.com> Fix issue #5061083: Handler.removeCallbacksAndMessages...

...implementation doesn't match documentation

Fix the documentation.

Change-Id: I995b88e0f510973eb7d815ae895059e325c30e10
andler.java
648bee18a1ccd362445d562729250ff5910f16a0 21-Jul-2011 Romain Guy <romainguy@google.com> Convert looper traces to traceview traces

Change-Id: If9238e8b00744118c1c4d2182727569f94deb638
ooper.java
ystemClock.java
33651201375d3670672964503994c410b8eeed7b 19-Jul-2011 Doug Zongker <dougz@android.com> add rebootWipeCache call to RecoverySystem API

Also remove the never-used encrypted-filesystem-via-recovery stuff
that was stripped out of recovery a while ago.

Change-Id: I3349cba83daa9bc4765bd9b3f96d15000a801824
ecoverySystem.java
0e3328fbdd3845b0e2bec364e951498eaee6b079 17-Jul-2011 Dianne Hackborn <hackbod@google.com> Rework and fix "adb shell dumpsys meminfo"

We now collect more detailed information splitting the maps into
additional useful categories.

Fixed some bugs in account, such as not correctly handling all of
the current dalvik allocations.

The activity manager now prints a final summary of all pss organized
by the apps and the categories.

Change-Id: Iafc5f27c998095812b1483c6803b8e0f0587aeae
ebug.java
f9284695e8c10dad4daf3d2c84f607483bcb56ca 14-Jul-2011 Romain Guy <romainguy@google.com> Add new ViewDebug APIs to profile the event queue.

Change-Id: I225bf288780b0244f459316e2765cfa29cd22c89
andler.java
ooper.java
6793ac943afeb16642f477c43ddfd27e498db37b 13-Jul-2011 Glenn Kasten <gkasten@google.com> Add android.os.Process.setThreadScheduler

And add the associated SCHED_* constants
and remove redundant parameter to signalExceptionForPriorityError
and signalExceptionForGroupError.

Change-Id: I5a4e9652155aef2e5d544185e0d73a0120f89d97
rocess.java
007e62172fea3a3e5848c65cc781a2496d137889 14-Jul-2011 Glenn Kasten <gkasten@google.com> Merge "Add MEDIA_UID"
8b7d1b4d4a33e9429c5cedaa6317efcaad95da68 14-Jul-2011 Glenn Kasten <gkasten@google.com> Add MEDIA_UID

Change-Id: Iaf03913dce95420e21c79226031b7caaaedf2ce8
rocess.java
4161f9b30329e558868bb2b16c3e83c0b9cd26fd 13-Jul-2011 Kenny Root <kroot@google.com> Add StorageVolume list to MountService dump

Change-Id: If2be6e420d9671032d2e7a66c71a6733e6e48ac8
torage/StorageVolume.java
3f9dd287b99340efaaa257759e71a8f81b2ed113 09-Jul-2011 Jeff Brown <jeffbrown@google.com> Increase activity timeouts when using a wrapper process.

This patch enables the Zygote to tell the ActivityManager when
it has started a process with a wrapper attached so that the
ActivityManager can allow it extra time to start up or process
events.

This is useful when wrapping an app with Valgrind or other tools
which add significant runtime overhead.

Bug: 4584468
Change-Id: I5db6f2f15cd30b0ec40f547d2fadfa216de2926d
rocess.java
501c4671e73a484c1f01d94f4f5fff124c05f197 11-Jul-2011 Jeff Brown <jeffbrown@google.com> Merge "Eliminate single-process mode. Bug: 5010576"
7a59dd2ce33b46cbc73eef964ddb4272ea1da8d1 11-Jul-2011 Mike Lockwood <lockwood@android.com> MTP: Return error if user tries to copy a file >= 4GB to a FAT32 file system

Bug: 4561836

Change-Id: I2bffb93b032038f6c220c24c752ccd7ca66c23a0
Signed-off-by: Mike Lockwood <lockwood@android.com>
torage/StorageVolume.java
10e89712863f5b91a2982dc1783fbdfe39c1485d 09-Jul-2011 Jeff Brown <jeffbrown@google.com> Eliminate single-process mode.
Bug: 5010576

Change-Id: Id450dc83efed4897d1e4ff451530fed14457aace
ooper.java
rocess.java
erviceManager.java
e1dfcb7ab01fb991079ec1f70f75281a0ca9073e 08-Jul-2011 Elliott Hughes <enh@google.com> Pass the targetSdkVersion through to the zygote-forked dalvik.

This will let dalvik implement backwards-compatibile behaviors based on
an app's targetSdkVersion.

Bug: 4772166
Change-Id: I935c5ea9144e8b4e6e21089547287486e2234b7f
rocess.java
d5299ff39aa7532c0213978fc0a95e08c3a77deb 07-Jul-2011 Jean-Baptiste Queru <jbq@google.com> Merge 37dbfcaf

Change-Id: Iae55ecada8dc231c88bb87b32e8bd5e7b6a47bd0
ae07ecf3766c38af1c12822458b98036b28bd4c0 07-Jul-2011 Elliott Hughes <enh@google.com> Add the "debug.jni.logging" property so third-party developers can debug their JNI problems.

This turns on the super-verbose but indispensible logging of all native method
calls and all calls to JNI functions (for third-party code only). In particular,
if you have a local reference bug, you can search for the reference given in
the crash and see exactly where it came from. In every case I've seen so far,
that's pinpointed the bug exactly.

Change-Id: Ifb7ba02ae637bdd53cd8500febdcb9d4d7799bda
rocess.java
37dbfcaf836cf37d1e404cd2cf25f4ed670bc80f 06-Jul-2011 Robert Greenwalt <rgreenwalt@google.com> am 7022db4c: am 2b62c4fb: am 38bb0123: Merge "Added methods to support dns cache per interface"

* commit '7022db4cd2ca3721631595d7379eabb2cc77f6a9':
Added methods to support dns cache per interface
f91040e2df1a52dc41fd62a82afc0b214abc1c8d 01-Jul-2011 Brian Carlstrom <bdc@google.com> Merge "Revert "Add keychain user with special keystore access permissions""
38bb0123b8b9857c3119fd359739daf872f619d6 01-Jul-2011 Robert Greenwalt <rgreenwalt@google.com> Merge "Added methods to support dns cache per interface"
f4b92ec567477fcdea24fdd18116b045dfcf9852 01-Jul-2011 Brian Carlstrom <bdc@google.com> Revert "Add keychain user with special keystore access permissions"

This reverts commit 8c2a1a90a81f04573bfa578eab32f5fd4a30eafb.

Conflicts:

cmds/keystore/keystore.c

Bug:4970237
Change-Id: I626023d695becfada47e5f319b18e0889b766563
rocess.java
350083e36b9db6062e165954403ef921ff3dfdad 29-Jun-2011 Jeff Sharkey <jsharkey@android.com> Migrate bandwidth control to NMS, omit history.

Both stats and policy make NMS calls that depend on bandwidth control
being enabled, so move enable/disable into NMS and drop calls when
disabled. This avoids throwing heavy ISE exceptions when disabled.

Only include recent data when writing NetworkStatsHistory as part of
dumpsys call. Introduce manual poll event for Settings UI.

Bug: 4982115, 4770435, 4515856
Change-Id: I257820b057af2f0f99c736fb4f61e55b9fdc3e66
NetworkManagementService.aidl
b3f19ca36c8c1301893c621d8f2150e06210722c 30-Jun-2011 Jeff Sharkey <jsharkey@android.com> Enforce background data flag, rules through netd.

Connect up netd penalty box through NMS, and enforce the existing
background data flag by putting all UIDs in penalty box. Allow
platform applications to have policy applied. Only dispatch unique
rules to netd, avoiding any repeats.

Bug: 4598463, 4965677
Change-Id: Ibf9beff998ba7a1ea92f5e2f7eeba7b483d4b918
NetworkManagementService.aidl
2c22882181e867c9ba4e74ee973b87a71db3389f 29-Jun-2011 Dianne Hackborn <hackbod@google.com> Merge "Plumb information from the framework about asec container size."
50fd36d7c38c40b087c8f3e3172478abe0c051d9 16-Jun-2011 Ashish Sharma <ashishsharma@google.com> Push interface quota rules from NetworkPolicyManager to kernel.

Change-Id: Id2b758f561820b44839f69bf5fbd676cae771fe3
NetworkManagementService.aidl
292f8bc9d1b790ab975a87a842c7fabc908b97e0 28-Jun-2011 Dianne Hackborn <hackbod@google.com> Plumb information from the framework about asec container size.

Change-Id: Ie0ec3cb6d463aefa341a8cbea80be790451ba5e3
torage/IMountService.java
da1fa1e42fc7fb07d532f464b45d266801c20e73 27-Jun-2011 Jake Hamby <jhamby@google.com> Merge "Fix race condition in WakeLocks."
2d6833bab353e31ceb4230f3f3563fca2e0d9f6f 25-Jun-2011 Dianne Hackborn <hackbod@google.com> Turn on HW accel by default for apps that target ICS.

Change-Id: I010e11e03b2dfd0d1db8c47f74c25a28586fd79c
uild.java
0a9ee1272b59ad350cea591f931b52290a5e0998 23-Jun-2011 Jeff Sharkey <jsharkey@android.com> Enable bandwidth module from stats service.

During systemReady(), tell netd to enable bandwidth tracking module,
which is used to provide detailed stats and controls.

Change-Id: Iecfd8b17a3b90f5a817d731fbe1c71777681ed6e
NetworkManagementService.aidl
3c2a2f6789ee257e3838ffb0f3f117e08825ad5f 09-Jun-2011 Mike Lockwood <lockwood@android.com> Tethering: Use UsbManager to enable/disable RNDIS

Remove obsolete RNDIS support from NetworkManagementService

This change fixes USB tethering, which broke after the new USB gadget driver
changes went in.

Change-Id: Idd987fb2c39c40e81ebc92e6d8dae9fe77ed4ddc
Signed-off-by: Mike Lockwood <lockwood@android.com>
NetworkManagementService.aidl
f5600618df153d9c51388562ebf3524e3bdc8b7d 16-Jun-2011 Irfan Sheriff <isheriff@google.com> Fix IP address cleanup on network disconnect

We used to bring down the interface on network disconnect
which would in turn clean up all the IP addresses.

The interface bringup/shutdown is now handled by wpa_supplicant.
Add netd interface for clearing all IP addresses

Bug: 4676254
Change-Id: I7e24c0ab2e4a412b8d61e9c33ce028966913aaf6
NetworkManagementService.aidl
ce6f85ec406d3a348ac8b6b21c0daff940a0f27a 16-Jun-2011 Jean-Baptiste Queru <jbq@google.com> Merge f28f1de3 - regen current.txt

Change-Id: I7875932a0634542251f53855b4e8620a089de05f
b5962e73e841455b8e2a4e2d5c0ef0a19d62a803 16-Jun-2011 Jake Hamby <jhamby@google.com> Fix race condition in WakeLocks.

A previous fix to PowerManager.WakeLock introduced a new bug. When
a reference counted wakelock (such as SMSDispatcher) is acquired
multiple times in quick succession with a timeout, the first timeout
would remove the second callback from the handler, decrement the
reference count, but then the wakelock never gets released because
the second callback has been removed.

Bug: 4535237
Change-Id: I4f1240189bf3ed3396c86200c687282597b107d6
owerManager.java
f28f1de391d53b590f5ed963dcb9ae634e3196db 16-Jun-2011 Dianne Hackborn <hackbod@google.com> am 413b53b5: am 70921d61: Merge "We must keep up with the Joneses." into honeycomb-mr2

* commit '413b53b57d62b60e98cfe5b9359551315e7cb3a7':
We must keep up with the Joneses.
413b53b57d62b60e98cfe5b9359551315e7cb3a7 16-Jun-2011 Dianne Hackborn <hackbod@google.com> am 70921d61: Merge "We must keep up with the Joneses." into honeycomb-mr2

* commit '70921d615496c5be8a19cbd1454378bb7d0201f3':
We must keep up with the Joneses.
0d4b9c993d8f1108294f8ccb84eeacd92f051b50 15-Jun-2011 Dianne Hackborn <hackbod@google.com> We must keep up with the Joneses.

Change-Id: Ifa2ab0167c09ba18b24c8b6c618db807e17519f5
Binder.java
65efcc552110751437e587873b7c6f9e2397ac71 15-Jun-2011 Dianne Hackborn <hackbod@google.com> Merge "resolved conflicts for merge of 77fc8b80 to master"
711516d140390aeec9e3eefb8fdb2681c3454980 14-Jun-2011 Dianne Hackborn <hackbod@google.com> resolved conflicts for merge of 77fc8b80 to master

Change-Id: I014f9a886d6f05607d2a5d101ad2052a6841ee8d
ad2171acf423224d925d1b7cefa7184882e100bf 14-Jun-2011 Doug Zongker <dougz@android.com> deprecate RADIO constant, add getRadioVersion method

On many devices the radio version system property is only available
when the radio is on, which is frequently not the case when the static
initializers for the Build class are run (eg, if the system has just
booted). This means RADIO is forever "unknown" on these devices.
Deprecate it and add a method to return the radio version instead.
Apps will still have to deal with getting a null back if the radio
version is currently unavailable.

Change-Id: I63528eae93e1b9d0f7cec5a382724d0391ba1104
uild.java
77fc8b8066709a1d09a159901fd65c49b5e6eaa5 14-Jun-2011 Dianne Hackborn <hackbod@google.com> am 6c0533f9: am c5193c62: Merge "Add new landscape and portrait orientation features." into honeycomb-mr2

* commit '6c0533f994e7991b3bd60cab48362e8e2e6d86f0':
Add new landscape and portrait orientation features.
6c0533f994e7991b3bd60cab48362e8e2e6d86f0 14-Jun-2011 Dianne Hackborn <hackbod@google.com> am c5193c62: Merge "Add new landscape and portrait orientation features." into honeycomb-mr2

* commit 'c5193c6285d7094fb86dcb5cd56f44a3788af7c2':
Add new landscape and portrait orientation features.
e289bff0ec2b1af4ba773e0c8d49d5fd46eb9921 14-Jun-2011 Dianne Hackborn <hackbod@google.com> Add new landscape and portrait orientation features.

Updates aapt to know about these. Also updates aapt badging to:

- No longer crash due to the change to how we match unspecified
configuration resources.
- Report the new "smallest screen" supported screen configs.
- Infer old screen size buckets based on new smallest width attrs.
- Report all of the different labels and icons in an app.

Change-Id: I7376042b817391bd070f549cebbc7f03be4635c8
uild.java
f5b61013d2fa145b004bc2bbb0614d94a54387eb 11-Jun-2011 Jeff Brown <jeffbrown@google.com> Merge "Optimize StrictMode activity instance count check."
b7c82637e2d8acf40a0b1ab371b85a98cba4b665 11-Jun-2011 Jeff Brown <jeffbrown@google.com> Merge "Always clear the Message when recycled."
7e442837702a6e026c73a01fedb62c222b63cfc9 11-Jun-2011 Jeff Brown <jeffbrown@google.com> Optimize StrictMode activity instance count check.

This change attempts to avoid a periodic and costly 110ms
explicit GC and instance count operation when StrictMode
activity leak checking is enabled.

Change-Id: Ia90289ac3352c01c797ab3cc25456e3db68f220a
trictMode.java
fc9ff4c834c5b3a3c4b024b89375d6c329092791 11-Jun-2011 Jeff Brown <jeffbrown@google.com> Always clear the Message when recycled.

Clear the Message when it is recycled, even if it will not go
back into the Message pool. This makes the behavior of recycle()
more consistent and ensures that the Message does not hold onto
other object after it has been recycled (useful in case there are
stale references to the Message lingering elsewhere).

Change-Id: I26b6a4b629f9c0b6bed70fdc42734919f30e64c4
essage.java
6b592723c9a9fc816a8ab75c935e8cd20ff65a0e 10-Jun-2011 Dianne Hackborn <hackbod@google.com> resolved conflicts for merge of f51ded0f to master

Change-Id: Ida356524a68aeb2b9b0013dfbb6ab4bd11e616e2
f51ded0f8f593d17af82946eb65c05fc04f688b4 10-Jun-2011 Dianne Hackborn <hackbod@google.com> am a8d7ea06: am 220cd77d: Merge "Enforce public resource restriction on bag parents." into honeycomb-mr2

* commit 'a8d7ea067cf22baeee2ff0a33e5a8c5a35936942':
Enforce public resource restriction on bag parents.
a8d7ea067cf22baeee2ff0a33e5a8c5a35936942 10-Jun-2011 Dianne Hackborn <hackbod@google.com> am 220cd77d: Merge "Enforce public resource restriction on bag parents." into honeycomb-mr2

* commit '220cd77de62956eb76c5084e1d1341d69bfd214a':
Enforce public resource restriction on bag parents.
426431adcc220b6adfbe1d9530247f897e60fa36 09-Jun-2011 Dianne Hackborn <hackbod@google.com> Enforce public resource restriction on bag parents.

Need to put some more styles in the SDK to avoid breaking apps.

Also, welcome Android 3.2.

Change-Id: Ia31d07c9b1b91ad868d8630437fdc1b5ae24f37d
uild.java
65abc4531f1222ffa04350a3afc6d61fcc77b2a3 07-Jun-2011 Mike Lockwood <lockwood@android.com> Merge "StorageVolume: Add allowMassStorage flag"
8e8b280bd19fa6cb69bb19e1d90cf03a47ba2d72 07-Jun-2011 Mike Lockwood <lockwood@android.com> StorageVolume: Add allowMassStorage flag

Change-Id: I9d19e635bb06e50068d7e4e6919322bd5bb2e00f
Signed-off-by: Mike Lockwood <lockwood@android.com>
torage/StorageVolume.java
1b9a6a6e58fd73b5d1b6a434d17f0a69806858ec 04-Jun-2011 Wink Saville <wink@google.com> resolved conflict for merge of fc51aaec to master

Change-Id: Iee4d9ecc946dd1bbf114a70ad32db0fe47a027df
fc51aaec82ecedb554d158e4284761c9348d09fd 04-Jun-2011 Wink Saville <wink@google.com> am 6ff5ba00: Merge "Add FileUtils.checksumCrc32" into honeycomb-LTE

* commit '6ff5ba00b07b32f3c82bce2c412e5e8f30c202bc':
Add FileUtils.checksumCrc32
6d25a990afffd5eb385aba3043d5dfad36f1539a 04-Jun-2011 Wink Saville <wink@google.com> Add FileUtils.checksumCrc32

Change-Id: Ic6bffcb66554d7af38cea68648d9431fda8ef10d
ileUtils.java
3c43ced84184f19b8bb72f42894e37c97fdecab2 04-Jun-2011 Dianne Hackborn <hackbod@google.com> resolved conflicts for merge of d247ee41 to master

Change-Id: I49bd932f5019ce0608e2661d5cb7f24b6122dcba
2515db74fe2e75018f618591fabe23fda8362bf3 03-Jun-2011 Dianne Hackborn <hackbod@google.com> am 3a80c504: am 8b9a2b6c: am e6676351: Work around OpenFeint bug.

* commit '3a80c50485809fe72d6de83dacad494c5e84ed24':
Work around OpenFeint bug.
d247ee41d60fc261d2387625995f9ff3da442019 03-Jun-2011 Dianne Hackborn <hackbod@google.com> am 758b67b1: am b46ed763: Add new Fragment API for explicitly saving/restoring state.

* commit '758b67b12386a6ea52d520aef455c3150c9bae03':
Add new Fragment API for explicitly saving/restoring state.
758b67b12386a6ea52d520aef455c3150c9bae03 03-Jun-2011 Dianne Hackborn <hackbod@google.com> am b46ed763: Add new Fragment API for explicitly saving/restoring state.

* commit 'b46ed7636be9341b6ce0b158b3d86f34a437e6da':
Add new Fragment API for explicitly saving/restoring state.
b46ed7636be9341b6ce0b158b3d86f34a437e6da 03-Jun-2011 Dianne Hackborn <hackbod@google.com> Add new Fragment API for explicitly saving/restoring state.

Also fix issue #4519821:
Blank screen displayed on tapping "Battery Use" option in the settings

We weren't correctly doing the full Activity resume code when coming
back from delivering a new Intent or result.

And fix a fragment problem where we still weren't correctly restoring
the state of list views. (I think this was from a bad manual-merge
from master.)

Change-Id: If79dc7e998155c39ab8c04781f6c73a82238a9ef
arcel.java
arcelable.java
c6f1f4ac3b3f19222cb72c44e19d5251a3b46831 02-Jun-2011 Gilles Debunne <debunne@google.com> am ca6c3a2b: am 4ce6822b: am 24de44a1: Merge "ExternalStorageFormatter takes an optional StorageVolume target." into honeycomb-mr2

* commit 'ca6c3a2bba4445f492117697cb304a014a185159':
ExternalStorageFormatter takes an optional StorageVolume target.
3a80c50485809fe72d6de83dacad494c5e84ed24 02-Jun-2011 Dianne Hackborn <hackbod@google.com> am 8b9a2b6c: am e6676351: Work around OpenFeint bug.

* commit '8b9a2b6cbd9cf37e9f5aa1bfc7106c67a5e89202':
Work around OpenFeint bug.
8b9a2b6cbd9cf37e9f5aa1bfc7106c67a5e89202 02-Jun-2011 Dianne Hackborn <hackbod@google.com> am e6676351: Work around OpenFeint bug.

* commit 'e66763516a9c27c192adaba417616371a1c3c9bf':
Work around OpenFeint bug.
75279904202357565cf5a1cb11148d01f42b4569 25-May-2011 Jeff Sharkey <jsharkey@android.com> Collect historical network stats.

Periodically records delta network traffic into historical buckets to
support other services, such NetworkPolicyManager and Settings UI.

Introduces NetworkStatsHistory structure which contains sparse, uniform
buckets of data usage defined by timestamps. Service periodically
polls NetworkStats and records changes into buckets. It only persists
to disk when substantial changes have occured. Current parameters
create 4 buckets each day, and persist for 90 days, resulting in about
8kB of data per network.

Only records stats for "well known" network interfaces that have been
claimed by Telephony or Wi-Fi subsystems. Historical stats are also
keyed off identity (such as IMSI) to support SIM swapping.

Change-Id: Ia27d1289556a2bf9545fbc4f3b789425a01be53a
NetStatService.aidl
e66763516a9c27c192adaba417616371a1c3c9bf 02-Jun-2011 Dianne Hackborn <hackbod@google.com> Work around OpenFeint bug.

Change-Id: Ib8320e50bb63fc56dc0118d5c8e9e328dbd3fcb1
uild.java
da8bb74b9d9ffcb095815db800d0816c411f1fba 28-May-2011 Mike Lockwood <lockwood@android.com> Move stringToFile utility from ConnectivityService to FileUtils

Change-Id: I59a2dc649d59677f6b5e7ade252587c7c151ec06
Signed-off-by: Mike Lockwood <lockwood@android.com>
ileUtils.java
ca6c3a2bba4445f492117697cb304a014a185159 27-May-2011 Gilles Debunne <debunne@google.com> am 4ce6822b: am 24de44a1: Merge "ExternalStorageFormatter takes an optional StorageVolume target." into honeycomb-mr2

* commit '4ce6822bc63665ca3e9d9984766f367ce4f4d3a7':
ExternalStorageFormatter takes an optional StorageVolume target.
4ce6822bc63665ca3e9d9984766f367ce4f4d3a7 27-May-2011 Gilles Debunne <debunne@google.com> am 24de44a1: Merge "ExternalStorageFormatter takes an optional StorageVolume target." into honeycomb-mr2

* commit '24de44a1877be3e5d63697f90c98a87a4d88b1fb':
ExternalStorageFormatter takes an optional StorageVolume target.
37051cdd8624c4821bb68169be427061c48ad837 26-May-2011 Gilles Debunne <debunne@google.com> ExternalStorageFormatter takes an optional StorageVolume target.

Change-Id: Ic85689659dbf49a7fcc1b7aaf25e4a94e62848b9
torage/StorageManager.java
torage/StorageVolume.java
d4bdc7b4da5811fccae578a1f3d4b5718762d40f 26-May-2011 Mike Lockwood <lockwood@android.com> Environment: Fix default mount point for external storage

/mnt/sdcard is the real mount point. /sdcard is just a symlink.

Change-Id: If584e5cd31238d5b263de5bd72e179d53875d8c3
Signed-off-by: Mike Lockwood <lockwood@android.com>
nvironment.java
b5b1fb25853eb2e00f981d3b0bb52acd50684c4f 24-May-2011 Jeff Brown <jeffbrown@google.com> Merge "Support wrapping app processes to inject debug instrumentation. Bug: 4437846"
9fd4c6d3aeea46820c7ab637b0bc6556b798bc2b 24-May-2011 Mike Lockwood <lockwood@android.com> am 49b9449b: am d8d84708: am 988b6648: Merge "MountService: Add StorageVolume as extra in storage related broadcasts." into honeycomb-mr2

* commit '49b9449b6605c7b4f77f9a0635ba93f7dfa0ea47':
MountService: Add StorageVolume as extra in storage related broadcasts.
ebed7d6e35f7f960e6e6add2b8ab7c7a31a511c3 17-May-2011 Jeff Brown <jeffbrown@google.com> Support wrapping app processes to inject debug instrumentation.
Bug: 4437846

Change-Id: I4552501c693716b14714afb5c5248edaca9547ab
rocess.java
442fa21e98835ceb966f196906907eb236d38d65 24-May-2011 Jeff Sharkey <jsharkey@android.com> Merge "APIs to profile network usage for current UID."
49b9449b6605c7b4f77f9a0635ba93f7dfa0ea47 24-May-2011 Mike Lockwood <lockwood@android.com> am d8d84708: am 988b6648: Merge "MountService: Add StorageVolume as extra in storage related broadcasts." into honeycomb-mr2

* commit 'd8d8470825a637843d45a3b436e80a3b85f1dd11':
MountService: Add StorageVolume as extra in storage related broadcasts.
d8d8470825a637843d45a3b436e80a3b85f1dd11 24-May-2011 Mike Lockwood <lockwood@android.com> am 988b6648: Merge "MountService: Add StorageVolume as extra in storage related broadcasts." into honeycomb-mr2

* commit '988b6648b0138fe1294228e17164b2f1d6a4042d':
MountService: Add StorageVolume as extra in storage related broadcasts.
a5250c93928e256738125b265e10c96c3575597e 23-May-2011 Mike Lockwood <lockwood@android.com> MountService: Add StorageVolume as extra in storage related broadcasts.

Change-Id: I8e1a21ae233ba9812e58b363b59a66b260a01cbf
Signed-off-by: Mike Lockwood <lockwood@android.com>
torage/StorageVolume.java
37cd57772b27bb286aeec915cfaced4fa08508bd 24-May-2011 Dianne Hackborn <hackbod@google.com> Merge "resolved conflicts for merge of 070a19e0 to master"
560e97f8e0cb63a0fa6e88db6badc142a99517d2 23-May-2011 Steve Block <steveblock@google.com> Merge "Log a StrictMode violation when WebView methods are called on the wrong thread"
939461300a0283a9f370a0425d4061d32b36f952 23-May-2011 Dianne Hackborn <hackbod@google.com> resolved conflicts for merge of 070a19e0 to master

Change-Id: I855ab02a4e8dd465af67fd23b66c0dace76bd411
08d584cd1cba05284ccd2d0ea128c297624f0c47 17-May-2011 Steve Block <steveblock@google.com> Log a StrictMode violation when WebView methods are called on the wrong thread

Bug: 4373919
Change-Id: I1f526e033ce316e51b3de7fe4ac88119fbc65b4e
trictMode.java
eedcb9525ba5befee2ba6ebb7a9ee3f13395c2a3 17-May-2011 Jeff Sharkey <jsharkey@android.com> APIs to profile network usage for current UID.

Added startDataProfiling() and stopDataProfiling() to TrafficStats,
which can be used by apps to measure network usage delta between two
points in time. Currently takes two NetworkStats snapshots and returns
delta, which will eventually include tag-level granularity. Added
tests for NetworkStats delta subtraction.

Added NMS.getNetworkStatsUidDetail() that returns stats for specific
UID. Always gives stats access for the calling UID, otherwise enforces
that caller has permission. Fix readSingleLongFromFile(), since
/proc/ files don't have well-defined lengths.

Change-Id: Ic5b6414d8effbd66846e275b00d4b8a82c74589d
NetworkManagementService.aidl
070a19e035cd28f2a0cc831f2322f2121d80de44 21-May-2011 Dianne Hackborn <hackbod@google.com> am 5c8caba2: am 1b144e62: Merge "Add ParcelFileDescriptor.fromFd() and .adoptFd()." into honeycomb-mr2

* commit '5c8caba2e590792531ffb2c9f4ea924993662abd':
Add ParcelFileDescriptor.fromFd() and .adoptFd().
5c8caba2e590792531ffb2c9f4ea924993662abd 20-May-2011 Dianne Hackborn <hackbod@google.com> am 1b144e62: Merge "Add ParcelFileDescriptor.fromFd() and .adoptFd()." into honeycomb-mr2

* commit '1b144e625fb0d34cd680c44cbcfb2deb8a76d4c6':
Add ParcelFileDescriptor.fromFd() and .adoptFd().
ea2117bdc03316a9292e2344c6fd157c85c13167 20-May-2011 Dianne Hackborn <hackbod@google.com> Add ParcelFileDescriptor.fromFd() and .adoptFd().

Change-Id: I2fe0429188dc80abaa0c8977f2e43a010e0f4da2
arcelFileDescriptor.java
5c3816f2ff3d40136da1e40eec792d8faf0e75dd 19-May-2011 Jean-Baptiste Queru <jbq@google.com> Merge c41aefe1

Change-Id: I70fc4382f832d1a2bded8a5ee7d9b96fac77879b
c41aefe1d4c862a9fbaf717ffb886bbd702c94f2 19-May-2011 Robert Greenwalt <rgreenwalt@google.com> am 59b1a4ed: Switch to use netd to add/remove routes.

* commit '59b1a4ede7032c1b4d897e13dd4ede09b5e14743':
Switch to use netd to add/remove routes.
59b1a4ede7032c1b4d897e13dd4ede09b5e14743 11-May-2011 Robert Greenwalt <rgreenwalt@google.com> Switch to use netd to add/remove routes.

Also adds support for v6 routes and for removing single routes.

Change-Id: I1c4f08c7938371090944d8d6f603e1e0d6d70c01
NetworkManagementService.aidl
fa1e5561cc65b932067919fcd5d39fda7032793e 18-May-2011 Mike Lockwood <lockwood@android.com> am 53b988ba: am 5a79cfd7: am 27ac64ec: Merge "StorageVolume: Add getStorageId() accessor" into honeycomb-mr2

* commit '53b988ba1842f40e595bb85f2ca055c24787e6dc':
StorageVolume: Add getStorageId() accessor
53b988ba1842f40e595bb85f2ca055c24787e6dc 18-May-2011 Mike Lockwood <lockwood@android.com> am 5a79cfd7: am 27ac64ec: Merge "StorageVolume: Add getStorageId() accessor" into honeycomb-mr2

* commit '5a79cfd7518defdce1911cecbc2441bb0a057e54':
StorageVolume: Add getStorageId() accessor
fbfe55512596fd00c1fb51caa851e17dae60fd43 17-May-2011 Mike Lockwood <lockwood@android.com> StorageVolume: Add getStorageId() accessor

This ID is used for MTP as well as per volume querying in the media provider.

Change-Id: Ic4fc986d972bd477730643f7e9450c390c0b3a4b
Signed-off-by: Mike Lockwood <lockwood@android.com>
torage/StorageVolume.java
8fa5b03c1ba4253003c807ad753f58af17086b4e 16-May-2011 Mike Lockwood <lockwood@android.com> resolved conflicts for merge of fc4a3d37 to master

Change-Id: I40f603ba9330c3e882f4d58398095f4094725b21
fc4a3d37ef044b35450800235195401c4a54c712 16-May-2011 Mike Lockwood <lockwood@android.com> am b822d246: am 0a93d875: Merge "StorageManager: Clean up and generalize storage configuration resources" into honeycomb-mr2

* commit 'b822d2464dc59056f736b0c49f0ac514c7cbb9d9':
StorageManager: Clean up and generalize storage configuration resources
0a93d875527c52183080b63a0b19d567856952af 16-May-2011 Mike Lockwood <lockwood@android.com> Merge "StorageManager: Clean up and generalize storage configuration resources" into honeycomb-mr2
2f6a3885533a52758c2cd4f81f6123a712be8ae6 10-May-2011 Mike Lockwood <lockwood@android.com> StorageManager: Clean up and generalize storage configuration resources

Replace config_emulateExternalStorage, config_externalStorageRemovable,
config_externalStoragePaths, config_externalStorageDescriptions and
config_mtpReserveSpaceMegabytes resources with an XML resource file
to describe the external storages that are available.

Add android.os.storage.StorageVolume class

StorageManager.getVolumeList() now returns an array of StorageVolume

Change-Id: I06ce1451ebf08b82f0ee825d56d59ebf72eacd3d
Signed-off-by: Mike Lockwood <lockwood@android.com>
nvironment.java
torage/IMountService.java
torage/StorageManager.java
torage/StorageVolume.aidl
torage/StorageVolume.java
056054f7c55614df5fd4a34bfc2f0123d56d3523 16-May-2011 Gilles Debunne <debunne@google.com> Merge "Links in Environment javadoc"
fbdf9df053800afb25453630d11bd48cbc068271 16-May-2011 Dianne Hackborn <hackbod@google.com> am 2a20583a: am 700ab1c7: Merge "DO NOT MERGE. Integrate from master: Improve activity manager debug dumps." into honeycomb-mr2

* commit '2a20583a5f436d66ab73cd6c0fdc73e59a3cecad':
DO NOT MERGE. Integrate from master: Improve activity manager debug dumps.
24df0757f86851569b65dadd0dfa139521748b9c 14-May-2011 Dianne Hackborn <hackbod@google.com> am ed9321ab: am f9dd34f4: DO NOT MERGE: Integrate from main - Deprecate a bunch of APIs.

* commit 'ed9321ab5d282e40e7c5fa9caf0eb9d05646f2d0':
DO NOT MERGE: Integrate from main - Deprecate a bunch of APIs.
9a84983a9fd9959671e102045eaf185b83291269 08-Apr-2011 Dianne Hackborn <hackbod@google.com> DO NOT MERGE. Integrate from master: Improve activity manager debug dumps.

Activity manager now does all dump requests into apps
asynchronously, so it can nicely timeout if there is an
app problem. Also lots of general cleanup of the am
dump output.

Change-Id: I99447b87f77a701af52aeca984d93dfe931f065d
inder.java
Binder.java
arcel.java
arcelFileDescriptor.java
f9dd34f4d3203fd50363b3b0247c5d0db6fe2c8f 20-Apr-2011 Dianne Hackborn <hackbod@google.com> DO NOT MERGE: Integrate from main - Deprecate a bunch of APIs.

And clean up some documentation.

Change-Id: I8f06e2fc3bb6c552581b64657e82ba690d524232
owerManager.java
ee1d6302912c85429aaeaa70a007248fda5c19e2 13-May-2011 Gilles Debunne <debunne@google.com> Links in Environment javadoc

Change-Id: Ib3383152ff6114fdaba5245bc8357f78bc9d5fcf
nvironment.java
39cf8c97c3aee897cca7f37d3f7e9e36c3639f2d 13-May-2011 Dianne Hackborn <hackbod@google.com> resolved conflicts for merge of ec85619f to master

Change-Id: Id820ddcb9d19341a1b383b3bef7659a2c0621cfa
ec85619f02715a6b4b8c077257b52f04aa1b1dba 13-May-2011 Dianne Hackborn <hackbod@google.com> am d46849a5: am a8138732: MR2 is going to be API 13.

* commit 'd46849a535ab64fd47fc8e9c557ca5f4da9e977b':
MR2 is going to be API 13.
a8138732a01b92f0a40f72050b74a3bd4cf6d215 13-May-2011 Dianne Hackborn <hackbod@google.com> MR2 is going to be API 13.

Change-Id: I05b65ace073b8731e85b41ac4ae63e2745cb46b5
uild.java
47f8f0fa70343ea0d150e644f4109fb2d1185044 13-May-2011 Chia-chi Yeh <chiachi@android.com> Add a method to create ParcelFileDescriptors from DatagramSockets.

Change-Id: I16dddb2395628657b140b53a1b2fee5f311b049a
arcelFileDescriptor.java
f2a4568afca603d3166fd86335abe095cd087393 05-May-2011 Joe Onorato <joeo@google.com> Merge "Fix race conditions in WakeLocks."
d7350e3a56daa44e2d2c6e5175e6430492cf0dc9 05-May-2011 Joe Onorato <joeo@google.com> Fix race conditions in WakeLocks.

Bug: 3439332
Change-Id: I70c583e6a73960df8faad69675947b87642c6228
owerManager.java
9a13f36cddaad01350bdb5f000167811a1d753c9 27-Apr-2011 Jeff Sharkey <jsharkey@android.com> Return NetworkStats bundle from NM service.

Introduce NetworkStats which is a collection of network statistics,
which should match the structure communicated by kernel module through
netd. Will introduce tags and fg/bg stats later. Kept entirely in a
flat data structure to optimize parcel speed.

Initial pass at returning NetworkStats from NetworkManagementService,
both summary and details. Will eventually pull data from kernel module
over netd connection.

Change-Id: I92d9f61678ec8c22e2ce26775fb035a0cf32413f
NetworkManagementService.aidl
a2a8419db82ae40146bdfd215e3de3be39c7249c 04-May-2011 Mike Lockwood <lockwood@android.com> am e3b498be: DO NOT MERGE StorageManager: Add getVolumeList() and getVolumeState() methods

* commit 'e3b498be0ae05367e9b84f4fac2ac5cf57a6b091':
DO NOT MERGE StorageManager: Add getVolumeList() and getVolumeState() methods
e3b498be0ae05367e9b84f4fac2ac5cf57a6b091 24-Mar-2011 Mike Lockwood <lockwood@android.com> DO NOT MERGE StorageManager: Add getVolumeList() and getVolumeState() methods

Change-Id: I8ba7e56797b0106dafaa6388393e5c629f27e6e6
Signed-off-by: Mike Lockwood <lockwood@android.com>
torage/IMountService.java
torage/StorageManager.java
d967f4664f40f9a4c5262a44b19df9bbdf457d8a 24-Mar-2011 Mike Lockwood <lockwood@android.com> DO NOT MERGE StorageManager: Add getVolumeList() and getVolumeState() methods

Change-Id: I43d5c1730b340f1288b58012234b38f801001b71
Signed-off-by: Mike Lockwood <lockwood@android.com>
torage/IMountService.java
torage/StorageManager.java
1c6afcbf1f0daf3fb5eb3501656963e3a8a99e3b 04-May-2011 Conley Owens <cco3@android.com> am 2d40bf91: am eac835e5: am 9c4ba258: Merge "Removing dead store; it was likely a relict of debuging code."

* commit '2d40bf91e6ad71505ec84743c5ad0b854ecf5928':
Removing dead store; it was likely a relict of debuging code.
2d40bf91e6ad71505ec84743c5ad0b854ecf5928 04-May-2011 Conley Owens <cco3@android.com> am eac835e5: am 9c4ba258: Merge "Removing dead store; it was likely a relict of debuging code."

* commit 'eac835e52e8378b33a2b34b7edb803290154588d':
Removing dead store; it was likely a relict of debuging code.
ad3b2e3a164661ea032a55cb01aadc2a74bd5917 29-Apr-2011 Jozef BABJAK <jozef.babjak@gmail.com> Removing dead store; it was likely a relict of debuging code.

Change-Id: I685c6df119212f48f90dd40d01a3638a33ce2800
atteryStats.java
9567a66a5e6f49dd8495fb5f6e2efb9f32e84b35 20-Apr-2011 Dianne Hackborn <hackbod@google.com> Deprecate a bunch of APIs.

And clean up some documentation.

Change-Id: I7882183b3daf883b7ac6098d19f88dc7cfbcdf61
owerManager.java
7475c0cea622f126af966c3b5b9741f547e83450 04-Apr-2011 Mattias Falk <mattias.falk@sonyericsson.com> Added methods to support dns cache per interface

Added some methods to NetworkManagementService
as part of the work to implement a dns cache
per interface.

Change-Id: I5c7369075dee6b6a4ff67b27f1df7cc124f54c14
NetworkManagementService.aidl
1fadab5c36445bb9f0997904dbce44f8e234f847 15-Apr-2011 Dianne Hackborn <hackbod@google.com> More battery stats improvements.

We now write to the parcel using deltas. For common situations,
it only takes 4 bytes to write a delta (new command, time delta,
significant state changes, flags indicating additional state that
follows).

Increasing the buffer size to 128K, this give us 32,768 samples
if they all fit in the smallest delta. A device that is doing
something every minute (like acquiring a wake lock or doing a
wifi scan) for our max target battery life of 30 days would
generate 43,200 samples.

Also some turning to the maximum time between samples at which
we decide to completely collapse two samples.

Change-Id: I074a698d27ccf9389f9585abfc983af2f5ba7a54
atteryStats.java
0ffc988a7f47013805d5abeed1c20f159b3bd799 14-Apr-2011 Dianne Hackborn <hackbod@google.com> Rewrite battery history storage.

We now write battery history directly into a buffer, instead of
creating objects. This allows for more efficient storage; later
it can be even better because we can only write deltas.

The old code is still there temporarily for validation.

Change-Id: I9707d4d8ff30855be8ebdc93bc078911040d8e0b
atteryStats.java
4390758f277645de6e81f6482d582473383cc917 12-Apr-2011 Elliott Hughes <enh@google.com> Use an @hide libcore API to get the FileDescriptor from a Socket.

Saves having your own native code...

Change-Id: Ib082a6530bcf743a35031500cee6318bc92d4d35
arcelFileDescriptor.java
a4f39a6edda1df7fa2f1daee2f9a2d9a08fb94e1 12-Apr-2011 Doug Zongker <dougz@android.com> Merge "protect all /cache/recovery/last_* files from deletion"
3d5040f8d474713a1e148b0d64f16bb0435d6388 12-Apr-2011 Doug Zongker <dougz@android.com> protect all /cache/recovery/last_* files from deletion

Preserve any files name /cache/recovery/last_*, not just last_log,
when booting.

Change-Id: Ie36da5b9552e4a7100ecf3774fb1a8aaa22bfdbd
ecoverySystem.java
40c266ef4868876f75d1b7b96f6117d7497c4e41 11-Apr-2011 Jeff Hamilton <jham@android.com> am a83bc160: am 7bb236c3: am 84d34078: Make the NFC UID forward compatible.

* commit 'a83bc160892078c20489897190ee163d5c4d3783':
Make the NFC UID forward compatible.
a83bc160892078c20489897190ee163d5c4d3783 11-Apr-2011 Jeff Hamilton <jham@android.com> am 7bb236c3: am 84d34078: Make the NFC UID forward compatible.

* commit '7bb236c3b5e49f53b3110855276d99e664b29931':
Make the NFC UID forward compatible.
8c2a1a90a81f04573bfa578eab32f5fd4a30eafb 08-Apr-2011 Brian Carlstrom <bdc@google.com> Add keychain user with special keystore access permissions

Change-Id: I02fe5171add62c5cd9f57b01bc137f3bc1cb3a69
rocess.java
43a17654cf4bfe7f1ec22bd8b7b32daccdf27c09 07-Apr-2011 Joe Onorato <joeo@google.com> Remove the deprecated things from Config.java. These haven't been working since before 1.0.

Change-Id: Ic2e8fa68797ea9d486f4117f3d82c98233cdab1e
inder.java
ebug.java
ooper.java
essageQueue.java
e17aeb31030cfeed339a39a107912ad5e9178390 08-Apr-2011 Dianne Hackborn <hackbod@google.com> Improve activity manager debug dumps.

Activity manager now does all dump requests into apps
asynchronously, so it can nicely timeout if there is an
app problem. Also lots of general cleanup of the am
dump output.

Change-Id: Id0dbccffb217315aeb85c964e379833e6aa3f5af
inder.java
Binder.java
arcel.java
arcelFileDescriptor.java
3fc982f41fda1f254bfbc35490d81cd82a0ed90a 31-Mar-2011 Dianne Hackborn <hackbod@google.com> Add new resource configurations for screen width/height in "dp".

You can now specify resource configuration variants "wNNNdp"
and "hNNNdp". These are the minimum screen width/height in "dp"
units. This allows you to do things like have your app adjust
its layout based only on the about of horizontal space available.

This introduces a new configuration change flag for screen size.
Note that this configuration change happens each time the orientation
changes. Applications often say they handle the orientation change
to avoid being restarted at a screen rotation, and this will now
cause them to be restarted. To address this, we assume the app can
handle this new config change if its target SDK version is < ICS.

Change-Id: I22f8afa136b4f274423978c570fa7c9855040496
uild.java
cace13d72a71cd8802b5804c47f5b5a9a7c01a74 05-Apr-2011 Mike Lockwood <lockwood@android.com> Merge "StorageManager: Add getVolumeList() and getVolumeState() methods"
c5a229665dbea7572f991180388c8bbe992a3438 05-Apr-2011 Jason parks <jparks@google.com> am 5ee250aa: am 1d733625: am cca2f2f9: Merge "Send out a broadcast that the system is being factory reset." into gingerbread

* commit '5ee250aa744720c90b264966f9721cfb9d256e96':
Send out a broadcast that the system is being factory reset.
5ee250aa744720c90b264966f9721cfb9d256e96 05-Apr-2011 Jason parks <jparks@google.com> am 1d733625: am cca2f2f9: Merge "Send out a broadcast that the system is being factory reset." into gingerbread

* commit '1d73362597c49f4692a580460bc8697a8f1d0efa':
Send out a broadcast that the system is being factory reset.
8fa5f804e21233c5f1993212fd5fb7c200eec905 24-Mar-2011 Mike Lockwood <lockwood@android.com> StorageManager: Add getVolumeList() and getVolumeState() methods

Change-Id: Icf3301827dd27e8430bd44eaafde517a31ef035a
Signed-off-by: Mike Lockwood <lockwood@android.com>
torage/IMountService.java
torage/StorageManager.java
7bb236c3b5e49f53b3110855276d99e664b29931 04-Apr-2011 Jeff Hamilton <jham@android.com> am 84d34078: Make the NFC UID forward compatible.

* commit '84d340781b1e148ead9fb4790755737c9dcc1cde':
Make the NFC UID forward compatible.
1d73362597c49f4692a580460bc8697a8f1d0efa 04-Apr-2011 Jason parks <jparks@google.com> am cca2f2f9: Merge "Send out a broadcast that the system is being factory reset." into gingerbread

* commit 'cca2f2f987ab772a4bae3176df7259f59d6502ce':
Send out a broadcast that the system is being factory reset.
84d340781b1e148ead9fb4790755737c9dcc1cde 01-Apr-2011 Jeff Hamilton <jham@android.com> Make the NFC UID forward compatible.

Change-Id: I67316ee7906c29ba11ca7c8eb36ca1b736fe59b1
rocess.java
f9fb0abbd678102beb546bd676f0b37aa22d49f5 31-Mar-2011 Jeff Hamilton <jham@android.com> am 0c691f0e: am ad91eee2: am 9c1ef098: Update the value for the NFC shared UID.

* commit '0c691f0eb3bc844e778f9a61e777076658879dfd':
Update the value for the NFC shared UID.
cca2f2f987ab772a4bae3176df7259f59d6502ce 30-Mar-2011 Jason parks <jparks@google.com> Merge "Send out a broadcast that the system is being factory reset." into gingerbread
0c691f0eb3bc844e778f9a61e777076658879dfd 30-Mar-2011 Jeff Hamilton <jham@android.com> am ad91eee2: am 9c1ef098: Update the value for the NFC shared UID.

* commit 'ad91eee2774e18204a14d473242efe5640b91152':
Update the value for the NFC shared UID.
ad91eee2774e18204a14d473242efe5640b91152 25-Mar-2011 Jeff Hamilton <jham@android.com> am 9c1ef098: Update the value for the NFC shared UID.

* commit '9c1ef098837bd73044cb970545344dd03f66daa0':
Update the value for the NFC shared UID.
9c1ef098837bd73044cb970545344dd03f66daa0 25-Mar-2011 Jeff Hamilton <jham@android.com> Update the value for the NFC shared UID.

Change-Id: Id25e1c9f0c074d17440838a9da7bf59619726832
rocess.java
112d339673c379b71a989bd33b73648aafe58ce1 25-Mar-2011 Jesse Wilson <jessewilson@google.com> Fix MemoryFile's output stream to advance.

Previously it was not useful.

Change-Id: I0bcc06b65bab33a38a0b0148c020509076a51b1c
http://code.google.com/p/android/issues/detail?id=11415
emoryFile.java
315f19be8ef26fee77db2455f8c2997680755f6d 18-Mar-2011 Dianne Hackborn <hackbod@google.com> am daa71254: am efb56934: am 1d50ad79: Merge "Whoops, forgot the HONEYCOMB_MR1 constant. :(" into honeycomb-mr1

* commit 'daa71254f3e3261ecc0e143955c89ced70bbf008':
Whoops, forgot the HONEYCOMB_MR1 constant. :(
daa71254f3e3261ecc0e143955c89ced70bbf008 18-Mar-2011 Dianne Hackborn <hackbod@google.com> am efb56934: am 1d50ad79: Merge "Whoops, forgot the HONEYCOMB_MR1 constant. :(" into honeycomb-mr1

* commit 'efb56934efdc0aae38ce7264f2576326293846b6':
Whoops, forgot the HONEYCOMB_MR1 constant. :(
d630f105e8bc0021541aacb4dc6498a49048ecea 18-Mar-2011 Joe Onorato <joeo@google.com> AsyncTask now uses the poll executor for apps up through HC MR1 and the serialized one after that.

Change-Id: I47d135ace5f8e78e4fa44ac9d1bf7abeeb9d3ba0
syncTask.java
edf1fc6ce642c8d0f675795635d223b26d9f825c 18-Mar-2011 Dianne Hackborn <hackbod@google.com> Whoops, forgot the HONEYCOMB_MR1 constant. :(

It shouldn't be a problem to put this in -- it is a static final
so it doesn't actually need to be in the on-device system image.

This is important for the SDK.

Change-Id: Iaa086247d0d65fe708c40fbab506aa60cd3e1396
uild.java
63fce8c56d72c28fcf9c3edac9263dd7c49cb132 16-Mar-2011 Kenny Root <kroot@google.com> Merge "Update WakeLock-related docs to mention permissions"
d710fb500c121b3f9563ccfbe488f7c9d3ec4985 16-Mar-2011 Kenny Root <kroot@google.com> Update WakeLock-related docs to mention permissions

android.permission.WAKE_LOCK permission is required to use WakeLock or
WifiLock, but nowhere is it mentioned that you must declare that
permission to use it.

Change-Id: Ib5f5294d37e39169fe5678743f380d95c4e5a842
owerManager.java
4ca74dc4c2e0c68803e777cf47ed8e01b8e8444e 14-Mar-2011 Jason parks <jparks@google.com> Send out a broadcast that the system is being
factory reset.

Change-Id: I339b7ce58cb3f48316103be49b582d4f7e9b63bf
ecoverySystem.java
9b7c1274ddba8db2842431649d46c4cef510131f 15-Mar-2011 Dianne Hackborn <hackbod@google.com> am e2e8da7c: am 7c2e76f0: Merge "Improve error reporting for issue #3183612" into gingerbread

* commit 'e2e8da7c734b71c4b6b81e51e16ce3f4061f0f07':
Improve error reporting for issue #3183612
e2e8da7c734b71c4b6b81e51e16ce3f4061f0f07 15-Mar-2011 Dianne Hackborn <hackbod@google.com> am 7c2e76f0: Merge "Improve error reporting for issue #3183612" into gingerbread

* commit '7c2e76f0a4daa7e4316e7a85d41d3c391319d955':
Improve error reporting for issue #3183612
1ab43775d8134d652a7d27f2d79c569653e47f1a 15-Mar-2011 Dianne Hackborn <hackbod@google.com> Improve error reporting for issue #3183612

java.lang.SecurityException: Neither user 1209 nor current process
has android.permission.WAKE_LOCK.

Change-Id: I465972ab91b007e04b2ac62550f78583956a4048
ooper.java
50c294f21b3348010c3f91c5a998d54e1e45d2e4 08-Mar-2011 Andy Stadler <stadler@google.com> Clarify rules about encryption of emulated storage.

Bug: 3351426
Change-Id: I3a8fcd369862f3eab1781699108e29fe7ab474a0
nvironment.java
e3a7f628c6d9fef42be24999b3137ebe5c6f3525 04-Mar-2011 Dianne Hackborn <hackbod@google.com> Fix Fragment.onInflate() to actually work correctly.

Like, um, it needs to be given the Activity since this is called before
the activity is attached.

And it was called after the entire fragment and its *view* was created
when being restored from saved state.

And the documentation was whacked.

Also fix the IME selector to dismiss when you tap outside of it.

Change-Id: Icbcafe7558965a570bdef9cda3441b1f0f7a317c
undle.java
d984ba13202b16577c50aaeab045902f11b84bda 03-Mar-2011 Simon Wilson <simonwilson@google.com> am df58a1bb: am 3d79f1ce: am edc68a00: Merge "Attempt to reduce problems from issue #3183612" into gingerbread

* commit 'df58a1bbf8d7f6608848eae4d5d48dcff137dc8c':
Attempt to reduce problems from issue #3183612
df58a1bbf8d7f6608848eae4d5d48dcff137dc8c 03-Mar-2011 Simon Wilson <simonwilson@google.com> am 3d79f1ce: am edc68a00: Merge "Attempt to reduce problems from issue #3183612" into gingerbread

* commit '3d79f1ce84ee60dbb26468b9e5f75f4ccb5ed8aa':
Attempt to reduce problems from issue #3183612
3d79f1ce84ee60dbb26468b9e5f75f4ccb5ed8aa 03-Mar-2011 Simon Wilson <simonwilson@google.com> am edc68a00: Merge "Attempt to reduce problems from issue #3183612" into gingerbread

* commit 'edc68a001cd94d2011029004cb27231432a18575':
Attempt to reduce problems from issue #3183612
edc68a001cd94d2011029004cb27231432a18575 03-Mar-2011 Simon Wilson <simonwilson@google.com> Merge "Attempt to reduce problems from issue #3183612" into gingerbread
bd8b6f25bb48daea4aeb0c7463661c8e69baece0 01-Mar-2011 Christopher Tate <ctate@google.com> Fix binder proxy death notice tracking

There was an issue with stale recipient tracking when BinderProxy weak
references had been purged and a new proxy object allocated for a
still-live underlying IBinder. The death recipient bookkeeping has
now been reworked so that it's fundmentally tied to the BinderProxy
instances, not maintained as global state, to prevent this sort of
confusion entirely.

Bug 3499939

Change-Id: I75c5216b6d53b90868ac969e32c9725201e51be3
inder.java
c9119f5034d36f548bbddd8f60291e24ab4e270b 01-Mar-2011 Dianne Hackborn <hackbod@google.com> Add ParcelFileDescriptor APIs to get raw fd.

Change-Id: I66ba72ffffd27237e60c9411453eef950ae62705
arcel.java
arcelFileDescriptor.java
a28b83ee04ca25100781f37a50665d6e1b05e3a2 28-Feb-2011 Elliott Hughes <enh@google.com> Fix Parcel.writeNative to not ignore 'offset'.

Also switch to using libcore's array bounds checking. (This variant had no
detail message and was missing the length check.)

Bug: http://code.google.com/p/android/issues/detail?id=15075
Change-Id: Icfc045bd59403b59f02d95c8514abf881d3996e5
arcel.java
22577b8d3a39c1373594ba3e4427212eee4cd6d4 24-Feb-2011 Jason Chen <jasonchen@google.com> am 5ff79c3b: Merge "DO NOT MERGE Cherry-pick of Ie4026a7c back to GB" into gingerbread

* commit '5ff79c3b06d7087153617dc973491fc890700af5':
DO NOT MERGE Cherry-pick of Ie4026a7c back to GB
9248e95a2f03afe4cded90f0209ab825f253dd37 06-Jan-2011 Dianne Hackborn <hackbod@google.com> DO NOT MERGE Cherry-pick of Ie4026a7c back to GB

Original change description follows:
-----------------------------------

Implement issue #3326435: Battery stats improvements

Keep track of discharge while screen is on vs. off.

Checkin looks like:

5,0,u,dc,1,1,1,0

The last four numbers are, from left:

- Maximum battery drain over time period.
- Minimum battery drain over time period.
- Battery drain while screen was on.
- Battery drain while screen was off.

Change-Id: Ie3cfe52df29b3f28ba8dc3350abe6cc967c76324
atteryStats.java
5284090631e638b916d9a453212e9dc802656a67 18-Feb-2011 Wink Saville <wink@google.com> Changes for ril.h version 6.

Change-Id: Iacd9d362c4836546ac277cf3571227d426a721aa
atteryStats.java
e5dea7537cadbf79614730f96d9e92cc2b12ad5a 09-Feb-2011 Dianne Hackborn <hackbod@google.com> Attempt to reduce problems from issue #3183612

java.lang.SecurityException: Neither user 1209 nor current...
...process has android.permission.WAKE_LOCK.

It looks like, somehow, the calling uid/pid of the SyncHandler
thread is getting corrupted. This change has Looper check for
these values changing from their original defaults and, if there
is a problem, resetting them and logging a WTF. Hopefully this
will avoid crashing the process, while also giving us more
helpful error reports about what is going on.

Change-Id: Iff06d575951fb8c06e2a3c31141f2907a715eb81
ooper.java
d2ed82fb9423afe744780f66c667bb98261d3a6a 29-Jan-2011 Jean-Baptiste Queru <jbq@google.com> am 66700397: Merge 3100207b from gingerbread-plus-aosp

* commit '66700397496fc6f6d26f9f0b56ead8ef610b9654':
Tweak to make merges easier
66700397496fc6f6d26f9f0b56ead8ef610b9654 29-Jan-2011 Jean-Baptiste Queru <jbq@google.com> Merge 3100207b from gingerbread-plus-aosp

Change-Id: Ib2eaede8b9e400e1d273f981c08a6ef82f3dd588
3100207be5cb0ef93a5271f24b6f03a2e75291ad 29-Jan-2011 Jean-Baptiste Queru <jbq@google.com> am 1358b6a4: Tweak to make merges easier

* commit '1358b6a4fb68e81058aa938e46b125350bdf0fff':
Tweak to make merges easier
1358b6a4fb68e81058aa938e46b125350bdf0fff 29-Jan-2011 Jean-Baptiste Queru <jbq@google.com> Tweak to make merges easier

Bug: 3364311

Change-Id: Idec05206615de524a3b61d8579d9f2b462b541cd
torage/IObbActionListener.java
450536b6a6139393c61aefc0ad57544eda5bfe8b 29-Jan-2011 Jason parks <jparks@google.com> am d4796c82: am a2e765ef: Merge "Update the encryption password when the device password is changed." into honeycomb

* commit 'd4796c823b92866d5895acf610e5571e9b5724d9':
Update the encryption password when the device password is changed.
d4796c823b92866d5895acf610e5571e9b5724d9 29-Jan-2011 Jason parks <jparks@google.com> am a2e765ef: Merge "Update the encryption password when the device password is changed." into honeycomb

* commit 'a2e765ef1ad2cb907a4ae0a93bb15e4764ebb59a':
Update the encryption password when the device password is changed.
f7b3cd4efd40b7631f36ea014407a850f7dc637e 27-Jan-2011 Jason parks <jparks@google.com> Update the encryption password when the device password is changed.

* Added changeEncryptionPassword() to the MountService.
* Update LockPatternUtils to call changeEncryptionPassword()
when the password is changed.

Note we only require the new password to change the
encryption password.

Bug: 3382129
Change-Id: I26a7e919e325e75e22fa4290da0a8b1b57b55a80
torage/IMountService.java
bd549fe0bb00a906579be5bd8666578f4a5e39f9 26-Jan-2011 Kenny Root <kroot@google.com> am 7dbf0696: resolved conflicts for merge of 2c1d0967 to honeycomb-plus-aosp

* commit '7dbf0696ef37097f2bcec058f876f7f4ba63d357':
Make ObbActionListener a on-way call
7dbf0696ef37097f2bcec058f876f7f4ba63d357 26-Jan-2011 Kenny Root <kroot@google.com> resolved conflicts for merge of 2c1d0967 to honeycomb-plus-aosp

Change-Id: Ie9b0166b0260ee7eea7bdd275e64f2714024bf1c
2c1d0967ba23f7e806e338bc74148bed93823706 26-Jan-2011 Kenny Root <kroot@google.com> Merge "Make ObbActionListener a on-way call" into honeycomb
29a208e12c9c29d9923c0b1b93e61cbc128f281c 26-Jan-2011 Kenny Root <kroot@google.com> am ff271a22: am 2ec4af59: am 138757db: Merge "Make OBB results a one-way call" into gingerbread

* commit 'ff271a2288f375fc7a5854ac0d1f7c969d91996d':
Make OBB results a one-way call
ff271a2288f375fc7a5854ac0d1f7c969d91996d 26-Jan-2011 Kenny Root <kroot@google.com> am 2ec4af59: am 138757db: Merge "Make OBB results a one-way call" into gingerbread

* commit '2ec4af59209ab3a7088a001bbbcb10ef0b846564':
Make OBB results a one-way call
2ec4af59209ab3a7088a001bbbcb10ef0b846564 26-Jan-2011 Kenny Root <kroot@google.com> am 138757db: Merge "Make OBB results a one-way call" into gingerbread

* commit '138757db4f19cb626ef5c1d371d4fca004304a08':
Make OBB results a one-way call
079374966194f3edc70cfc8596223f755e46a2d0 26-Jan-2011 Dianne Hackborn <hackbod@google.com> am b8fc8c26: am 4fbca2b6: Merge "Change AsyncTask.execute() back to using a thread pool..." into honeycomb

* commit 'b8fc8c26cba829225469a65bf8e35b06de54588e':
Change AsyncTask.execute() back to using a thread pool...
b8fc8c26cba829225469a65bf8e35b06de54588e 26-Jan-2011 Dianne Hackborn <hackbod@google.com> am 4fbca2b6: Merge "Change AsyncTask.execute() back to using a thread pool..." into honeycomb

* commit '4fbca2b6138c52405fd7fb241bbf3c21fddd04bb':
Change AsyncTask.execute() back to using a thread pool...
96438cd658f91fed9d8fc651c4eb1e55dc6dbf80 26-Jan-2011 Dianne Hackborn <hackbod@google.com> Change AsyncTask.execute() back to using a thread pool...

...for now.

Change-Id: I1fe64f3e3a575f85add11dfe4d405f0c3a4a49de
syncTask.java
b7db2726e91f1d9480359d0f83b9cb7769906b34 26-Jan-2011 Kenny Root <kroot@google.com> Make OBB results a one-way call

OBB result back to an application needs to be a one-way binder call.

Bug: 3353699
Change-Id: I0e625914d18a001c2fa9d764ea6463f34cf96743
torage/IObbActionListener.java
821a4aca2b7e7ca3e52088e16bc9c0c418d92785 26-Jan-2011 Brad Fitzpatrick <bradfitz@android.com> am 47864180: am 6af61b84: am a206efcf: Merge "android.os.Message: respect sPoolSize"

* commit '47864180918702768d26f48ec3213c935cea0c4b':
android.os.Message: respect sPoolSize
47864180918702768d26f48ec3213c935cea0c4b 26-Jan-2011 Brad Fitzpatrick <bradfitz@android.com> am 6af61b84: am a206efcf: Merge "android.os.Message: respect sPoolSize"

* commit '6af61b843511bc5b669d30b980c4a9e2682da47c':
android.os.Message: respect sPoolSize
6af61b843511bc5b669d30b980c4a9e2682da47c 26-Jan-2011 Brad Fitzpatrick <bradfitz@android.com> am a206efcf: Merge "android.os.Message: respect sPoolSize"

* commit 'a206efcf8d2e56cbd0d1de125b29b45fc6cc8431':
android.os.Message: respect sPoolSize
2405c278ef51ac527bca6d76a0b9d4804f9aab17 25-Jan-2011 Brad Fitzpatrick <bradfitz@android.com> android.os.Message: respect sPoolSize

Also rename some static members from mFoo to sFoo.

Bug: http://code.google.com/p/android/issues/detail?id=13866
Change-Id: I5c5075eb6f529d1534c7aa72b6881873cd08676a
essage.java
a16e38f156fb996c83d5dc2db0b275bc9927006b 25-Jan-2011 Jesse Wilson <jessewilson@google.com> Merge "Prefer the overload of getDigestAlgorithm spelled correctly."
66e40c36b3145f4d2f3ddd547bd66f27b12f6324 25-Jan-2011 Jesse Wilson <jessewilson@google.com> Prefer the overload of getDigestAlgorithm spelled correctly.

Change-Id: Iaf1c031b982890c2ef21607bdf80acd652646e19
ecoverySystem.java
9d97b63d0e0c7c9deb2d140c1dd579b51f52c1af 23-Jan-2011 Dianne Hackborn <hackbod@google.com> Honeycomb is now officially API 11.

Change-Id: I5b11801468bf6ee2482f1ef201ece70ed9303bd8
uild.java
19fdccfdf85148c0dde68b6ac8bb075b192193e4 21-Jan-2011 Dianne Hackborn <hackbod@google.com> am 11576102: Fix issue #3373438: Update GBMR versions

* commit '11576102a9794ef964a08bc372dc09803f58997a':
Fix issue #3373438: Update GBMR versions
c0bb0bb5e3425b77b6e7820ebe25fe72bdd07782 21-Jan-2011 Brad Fitzpatrick <bradfitz@android.com> StrictMode: set sIsIdlerRegistered to false, and don't register if no penalties

Change-Id: I1b2531b66d09c850519af17918aed8be9853ef3b
trictMode.java
5f8b5c191cae77f536ee64f0b625e4a7f8596787 21-Jan-2011 Brad Fitzpatrick <bradfitz@android.com> Fixes for StrictMode instance count checking.

Misc stuff found after looking at the first day of data, Jesse's
review, and comments from Dianne about tracking Activity counts
better.

Change-Id: Ifee1ef8f59f41061d4aac8c02765627dbf3cd8e4
trictMode.java
11576102a9794ef964a08bc372dc09803f58997a 20-Jan-2011 Dianne Hackborn <hackbod@google.com> Fix issue #3373438: Update GBMR versions

Change-Id: Ic4b4f1b0534fd2fbd6322eae01a4cb9d5a67cc6f
uild.java
9240f16d771549b62b5f10efe9f784d87a0afaa4 19-Jan-2011 Brad Fitzpatrick <bradfitz@android.com> Merge "StrictMode: class instance limits (track object "leaks")" into honeycomb
bfbe5771106a07f9c8e8685e402b1003db40526f 19-Jan-2011 Brad Fitzpatrick <bradfitz@android.com> StrictMode: class instance limits (track object "leaks")

Change-Id: I2db5a19060c2013078feb88a91caf655469b2f98
trictMode.java
54973710d769e4722dc21778f8fcb7b08d2872dd 19-Jan-2011 Mike Lockwood <lockwood@android.com> Merge "Environment.isExternalStorageRemovable() is false if external storage is emulated" into honeycomb
70ee3ca616a296650a1de7864c9f5c0f41fa8fa1 19-Jan-2011 Mike Lockwood <lockwood@android.com> Environment.isExternalStorageRemovable() is false if external storage is emulated

Change-Id: Ib1afe83e4295d8304b65e822edd0dfa1591a5be7
Signed-off-by: Mike Lockwood <lockwood@android.com>
nvironment.java
6c2c5fc9930d14d502a22326dee9bf4475dbd649 19-Jan-2011 Dianne Hackborn <hackbod@google.com> Just a little 'ol activity manager permission change.

We no longer enforce permissions for applications that are accessing
their own components. This allows an application to require a permission
on one of its components that it does not itself have. This is useful
for example with the new advanced widgets, which require a system-only
permission on the implementing service to ensure the app's data stays
private but it is nice to allow the application to still touch its own
widget service.

Change-Id: I5d61930a083816919545870039ad191314ed48c6
uild.java
241fc72b455158849c623c0819c9d71a2e6e7ae4 18-Jan-2011 Kenny Root <kroot@google.com> Merge "Don't cache return of getService in Environment" into honeycomb
b2278dc1853241b4868c89ba3dab6b86b1c7ec53 18-Jan-2011 Kenny Root <kroot@google.com> Don't cache return of getService in Environment

There is already a cache of all non-null return values for calls to
getService(), so don't bother caching it in Environment. This caused
some problems when Environment was called too early in the boot process
and getService() returned null.

Change-Id: I66739d01dab7e422f660d26b370ecce110dcc808
nvironment.java
758035757f11a085a12b54daa9467f1d6bb251ef 13-Jan-2011 Brad Fitzpatrick <bradfitz@android.com> StrictMode class instance limit interface.

Change-Id: Ic5eea539586e5d4965d83364bf9f623d1d89f2b1
trictMode.java
f09d63a52c84386a7b3539eab5b43f020f194c77 17-Jan-2011 Kenny Root <kroot@google.com> Re-@hide some of the other StorageManager API

Some StorageManager API was accidentally unhidden during a bad merge.
Re-@hide the API to fix it.

Bug: 3362407
Change-Id: I5ad6925d3b6c18c33230127b1318c150d028a010
torage/StorageEventListener.java
torage/StorageResultCode.java
ec7c9ff0bb1c98cb8bec3ec7bdacbae3a434fa53 17-Jan-2011 Kenny Root <kroot@google.com> Hide USB mass storage APIs in StorageManager

They appear to have been unhidden in a bad merge from gingerbread.

Change-Id: Ice0fc865425d5d885af3c2e90a7ffeaa1d623b80
torage/StorageManager.java
805fd7ee0e5dc2939e85c84f78d9890a51982bc0 17-Jan-2011 Dianne Hackborn <hackbod@google.com> Add API to get path to OBBs.

Also hide the bitmap thumbnail stuff, we can't support it in its
current form.

And fix some bugs with propagating paths to native code. Yikes!

Change-Id: I13ab37ddbdba5c073489cba5eab035117d3c1574
nvironment.java
9bb85ab3af3f8e4efa9c8c22f907680cd0108bcb 16-Jan-2011 Joe Onorato <joeo@google.com> fix the build... sorry... bad docs...

Change-Id: I4b543f306d58ec95693c8e3515dffcb7dd55dc29
syncTask.java
1ddf75a3df38c3e9b56ed626da52662dd0694279 16-Jan-2011 Joe Onorato <joeo@google.com> Merge "Change the default of how AsyncTask enqueues." into honeycomb
81de61bfddceba0eb77b3aacea317594b0f1de49 16-Jan-2011 Joe Onorato <joeo@google.com> Change the default of how AsyncTask enqueues.

The default is now to serialize everything onto the thread pool. If you would
like to have finer grained control over how AsyncTasks are executed, you can
call the new executeOnExecutor method, which takes a custom Executor. The
pool used by the default is handily now accessible as THREAD_POOL_EXECUTOR.

This change is because it is too tempting to convert single threaded Jankyâ„¢
code to use AsyncTask in a way that is unsafe and ends up calling the
AsyncTasks in parallel.

Also, this adds a static execute(Runnable) method to AsyncTask that posts
onto the serialized queue, so that if you don't have any parameters or
return values, you can just use Runnable instead of AsyncTask.

Change-Id: I91bdfb00193542bfc2e101bcad56e3430421884a
syncTask.java
3b81bc18bb661c02ad8074c39dab16644c1e65d0 15-Jan-2011 Dianne Hackborn <hackbod@google.com> Add manifest API to request a large heap.

You can now do android:largeHeap="true" on an application.

Doesn't yet do anything, waiting for Dalvik API.

Also tweak package parsing so that the SDK API level is set in the
configuration, allowing manifest resource value selection based on
that.

Change-Id: I6e035f9702a97b055416743b88f83a22ba4a9584
uild.java
373c1c975dce2e460d40a7c1cd71e35ce4b4a375 14-Jan-2011 Kenny Root <kroot@google.com> Make ObbActionListener a on-way call

Bug: 3353699
Change-Id: If1bba2e9c2ed3d807657b6b4a6b54b7805bec02b
torage/IObbActionListener.java
4a82b620443269e0954ebb0743d8b42f0e76bc3e 14-Jan-2011 Brad Fitzpatrick <bradfitz@android.com> Remove accidental StrictMode logging left in.

Change-Id: I7580816c6efc32889f49987152ff1d4c40d47140
trictMode.java
a3cdaa5337fa573c4c61770195d6232c2e587090 13-Jan-2011 Jason parks <jparks@google.com> Revert "Remove the APIs for the old encryption scheme."

This reverts commit 1125d780a8b61703b8eb28c5c77dac5f3f0022dd.
nvironment.java
21f62b9e461416ae61c8471f7199f104f8fe33de 13-Jan-2011 Jason parks <jparks@google.com> Merge "Add a method enable encryption." into honeycomb
ca6777b23bbe9283380efb2ba7e6d0a79d8669db 13-Jan-2011 Jason parks <jparks@google.com> Merge "Remove the APIs for the old encryption scheme." into honeycomb
7e942848ace2e1f81345d4397679d65a048fe828 13-Jan-2011 Carl Shapiro <cshapiro@google.com> Note the release in which functionality was deprecated.

Change-Id: Ia0f361986e4232869f7d4123f75081100241638e
ebug.java
1107383e029e30bb18c77ca887db2af067a79154 13-Jan-2011 Carl Shapiro <cshapiro@google.com> Deprecate the allocation limit interfaces.

Allocation limits relied on conditionally compiled code in the virtual
machine that was disabled in released versions of Android. As such,
these setter methods were glorified no-ops. Now that the feature has
been removed from the allocator this interface is thoroughly obsolete.

Change-Id: Id7f9de37ecfece4b909e35f110e118e131457133
ebug.java
56aa5321fe6f00fa3662e6f46a4b2559aa34f63e 07-Jan-2011 Jason parks <jparks@google.com> Add a method enable encryption.

This is for testing and needs to be cleaned up.

Change-Id: I29958f2a95c7773744e61bbd23a302b752614f87
torage/IMountService.java
1125d780a8b61703b8eb28c5c77dac5f3f0022dd 12-Jan-2011 Jason parks <jparks@google.com> Remove the APIs for the old encryption scheme.

Change-Id: I55116a5b29b10dfd50015805ec019b485257f68b
nvironment.java
540f86aa42877ac73f6f2f24dac49382432aa078 12-Jan-2011 Dianne Hackborn <hackbod@google.com> Get rid of old ParcelFileDescriptor API.

Also some new debugging code in AsyncTaskLoader.

Change-Id: Ib13386b7862821cf0ee31b003bedef78f46240f1
arcelFileDescriptor.java
3459e27e5d2f92d2d5487c189c9386c031e79fc1 11-Jan-2011 Mike Lockwood <lockwood@android.com> un@hide android.os.Environment.isExternalStorageEmulated()

Change-Id: I35e7dc59763595523cb5af569e237bcff5cf1b49
Signed-off-by: Mike Lockwood <lockwood@android.com>
nvironment.java
5ba812b9e9c886425a5736c2ae6fbe0fc94afd8b 10-Jan-2011 Romain Guy <romainguy@google.com> Make sure onCancelled() is called if cancel() is called early.

In some situations, when cancel() was called before the task had a
chance to start its execution, onCancelled() would not be invoked.

Change-Id: I6c1f4cd28a209fb8cc779bb212f500565dfceaae
syncTask.java
e95003e4a15eea2d5f93950fc46f99ff2b9c973a 09-Jan-2011 Romain Guy <romainguy@google.com> Tighten up AsyncTask's semantics and behavior.
Bug #3109366
Bug #3109382

The new behavior of AsyncTask is the following:
- Unchanged if you don't call cancel()
- If you call cancel():
- Either onCancelled() *OR* onPostExecute() is invoked
- onCancelled() is invoked only after doInBackground() finishes

Change-Id: If53faec5890d2fa7098aea76973186a0b1026b39
syncTask.java
c1b40e361c6cd3bdc53499f17ac09f45e6873059 06-Jan-2011 Dianne Hackborn <hackbod@google.com> Implement issue #3326435: Battery stats improvements

Keep track of discharge while screen is on vs. off.

Checkin looks like:

5,0,u,dc,1,1,1,0

The last four numbers are, from left:

- Maximum battery drain over time period.
- Minimum battery drain over time period.
- Battery drain while screen was on.
- Battery drain while screen was off.

Change-Id: Ie4026a7cc8aabb2a6d47d03d2e278aa51c2d5ddf
atteryStats.java
ac1325bcd394bdc8903b26e8593cc06753d79f29 05-Jan-2011 Jason parks <jparks@google.com> Merge "Add decryption support to MountService."
5af0b916f850486cff4797355bf9e7dc3352fe00 29-Nov-2010 Jason parks <jparks@google.com> Add decryption support to MountService.

* Implement the decryptStorage() method on the Mount Service.
This method makes the calls into vold to decrypt the encrypted
volumes and mount them.

Change-Id: I4f6e07a111cf0b36611d590debf9f6579c5ac5f7
torage/IMountService.java
b596198d8d588a113e7e1b204ab09f46a02822c6 23-Dec-2010 Carl Shapiro <cshapiro@google.com> Remove functionality related to external allocation tracking.

The android.os.Debug class exposed two interfaces related to external
allocation. The first interface provided a counter of global external
allocation events. This change makes the global counter getters
constantly return 0 and stubs out the counter setters. The second
interface attempted to provide a counter of per-thread external
allocation events. That interface was never implemented. This change
makes the per-thread counter getters constantly return -1 and stubs
out the setters.

Change-Id: I240fe9bf05297a83607a4350d40d20581e2a9e2f
ebug.java
a2ea747faaf5fcd437afbaaf4085cfc29e7c16b8 20-Dec-2010 Dianne Hackborn <hackbod@google.com> More cleanup of Loader APIs.

- Remove old method names.
- Introduce onXxx() hooks to Loader.
- Improve debugging.

Change-Id: I3fba072a05c7023aa7d2c3eb4e126feb514ab6d8
syncTask.java
arcelFileDescriptor.java
334031cd07c3bd09d23fce0ebaf946fc6ecfee26 10-Nov-2010 Glenn Kasten <gkasten@google.com> Fix documentation errors

Fix typos.
Fix javadoc error.
Fix wrong instructions about new returning null.

Change-Id: I76bca22e386839007fc99667b07649a4ced4180f
Binder.java
dcaa10cd361a543cfa93bbb5c53444f437bd07a4 16-Dec-2010 Mike Lockwood <lockwood@android.com> Add Process.MEDIA_RW_GID constant

Change-Id: I2358e5ef1e55ee4b1b9725451ce06cfbf3ed54a4
Signed-off-by: Mike Lockwood <lockwood@android.com>
rocess.java
4e920f70f38d52d3a74c6a3133388a2e2cb6c175 14-Dec-2010 Brad Fitzpatrick <bradfitz@android.com> Add MODE_MULTI_PROCESS flag to Context.getSharedPreferences()

Also, changes to make this testable with CTS:

-- special PENALTY_DEATH StrictMode fast path that doesn't use
the Looper idling to "time" the violation. Only used when
death is the only violation,

-- make PENALTY_DEATH throw a RuntimeException instead of
killing its process with a signal. this means we can catch
it in CTS tests, but it's also more consistent with
PENALTY_NETWORK_DEATH in Honeycomb.

-- make FileUtils.getFileStatus() invoke StrictMode, which isn't
(yet?) aware of I/O in native code. so help it out.

CTS test for MODE_MULTI_PROCESS is in I6154edab

Change-Id: Icf93f9dfb0ece06b16781e4803dd2c17df3cf1b3
ileUtils.java
trictMode.java
d10bfe185c336d813845c9beb1f4041c5daa1669 14-Dec-2010 Jeff Brown <jeffbrown@google.com> Improve documentation on Vibrator.vibrate.

Bug: 3135537
Change-Id: I961e32990d754dc6b5f86ffea8515685f8ade40f
ibrator.java
996f41da3ca69844ffeee9f8e9ae7423bf440788 14-Dec-2010 Brad Fitzpatrick <bradfitz@android.com> am 2d5b11ab: am 0927c902: Merge "Fix StrictMode javadoc copy/paste error." into gingerbread

* commit '2d5b11aba0fec21e1ce3f358eb0d280b62704899':
Fix StrictMode javadoc copy/paste error.
2d5b11aba0fec21e1ce3f358eb0d280b62704899 14-Dec-2010 Brad Fitzpatrick <bradfitz@android.com> am 0927c902: Merge "Fix StrictMode javadoc copy/paste error." into gingerbread

* commit '0927c9026537166cec36b2f9bb8a764ef8a7c606':
Fix StrictMode javadoc copy/paste error.
0927c9026537166cec36b2f9bb8a764ef8a7c606 14-Dec-2010 Brad Fitzpatrick <bradfitz@android.com> Merge "Fix StrictMode javadoc copy/paste error." into gingerbread
ccc714131359eb1022d8c6702b7d82ab9e93f27c 13-Dec-2010 Dianne Hackborn <hackbod@google.com> resolved conflicts for merge of 78e9f4cb to master

Change-Id: I1135361e6d66f524c3f349e2bf1f31bd4191c634
78e9f4cbaece783b7b87ce3fb0a157dae766012a 13-Dec-2010 Dianne Hackborn <hackbod@google.com> am e4a59519: Fix issue #3154576: battery stats checkin should include UID -> packages+ map

* commit 'e4a5951925f16f18dae91ed65567e96528f17fee':
Fix issue #3154576: battery stats checkin should include UID -> packages+ map
e4a5951925f16f18dae91ed65567e96528f17fee 07-Dec-2010 Dianne Hackborn <hackbod@google.com> Fix issue #3154576: battery stats checkin should include UID -> packages+ map

Includes some other small fixes to battery collection and a few
other things.

Output of package info looks like this:

5,0,i,uid,1000,com.android.settings
5,0,i,uid,1000,com.android.providers.subscribedfeeds
5,0,i,uid,1000,com.android.providers.settings
5,0,i,uid,1000,com.android.server.vpn
5,0,i,uid,1000,android
5,0,i,uid,1000,com.android.systemui
5,0,i,uid,1000,com.google.android.backup
5,0,i,uid,1001,com.android.phone
5,0,i,uid,1001,com.android.providers.telephony
5,0,i,uid,1022,com.android.nfc
5,0,i,uid,10021,com.google.android.location
5,0,i,uid,10021,com.google.android.syncadapters.calendar
5,0,i,uid,10021,com.google.android.gsf
5,0,i,uid,10021,com.google.android.syncadapters.contacts
5,0,i,uid,10026,com.android.providers.downloads.ui
5,0,i,uid,10026,com.android.providers.media
5,0,i,uid,10026,com.android.providers.drm
5,0,i,uid,10026,com.android.providers.downloads
5,0,i,uid,10032,com.android.launcher
5,0,i,uid,10039,com.google.android.gm
5,0,i,uid,10041,com.google.android.gallery3d
5,0,i,uid,10049,com.android.providers.calendar

Change-Id: I9e38f254eef146339113ad270f5c6e8b60fb7a1d
atteryStats.java
320274c5f17057a3a823fed50b7027cbd46fc025 13-Dec-2010 Brad Fitzpatrick <bradfitz@android.com> Fix StrictMode javadoc copy/paste error.

Change-Id: Idd49111f0a1af6f331cffa0972191b2d4e25a385
trictMode.java
595ca7062e81125723af5b2fdec2ba7277a00a11 13-Dec-2010 Mike Lockwood <lockwood@android.com> Merge "PowerManager: remove unused import"
36e52dce7f63881dd8061b6d4a6bed7c0721911e 13-Dec-2010 Mike Lockwood <lockwood@android.com> PowerManager: remove unused import

Change-Id: I0cfd48bd7ec0af3be7721994ab31d6f00634a4e0
Signed-off-by: Mike Lockwood <lockwood@android.com>
owerManager.java
dd60ee728d9e44a8c85ed6a99bcfa44beb0afa23 13-Dec-2010 Jean-Baptiste Queru <jbq@google.com> am 6d13b146: am e78a0009: resolved conflicts for merge of 4b94c451 to stage-korg-master

* commit '6d13b146e0444f40f45b9fe5812093c5e611b68e':
Added dropbox broadcast notification
e78a000955c283509ee8a21b8b7e448060ac8dd8 13-Dec-2010 Jean-Baptiste Queru <jbq@google.com> resolved conflicts for merge of 4b94c451 to stage-korg-master

Change-Id: I07b974f96ca598677e58623050e4668822e68f23
e36f9bf123c7cd07ce1007a16de564b2840ea1fe 10-Dec-2010 Brad Fitzpatrick <bradfitz@android.com> StrictMode "custom" trigger support.

For people who want to annotate their own functions as slow, outside
of just the built-in disk & network stuff.

Change-Id: Ia90e150d1cf7a23a658c091285c1c8bb2d7d9732
trictMode.java
b247536aa3d458750edbc6b45b2348a994d83426 07-Dec-2010 Hakan Still <hakan.still@sonyericsson.com> Added dropbox broadcast notification

To monitor the dropbox an application have to either poll the dropbox
and keep track of all entries or observ the /data/system/dropbox
directory. The later requires that the application runs as system-user.
This commit adds that a broadcast intent is sent when something is written
to the dropbox and an application can just listen on this intent and
then reads the entry with help of the DropboxManager class.
The application have to hold the permission android.permission.READ_LOGS
to get the intent.

Change-Id: I1f77f206a243df69f4ed5306078c47f7bf6181ec
ropBoxManager.java
0aae2d4e0075fd699cf40b26dca0eb2c3b3e37d2 08-Dec-2010 Dianne Hackborn <hackbod@google.com> Rework activity lifecycle so onSaveInstanceState() is after onPause().

The goal is to fix a bunch of fragment-related bugs caused by various
things trying to do fragment transactions after onPause()... which
currently throws an exception, since this is after the activity's state
has been saved so the new fragment state can be lost.

The basic change is relatively simple -- we now consider processes
hosting paused or stopping activities to be unkillable, and the client
code now does the onSaveInstanceState() as part of stopping the
activity.

For compatibility, if an app's targetSdkVersion is < HONEYCOMB, the
client side will still call onSaveInstanceState() prior to onPause()
and just hold on to that state until it needs to report it in once
being stopped.

Also included here is a change to generate thumbnails by taking
screenshots. The code for generating thumbnails by re-rendering
the view hierarchy is thus removed.

Change-Id: Iac1191646bd3cadbfe65779297795f22edf7e74a
uild.java
b96f58911e412fdb0ebdd2bda7dbe89a0829b5db 03-Dec-2010 Dan Bornstein <danfuzz@android.com> Propagate the concept of "packed opcode" values.

Dalvik now exposes a distinction between "packed" and regular opcode
values. The packed values are more densely defined in the range 0-0x1ff,
whereas the regular values are sparsely defined across the range 0-0xffff.

The only current use for packed values at this level is in opcode
usage reporting, but their use may expand over time.

Change-Id: Ie783b90cb2dcb9df8f3eb19a7c708a53906fdbe4
ebug.java
1d99b06ccf48891fbb47947d31f6fbb29c815713 30-Nov-2010 Dan Bornstein <danfuzz@android.com> Get rid of vm-internal constants.

This change makes Debug use less vm-implementation-specific code to
ask which opcodes represent method invocations.
ebug.java
9f3155418d0a504e45bc8c0ce47e11c8689ab36c 20-Nov-2010 Dan Bornstein <danfuzz@android.com> Dalvik opcode-related fixes.

This makes Debug not hard code the number of opcodes and includes an
api-update of other opcode-related changes done in dalvik.system.

Change-Id: I70d22e1c710f224d75a22e319916724aea53f78d
ebug.java
f3c532632bdb2b3805cf9cbc1d2e7e639d41942b 01-Dec-2010 Brian Carlstrom <bdc@google.com> Merge "Tracking merge of dalvik-dev to master"
7495cfadd2d4680b60575fd962b075c0703b9cc8 01-Dec-2010 Brian Carlstrom <bdc@google.com> Tracking merge of dalvik-dev to master

Change-Id: I2f847003761d1300aca65c9471ed168bad82ffe0
ebug.java
bea168c09d173fb99cfc91c562c4a497a5e7d2d2 30-Nov-2010 Brad Fitzpatrick <bradfitz@android.com> StrictMode: more accurate timings

Don't wait for animations to finish before clicking stopwatch. (see
comments in the patch for details)

Change-Id: I73f87b2b787d6db19deb0171a2457ff5fc875d3d
trictMode.java
f54545927f365d6e55cbf66ff9f7ffe91aada774 25-Nov-2010 Brad Fitzpatrick <bradfitz@android.com> Don't flash StrictMode from the system server.

These are false positives from a developer's point of view.

Change-Id: Ic8baf81c0e2cf559a38c1fe6adfa6e739dd3eaed
trictMode.java
c1a968a8ed45181312f7d4bcdbba0cc8ddc201ba 24-Nov-2010 Brad Fitzpatrick <bradfitz@android.com> Option to enable StrictMode flashing on userdebug builds.

Change-Id: Ifc8e733ea0e0f6bda234a18ad84bcd230879e802
trictMode.java
ystemProperties.java
1065685400335ef8c1220f34b4e896e7da603789 24-Nov-2010 Brad Fitzpatrick <bradfitz@android.com> Fix potential weird StrictMode NPE.

Seen once in an eng build. Could in theory happen if there was a
violation in the system server before the activity manager was
registered.

Change-Id: I785f06848af0e2af4657be3a8edbbd658eeb3cf2
trictMode.java
ab0a3c05fc6e1b9deff990f4d8c77a7b702eb772 24-Nov-2010 Brad Fitzpatrick <bradfitz@android.com> Merge "Misc Looper cleanups; add android.util.PrefixPrinter"
1b29825cca9edda7ae4b3a3f27420c42fd13eef8 24-Nov-2010 Brad Fitzpatrick <bradfitz@android.com> Misc Looper cleanups; add android.util.PrefixPrinter

Change-Id: I0b9adce46cb785b4dd4e6296e1f97c8bcf0dbfbf
ooper.java
2970c499388b4dcd1232cd622a9b80b395eeb2b4 09-Nov-2010 Chet Haase <chet@google.com> various fixes for animations and javadocs

Issues around threading of animations and AnimatorSet bugs are
fixed in this change. Unrelated fixes to javadocs in other
framework classes are also part of the change.

Change-Id: I35f7e03ffdec9143bc2eb155e8f9384798ad35b3
ebug.java
f3d86be6d7d2999cd6bae236817688490df7da71 23-Nov-2010 Brad Fitzpatrick <bradfitz@android.com> StrictMode fingerprinting / hashCode improvements.

Change-Id: I08ff939327f7c11a562851847ae91c67b1db4f87
trictMode.java
cdcb73ef781b8f7d37d9f758409a0c7671517b37 23-Nov-2010 Brad Fitzpatrick <bradfitz@android.com> Cache WindowManager in StrictMode; add android.util.Singleton

Change-Id: I15a85461424de930710d4901658440b5d305cabb
trictMode.java
6804433b0af50f33a338307ae8ddb50bc49e886b 23-Nov-2010 Brad Fitzpatrick <bradfitz@android.com> StrictMode visual notification support.

Change-Id: I64a5adb683060d9649f1132414547bb3c346a2a8
trictMode.java
bee248769d51adb335b71b329b3d7813c5c71851 20-Nov-2010 Brad Fitzpatrick <bradfitz@android.com> StrictMode: dropbox VM-wide violations (e.g. CloseGuard) async

To be clear, the dropbox violations were already async in the
ActivityManager, but the Binder call was often 30 ms anyway.

This optimization was already done for per-thread violations earlier,
but was never done for VM-wide violations because they weren't common,
until CloseGuard came about. Now that CloseGuard fires a lot, apply
the same optimization to VM-wide violations.

This CL also addresses a concern of Dianne's earlier of too many
threads being outstanding. So now there's a paranoia check with an
upper bound on how many outstanding ActivityManager calls are
in-flight.

Change-Id: I95e0816105ab862f0f241052b149c9a46a70ce9c
trictMode.java
82829ef3b7c72bee36d8c17b36ac565f1856a310 19-Nov-2010 Brad Fitzpatrick <bradfitz@android.com> StrictMode: use Log.isLoggable

Change-Id: Ic28450066a43a168cfe3026d6d4b06b752f8423c
trictMode.java
d188ededa6f61dbe5a700e81db22c02478ce60cc 18-Nov-2010 Brad Fitzpatrick <bradfitz@android.com> StrictMode: shut up VM penalty logging on debug builds.

Thread penalties were just dropboxing, but VM penalties were both
dropboxing *and* logging, and most annoyingly.

Change-Id: Ifc64b642dd0e2b17f0234ce3724650489883f62b
trictMode.java
5376c65824db6d571fbfe4ee61ced0b384b20605 18-Nov-2010 Jean-Baptiste Queru <jbq@google.com> am 74923d3a: am d34c1495: Merge "Prevent system crash when OOM in Binder thread."

* commit '74923d3ae4bf7043a62a02c4df988ef3255737ce':
Prevent system crash when OOM in Binder thread.
74923d3ae4bf7043a62a02c4df988ef3255737ce 18-Nov-2010 Jean-Baptiste Queru <jbq@google.com> am d34c1495: Merge "Prevent system crash when OOM in Binder thread."

* commit 'd34c1495020e5d72dd18959fb906375dc0874c04':
Prevent system crash when OOM in Binder thread.
d34c1495020e5d72dd18959fb906375dc0874c04 18-Nov-2010 Jean-Baptiste Queru <jbq@google.com> Merge "Prevent system crash when OOM in Binder thread."
1cc13b6d1cc7203ad126b0708f0bf697e111264f 17-Nov-2010 Brad Fitzpatrick <bradfitz@android.com> Annotate ListView with StrictMode.Span

Change-Id: Ibee1bfa73c85dac2e8103eb5900f0609cbb30ee7
trictMode.java
1181cbbfd7c913c51d9836272ad30cfe851c4699 16-Nov-2010 Brad Fitzpatrick <bradfitz@android.com> Fast no-op path for StrictMode.Span on user builds.

Change-Id: I3eb75288d670a8ac1e10547715d8c1a855a5fdc9
trictMode.java
f342ac918234b5db4f7ed54e5b20d2277a3c2df7 16-Nov-2010 Brad Fitzpatrick <bradfitz@android.com> am 8443dd16: am 383e95e2: Merge "DropBox: Read until the end of stream has been reached"

* commit '8443dd16c2dfd5f56e33fbe76129f56e6a83b23e':
DropBox: Read until the end of stream has been reached
8443dd16c2dfd5f56e33fbe76129f56e6a83b23e 16-Nov-2010 Brad Fitzpatrick <bradfitz@android.com> am 383e95e2: Merge "DropBox: Read until the end of stream has been reached"

* commit '383e95e245ceb87a2a6ad6422404ce641f0e08eb':
DropBox: Read until the end of stream has been reached
e9f18815218b2ff1f01ea16f2eb0dd17504a9cf3 16-Nov-2010 Christian Lindeberg <christian.lindeberg@sonyericsson.com> DropBox: Read until the end of stream has been reached

Read the requested length or until the end of the input stream
has actually been reached.

Change-Id: I01bc0b81eca0225209bdd288dde6a778a19d1e2c
ropBoxManager.java
7c2ae6570321575ad74a25bdc72bea1ec6558660 14-Nov-2010 Brad Fitzpatrick <bradfitz@android.com> Fix CloseGuard/StrictMode integration.

Change-Id: Ib89843c48b92138d3981f0f719eae28bf44e2ed4
trictMode.java
e7520d89fe2c5dc9dd833ecd9769c981df855b61 11-Nov-2010 Brad Fitzpatrick <bradfitz@android.com> StrictMode.Span support

Support for annotating critical regions (e.g. animations) with
a tag to be uploaded.

Change-Id: I412fc78f40dc05c9a3c9f62a4b0463201dbdb767
trictMode.java
1a542c7b8ed0be049869a12d1e01e2604d052ac2 08-Nov-2010 Joe Onorato <joeo@google.com> The CHEEK_TOUCH stuff never worked. Remove it.

Bug: 3104906
Change-Id: Ia37236ba1775fc3ec8c111e2e0b85b105e0dea6a
ocalPowerManager.java
4b9b7c38e8f52259f9d2f960072d35e8a1ab2129 08-Nov-2010 Brian Carlstrom <bdc@google.com> Add custom CloseGuard.Reporter for StrictMode

StrictMode now replaces the default CloseGuard.Reporter with one that
calls onVmPolicyViolation, which is a renamed version of
onSqliteObjectLeaked.

Change-Id: Iea980662e2ee91939960c83b8768a8172379617a
trictMode.java
19f22745aa0fa2344850bac3234460add9d94c4e 05-Nov-2010 Mattias Petersson <mattias.petersson@sonyericsson.com> Prevent system crash when OOM in Binder thread.

When handling large images during an update of a widget,
we can run out of memory in the Binder thread. This will
cause an OutOfMemoryError to be thrown. When an Error is
thrown in the Binder thread, the entire system will crash.
This was fixed by catching this OutOfMemoryError and instead
throw a RuntimeException to keep the system alive.

Change-Id: If27199676c6f8aef23fb249be1197ca5dfe0fe99
inder.java
a4f03f98f16dca51ac5630b4f41bec08a7da1091 04-Nov-2010 Brian Carlstrom <bdc@google.com> Merge "Integrate StrictMode with CloseGuard"
fd9ddd1a40efc801dc7512950cb9336967b6f775 04-Nov-2010 Brian Carlstrom <bdc@google.com> Integrate StrictMode with CloseGuard

In additional to adding the StringMode API for controling CloseGuard,
this checkin fixes several CloseGuard issues found booting a device.

Bug: 3041575
Change-Id: I4dffd184f49438d6d477ed81a1c2a2a5b56cc76b
arcelFileDescriptor.java
trictMode.java
ea9020e0854427d47e566a1394df6749f3265410 04-Nov-2010 Dianne Hackborn <hackbod@google.com> Add API to find out if there is a vibrator.

Change-Id: If29f6ee19448222433cad9fad325d0095a8e5737
VibratorService.aidl
ibrator.java
962a990a45a2a9f9c3002064e71f9c2fed86acf1 02-Nov-2010 Robert Greenwalt <rgreenwalt@google.com> Add some network/phone type constants.

Support for LTE (and SIP-based voice) and the stepping-stone eHPRD.

bug:3125398
Change-Id: Ied3d96fa09d9c758a82a2fd1817f55db711d1a4f
atteryStats.java
bfb191998eba2ebc710ff9eb59480b10909ba4c9 30-Oct-2010 Brad Fitzpatrick <bradfitz@android.com> StrictMode: annotate violations with the Broadcast Intent's action, if any.

Change-Id: If36ab776bb95054a109b5475c6be041c75c7e0af
trictMode.java
b6e18412af35bf724298796eed65ef1fbbe1925e 28-Oct-2010 Brad Fitzpatrick <bradfitz@android.com> Make network usage on the main thread fatal (Honeycomb+)

For apps targetting Honeycomb SDK or above, make network usage on the
main thread (aka event thread, Looper thread, UI thread) be fatal.

If an app is targetting a previous SDK version, they're grandfathered
into the older (lack of) rules.

Bug: 786847
Change-Id: Ia4ae77b8369567ee526c96b930d523bc722b0bc9
etworkOnMainThreadException.java
trictMode.java
71678ddcc45d9cd4557f3bed8bba5382bf36b68b 28-Oct-2010 Brad Fitzpatrick <bradfitz@android.com> StrictMode: optimize common case (just dropboxing)

The way StrictMode is used during development, just dropboxing
violations, could be a little more optimal, taking the
ActivityManagerService call off the main thread. But we can only do
this safely in the case where that's the only penalty.

Data suggests this call, despite being async, still takes around 30
milliseconds. This isn't a major win, and arguably it might be a
_better_ idea to slow down people's event loops more and further jank
up their animations on violations, but I thought any less overhead
from StrictMode, the better.

Change-Id: Iad9cce1cb4a084fa64abc4b5e1b4f3bff6a08c94
trictMode.java
5164246d7e47b9c995ca1e1587f3056eb777f60b 28-Oct-2010 Dianne Hackborn <hackbod@google.com> Fix setting of class loader.

Also add Bundle API to retrieve its class loader because... well,
why not.

Change-Id: Ie939f6a2ae13974e5a05eb5bd3b28f350d8a8565
undle.java
4ca7f1e2811dc889e526de6c3d30bac8501c23d2 28-Oct-2010 Joe Onorato <joeo@google.com> Implement reminder power dialog and invalid charger dialog.

Bug: 2510318
Bug: 2974431
Change-Id: I92eb419eeffb657e5572a35a490735a96b303d6b
atteryManager.java
599ca29986235e07f532c7b112507f6c39b5dba9 22-Oct-2010 Brad Fitzpatrick <bradfitz@android.com> Expose (internally only) the number of animations currently running.

This will be used for StrictMode to annotate violations with
whether or not they janked up an animation.

Change-Id: I5bc691f49b74c45279cd2ae044d2a81dcf1204a9
trictMode.java
e6634981f12e1d218eaf61c6488af3d8c9f0d202 22-Oct-2010 Dianne Hackborn <hackbod@google.com> resolved conflicts for merge of 9c7489f8 to master

Change-Id: I1d8fd1146925f48ad690c89230d24dc8694703f4
9c7489f8bdcd08990c44250cbad64399badc72be 22-Oct-2010 Dianne Hackborn <hackbod@google.com> am 38993d8d: Merge "Fix issue #3122240: Expose xlarge in GB." into gingerbread
5383f502e4479d117c89666fb2ee1ca53f3d27cf 22-Oct-2010 Dianne Hackborn <hackbod@google.com> Fix issue #3122240: Expose xlarge in GB.

Plus some other small API cleanup.

Change-Id: I1a3c60f510f99224cccac9cc3f838f04141064f8
uild.java
de8635e4c4c9f674b52cb6041380c3ef2812630c 22-Oct-2010 Jeff Hamilton <jham@android.com> am 389a440a: Backport ParcelFileDescriptor.createPipe() from master.

Merge commit '389a440ad13f7b16e8f7c7f1670bdd55f1e2112a' into gingerbread-plus-aosp

* commit '389a440ad13f7b16e8f7c7f1670bdd55f1e2112a':
Backport ParcelFileDescriptor.createPipe() from master.
389a440ad13f7b16e8f7c7f1670bdd55f1e2112a 21-Oct-2010 Jeff Hamilton <jham@android.com> Backport ParcelFileDescriptor.createPipe() from master.

This allows content providers to expose arbitraty data
through the ContentResolver open* APIs.

Change-Id: I408a0b7cee9cdba5654a962098386c012d6b3549
arcelFileDescriptor.java
6be063d8a998f1c529f69e4c1649bcdaf514562c 19-Oct-2010 Brad Fitzpatrick <bradfitz@android.com> am 5a67749a: am 987e8d7f: Merge "Fix Vibrator permission CTS test broken earlier." into gingerbread

Merge commit '5a67749a35bcbb70bfcc5f4c18da6a196bda33c1'

* commit '5a67749a35bcbb70bfcc5f4c18da6a196bda33c1':
Fix Vibrator permission CTS test broken earlier.
5a67749a35bcbb70bfcc5f4c18da6a196bda33c1 19-Oct-2010 Brad Fitzpatrick <bradfitz@android.com> am 987e8d7f: Merge "Fix Vibrator permission CTS test broken earlier." into gingerbread

Merge commit '987e8d7f9748018d3fee5778645b267a9ee06ff6' into gingerbread-plus-aosp

* commit '987e8d7f9748018d3fee5778645b267a9ee06ff6':
Fix Vibrator permission CTS test broken earlier.
26e9cf38b229b738b4e56c3e08be82a9c0f11e64 19-Oct-2010 Brad Fitzpatrick <bradfitz@android.com> Fix Vibrator permission CTS test broken earlier.

Bug: 3106964
Change-Id: I76138780ac64f761fe09ef8ba74382c7ee05d794
ibrator.java
49889d4ffc7233979d53896421d50cf6cacc1f7c 19-Oct-2010 Brad Fitzpatrick <bradfitz@android.com> am c9cff071: am b4157a43: Merge "StrictMode: fix docs to actually compile and add a utility method." into gingerbread

Merge commit 'c9cff071af175e559339c54876136612ac5eda3b'

* commit 'c9cff071af175e559339c54876136612ac5eda3b':
StrictMode: fix docs to actually compile and add a utility method.
4fa1a221b466d6da6c68150b38cd17b085ab5e26 18-Oct-2010 Dianne Hackborn <hackbod@google.com> Remove public resource padding.

Change-Id: Id4f28ecfb7a87267c256571ed5f98652730b44fc
uild.java
69a19fdbff6aff8875d87e27c9b1047d0a3f44c1 19-Oct-2010 Dianne Hackborn <hackbod@google.com> am 3d2818d3: Remove public resource padding.

Merge commit '3d2818d34feab5a62dfb33452f99f2d3ca667cc8' into gingerbread-plus-aosp

* commit '3d2818d34feab5a62dfb33452f99f2d3ca667cc8':
Remove public resource padding.
3d2818d34feab5a62dfb33452f99f2d3ca667cc8 18-Oct-2010 Dianne Hackborn <hackbod@google.com> Remove public resource padding.

Change-Id: I8a530a23284a1f2515b1340a1c5e5ed3a0b90780
uild.java
c9cff071af175e559339c54876136612ac5eda3b 19-Oct-2010 Brad Fitzpatrick <bradfitz@android.com> am b4157a43: Merge "StrictMode: fix docs to actually compile and add a utility method." into gingerbread

Merge commit 'b4157a432cf791906d5b2f6d187f1767357a51bb' into gingerbread-plus-aosp

* commit 'b4157a432cf791906d5b2f6d187f1767357a51bb':
StrictMode: fix docs to actually compile and add a utility method.
62a1eb58bfafe8744d7a65f651e11b88fdb0938d 18-Oct-2010 Brad Fitzpatrick <bradfitz@android.com> StrictMode: fix docs to actually compile and add a utility method.

Yes, this is a last minute public API change, but I'm already getting
a lot of inquiries about how to use StrictMode on a GB device but
targetting Eclair or Froyo. I'd like a simple answer involving
reflection, but the current API is too painful to use via reflection.

I imagine this will be a common request, and it's much easier for us
to write a little blog post about trying it out if there's an easy way
to use it with reflection.

Change-Id: I1f21aaac7e61e5e90d1e4facc0c787d8daf089b1
trictMode.java
875ecaa511ce36c8044ccdf48ee2a3e69dd633fe 18-Oct-2010 Dianne Hackborn <hackbod@google.com> am 13e46665: am 736f5ec4: Merge "Work on issue #3101415: Crespo apps seem to have their UID changed over time." into gingerbread

Merge commit '13e46665ff69c1a37880762d7d611aacdf02dac7'

* commit '13e46665ff69c1a37880762d7d611aacdf02dac7':
Work on issue #3101415: Crespo apps seem to have their UID changed over time.
cd0e839a2448deea50f79bddeba782c546b33893 14-Oct-2010 Nick Pelly <npelly@google.com> NFC: Move NFC service implementation out of system_server.

NFC service is now an application service in packages/apps/Nfc.

NFC service is registered through ServiceManager.addService(), and the proxy
object NfcAdapter obtains a handle to it through ServiceManager.getService().

**Important** Had to add new symbols AID_NFC / NFC_UID / android.uid.nfc and
modify service_manager.c, Process.java and PackageManagerService.java in order
to force the com.android.nfc process to take a fixed uid, so that it can use
ServiceManager.addService().

Most of the JNI has moved to packages/apps/Nfc/jni. However NdefRecord and
NdefMessage require some in-process native code, so android_com_NdefMessage.cpp
and android_com_NdefRecord.cpp stay in frameworks/base/core/jni. They link to
a very small library libnfc_ndef.so that implements NDEF message parsing. This
has been added to core.mk so all devices (even without NFC hardware) can work
with NDEF data.

Bug: 3041259
Bug: 3097445
Change-Id: If7f00cd8f2053acfc9319ca366d4a9c02bd396e6
Signed-off-by: Nick Pelly <npelly@google.com>
rocess.java
da3fe88b2dbc1f731760162d1d9420afca9c19e6 16-Oct-2010 Brad Fitzpatrick <bradfitz@android.com> am 33476b2d: am feebaf35: Merge "Don\'t crash on null Vibrator during reboot." into gingerbread

Merge commit '33476b2db82b5a7f025eb9625fa56f94290e97f4'

* commit '33476b2db82b5a7f025eb9625fa56f94290e97f4':
Don't crash on null Vibrator during reboot.
13e46665ff69c1a37880762d7d611aacdf02dac7 16-Oct-2010 Dianne Hackborn <hackbod@google.com> am 736f5ec4: Merge "Work on issue #3101415: Crespo apps seem to have their UID changed over time." into gingerbread

Merge commit '736f5ec476526f3431d81dec5fb695bdee27e21a' into gingerbread-plus-aosp

* commit '736f5ec476526f3431d81dec5fb695bdee27e21a':
Work on issue #3101415: Crespo apps seem to have their UID changed over time.
36e7790b6b3c2c36c67fbe5dc2e2313cdd537349 16-Oct-2010 Jean-Baptiste Queru <jbq@google.com> Merge a851d8d0 from gingerbread

Change-Id: Iea0e3fa1662d6326ab337821fe52a65a9dfd989a
8bdf5935c0db4a66ab33a10b43398d2523cfa15d 15-Oct-2010 Dianne Hackborn <hackbod@google.com> Work on issue #3101415: Crespo apps seem to have their UID changed over time.

fsync!

Change-Id: Ie6c5397202579935ac69bf61d3e7b3081ecf269c
ileUtils.java
a851d8d0cfec45e33ee884114548a4f2890d1f06 15-Oct-2010 Nick Pelly <npelly@google.com> Merge "NFC: Move NFC service implementation out of system_server." into gingerbread
33476b2db82b5a7f025eb9625fa56f94290e97f4 15-Oct-2010 Brad Fitzpatrick <bradfitz@android.com> am feebaf35: Merge "Don\'t crash on null Vibrator during reboot." into gingerbread

Merge commit 'feebaf35c0edaed87edc6eb33a33ad9df1a209d6' into gingerbread-plus-aosp

* commit 'feebaf35c0edaed87edc6eb33a33ad9df1a209d6':
Don't crash on null Vibrator during reboot.
733e79c24042145d12a18cac59e8edb08965fab0 15-Oct-2010 Kenny Root <kroot@google.com> am 2f98a585: am 49ec3dff: Merge "OBB: Change documentation to reflect reality" into gingerbread

Merge commit '2f98a585cda066689b1b525322c51fcacbc3770b'

* commit '2f98a585cda066689b1b525322c51fcacbc3770b':
OBB: Change documentation to reflect reality
bc21fdefdfbeba1754c6cd339c7dd8e8f1d6fd48 14-Oct-2010 Nick Pelly <npelly@google.com> NFC: Move NFC service implementation out of system_server.

NFC service is now an application service in packages/apps/Nfc.

NFC service is registered through ServiceManager.addService(), and the proxy
object NfcAdapter obtains a handle to it through ServiceManager.getService().

**Important** Had to add new symbols AID_NFC / NFC_UID / android.uid.nfc and
modify service_manager.c, Process.java and PackageManagerService.java in order
to force the com.android.nfc process to take a fixed uid, so that it can use
ServiceManager.addService().

Most of the JNI has moved to packages/apps/Nfc/jni. However NdefRecord and
NdefMessage require some in-process native code, so android_com_NdefMessage.cpp
and android_com_NdefRecord.cpp stay in frameworks/base/core/jni. They link to
a very small library libnfc_ndef.so that implements NDEF message parsing. This
has been added to core.mk so all devices (even without NFC hardware) can work
with NDEF data.

Bug: 3041259
Bug: 3097445
Change-Id: If8f00ce8f2053acfc9319ca366d4a9c02bd396e6
Signed-off-by: Nick Pelly <npelly@google.com>
rocess.java
e331644cb570e74a8739cb21ffcc5875663ffa58 15-Oct-2010 Brad Fitzpatrick <bradfitz@android.com> Don't crash on null Vibrator during reboot.

Bug: 3099305
Change-Id: I9af126f7a719f36ae544f517a2fccd0d33339389
ibrator.java
bbf68c6ad2cc3dd338f93779d60c5821e730a263 14-Oct-2010 Brad Fitzpatrick <bradfitz@android.com> am 4711d21a: am 9facd2d0: Merge "StrictMode: link to designing for responsiveness ANR docs" into gingerbread

Merge commit '4711d21a55d9ff6f234d3b06ff2d07dca19238fc'

* commit '4711d21a55d9ff6f234d3b06ff2d07dca19238fc':
StrictMode: link to designing for responsiveness ANR docs
0a9b54e88b9cbb30748b5f0b331aec3f3ef8d639 14-Oct-2010 Kenny Root <kroot@google.com> resolved conflicts for merge of 8bb7a1df to master

Change-Id: Ieec036f494a54eab74a27b954d1423bf981dd3f9
2f98a585cda066689b1b525322c51fcacbc3770b 13-Oct-2010 Kenny Root <kroot@google.com> am 49ec3dff: Merge "OBB: Change documentation to reflect reality" into gingerbread

Merge commit '49ec3dff4350209e109fc11dafe4294acea36146' into gingerbread-plus-aosp

* commit '49ec3dff4350209e109fc11dafe4294acea36146':
OBB: Change documentation to reflect reality
19dcd2aeba184f81b140b4fbc692bdd80a51299e 13-Oct-2010 Kenny Root <kroot@google.com> OBB: Change documentation to reflect reality

We can't reliably detect when the key for an OBB is incorrect, so just
remove the mention in the documentation. It still returns an error, but
just not the most specific error.

Bug: 3091064
Change-Id: I70e506822f2178a0ac5e4617fe545b23ce0026f4
torage/OnObbStateChangeListener.java
e28c8f286d9bd4c7b558d6ffb8bd2fb1226ada2e 12-Oct-2010 Kenny Root <kroot@google.com> Merge "Add API to check for emulated external storage"
98f06865530c825aadd4ebf4c043403e3d9095f8 12-Oct-2010 Brad Fitzpatrick <bradfitz@android.com> am 3a4b7dfd: am 5804b4fd: Merge "StrictMode: check max-offenses-per-loop earlier, before allocations" into gingerbread

Merge commit '3a4b7dfddab67c531dca23c6691063a829376d4f'

* commit '3a4b7dfddab67c531dca23c6691063a829376d4f':
StrictMode: check max-offenses-per-loop earlier, before allocations
e1ff214e32ed5c546a7603b07b054908c4d93312 12-Oct-2010 Kenny Root <kroot@google.com> Add API to check for emulated external storage

When the storage is emulated, we don't want to install ASEC containers
to it. This adds the API to check when the external storage is emulated
and uses it to check whether or not to install packages to the external
storage in an ASEC container.

Bug: 3024387
Change-Id: Ia0318aca9e4938a4897deaada5603a4c7c1d0f48
nvironment.java
torage/IMountService.java
4711d21a55d9ff6f234d3b06ff2d07dca19238fc 12-Oct-2010 Brad Fitzpatrick <bradfitz@android.com> am 9facd2d0: Merge "StrictMode: link to designing for responsiveness ANR docs" into gingerbread

Merge commit '9facd2d0847691ae46108713d6a7dc9f51a62135' into gingerbread-plus-aosp

* commit '9facd2d0847691ae46108713d6a7dc9f51a62135':
StrictMode: link to designing for responsiveness ANR docs
9facd2d0847691ae46108713d6a7dc9f51a62135 12-Oct-2010 Brad Fitzpatrick <bradfitz@android.com> Merge "StrictMode: link to designing for responsiveness ANR docs" into gingerbread
02241ab2929c34aa48acdf4befcc9cacd86c1a6f 12-Oct-2010 Jean-Baptiste Queru <jbq@google.com> am 89fbcd72: resolved conflicts for merge of c2894474 to gingerbread-plus-aosp

Merge commit '89fbcd72fbe6ef26ea2703f8e338fd198c958ecc'

* commit '89fbcd72fbe6ef26ea2703f8e338fd198c958ecc':
Support showing "Cold" battery health.
8bb7a1dfbb43dda49fb3c4f86181bcd7f969a832 12-Oct-2010 Kenny Root <kroot@google.com> am b4de3dca: Merge "OBB: rearrange to be entirely asynchronous" into gingerbread

Merge commit 'b4de3dca96b9ff18562062e181dcd8b83e641e45' into gingerbread-plus-aosp

* commit 'b4de3dca96b9ff18562062e181dcd8b83e641e45':
OBB: rearrange to be entirely asynchronous
af9d667ccf3e24058214cf4cc0a8aa8bc5100e3c 08-Oct-2010 Kenny Root <kroot@google.com> OBB: rearrange to be entirely asynchronous

Rearrange structure of MountService handling of OBBs to be entirely
asynchronous so we don't rely on locking as much. We still need the
locking to support dumpsys which has been improved to output all the
data structures for OBBs.

Added more tests to cover more of the error return codes.

Oh and fix a logic inversion bug.

Change-Id: I34f541192dbbb1903b24825889b8fa8f43e6e2a9
torage/IMountService.java
torage/IObbActionListener.java
torage/OnObbStateChangeListener.java
torage/StorageManager.java
9fc2fc5757a3d28d098bd2b0ad0f869a3cf3fa14 11-Oct-2010 Brad Fitzpatrick <bradfitz@android.com> StrictMode: link to designing for responsiveness ANR docs

Change-Id: If65849aaa8317e7e40b2837b640a5cdb95fe7b0e
trictMode.java
3a4b7dfddab67c531dca23c6691063a829376d4f 11-Oct-2010 Brad Fitzpatrick <bradfitz@android.com> am 5804b4fd: Merge "StrictMode: check max-offenses-per-loop earlier, before allocations" into gingerbread

Merge commit '5804b4fd47bbeda55d12bd7dd6ae3bde72fb40a0' into gingerbread-plus-aosp

* commit '5804b4fd47bbeda55d12bd7dd6ae3bde72fb40a0':
StrictMode: check max-offenses-per-loop earlier, before allocations
191cdf023c3c1ab441087a77f7881c7bb376613a 11-Oct-2010 Brad Fitzpatrick <bradfitz@android.com> StrictMode: check max-offenses-per-loop earlier, before allocations

Previously a tight loop of StrictMode violations would still allocate
Exception objects and populate their stack frames, just to orphan them
later when checking the max-10-violations-per-loop constraint.

With this patch, we do that check _before_ allocating any memory.

Change-Id: Iae96aba33f8fcc6a8ec5838a231aecc08e95122d
trictMode.java
50d3fa72d88aa4dcba4286b77439c60ab5dc7fa9 11-Oct-2010 Dianne Hackborn <hackbod@google.com> am d5423321: am 9934fa77: Merge "Fix issue #3074745: Crash in system process" into gingerbread

Merge commit 'd5423321b920be10c00fbcbc5a702f15e00693a5'

* commit 'd5423321b920be10c00fbcbc5a702f15e00693a5':
Fix issue #3074745: Crash in system process
8775eae9416b730bfd9125dbf740154af04abc23 11-Oct-2010 Brad Fitzpatrick <bradfitz@android.com> am b323559b: am a2a1ca42: Merge "DropBoxManager.Entry implements Closeable" into gingerbread

Merge commit 'b323559b13d8c8ced586f919c5ce083c1f5b74bc'

* commit 'b323559b13d8c8ced586f919c5ce083c1f5b74bc':
DropBoxManager.Entry implements Closeable
89fbcd72fbe6ef26ea2703f8e338fd198c958ecc 11-Oct-2010 Jean-Baptiste Queru <jbq@google.com> resolved conflicts for merge of c2894474 to gingerbread-plus-aosp

Change-Id: Ie00785e37809b677d6e8ab44c47e1f26037793d2
9239612870d08fbf79b3c53f11bd5d7cb4beb875 20-Sep-2010 Imre Sunyi <imre.sunyi@sonyericsson.com> Support showing "Cold" battery health.

The Linux kernel supports reporting "cold" battery health to sysfs.
Android framework has not implemented this and it defaults to "unknown"
This adds handling the cold battery health.

Change-Id: Idcc156aae6aabce73391081143f79d052edf332e
atteryManager.java
d5da367024c36b317b101fc066a7a4cf992c7d58 10-Oct-2010 Jeff Brown <jeffbrown@google.com> am 22cb4ef8: am d577cfd7: Merge "Switch Looper back to using poll() instead of epoll()." into gingerbread

Merge commit '22cb4ef8ce9c4d5536ac5cee5c40b82bfa56ccc5'

* commit '22cb4ef8ce9c4d5536ac5cee5c40b82bfa56ccc5':
Switch Looper back to using poll() instead of epoll().
71ce18b0b71a40e867d0b18ce78ff81e132f8a78 10-Oct-2010 Brad Fitzpatrick <bradfitz@android.com> am b8d40d26: am 30f5c8fe: More DropBoxManager javadoc love.

Merge commit 'b8d40d263bc18d1defc1e6980e8f922df8f8f321'

* commit 'b8d40d263bc18d1defc1e6980e8f922df8f8f321':
More DropBoxManager javadoc love.
ceda3a972c8883a81e0c3bed9868a2e46b745aba 10-Oct-2010 Brad Fitzpatrick <bradfitz@android.com> am 992a9e50: am fd124570: Merge "DropBox.Entry javadoc syntax fix" into gingerbread

Merge commit '992a9e507fb1f8da7358b4d805c034d934eb1810'

* commit '992a9e507fb1f8da7358b4d805c034d934eb1810':
DropBox.Entry javadoc syntax fix
d5423321b920be10c00fbcbc5a702f15e00693a5 08-Oct-2010 Dianne Hackborn <hackbod@google.com> am 9934fa77: Merge "Fix issue #3074745: Crash in system process" into gingerbread

Merge commit '9934fa77efab362729d0d3cb8aa0bdcd31d63ead' into gingerbread-plus-aosp

* commit '9934fa77efab362729d0d3cb8aa0bdcd31d63ead':
Fix issue #3074745: Crash in system process
9934fa77efab362729d0d3cb8aa0bdcd31d63ead 08-Oct-2010 Dianne Hackborn <hackbod@google.com> Merge "Fix issue #3074745: Crash in system process" into gingerbread
b323559b13d8c8ced586f919c5ce083c1f5b74bc 08-Oct-2010 Brad Fitzpatrick <bradfitz@android.com> am a2a1ca42: Merge "DropBoxManager.Entry implements Closeable" into gingerbread

Merge commit 'a2a1ca42bc07af77a8a10b714517d006cb66c36a' into gingerbread-plus-aosp

* commit 'a2a1ca42bc07af77a8a10b714517d006cb66c36a':
DropBoxManager.Entry implements Closeable
f47d8f272c13f0fd264d5a71bcff1c18da10d854 08-Oct-2010 Dianne Hackborn <hackbod@google.com> Fix issue #3074745: Crash in system process

Also some tweaks to battery history collection to hopefully
improve the data we have.

Change-Id: I178a54a8c2d15cf38dcceaeef939406f50059aa4
atteryStats.java
cc792c4149b7e768fd894c9b268d815a90a60bd0 08-Oct-2010 Brad Fitzpatrick <bradfitz@android.com> DropBoxManager.Entry implements Closeable

Change-Id: I61716c06b92fa1b9b5b271b5805550bdb2d51b46
ropBoxManager.java
22cb4ef8ce9c4d5536ac5cee5c40b82bfa56ccc5 08-Oct-2010 Jeff Brown <jeffbrown@google.com> am d577cfd7: Merge "Switch Looper back to using poll() instead of epoll()." into gingerbread

Merge commit 'd577cfd73a223279f9a5af698f55edd38a3fe4db' into gingerbread-plus-aosp

* commit 'd577cfd73a223279f9a5af698f55edd38a3fe4db':
Switch Looper back to using poll() instead of epoll().
b8d40d263bc18d1defc1e6980e8f922df8f8f321 07-Oct-2010 Brad Fitzpatrick <bradfitz@android.com> am 30f5c8fe: More DropBoxManager javadoc love.

Merge commit '30f5c8fede241e7560f4a33e48af3a4627fd5efc' into gingerbread-plus-aosp

* commit '30f5c8fede241e7560f4a33e48af3a4627fd5efc':
More DropBoxManager javadoc love.
992a9e507fb1f8da7358b4d805c034d934eb1810 07-Oct-2010 Brad Fitzpatrick <bradfitz@android.com> am fd124570: Merge "DropBox.Entry javadoc syntax fix" into gingerbread

Merge commit 'fd124570ce647b3adc5dc30ce782d6e017dab4a2' into gingerbread-plus-aosp

* commit 'fd124570ce647b3adc5dc30ce782d6e017dab4a2':
DropBox.Entry javadoc syntax fix
d577cfd73a223279f9a5af698f55edd38a3fe4db 07-Oct-2010 Jeff Brown <jeffbrown@google.com> Merge "Switch Looper back to using poll() instead of epoll()." into gingerbread
415d8c38199e258dfce92cdb0c69e056b3b51ef8 06-Oct-2010 Jeff Brown <jeffbrown@google.com> Switch Looper back to using poll() instead of epoll().

Added a couple of micro-optimizations to avoid calling wake() unnecessarily
and reduce JNI overhead slightly.

Fixed a minor issue where we were not clearing the "next" field of Messages
returned by the MessageQueue so the Message would hold on to its successor
and potentially prevent the GC from collecting it if the message were leaked
somehow.

Change-Id: I488d29417ce0cdd7d0e447cda76ec978ef7f811c
essageQueue.java
7d56e3d3cb5070a20e3c64671132b96dbf9961c5 07-Oct-2010 Joe Onorato <joeo@google.com> Merge "Add extra to ACTION_BATTERY_CHANGED to indicate an invalid charger is attached."
30f5c8fede241e7560f4a33e48af3a4627fd5efc 07-Oct-2010 Brad Fitzpatrick <bradfitz@android.com> More DropBoxManager javadoc love.

Change-Id: I9b14f6905533e0af66bd64fc76352ed8fc365058
ropBoxManager.java
95173b14d65cd04ec88d4384b41a80319e432d0b 07-Oct-2010 Brad Fitzpatrick <bradfitz@android.com> DropBox.Entry javadoc syntax fix

Change-Id: I32d055b39ca89ec9f6a7bf189263844424533b60
ropBoxManager.java
c21550a8d1dfc9e5359fe994cb48049a0bd4c82c 06-Oct-2010 Brian Carlstrom <bdc@google.com> Adding android.os.Debug.countInstancesOfClass

- Debug.countInstancesOfClass is just a wrapper on
dalvik.system.VMDebug.countInstancesOfClass to avoid code from
depending on the dalvik classes directly

- Existing usages of VMDebug.countInstancesOfClass in ActivityThread
and ViewDebug are converted to the new Debug.countInstancesOfClass

- Existing use of OpenSSLSocketImpl.instanceCount, which is being
removed, is converted to Debug.countInstancesOfClass(OpenSSLSocketImpl.class)

Bug: 3015791
Change-Id: Iefa781292d5b82a63bad7254c913a09deb3b7888
ebug.java
58520b24d40bb2587f394a52535dab4f2736bab1 04-Oct-2010 Dianne Hackborn <hackbod@google.com> resolved conflicts for merge of 10d5b096 to master

Change-Id: Id5c6ba651f72b48f0d70ee2ca64a6c9adf5e74f7
10d5b0966d1b6ab0e3b63c71d5325403e75b647e 04-Oct-2010 Dianne Hackborn <hackbod@google.com> am 407f625a: Add new API to find out whether external storage is removable.

Merge commit '407f625a9b8e356e765a5ec587c443af1f3aadb5' into gingerbread-plus-aosp

* commit '407f625a9b8e356e765a5ec587c443af1f3aadb5':
Add new API to find out whether external storage is removable.
407f625a9b8e356e765a5ec587c443af1f3aadb5 04-Oct-2010 Dianne Hackborn <hackbod@google.com> Add new API to find out whether external storage is removable.

This is implemented based on whether we are using the "nosdcard"
product. Needed to tweak aapt to allow use of the product attribute
with other resource definition tags besides strings.

Change-Id: I49922d23b52a34183a8e2f4d2515adaf1fc9149a
nvironment.java
30d4d57e8ed421a7d910c86c96c5648c899c2c9b 03-Oct-2010 Wink Saville <wink@google.com> Add SystemService.restart.

This allows easy access to the new SystemProperties ctl.restart
control command.

Change-Id: I3e82710873adff54ef8a0cb53ca13d4dcab2408d
ystemService.java
e0ad63bf1e038dd84ec2502243236f86104f990d 01-Oct-2010 Brad Fitzpatrick <bradfitz@android.com> resolved conflicts for merge of 6718b365 to master

Change-Id: I32762a4a3b00856f6765d50667b667264a385fc6
6718b365bcce5bd9e67867bd165d771c2226582d 01-Oct-2010 Brad Fitzpatrick <bradfitz@android.com> am 32e60c79: Update StrictMode\'s public API.

Merge commit '32e60c7942eeba920ec5c27b372ec0899fd75a20' into gingerbread-plus-aosp

* commit '32e60c7942eeba920ec5c27b372ec0899fd75a20':
Update StrictMode's public API.
32e60c7942eeba920ec5c27b372ec0899fd75a20 01-Oct-2010 Brad Fitzpatrick <bradfitz@android.com> Update StrictMode's public API.

This makes it more future-proof and maintainable, not exposing the
internal bitpacking state.

The implementation is unchanged (the policy is still just an int we pass
around).

Also starts to introduce VmPolicy, for things which are process-wide,
not per-thread. As an initial user, make SQLite's Cursor finalization
leak warnings use StrictMode.

Change-Id: Idedfba4e965716f5089a52036421460b1f383725
trictMode.java
9e95468bbb4b4cb48d817cee2960681aa876b12a 01-Oct-2010 Kenny Root <kroot@google.com> am 6ce5f60c: am 38cf8867: Remove OBBs from state list when volume unmounted

Merge commit '6ce5f60c791401ed0faf5d36baf4fc6612358676'

* commit '6ce5f60c791401ed0faf5d36baf4fc6612358676':
Remove OBBs from state list when volume unmounted
6ce5f60c791401ed0faf5d36baf4fc6612358676 01-Oct-2010 Kenny Root <kroot@google.com> am 38cf8867: Remove OBBs from state list when volume unmounted

Merge commit '38cf8867a8d3e8d5159abd0bd0e6a3b0b8348b94' into gingerbread-plus-aosp

* commit '38cf8867a8d3e8d5159abd0bd0e6a3b0b8348b94':
Remove OBBs from state list when volume unmounted
38cf8867a8d3e8d5159abd0bd0e6a3b0b8348b94 26-Sep-2010 Kenny Root <kroot@google.com> Remove OBBs from state list when volume unmounted

Don't keep tracking OBBs when the volume they're located on goes away.
Remove them from our state tracking maps and then send a notification to
any listener that is still around.

Add a dump handler to MountService so the state of the mount lists
can be inspected.

Change the API to just make a callback directly to the change listener
when mount is called when it's already mounted or unmount called when
it's already unmounted.

Change-Id: Idb4afbb943ca5ca775825f908bff334e3ce1cfcc
torage/StorageManager.java
ca2e0293f23e40389af9525d82d268aa4d0aff31 30-Sep-2010 Doug Zongker <dougz@android.com> am ab9f5082: am 981dec69: Merge "don\'t delete /cache/recovery/last_log on boot" into gingerbread

Merge commit 'ab9f508292f9a1eb54bf97bdd1566bdf8dd43fb3'

* commit 'ab9f508292f9a1eb54bf97bdd1566bdf8dd43fb3':
don't delete /cache/recovery/last_log on boot
ab9f508292f9a1eb54bf97bdd1566bdf8dd43fb3 29-Sep-2010 Doug Zongker <dougz@android.com> am 981dec69: Merge "don\'t delete /cache/recovery/last_log on boot" into gingerbread

Merge commit '981dec695f83eb51935fcf480ecbd76ae3f7d6c4' into gingerbread-plus-aosp

* commit '981dec695f83eb51935fcf480ecbd76ae3f7d6c4':
don't delete /cache/recovery/last_log on boot
981dec695f83eb51935fcf480ecbd76ae3f7d6c4 29-Sep-2010 Doug Zongker <dougz@android.com> Merge "don't delete /cache/recovery/last_log on boot" into gingerbread
d059055fb3c1c979933a608bb85779f23fc11f70 29-Sep-2010 Doug Zongker <dougz@android.com> don't delete /cache/recovery/last_log on boot

Change-Id: I7739d7a61f4f0d0c2bc6324580404f61d435d716
ecoverySystem.java
bff405f91001237ec94ec64f86fa2370c4509559 29-Sep-2010 Kenny Root <kroot@google.com> resolved conflicts for merge of d8e8186c to master

Change-Id: Ica3f6cd958717ea7033cab8b4bf9cd3425c1e1c5
d8e8186c887fe47977721315f439465771a96374 29-Sep-2010 Kenny Root <kroot@google.com> am 05105f7a: Update OBB API to include callbacks

Merge commit '05105f7abe02b2dff91d6260b3628c8b97816bab' into gingerbread-plus-aosp

* commit '05105f7abe02b2dff91d6260b3628c8b97816bab':
Update OBB API to include callbacks
05105f7abe02b2dff91d6260b3628c8b97816bab 23-Sep-2010 Kenny Root <kroot@google.com> Update OBB API to include callbacks

Add a callback for users of the StorageManager API to be able to receive
notifications when the requested operation completes for mountObb and
unmountObb.

Add NDK API to get to ObbInfo like the Java API has.

Also update the docs for the API and remove the "STOPSHIP" comments.

Change-Id: I23a4409c7f8b74d3169614beba920b4d667990a4
torage/OnObbStateChangeListener.java
torage/StorageManager.java
58fd98accbff409601587b3357f2b3acf370f606 24-Sep-2010 Mike Lockwood <lockwood@android.com> Add constant for SDCARD_RW group ID.

Change-Id: I3b009cd06d3c1bc308ba82694db7383134709f75
Signed-off-by: Mike Lockwood <lockwood@android.com>
rocess.java
846df9f5171c4ef32f038cca651b6b9c0b6c3083 24-Sep-2010 Dianne Hackborn <hackbod@google.com> resolved conflicts for merge of 8952a448 to master

Change-Id: I9c752a5d10ae8d8e5ead1243b6abd4795204fc0b
8952a4488e81205e3013b6b456dec503e05eebd0 24-Sep-2010 Dianne Hackborn <hackbod@google.com> am 287952c3: Fix issue #3022508: Crash during media scan

Merge commit '287952c35e148811c106bc0f5036eabf20f71562' into gingerbread-plus-aosp

* commit '287952c35e148811c106bc0f5036eabf20f71562':
Fix issue #3022508: Crash during media scan
287952c35e148811c106bc0f5036eabf20f71562 23-Sep-2010 Dianne Hackborn <hackbod@google.com> Fix issue #3022508: Crash during media scan

Don't kill processes for excessive wake lock use, even if they
are in the background, as long as they have running services.

Also fix some problems with this, such as not noting the kill
in battery stats.

And add killing of processes for cpu usage as well, along with
some optimizations to computing CPU usage.

And fix BatteryWaster to be better behaving for testing these
cases.

Add new "monitor" command to am to watch as the activity manager
does stuff (so we can catch things at the point of ANR).

Finally some miscellaneous debug output for the stuff here, as
well as in progress debugging of an ANR.

Change-Id: Ib32f55ca50fb7486b4be4eb5e695f8f60c882cd1
atteryStats.java
5eb22e2ce1cb46d18ce0c8e68e10a7f64bed01ea 23-Sep-2010 Joe Onorato <joeo@android.com> am 19c4b29d: am 8310b42f: Add javadoc saying that wake locks are ref counted by default.

Merge commit '19c4b29d46aece70dbe532ba9078c904fbc62502'

* commit '19c4b29d46aece70dbe532ba9078c904fbc62502':
Add javadoc saying that wake locks are ref counted by default.
19c4b29d46aece70dbe532ba9078c904fbc62502 23-Sep-2010 Joe Onorato <joeo@android.com> am 8310b42f: Add javadoc saying that wake locks are ref counted by default.

Merge commit '8310b42fbc086b0f05fc8ef45ac34c7e099c485e' into gingerbread-plus-aosp

* commit '8310b42fbc086b0f05fc8ef45ac34c7e099c485e':
Add javadoc saying that wake locks are ref counted by default.
8310b42fbc086b0f05fc8ef45ac34c7e099c485e 23-Sep-2010 Joe Onorato <joeo@android.com> Add javadoc saying that wake locks are ref counted by default.

Bug: 3012561
Change-Id: I441a42fdb12ba6d87d6f5a49463d6ddcc300acb7
owerManager.java
7c860bca0617904f31ad39cbe8eed2f3535051a7 23-Sep-2010 Brad Fitzpatrick <bradfitz@android.com> am 9317801a: am c87a8adc: Merge "Flesh out StrictMode docs." into gingerbread

Merge commit '9317801a3c9be6d1a1dbde558ca7d2106982e96f'

* commit '9317801a3c9be6d1a1dbde558ca7d2106982e96f':
Flesh out StrictMode docs.
9317801a3c9be6d1a1dbde558ca7d2106982e96f 23-Sep-2010 Brad Fitzpatrick <bradfitz@android.com> am c87a8adc: Merge "Flesh out StrictMode docs." into gingerbread

Merge commit 'c87a8adc0e143e0c7efc62a1094ee6ac666e46d9' into gingerbread-plus-aosp

* commit 'c87a8adc0e143e0c7efc62a1094ee6ac666e46d9':
Flesh out StrictMode docs.
15ba4061116e088d62a7e05a0037f294f31dff06 22-Sep-2010 Brad Fitzpatrick <bradfitz@android.com> Flesh out StrictMode docs.

Bug: 3001474
Change-Id: If64209a312d45f7d96d8317d1e63e6c773a01441
trictMode.java
85c3fe443f7bd06ae0aae6074f4cf2960892cdc0 22-Sep-2010 Jeff Brown <jeffbrown@google.com> resolved conflicts for merge of aa522ac8 to master

Change-Id: Ib17ff201e770abc6b9edb58e01f3bb483dc8fa56
aa522ac8ba18475f9a05b04918cd9d1a5cd2f77e 22-Sep-2010 Jeff Brown <jeffbrown@google.com> am ed739327: Simplify and optimize MessageQueue loop.

Merge commit 'ed7393274af2f268fcdede5f1a3d72c9af842b8e' into gingerbread-plus-aosp

* commit 'ed7393274af2f268fcdede5f1a3d72c9af842b8e':
Simplify and optimize MessageQueue loop.
ed7393274af2f268fcdede5f1a3d72c9af842b8e 22-Sep-2010 Jeff Brown <jeffbrown@google.com> Simplify and optimize MessageQueue loop.

Avoids allocating new idle handler arrays on each iteration since
we only need one to copy into.
Coalesced the synchronized blocks.
Hoisted the call to Binder.flushPendingCommands() outside of the
synchronized block.

Change-Id: Iabb6b633627954564bdd5d09e696663223407f47
essageQueue.java
c2f8a45876efb5ffe601bba28d6694d349736dbb 20-Sep-2010 Doug Zongker <dougz@android.com> recovery just takes a filename as an argument now

(Cherrypicked from gingerbread.)

Change-Id: I0deb8494465e1036280ac92730e537fd3f38a9fb
ecoverySystem.java
bd1578fb682ea9dbbab10f88165a9edf72e8b063 21-Sep-2010 Doug Zongker <dougz@android.com> am eb4d5b25: Merge "recovery just takes a filename as an argument now (do not merge)" into gingerbread

Merge commit 'eb4d5b253733a699c16f0a50a8e8642ec49ed9ae' into gingerbread-plus-aosp

* commit 'eb4d5b253733a699c16f0a50a8e8642ec49ed9ae':
recovery just takes a filename as an argument now (do not merge)
4baf641e7d96375eba3f9a3aff5400b9e3d28cd6 20-Sep-2010 Doug Zongker <dougz@android.com> recovery just takes a filename as an argument now (do not merge)

Change-Id: I900cb3e7392c38b40f8c08ae5282cd5c05a4a009
ecoverySystem.java
48a781a0a5f83da7c81cf0e7230151a751740a09 21-Sep-2010 Dianne Hackborn <hackbod@google.com> am 4b187e80: am 8e1b84e7: Merge "Some battery improvements:" into gingerbread

Merge commit '4b187e804fdfdbc825e17646e82e0218e316a339'

* commit '4b187e804fdfdbc825e17646e82e0218e316a339':
Some battery improvements:
4b187e804fdfdbc825e17646e82e0218e316a339 21-Sep-2010 Dianne Hackborn <hackbod@google.com> am 8e1b84e7: Merge "Some battery improvements:" into gingerbread

Merge commit '8e1b84e7654ddeeb77a03f5eca10c6669b1cb42b' into gingerbread-plus-aosp

* commit '8e1b84e7654ddeeb77a03f5eca10c6669b1cb42b':
Some battery improvements:
ce2ef766cad1bb186ea522f76c4ac6a8bb3dfa87 20-Sep-2010 Dianne Hackborn <hackbod@google.com> Some battery improvements:

- New API for iterating over history that will allow a better implementation
in the future.
- Now do writes asynchronously.

Also improve the documentation for Activity.onRetainNonInstanceState().

Change-Id: Idf67f2796a8868eb62f288bcbb2bad29876c8554
atteryStats.java
03f3cb083d708d4d3226b80ed42c9d2876a56edc 18-Sep-2010 Dianne Hackborn <hackbod@google.com> resolved conflicts for merge of 1f377298 to master

Change-Id: I0d92abae3a86792b47777f795143acc0489adfe4
1f377298e2aaf6a1736295c0413d468eb1db5091 18-Sep-2010 Dianne Hackborn <hackbod@google.com> am 58e0eefe: Improve power tracking of WIFI use.

Merge commit '58e0eefeb5e2e270e2b04369bbf29fc22abda8d5' into gingerbread-plus-aosp

* commit '58e0eefeb5e2e270e2b04369bbf29fc22abda8d5':
Improve power tracking of WIFI use.
58e0eefeb5e2e270e2b04369bbf29fc22abda8d5 16-Sep-2010 Dianne Hackborn <hackbod@google.com> Improve power tracking of WIFI use.

We now distribute "wifi started" time across all apps that are
holding WIFI locks that cause it to be started. But only when
WIFI would not normally be running. Also have a mechanism to
distribute other WIFI work that has happened across those processes
based on their use.

Also fixed a bug where we were not retaining the CPU speed step
stats across boots...!

Change-Id: I00e3153b98429166273750512cc37e7975211ab9
atteryStats.java
a6555fd4b17dca151fc21923dfa84894828edaa7 15-Sep-2010 Dianne Hackborn <hackbod@google.com> am 264e7277: am 934516e1: Merge "Fix issue #2999795: Runtime restart on Crespo" into gingerbread

Merge commit '264e727775728d0478fcb95855e8ea3801f34c8f'

* commit '264e727775728d0478fcb95855e8ea3801f34c8f':
Fix issue #2999795: Runtime restart on Crespo
b835d9abd6d7c89bb1226fc83d1e96b3b04b9ee3 15-Sep-2010 Brad Fitzpatrick <bradfitz@android.com> am f26ac1f8: am 96d6c345: Merge "Unify some duplicate StrictMode-enabling code." into gingerbread

Merge commit 'f26ac1f8ed27d9e88bbde8978557c34788c7509c'

* commit 'f26ac1f8ed27d9e88bbde8978557c34788c7509c':
Unify some duplicate StrictMode-enabling code.
9ec0c471c1159fdffc63a65c2fae644ee5c01959 15-Sep-2010 Romain Guy <romainguy@google.com> am 282315e1: am 52e19d59: Merge "Change the keep alive time for excess idle threads." into gingerbread

Merge commit '282315e154b63a2eec84609600c81ad9e1c72994'

* commit '282315e154b63a2eec84609600c81ad9e1c72994':
Change the keep alive time for excess idle threads.
264e727775728d0478fcb95855e8ea3801f34c8f 14-Sep-2010 Dianne Hackborn <hackbod@google.com> am 934516e1: Merge "Fix issue #2999795: Runtime restart on Crespo" into gingerbread

Merge commit '934516e10150874fd1db5ab9e0be3ae793441fd8' into gingerbread-plus-aosp

* commit '934516e10150874fd1db5ab9e0be3ae793441fd8':
Fix issue #2999795: Runtime restart on Crespo
934516e10150874fd1db5ab9e0be3ae793441fd8 14-Sep-2010 Dianne Hackborn <hackbod@google.com> Merge "Fix issue #2999795: Runtime restart on Crespo" into gingerbread
83770289f8eca5aa4c62647a6c4d9a5bd4c80a45 14-Sep-2010 Dianne Hackborn <hackbod@google.com> Fix issue #2999795: Runtime restart on Crespo

Change-Id: I7138b031298a234f3f35aec4a003d25cf86a57ff
orkSource.java
f26ac1f8ed27d9e88bbde8978557c34788c7509c 14-Sep-2010 Brad Fitzpatrick <bradfitz@android.com> am 96d6c345: Merge "Unify some duplicate StrictMode-enabling code." into gingerbread

Merge commit '96d6c3454c3550486a2efa25ca0c83732b5e2eaf' into gingerbread-plus-aosp

* commit '96d6c3454c3550486a2efa25ca0c83732b5e2eaf':
Unify some duplicate StrictMode-enabling code.
96d6c3454c3550486a2efa25ca0c83732b5e2eaf 14-Sep-2010 Brad Fitzpatrick <bradfitz@android.com> Merge "Unify some duplicate StrictMode-enabling code." into gingerbread
282315e154b63a2eec84609600c81ad9e1c72994 14-Sep-2010 Romain Guy <romainguy@google.com> am 52e19d59: Merge "Change the keep alive time for excess idle threads." into gingerbread

Merge commit '52e19d5917b8f057131c1dc8b3eb772febd791d9' into gingerbread-plus-aosp

* commit '52e19d5917b8f057131c1dc8b3eb772febd791d9':
Change the keep alive time for excess idle threads.
52e19d5917b8f057131c1dc8b3eb772febd791d9 14-Sep-2010 Romain Guy <romainguy@google.com> Merge "Change the keep alive time for excess idle threads." into gingerbread
6b424f4770e1c4fe3e4c2a44d08447b0e9203dd4 14-Sep-2010 Romain Guy <romainguy@google.com> Change the keep alive time for excess idle threads.

Change-Id: Ie076544df5ee8df185f0824333fdc62203a565c2
syncTask.java
50d66f9fcdac84b2af65a82be56728f54b1a7ef0 14-Sep-2010 Brad Fitzpatrick <bradfitz@android.com> Unify some duplicate StrictMode-enabling code.

Change-Id: Ifb92f35d9e245dbdb5e201597d8be702bce9e8b8
trictMode.java
e746f03c6c8b8d0897d322ab524d545ace200fcd 14-Sep-2010 Dianne Hackborn <hackbod@google.com> resolved conflicts for merge of 53686433 to master

Change-Id: I27004dc464f5771d3205ae5757c6eccc5b16854d
53686433a9790bcfe7211a661b26783ee12bb436 13-Sep-2010 Dianne Hackborn <hackbod@google.com> am 7e9f4eb2: Track client requests through location manager.

Merge commit '7e9f4eb2608148436cef36c9969bf8a599b39e72' into gingerbread-plus-aosp

* commit '7e9f4eb2608148436cef36c9969bf8a599b39e72':
Track client requests through location manager.
7e9f4eb2608148436cef36c9969bf8a599b39e72 11-Sep-2010 Dianne Hackborn <hackbod@google.com> Track client requests through location manager.

This fixes a problem where applications could ask the location
manager to do very heavy-weight things (like... say... update
location every minute), which would get accounted against the
system instead of the application because ultimately it is the
system making the heavy calls (wake locks, etc).

To solve this, we introduce a new class WorkSource representing
the source of some work. Wake locks and Wifi locks allow you
to set the source to use (but only if you are system code and thus
can get the permission to do so), which is what will be reported
to the battery stats until the actual caller.

For the initial implementation, the location manager keeps track
of all clients requesting periodic updates, and tells its providers
about them as a WorkSource param when setting their min update time.
The network location provider uses this to set the source on the
wake and wifi locks it acquires, when doing work because of the
update period.

This should also be used elsewhere, such as in the GPS provider,
but this is a good start.

Change-Id: I2b6ffafad9e90ecf15d7c502e2db675fd52ae3cf
atteryStats.java
PowerManager.aidl
owerManager.java
orkSource.aidl
orkSource.java
ed35d0ee857353f42e58342023647d0b10ab9fd3 13-Sep-2010 Chris Palmer <palmer@google.com> Merge "Correct the PackageManager.checkSignatures documentation."
b3787d57fffbb898f4767f7a94031cafe974a0b0 13-Sep-2010 Jeff Brown <jeffbrown@google.com> am 0f0541e4: am b88102f5: Input dispatcher ANR handling enhancements.

Merge commit '0f0541e40cfef51eb5c3769e53c1aa853b53aaf6'

* commit '0f0541e40cfef51eb5c3769e53c1aa853b53aaf6':
Input dispatcher ANR handling enhancements.
0f0541e40cfef51eb5c3769e53c1aa853b53aaf6 13-Sep-2010 Jeff Brown <jeffbrown@google.com> am b88102f5: Input dispatcher ANR handling enhancements.

Merge commit 'b88102f5b7e51552a3576cf197b4c8cf96f193d1' into gingerbread-plus-aosp

* commit 'b88102f5b7e51552a3576cf197b4c8cf96f193d1':
Input dispatcher ANR handling enhancements.
b88102f5b7e51552a3576cf197b4c8cf96f193d1 08-Sep-2010 Jeff Brown <jeffbrown@google.com> Input dispatcher ANR handling enhancements.

This change is essentially a rewrite of the main input dispatcher loop
with the target identification folded in. Since the input dispatcher now
has all of the window state, it can make better decisions about
when to ANR.

Added a .5 second deadline for processing app switch keys. This behavior
predates Gingerbread but had not previously been ported.

Fixed some timing inaccuracies in the ANR accounting that could cause
applications to ANR sooner than they should have.

Added a mechanism for tracking key and motion events that have been
dispatched to a window so that appropriate cancelation events can be
synthesized when recovering from ANR. This change helps to keep
applications in sync so they don't end up with stuck buttons upon
recovery from ANRs.

Added more comments to describe the tricky parts of PollLoop.

Change-Id: I13dffca27acb436fc383980db536abc4d8b9e6f1
essageQueue.java
42855149750fb848b0d743cf0e5f204a05be2f07 10-Sep-2010 Chris Palmer <palmer@google.com> Correct the PackageManager.checkSignatures documentation.

Make the documentation match the current behavior since change ID
Ibdeff170bd386d723f774136b18e0ad59d9cdabb.

Change-Id: I9d24800ba98f14cb278f029cdf37a086394d1747
andler.java
c6ded1ba463f78bbb3bf21dc8362d599c7722e65 10-Sep-2010 Dianne Hackborn <hackbod@google.com> am 195dc210: am a4ce31f5: Merge "Small fixes to battery stats." into gingerbread

Merge commit '195dc210cb59ba3f660e31a95334fc3fa4d3ad2c'

* commit '195dc210cb59ba3f660e31a95334fc3fa4d3ad2c':
Small fixes to battery stats.
195dc210cb59ba3f660e31a95334fc3fa4d3ad2c 10-Sep-2010 Dianne Hackborn <hackbod@google.com> am a4ce31f5: Merge "Small fixes to battery stats." into gingerbread

Merge commit 'a4ce31f5e080eae6c97e6f37040db0c7f0fc78f2' into gingerbread-plus-aosp

* commit 'a4ce31f5e080eae6c97e6f37040db0c7f0fc78f2':
Small fixes to battery stats.
b8071d790a32dc715c0fd6d4e7e1bbea6c8f7a02 10-Sep-2010 Dianne Hackborn <hackbod@google.com> Small fixes to battery stats.

Change-Id: Ibbf7c548a8e787a046de3659094cea64908e3deb
atteryStats.java
467e8e13327bd9ad2dbabfa0a9b31f860202c7b1 08-Sep-2010 Dianne Hackborn <hackbod@google.com> am 5fdacb8a: am ee455f5a: Merge "People holding partial wake locks now get blamed for CPU usage." into gingerbread

Merge commit '5fdacb8a2818136218afdea4308ad1b10049a201'

* commit '5fdacb8a2818136218afdea4308ad1b10049a201':
People holding partial wake locks now get blamed for CPU usage.
5fdacb8a2818136218afdea4308ad1b10049a201 08-Sep-2010 Dianne Hackborn <hackbod@google.com> am ee455f5a: Merge "People holding partial wake locks now get blamed for CPU usage." into gingerbread

Merge commit 'ee455f5a9572bc0d23c3328f6c22da91dc109a50' into gingerbread-plus-aosp

* commit 'ee455f5a9572bc0d23c3328f6c22da91dc109a50':
People holding partial wake locks now get blamed for CPU usage.
0d903a84d04d241a648ec429e3a0e82c712677fd 08-Sep-2010 Dianne Hackborn <hackbod@google.com> People holding partial wake locks now get blamed for CPU usage.

For the duration of the wake lock, 50% of all CPU usage is now
accounted against the app(s) holding partial wake locks, evenly
distributed between them. This is only while the device is on
battery and screen off.

Change-Id: I3e5c978b792b6ef17bf8540705bfe8343dadd464
atteryStats.java
aa60a02f7934ac23cb88f16ed2d726157bc9f31c 31-Aug-2010 Makoto Onuki <omakoto@google.com> Added "Memory observability" to javadoc.

Change-Id: I4fba91922f033af408903cc4b455daa291e3f6ac
syncTask.java
d0438da05cbbd0b267421ad9a5c84345c39803b3 08-Sep-2010 Dianne Hackborn <hackbod@google.com> am 75f0024c: am 6e86915e: Merge "Fixes to battery stats debug output." into gingerbread

Merge commit '75f0024cf40eadb2cdaa6ae53409c515b68f21c1'

* commit '75f0024cf40eadb2cdaa6ae53409c515b68f21c1':
Fixes to battery stats debug output.
75f0024cf40eadb2cdaa6ae53409c515b68f21c1 07-Sep-2010 Dianne Hackborn <hackbod@google.com> am 6e86915e: Merge "Fixes to battery stats debug output." into gingerbread

Merge commit '6e86915e8f5dfffa60ae5d1a4ca9aa74912fd026' into gingerbread-plus-aosp

* commit '6e86915e8f5dfffa60ae5d1a4ca9aa74912fd026':
Fixes to battery stats debug output.
b5e3165129a5871cf679a67d9e9323ffad3d4902 07-Sep-2010 Dianne Hackborn <hackbod@google.com> Fixes to battery stats debug output.

Change-Id: I32e7cad9633b8c517a74573069e426d9f835a83d
atteryStats.java
deff9c85ec5c9884d731817e43058589d6fd4631 04-Sep-2010 Mike Lockwood <lockwood@android.com> Add extra to ACTION_BATTERY_CHANGED to indicate an invalid charger is attached.

Change-Id: I24a24a49d2e3ddee8fbce590ef75ea323b3be97b
Signed-off-by: Mike Lockwood <lockwood@android.com>
atteryManager.java
7f7ce40f90cf00dc046fb9520d77d29e96b474d6 28-Aug-2010 Brad Fitzpatrick <bradfitz@android.com> resolved conflicts for merge of 28130bae to master

Change-Id: I13df8dc12092c3d2536e12216df9130d5914380a
28130baefb4fa6d1e0ff9c92337295ba74461cf7 27-Aug-2010 Brad Fitzpatrick <bradfitz@android.com> resolved conflicts for merge of 6b50986a to gingerbread-plus-aosp

Change-Id: I7c5ec7ae717e75ad242e2c1ad4537052e4eea718
333b8cba996c8ebb8ca55ebfc5cc536bdd64af94 26-Aug-2010 Brad Fitzpatrick <bradfitz@android.com> SharedPreferences$Editor.startCommit()

Adds a fire-and-forget save method (startCommit) to the
SharedPreferences.Editor, which is the way most people use it anyway.

This commit adds the implementation. The previous commit added the
interface and docs:

previous change: Idf9934b445da1fb72b79f0192218b47c0a7f5a34
git commit: edf32d01316bd3432c023f17747461b08ae36375

In addition, this change:

-- adds a generic "runPendingWorkFinishers" mechanism to
ActivityThread to wait on async operations that are still
in flight and use it for this.

-- ties runPendingWorkFinishers into Activity.onPause,
BroadcastReceiver, and Service.

-- makes sSharedPreferences keyed on name, not File, to avoid
unnnecessary allocations

-- documents and guarantees what thread
OnSharedPreferenceChangeListener callbacks run on

-- makes a few things in frameworks/base use startCommit(), notably
Preference.java (which was ignoring the return value anyway)

Change-Id: I1c8db60ad45643226fe6d246d3e513eeb7bd0ebd
andler.java
7f9106fb1f167607ce64a6013c24251971ab8bf8 25-Aug-2010 Brad Fitzpatrick <bradfitz@android.com> am 6cf1a8bf: am b1bbe99a: Merge "Some StrictMode API changes." into gingerbread

Merge commit '6cf1a8bfb04aead9cee5f59df4529a79c0a92dca'

* commit '6cf1a8bfb04aead9cee5f59df4529a79c0a92dca':
Some StrictMode API changes.
c28227d443dc63823c19864376150f934a3f9690 24-Aug-2010 Wink Saville <wink@google.com> Merge "Allow reliable detection of a message that is in use."
6cf1a8bfb04aead9cee5f59df4529a79c0a92dca 24-Aug-2010 Brad Fitzpatrick <bradfitz@android.com> am b1bbe99a: Merge "Some StrictMode API changes." into gingerbread

Merge commit 'b1bbe99aaa01f321ae94f0d5ba4505e528664cc7' into gingerbread-plus-aosp

* commit 'b1bbe99aaa01f321ae94f0d5ba4505e528664cc7':
Some StrictMode API changes.
97461bd25c3821f3fb6af9705f0612259c6b4492 24-Aug-2010 Brad Fitzpatrick <bradfitz@android.com> Some StrictMode API changes.

* rename setThreadBlockingPolicy to setThreadPolicy (opens the way to
using StrictMode for non-blocking-related things in the future?)

* add allowThreadDiskWrites() and allowThreadDiskReads() to modify the
current policy mask and return the old one. this will allow turning
off part of StrictMode during certain regions of code. (for
instance, writing to disk in Activity onPause...)

Change-Id: Ia1878153713f79299971fdab567fa15b3cb9d56c
trictMode.java
a334e7c72408c4e2805f2427a35d841a60adefc4 24-Aug-2010 Wink Saville <wink@google.com> Allow reliable detection of a message that is in use.

Because the standard Looper.loop code calls Message#recycle it is
imperative that Handler#handleMessage code not attempt to resue
a message it receives. If allowed to do so it will cause bugs that
could be difficult to diagnois.

This change adds Message#flags and uses one bit to reliably detect
a message is in use and throws an error in MessageQueue#enqueueMessage.
This allows early detection of this bug.

Note: This is not new functionality, but the current implementation does
not detect messages that are in use because it uses Message#when != 0
as the detection mechanism. The problem is that a Message#when value of 0
is valid value used to place a message at the front of the queue and is
thus unreliable.

Another option is to change the setting of Message#when in Message#enqueueMessage
so that it is never 0, although that does change subtly a publicly accessible
field.

Yet another option would be to use other fields but all candidates have
similar problems as when in that they are publicly accessible or even
settable such as Message#target.

Change-Id: I040d6e546376f7b1ed1e4daa0d5644cce8bf333a
essage.java
essageQueue.java
53e75ea847df20b29124966a4232dc0109c37e27 24-Aug-2010 Kenny Root <kroot@google.com> resolved conflicts for merge of 485de781 to master

Change-Id: I483cb81596f09b024b1aea7fc55960183f38b24f
37a1e2370f763cb2e4411f81e44857fa55051df6 24-Aug-2010 Dianne Hackborn <hackbod@google.com> am a3ece8bd: am 32519259: Merge "Fix a few small battery stats problems:" into gingerbread

Merge commit 'a3ece8bde37acd81b08c4e3c1cb0e6d006ade3e0'

* commit 'a3ece8bde37acd81b08c4e3c1cb0e6d006ade3e0':
Fix a few small battery stats problems:
3e6d50cc484f2eee0cff63789cc7796718eb6b68 24-Aug-2010 Dianne Hackborn <hackbod@google.com> Make Theme.Holo the default theme for new apps.

Also change Holo to have an action bar, instead of a title bar.

Change-Id: I45c2f06938509ae02cde99d1c06c228f86e8e3e8
uild.java
ddb2bfeb6e5a383306159672fe81333bf8520776 24-Aug-2010 Jaikumar Ganesh <jaikumar@google.com> Revert "Allow reliable detection of a message that is in use."

This reverts commit 6083d81ce4d67ec632962270fda64ebb9db0d5b1.
Reverting this because it causes runtime to reboot in a loop
if connected to a Bluetooth Headset.

copyFrom() needs to check for the introduced bit too.
essage.java
essageQueue.java
8da31dc8bf90bb2fa8f4c51895b1cedebdf9a7e5 24-Aug-2010 Wink Saville <wink@google.com> Merge "Allow reliable detection of a message that is in use."
6083d81ce4d67ec632962270fda64ebb9db0d5b1 22-Aug-2010 Wink Saville <wink@google.com> Allow reliable detection of a message that is in use.

Because the standard Looper.loop code calls Message#recycle it is
imperative that Handler#handleMessage code not attempt to resue
a message it receives. If allowed to do so it will cause bugs that
could be difficult to diagnois.

This change adds Message#flags and uses one bit to reliably detect
a message is in use and throws an error in MessageQueue#enqueueMessage.
This allows early detection of this bug.

Note: This is not new functionality, but the current implementation does
not detect messages that are in use because it uses Message#when != 0
as the detection mechanism. The problem is that a Message#when value of 0
is valid value used to place a message at the front of the queue and is
thus unreliable.

Another option is to change the setting of Message#when in Message#enqueueMessage
so that it is never 0, although that does change subtly a publicly accessible
field.

Yet another option would be to use other fields but all candidates have
similar problems as when in that they are publicly accessible or even
settable such as Message#target.

Change-Id: I2df600537700a3fe206678f38bcae7329751c4e5
essage.java
essageQueue.java
e49564e0f710ba4a1405cfdfde068cb776ee474e 21-Aug-2010 Kenny Root <kroot@google.com> am 821afa9a: am 54d41379: Merge "Add OBB flags to support overlays" into gingerbread

Merge commit '821afa9aec8d3a4ffd2e72ce797d8097eaf13973'

* commit '821afa9aec8d3a4ffd2e72ce797d8097eaf13973':
Add OBB flags to support overlays
485de781f6bd30dfb7aa1e55c4f1efb3d3b11eba 21-Aug-2010 Kenny Root <kroot@google.com> am 06c81f29: Merge changes I8a257579,I82d16312 into gingerbread

Merge commit '06c81f29a61ad3568a77f111b6be93e1f437f5bd' into gingerbread-plus-aosp

* commit '06c81f29a61ad3568a77f111b6be93e1f437f5bd':
Add AStorageManager API to NDK
Reorganize MountService IPC
06c81f29a61ad3568a77f111b6be93e1f437f5bd 21-Aug-2010 Kenny Root <kroot@google.com> Merge changes I8a257579,I82d16312 into gingerbread

* changes:
Add AStorageManager API to NDK
Reorganize MountService IPC
a3ece8bde37acd81b08c4e3c1cb0e6d006ade3e0 20-Aug-2010 Dianne Hackborn <hackbod@google.com> am 32519259: Merge "Fix a few small battery stats problems:" into gingerbread

Merge commit '325192593b057f4360e1abddf490b4fae7d60b12' into gingerbread-plus-aosp

* commit '325192593b057f4360e1abddf490b4fae7d60b12':
Fix a few small battery stats problems:
99d0452ddc0a0435030a462bda9f4d57b58bad9a 20-Aug-2010 Dianne Hackborn <hackbod@google.com> Fix a few small battery stats problems:

- Actually aggregate discharge amounts.
- Actually print the unplugged battery info when currently plugged in.

Change-Id: I22dd6feb73ac1364eb169d3239ce403b0755bb6c
atteryStats.java
be857d42849eaaa554d4772dbba7755f8a0f3547 19-Aug-2010 Kenny Root <kroot@google.com> Reorganize MountService IPC

Remove auto-generated AIDL files and replace them with manually edited
.java and .cpp/.h files so that binder calls can be made from either
Java or C++.

Update the makefiles to not attempt to generate the AIDL files and also
remove the old auto-generated .java files.

Put all the storage-related C++ things in libstorage so that we don't
pollute other libraries.

Change-Id: I82d1631295452709f12ff1270f36c3100e652806
torage/IMountService.aidl
torage/IMountService.java
torage/IMountServiceListener.aidl
torage/IMountServiceListener.java
torage/IMountShutdownObserver.aidl
torage/IMountShutdownObserver.java
torage/IObbActionListener.aidl
torage/IObbActionListener.java
821afa9aec8d3a4ffd2e72ce797d8097eaf13973 19-Aug-2010 Kenny Root <kroot@google.com> am 54d41379: Merge "Add OBB flags to support overlays" into gingerbread

Merge commit '54d41379357d1d800d0a7bd7c5dc56111710482a' into gingerbread-plus-aosp

* commit '54d41379357d1d800d0a7bd7c5dc56111710482a':
Add OBB flags to support overlays
02ca31fbae9f35dd30f79de6927fae11b549391a 12-Aug-2010 Kenny Root <kroot@google.com> Add OBB flags to support overlays

* Add flags field in OBB footer to support overlays.

* Remove unused 'crypto' and 'filesystem' fields in obbtool (could
later be supported in the "flags" field of the OBB footer).

* Add notes to document OBB classes before shipping.

Change-Id: I386b43c32c5edef55210acb5d3322639c08010ba
torage/StorageManager.java
a006b47298539d89dc7a06b54c070cb3e986352a 14-Apr-2010 Bjorn Bringert <bringert@android.com> New API and implementation of DB and memory-backed FDs

This depends on a kernel patch that implements read(2)
in the ashmem driver.

Bug http://b/issue?id=2595601

Change-Id: Ie3b10aa471aada21812b35e63954c1b2f0a7b042
emoryFile.java
arcelFileDescriptor.java
4961e4793f958ee75b2e0bb72c0dc4115e6f5a2f 17-Aug-2010 Doug Zongker <dougz@android.com> am bb33d6fd: am 997dc32b: Merge "add an api for getting a device serial number" into gingerbread

Merge commit 'bb33d6fd987727c24372d7b7109ec5d1db82efe2'

* commit 'bb33d6fd987727c24372d7b7109ec5d1db82efe2':
add an api for getting a device serial number
a10382b67dc14ffe43cd6da56a5cffebfa470870 17-Aug-2010 Dianne Hackborn <hackbod@google.com> am 2e47052f: am 567722ee: Merge "Fix problems with determining when to kill apps for wake usage." into gingerbread

Merge commit '2e47052fc4ad3439adc2322fd953fd58a85d457c'

* commit '2e47052fc4ad3439adc2322fd953fd58a85d457c':
Fix problems with determining when to kill apps for wake usage.
0a56fdc1400db3d31bff3a18bde7e509111d9b90 17-Aug-2010 Dianne Hackborn <hackbod@google.com> am 66b0343e: am a8d9291d: Merge "Various battery info things:" into gingerbread

Merge commit '66b0343e9e32203cdd39b854852cf575ca2fcd6b'

* commit '66b0343e9e32203cdd39b854852cf575ca2fcd6b':
Various battery info things:
bb33d6fd987727c24372d7b7109ec5d1db82efe2 16-Aug-2010 Doug Zongker <dougz@android.com> am 997dc32b: Merge "add an api for getting a device serial number" into gingerbread

Merge commit '997dc32b6bef1c9cc8ac6d4d598698507b2c4934' into gingerbread-plus-aosp

* commit '997dc32b6bef1c9cc8ac6d4d598698507b2c4934':
add an api for getting a device serial number
997dc32b6bef1c9cc8ac6d4d598698507b2c4934 16-Aug-2010 Doug Zongker <dougz@android.com> Merge "add an api for getting a device serial number" into gingerbread
7d2e3df60d33a73f5ef62ea462a9c6da5e3efc9a 12-Aug-2010 Doug Zongker <dougz@android.com> add an api for getting a device serial number

Add a constant to android.os.Build that returns a device-specific
alphanumeric serial number. It's optional -- it may be blank --
though CTS will require it to be present for non-telephony devices.

Change-Id: I338ae5f43ba679a5e98f2f437dc4efdaef0c835d
uild.java
2e47052fc4ad3439adc2322fd953fd58a85d457c 16-Aug-2010 Dianne Hackborn <hackbod@google.com> am 567722ee: Merge "Fix problems with determining when to kill apps for wake usage." into gingerbread

Merge commit '567722eee190f7cf88dc7ea95167db76d5514842' into gingerbread-plus-aosp

* commit '567722eee190f7cf88dc7ea95167db76d5514842':
Fix problems with determining when to kill apps for wake usage.
1ebccf531d1049853b3b0630035434619682c016 15-Aug-2010 Dianne Hackborn <hackbod@google.com> Fix problems with determining when to kill apps for wake usage.

Also improve debug printing of various times.

Change-Id: Ifcc288fd1bcbf44c069875ba97925b9e7ffe9a48
atteryStats.java
ooper.java
essage.java
66b0343e9e32203cdd39b854852cf575ca2fcd6b 14-Aug-2010 Dianne Hackborn <hackbod@google.com> am a8d9291d: Merge "Various battery info things:" into gingerbread

Merge commit 'a8d9291d7f93d1aa0d24d71d65c7de2894812177' into gingerbread-plus-aosp

* commit 'a8d9291d7f93d1aa0d24d71d65c7de2894812177':
Various battery info things:
9adb9c3b10991ef315c270993f4155709c8a232d 13-Aug-2010 Dianne Hackborn <hackbod@google.com> Various battery info things:

- Now track wake locks in battery history.
- Now track sensors in battery history.
- Some filtering of sensory data.
- Fixes to some data that wasn't cleared when resetting battery stats.
- Print amount discharged since last charge.

And the big part -- keep track of wake locks held per process,
and kill processes that hold wake locks too much while they are in
the background. This includes information in the battery stats
about the process being killed, which will be available to the
developer if the app is reported.

Change-Id: I97202e94d00aafe0526ba2db74a03212e7539c54
atteryStats.java
b219a83ff6278eeef981e6908abf871876a68699 12-Aug-2010 Jeff Brown <jeffbrown@google.com> am f66f8a58: am 95af0c14: Merge "Add support for the PointerLocation overlay." into gingerbread

Merge commit 'f66f8a58cc4412bd258e1d5b11cac17a617bdc58'

* commit 'f66f8a58cc4412bd258e1d5b11cac17a617bdc58':
Add support for the PointerLocation overlay.
f66f8a58cc4412bd258e1d5b11cac17a617bdc58 12-Aug-2010 Jeff Brown <jeffbrown@google.com> am 95af0c14: Merge "Add support for the PointerLocation overlay." into gingerbread

Merge commit '95af0c14a64ef264d2b362ded4ca2b5a169d1066' into gingerbread-plus-aosp

* commit '95af0c14a64ef264d2b362ded4ca2b5a169d1066':
Add support for the PointerLocation overlay.
95af0c14a64ef264d2b362ded4ca2b5a169d1066 12-Aug-2010 Jeff Brown <jeffbrown@google.com> Merge "Add support for the PointerLocation overlay." into gingerbread
a41ca77fabe1c7ad12ebb9b69b9e786c07d49fa0 11-Aug-2010 Jeff Brown <jeffbrown@google.com> Add support for the PointerLocation overlay.

This change involves adding a new method to IWindowManager,
monitorInput() that returns an InputChannel to receive a copy of all
input that is dispatched to applications. The caller must have
the READ_INPUT_STATE permission to make this request (similar to
other window manager methods such as getKeycodeState).

Change-Id: Icd14d810174a5b2928671ef16de73af88302aea0
ooper.java
bf0cb26a1c6305f2a7795c2498591b6189cc5b79 11-Aug-2010 Kenny Root <kroot@google.com> am f5ee5358: am ac9717ab: Merge "Move OBB file reading to DefaultContainerService" into gingerbread

Merge commit 'f5ee5358c187107b2e5a1e1fbcb5a648d793c798'

* commit 'f5ee5358c187107b2e5a1e1fbcb5a648d793c798':
Move OBB file reading to DefaultContainerService
f5ee5358c187107b2e5a1e1fbcb5a648d793c798 11-Aug-2010 Kenny Root <kroot@google.com> am ac9717ab: Merge "Move OBB file reading to DefaultContainerService" into gingerbread

Merge commit 'ac9717ab73afe0123b6dbb63c4dd2fc88143e53e' into gingerbread-plus-aosp

* commit 'ac9717ab73afe0123b6dbb63c4dd2fc88143e53e':
Move OBB file reading to DefaultContainerService
a02b8b05dd1e8b8cf169e1f89542ef835b11fc13 06-Aug-2010 Kenny Root <kroot@google.com> Move OBB file reading to DefaultContainerService

The system_server shouldn't touch files on the SD card. This change
moves the things that touch the SD card out to the
DefaultContainerService so that it will get killed if the SD card goes
away instead of the system_server.

Change-Id: I0aefa085be4b194768527195532ee6dddc801cfc
torage/IMountService.aidl
torage/IObbActionListener.aidl
torage/StorageManager.java
23fdaf6fb62a9b5154b2508916a21c678462c5d0 06-Aug-2010 Dianne Hackborn <hackbod@google.com> Add new ContentProvider for doing conversions to data streams.

This introduces basic infrastructure that should allow content
providers holding complex data to perform on-demand conversion
of their data to streams of various types. It is achieved through
two new content provider APIs, one to interrogate the possible
stream MIME types the provider can return, and the other to
request a stream of data in a particular MIME type.

Because implementations of this will often need to do on-demand
data conversion, there is also a utility intoduced in ContentProvider
for subclasses to easily run a function to write data into a
pipe that is read by the client.

This feature is mostly intended for cut and paste and drag and
drop, as the complex data interchange allowing the source and
destination to negotiate data types and copy (possible large)
data between them. However because it is fundamental facility
of ContentProvider, it can be used in other places, such as for
more advanced GET_CONTENT data exchanges.

An example implementation of this would be in ContactsProvider,
which can now provider a data stream when a client opens certain
pieces of it data, to return data as flat text, a vcard, or other
format.

Change-Id: I58627ea4ed359aa7cf2c66274adb18306c209cb2
syncTask.java
arcelFileDescriptor.java
90960e87ecae696f73ae18e46c2f003fc3f592cc 06-Aug-2010 Mike Lockwood <lockwood@android.com> Set umask of system server to 0077

This matches the previous behavior of java.io.File file and directory creation.

BUG: 2898660

Change-Id: Ie8978a3fc44abfd22f8046e66742e715354220a8
Signed-off-by: Mike Lockwood <lockwood@android.com>
ileUtils.java
b1ad5977bc8178b6d350ebe9099daded4c1ef603 03-Aug-2010 Dianne Hackborn <hackbod@google.com> New two-pane mode for PreferenceActivity.

This introduces a whole new way to use PreferenceActivity, as
a container for PreferenceFragments that the user can switch
between from a list of headers.

Change-Id: I1c79b7c78b86790dc460a1414a999aba5de80628
uild.java
86dde2d64c7eadc06a17aeb486c669ce4b53d13c 31-Jul-2010 Brad Fitzpatrick <bradfitz@android.com> am e2d33bbc: am d2165cfc: Merge "StrictMode: time violations in Binder calls" into gingerbread

Merge commit 'e2d33bbc496192d49c1e48baad446d8d0720d301'

* commit 'e2d33bbc496192d49c1e48baad446d8d0720d301':
StrictMode: time violations in Binder calls
e2d33bbc496192d49c1e48baad446d8d0720d301 31-Jul-2010 Brad Fitzpatrick <bradfitz@android.com> am d2165cfc: Merge "StrictMode: time violations in Binder calls" into gingerbread

Merge commit 'd2165cfce7911dac66d1195ed9123e79b086d22b' into gingerbread-plus-aosp

* commit 'd2165cfce7911dac66d1195ed9123e79b086d22b':
StrictMode: time violations in Binder calls
cb9ceb1029036363a81952d8ed5dfcbc83e6ff72 29-Jul-2010 Brad Fitzpatrick <bradfitz@android.com> StrictMode: time violations in Binder calls

Change-Id: I5796993dce98be722cf679b78acaf0c9de0ba461
trictMode.java
84fabc0ce3d7c3da73903380d0d6141d60fa4448 27-Jul-2010 Brad Fitzpatrick <bradfitz@android.com> am 245cb784: am 84c924a6: Merge "Replace several IPCThreadState::get() lookups with one." into gingerbread

Merge commit '245cb7846c82f7c0840e13f0b994d356846b1678'

* commit '245cb7846c82f7c0840e13f0b994d356846b1678':
Replace several IPCThreadState::get() lookups with one.
245cb7846c82f7c0840e13f0b994d356846b1678 27-Jul-2010 Brad Fitzpatrick <bradfitz@android.com> am 84c924a6: Merge "Replace several IPCThreadState::get() lookups with one." into gingerbread

Merge commit '84c924a6c53cb63ca018013c9fda0077413d0005' into gingerbread-plus-aosp

* commit '84c924a6c53cb63ca018013c9fda0077413d0005':
Replace several IPCThreadState::get() lookups with one.
84c924a6c53cb63ca018013c9fda0077413d0005 27-Jul-2010 Brad Fitzpatrick <bradfitz@android.com> Merge "Replace several IPCThreadState::get() lookups with one." into gingerbread
7bcad8a315f12bd6251a998781efac7b11c2ca84 27-Jul-2010 Brad Fitzpatrick <bradfitz@android.com> Replace several IPCThreadState::get() lookups with one.

Also, make StrictMode's ThreadLocal final.

Change-Id: I08d400ed254fa67bb7a3dae1227f205a54c00df0
trictMode.java
d596d5115c0f568472daec4f094807bcd39d1f0f 27-Jul-2010 Joe Onorato <joeo@android.com> am 070433ed: am 76d9bf52: am 8c65ee2d: Merge "Add a method to let a properly permissioned app directly manipulate the user activity timeout. We should come up with a better API for this, but this is for a last minute power manager hack to turn off the screen sooner a

Merge commit '070433edee72de5fd9b93ddf055f74277f0deff4'

* commit '070433edee72de5fd9b93ddf055f74277f0deff4':
Add a method to let a properly permissioned app directly
070433edee72de5fd9b93ddf055f74277f0deff4 27-Jul-2010 Joe Onorato <joeo@android.com> am 76d9bf52: am 8c65ee2d: Merge "Add a method to let a properly permissioned app directly manipulate the user activity timeout. We should come up with a better API for this, but this is for a last minute power manager hack to turn off the screen sooner after a phone

Merge commit '76d9bf52f31b8f31f64348b736422861c90ab463' into gingerbread-plus-aosp

* commit '76d9bf52f31b8f31f64348b736422861c90ab463':
Add a method to let a properly permissioned app directly
76d9bf52f31b8f31f64348b736422861c90ab463 27-Jul-2010 Joe Onorato <joeo@android.com> am 8c65ee2d: Merge "Add a method to let a properly permissioned app directly manipulate the user activity timeout. We should come up with a better API for this, but this is for a last minute power manager hack to turn off the screen sooner after a phone call ends." i

Merge commit '8c65ee2d509db7dcb50ce4530d52eb5bdca3f917' into gingerbread

* commit '8c65ee2d509db7dcb50ce4530d52eb5bdca3f917':
Add a method to let a properly permissioned app directly
19bc67e8064f08235843f654d732ad45d2088a08 27-Jul-2010 Brad Fitzpatrick <bradfitz@android.com> am b5daea8a: am eacf0ecd: Merge "Fix StrictMode for Binder.dump()" into gingerbread

Merge commit 'b5daea8a9f98a7c04377e3f5ad6742add1b925d5'

* commit 'b5daea8a9f98a7c04377e3f5ad6742add1b925d5':
Fix StrictMode for Binder.dump()
b5daea8a9f98a7c04377e3f5ad6742add1b925d5 27-Jul-2010 Brad Fitzpatrick <bradfitz@android.com> am eacf0ecd: Merge "Fix StrictMode for Binder.dump()" into gingerbread

Merge commit 'eacf0ecd00f77718ac4570077d729e33b6c320f4' into gingerbread-plus-aosp

* commit 'eacf0ecd00f77718ac4570077d729e33b6c320f4':
Fix StrictMode for Binder.dump()
eb75888e6479317151c2ed44d47bd28ef567a4c7 27-Jul-2010 Brad Fitzpatrick <bradfitz@android.com> Fix StrictMode for Binder.dump()

Change-Id: I378f5e3d6512d06b46248b9bb6d9c727e3f6bf1d
inder.java
48b9cbb046d7fc546e5e4c08f772ddb8ef528ed3 26-Jul-2010 Dianne Hackborn <hackbod@google.com> am 443d884e: am 3bee5af8: Battery stats: start removing last stats, keep total discharge.

Merge commit '443d884e16fad2e01a97aa788d4b30de53c94048'

* commit '443d884e16fad2e01a97aa788d4b30de53c94048':
Battery stats: start removing last stats, keep total discharge.
443d884e16fad2e01a97aa788d4b30de53c94048 26-Jul-2010 Dianne Hackborn <hackbod@google.com> am 3bee5af8: Battery stats: start removing last stats, keep total discharge.

Merge commit '3bee5af8162c177f8c8f4199489a401058ab26a9' into gingerbread-plus-aosp

* commit '3bee5af8162c177f8c8f4199489a401058ab26a9':
Battery stats: start removing last stats, keep total discharge.
3bee5af8162c177f8c8f4199489a401058ab26a9 23-Jul-2010 Dianne Hackborn <hackbod@google.com> Battery stats: start removing last stats, keep total discharge.

Change-Id: I59c4bcbb9893adb237017add76b83c22153f94ef
atteryStats.java
7999bff154e96efb0bc9d2b89ec277f0f9ca0d2f 24-Jul-2010 Joe Onorato <joeo@android.com> Add a method to let a properly permissioned app directly
manipulate the user activity timeout. We should come up
with a better API for this, but this is for a last minute
power manager hack to turn off the screen sooner after a
phone call ends.

Change-Id: I76422f952e3e894c90b3311e7d889899c79cbbaa
PowerManager.aidl
3300b6f41e18b26a462824effa6be65a4b158346 22-Jul-2010 Dan Egnor <egnor@google.com> am 7da38863: am 3685db7f: am e8605af5: Merge "Avoid leaking file descriptors when returning drop box events." into froyo

Merge commit '7da38863d4382746090bf50413b1774ab04f6bc1'

* commit '7da38863d4382746090bf50413b1774ab04f6bc1':
Avoid leaking file descriptors when returning drop box events.
7da38863d4382746090bf50413b1774ab04f6bc1 21-Jul-2010 Dan Egnor <egnor@google.com> am 3685db7f: am e8605af5: Merge "Avoid leaking file descriptors when returning drop box events." into froyo

Merge commit '3685db7f5dd8a830a4e096404d4924e12697fb78' into gingerbread-plus-aosp

* commit '3685db7f5dd8a830a4e096404d4924e12697fb78':
Avoid leaking file descriptors when returning drop box events.
3685db7f5dd8a830a4e096404d4924e12697fb78 21-Jul-2010 Dan Egnor <egnor@google.com> am e8605af5: Merge "Avoid leaking file descriptors when returning drop box events." into froyo

Merge commit 'e8605af513e846f6cd223c9e92461189727d8c9b' into gingerbread

* commit 'e8605af513e846f6cd223c9e92461189727d8c9b':
Avoid leaking file descriptors when returning drop box events.
6e6d60d4c85ce440d9ef5e5f36e708ed0ced65c6 21-Jul-2010 Dan Egnor <egnor@google.com> Avoid leaking file descriptors when returning drop box events.

We can't use Parcel.writeValue() to write the ParcelFileDescriptor, otherwise
it leaks when returning the value to the caller (the flag gets lost). Change
the way DropBoxManager.Entry gets serialized so that it uses a bit of its own
flags value to track whether the data is a byte[] or a ParcelFileDescriptor.

Modify the dropbox unit test to add extensive checking of Entry serialization
and deserialization under various circumstances, and to include a regression
test to ensure that FD leaking doesn't happen.

Bug: 2847738
Change-Id: I4ccd17dd03ffab234340cd359e6f3510fdf81193
ropBoxManager.java
ed38cf9089f24d28aa6e80f28c38617a6d8e9940 21-Jul-2010 Jason Parks <jparks@google.com> am bc4fcec7: am 29e25bd3: Merge "Only print out wake locks in the if the wakelock was held." into gingerbread

Merge commit 'bc4fcec70f841156f5e7fd16224e88cb3d551ca7'

* commit 'bc4fcec70f841156f5e7fd16224e88cb3d551ca7':
Only print out wake locks in the if the wakelock was held.
43b237bd95f62204c4867a31857d723fa01910ba 21-Jul-2010 Dan Egnor <egnor@google.com> am c78f9a0e: am 3c1363be: am 2f0dc6d9: Merge "COMMENT ONLY change to add some warnings about ParcelFileDescriptor behavior with Parcel.writeValue()." into froyo

Merge commit 'c78f9a0e1ba931988144a52c54bc05a7e1521f67'

* commit 'c78f9a0e1ba931988144a52c54bc05a7e1521f67':
COMMENT ONLY change to add some warnings about ParcelFileDescriptor
bc4fcec70f841156f5e7fd16224e88cb3d551ca7 20-Jul-2010 Jason Parks <jparks@google.com> am 29e25bd3: Merge "Only print out wake locks in the if the wakelock was held." into gingerbread

Merge commit '29e25bd3418b04e395119bf99abe92898830a796' into gingerbread-plus-aosp

* commit '29e25bd3418b04e395119bf99abe92898830a796':
Only print out wake locks in the if the wakelock was held.
c78f9a0e1ba931988144a52c54bc05a7e1521f67 20-Jul-2010 Dan Egnor <egnor@google.com> am 3c1363be: am 2f0dc6d9: Merge "COMMENT ONLY change to add some warnings about ParcelFileDescriptor behavior with Parcel.writeValue()." into froyo

Merge commit '3c1363beec9c142c062d8704b8bef4230b42eae5' into gingerbread-plus-aosp

* commit '3c1363beec9c142c062d8704b8bef4230b42eae5':
COMMENT ONLY change to add some warnings about ParcelFileDescriptor
29e25bd3418b04e395119bf99abe92898830a796 20-Jul-2010 Jason Parks <jparks@google.com> Merge "Only print out wake locks in the if the wakelock was held." into gingerbread
3c1363beec9c142c062d8704b8bef4230b42eae5 20-Jul-2010 Dan Egnor <egnor@google.com> am 2f0dc6d9: Merge "COMMENT ONLY change to add some warnings about ParcelFileDescriptor behavior with Parcel.writeValue()." into froyo

Merge commit '2f0dc6d9f50ceece294e9db393583e655d3bf781' into gingerbread

* commit '2f0dc6d9f50ceece294e9db393583e655d3bf781':
COMMENT ONLY change to add some warnings about ParcelFileDescriptor
99a518ffabacb10171621d0293bf982b85505e66 20-Jul-2010 Jean-Baptiste Queru <jbq@google.com> resolved conflicts for merge of ca48433a to master

Change-Id: I0dd2dee65ff72b7eae20019c6232b66388fe7990
94b916da2ce7b5fb8d87e884fad7132ef3091720 20-Jul-2010 Jason Parks <jparks@google.com> Only print out wake locks in the if the wakelock was held.

Change-Id: I742121b70bd0e56ca2efe05fffa9fe3e4ad7b619
atteryStats.java
ca48433afc9fab2a8c0b9913bcf3f525d75ed97f 20-Jul-2010 The Android Open Source Project <initial-contribution@android.com> merge from open-source master

Change-Id: I1901177e8a4bd32a707020c581f25f21349ba571
b3e4ef37021a9e5518fdbc7d0cbb0a1709d5301b 20-Jul-2010 Dan Egnor <egnor@google.com> COMMENT ONLY change to add some warnings about ParcelFileDescriptor
behavior with Parcel.writeValue().

Change-Id: If55fcce29559379855735ff5297cf4f46d5d6be6
Bug: 2847738
arcel.java
arcelFileDescriptor.java
798e2d3d0c80e269ead1489dbc3f2f762f1e52b5 17-Jun-2010 Christian Mehlmauer <FireFart@gmail.com> Replaced /sdcard with Environment.getExternalStorageDirectory()

Change-Id: Id789f44a8569e307b1b7ab15eb266c9ce7ef2029
ebug.java
fb4e1e24a93c7e6bc0fcdb3f5cfadfbc19503cd8 16-Jul-2010 Kenny Root <kroot@google.com> resolved conflicts for merge of 181bb0ab to master

Change-Id: I2284e7c671d127da0d124fbabae8d887727fd5bf
a1079337af10903da460b97f3a2b6c6a013be1e0 16-Jul-2010 Brad Fitzpatrick <bradfitz@android.com> am 527e9c8f: am 703e5d3c: StrictMode: avoid an allocation in common case

Merge commit '527e9c8f0471666b5b1c461f1a8a710192208e70'

* commit '527e9c8f0471666b5b1c461f1a8a710192208e70':
StrictMode: avoid an allocation in common case
d2f6c7fe735ffcdb67852c6a1287565a2afa412d 16-Jul-2010 Brad Fitzpatrick <bradfitz@android.com> am 3e5e21d4: am 1772c34e: Merge "StrictMode: gather and return violating stacks in Binder replies" into gingerbread

Merge commit '3e5e21d4dc74751e64d17379c5563ece39a7e35d'

* commit '3e5e21d4dc74751e64d17379c5563ece39a7e35d':
StrictMode: gather and return violating stacks in Binder replies
9555a1323e846aba16e6a7f2e5d9a9227523e595 16-Jul-2010 Brad Fitzpatrick <bradfitz@android.com> am cc52121c: am c4b204bd: Merge "More StrictMode work, keeping Binder & BlockGuard\'s thread-locals in-sync." into gingerbread

Merge commit 'cc52121c4f88e9feb8404937bcbfff6e73084666'

* commit 'cc52121c4f88e9feb8404937bcbfff6e73084666':
More StrictMode work, keeping Binder & BlockGuard's thread-locals in-sync.
02c8730c1bf19daf48bec8c6995df676a00a73b1 01-Jul-2010 Kenny Root <kroot@google.com> Add API to call to vold for mounting OBBs

* Unhide StorageService class; hide all the USB-related items

* Add application-visible API to StorageManager for OBB files

* Add class for parceling OBB info across binders (ObbInfo)

* Add a JNI glue class to libutils/ObbFile (ObbScanner)

* Add API to MountService to deal with calling into vold and checking
permissions

Change-Id: I33ecf9606b8ff535f3a2ada83931da6bbef41cfd
torage/IMountService.aidl
torage/StorageManager.java
703e5d3c7fbeb8ca0978045db01d40318f838612 15-Jul-2010 Brad Fitzpatrick <bradfitz@android.com> StrictMode: avoid an allocation in common case

Make the initialValue() of the ThreadLocal be null, so checking it doesn't
cause one to be created in the case of an RPC call not using StrictMode.

Change-Id: I3ea19ce444a1b3c39a6e53c5cb5d4faf4b07a6c8
arcel.java
trictMode.java
5b747191ff8ad43a54d41faf50436271d1d7fcc8 12-Jul-2010 Brad Fitzpatrick <bradfitz@android.com> StrictMode: gather and return violating stacks in Binder replies

Now, when Thread A has a strict mode policy in effect and does a
Binder call to Thread B (most likely in another process), the strict
mode policy is passed along, but with the GATHER penalty bit set which
overrides other policies and instead gathers all offending stack
traces to a threadlocal which are then written back in the Parcel's
reply header.

Change-Id: I7d4497032a0609b37b1a2a15855f5c929ba0584d
inder.java
arcel.java
trictMode.java
727de40c6bc7c6521a0542ea9def5d5c7b1c5e06 08-Jul-2010 Brad Fitzpatrick <bradfitz@android.com> More StrictMode work, keeping Binder & BlockGuard's thread-locals in-sync.

Change-Id: Ia67cabcc17a73a0f15907ffea683d06bc41b90e5
inder.java
trictMode.java
06a6b558bd03d8f0fed8f94f1dcfc03c5a51bd1c 14-Jul-2010 Andy McFadden <fadden@android.com> Implement native dump for "am dumpheap -n".

This adds the ability to generate a trivial heap dump on demand. If
the appropriate system properties aren't set, the output file will
instead contain instructions for enabling them.

The data returned by get_malloc_leak_info() is processed and written
to the specified file. The output looks something like:

Android Native Heap Dump v1.0

Total memory: 2981301
Allocation records: 2152

z 1 sz 65557 num 1 bt 8010dd78 afd12618 ...
z 1 sz 52008 num 3 bt 8010dd78 afd12618 ...
z 1 sz 24428 num 1 bt 8010dd78 8010de84 ...
...2149 more...
END

(the "..." is actually the remaining entries in the stack backtrace;
I truncated it here)

"z" indicates whether the allocation was made pre- or post-zygote,
"sz" is the size allocated, and "num" is the number of allocations
made of that size with the specified backtrace.

Change-Id: I2d60f07444fce5f7178b3f51c928c8faa0b051bd
ebug.java
824c510752fd6a30cdba5ed7324cb80a5043ce26 10-Jul-2010 Andy McFadden <fadden@android.com> Allow "am" to initiate heap dumps.

This was mostly cloned from the "am profile" implementation. It's
intended to replace the old "kill -10" approach used by "runhat".

We could really use a native heap dump, so I pass a "managed"
flag through that indicates whether we want to dump the native or
managed heap. We don't currently have a native heap dump-to-file
function, so it currently just logs a warning.

(android.ddm.DdmHandleNativeHeap.getLeakInfo is a good start -- it
copies /proc/maps and then calls get_malloc_leak_info to get some
goodies. Needs some formatting to make it human-readable. I didn't
want to cram all that into this change.)

It would be useful if "am" didn't exit until the heap dump operation
completed, but I'm not sure how to do that.

Bug 2759474.

Change-Id: I46bc98067738d8c72ac0fc10002ca67bb4929271
ebug.java
8dfabd9c6ffc64a9f558610e98ae19fbe41940fb 01-Jul-2010 Christopher Tate <ctate@google.com> resolved conflicts for merge of d3233ae9 to master

Change-Id: I59ecf8f2d3bd253f51457c11ec15f022ac5fdeb6
160edb3645f8b7012bab70ae6e6e8c4a5733082b 01-Jul-2010 Christopher Tate <ctate@google.com> Add ability to guard a thread against setting its own prio to bg

The guard is compiled out by default because it adds overhead to
android.os.Process.setPriority().

Change-Id: Ibb2a648c6349b381abb7ae62a358888b04fba871
rocess.java
e981c883d5ca99ccb97c317d824b9c288b613f67 23-Jun-2010 Jeff Brown <jeffbrown@google.com> am b1efc3f6: am 7fbdc84e: More native input event dispatching.

Merge commit 'b1efc3f68277a8c38c21e2d2e8ce05287118ecfe'

* commit 'b1efc3f68277a8c38c21e2d2e8ce05287118ecfe':
More native input event dispatching.
7fbdc84e87dd3a0e196b9803bb04495d11e9cb8a 18-Jun-2010 Jeff Brown <jeffbrown@google.com> More native input event dispatching.

Added ANRs handling.
Added event injection.
Fixed a NPE ActivityManagerServer writing ANRs to the drop box.
Fixed HOME key interception.
Fixed trackball reporting.
Fixed pointer rotation in landscape mode.

Change-Id: I50340f559f22899ab924e220a78119ffc79469b7
essageQueue.java
e2e97ce1161e5bf89ef8b5ce6a12be0f16dea23e 17-Jun-2010 Dianne Hackborn <hackbod@google.com> am 9a1034aa: am 6b7b4845: Various improvements to battery stats collection

Merge commit '9a1034aa9746b94ecb659ea849765a160bdf747e'

* commit '9a1034aa9746b94ecb659ea849765a160bdf747e':
Various improvements to battery stats collection
6b7b4845212b3a439c527f2e1eca205b6b45fceb 15-Jun-2010 Dianne Hackborn <hackbod@google.com> Various improvements to battery stats collection

We now clear the battery stats when unplugging after the
battery is full. This allows us to use the "total" stats as
a new "since last charged" stat. Total is gone. I never used
it, it was worthless. Since last charged is a lot more
interesting.

The battery history now collects a lot more stats, and keeps
control over how much it can collect. Printing is now more
descriptive.

The kinds of stats have been renamed to SINCE_UNPLUGGED and
SINCE_DISCHARGED. The other two stats are still there, but
no longer printed; a future change will eliminate them
completely along with all of their state.

Change-Id: I4e9fcfcf8c30510092c76a8594f6021e9502fbc1
atteryStats.java
bef9c7a59dc020c5cdcbd555b5212ae5a10e8045 17-Jun-2010 Dmitri Plotnikov <dplotnikov@google.com> Preventing cursor leaks when a query is interrupted

Re-ran runtest cts-os

Change-Id: I518a2a4f842b01d082078e16643aa377a4575237
syncTask.java
4ed8e42c50d7b67b8d89c092e9cd49b9b1b0040a 15-Jun-2010 Brad Fitzpatrick <bradfitz@android.com> am 92dd85d0: am 742b282e: Merge "StrictMode: implement the log-to-DropBox option" into gingerbread

Merge commit '92dd85d02af60b001f1ae6919eeb11bcf38e64c8'

* commit '92dd85d02af60b001f1ae6919eeb11bcf38e64c8':
StrictMode: implement the log-to-DropBox option
742b282e1168ed3820cb549a89753f39f4de0fa6 15-Jun-2010 Brad Fitzpatrick <bradfitz@android.com> Merge "StrictMode: implement the log-to-DropBox option" into gingerbread
c465f9c4003c5d1806954f81c50e6f9d56adecc4 14-Jun-2010 Dianne Hackborn <hackbod@google.com> am 13792057: am 7e900cbf: Merge "Update build version information." into gingerbread

Merge commit '13792057e4fef30c9b6fe2b8249b246841508164'

* commit '13792057e4fef30c9b6fe2b8249b246841508164':
Update build version information.
7e900cbf1d600a8895e63a0247f45c116ff05172 14-Jun-2010 Dianne Hackborn <hackbod@google.com> Merge "Update build version information." into gingerbread
3e03cfa3af8acf3aad0abc464d2bcab1225a971d 13-Jun-2010 Dianne Hackborn <hackbod@google.com> Update build version information.

Change-Id: If53f16d494255230859a30f561e9a78ec49c6c10
uild.java
143666f0ca28f0e3e6597e5025078f0449ca6abe 14-Jun-2010 Brad Fitzpatrick <bradfitz@android.com> StrictMode: implement the log-to-DropBox option

Change-Id: I51d12e264155078f953028241f8c5cbdc47262e8
trictMode.java
26b327c80b8a2728e9d4d16671e03d7085c38747 14-Jun-2010 Brad Fitzpatrick <bradfitz@android.com> am 6b9b8806: am 60e8c33d: Merge "Dropbox: remove redundant Entry construction." into gingerbread

Merge commit '6b9b8806afb06e393203450bda8a53af08952590'

* commit '6b9b8806afb06e393203450bda8a53af08952590':
Dropbox: remove redundant Entry construction.
14418945bdc7a9c2e1cba8deaac5cb6dddfd6412 14-Jun-2010 Brad Fitzpatrick <bradfitz@android.com> Dropbox: remove redundant Entry construction.

Change-Id: I55d8da82acea7f1cf0a69912fe5d4d46d704b570
ropBoxManager.java
8e03b7566c42621fda01186b66b019142eb84fbf 14-Jun-2010 Jeff Brown <jeffbrown@google.com> resolved conflicts for merge of 9e660c82 to master

Change-Id: Ic4bd85cbaa5b9a10dcb474a0dad46490bf967e43
7c8aa44f320f45e8417f0aba9ca67af6a67a5cf7 14-Jun-2010 Jeff Brown <jeffbrown@google.com> am 46b9ac0a: Native input dispatch rewrite work in progress.

Merge commit '46b9ac0ae2162309774a7478cd9d4e578747bfc2' into gingerbread

* commit '46b9ac0ae2162309774a7478cd9d4e578747bfc2':
Native input dispatch rewrite work in progress.
46b9ac0ae2162309774a7478cd9d4e578747bfc2 23-Apr-2010 Jeff Brown <jeffbrown@google.com> Native input dispatch rewrite work in progress.

The old dispatch mechanism has been left in place and continues to
be used by default for now. To enable native input dispatch,
edit the ENABLE_NATIVE_DISPATCH constant in WindowManagerPolicy.

Includes part of the new input event NDK API. Some details TBD.

To wire up input dispatch, as the ViewRoot adds a window to the
window session it receives an InputChannel object as an output
argument. The InputChannel encapsulates the file descriptors for a
shared memory region and two pipe end-points. The ViewRoot then
provides the InputChannel to the InputQueue. Behind the
scenes, InputQueue simply attaches handlers to the native PollLoop object
that underlies the MessageQueue. This way MessageQueue doesn't need
to know anything about input dispatch per-se, it just exposes (in native
code) a PollLoop that other components can use to monitor file descriptor
state changes.

There can be zero or more targets for any given input event. Each
input target is specified by its input channel and some parameters
including flags, an X/Y coordinate offset, and the dispatch timeout.
An input target can request either synchronous dispatch (for foreground apps)
or asynchronous dispatch (fire-and-forget for wallpapers and "outside"
targets). Currently, finding the appropriate input targets for an event
requires a call back into the WindowManagerServer from native code.
In the future this will be refactored to avoid most of these callbacks
except as required to handle pending focus transitions.

End-to-end event dispatch mostly works!

To do: event injection, rate limiting, ANRs, testing, optimization, etc.

Change-Id: I8c36b2b9e0a2d27392040ecda0f51b636456de25
essageQueue.java
0c330e26e853e478bf1c3d63eae98a42a1c12bad 12-Jun-2010 Brad Fitzpatrick <bradfitz@android.com> am 11bd9d1e: am 94f14aec: Merge "More StrictMode work, handling violations in ActivityManagerService." into gingerbread

Merge commit '11bd9d1ec20ce3bbd3791b537faad429a1ca87e7'

* commit '11bd9d1ec20ce3bbd3791b537faad429a1ca87e7':
More StrictMode work, handling violations in ActivityManagerService.
46d42387464a651268648659e91d022566d4844c 11-Jun-2010 Brad Fitzpatrick <bradfitz@android.com> More StrictMode work, handling violations in ActivityManagerService.

Also starts to do duplicate-suppression.

Change-Id: I0502f6ab6c45fa319298de4874ecfe44b7829d21
trictMode.java
cf0a99910cf87b148fe3143686262a8371d2dbc1 11-Jun-2010 Dianne Hackborn <hackbod@google.com> am 4d4f265e: am 9f8cc518: Merge "Adjust activity manager process OOM adj." into kraken

Merge commit '4d4f265e6b6ccfc239150bd71aa2ce2b8de6237f'

* commit '4d4f265e6b6ccfc239150bd71aa2ce2b8de6237f':
Adjust activity manager process OOM adj.
32907cfb38bda2d3c052cf5139c5b592678fedbb 11-Jun-2010 Dianne Hackborn <hackbod@google.com> Adjust activity manager process OOM adj.

Modify OOM adj classes a bit, to take into account the new
heavy weight app type, and give "foreground services" their
own category to have a bettery chance to manager them when
things go wrong.

Also add some new code to battery stats to keep a history
of changes to the battery level.

Change-Id: I29f5ab6938777e1a7eafd7d8c38b5e564cc9f96a
atteryStats.java
b60c941811cc15ab34fcc2f038aba56f862659b8 11-Jun-2010 Brad Fitzpatrick <bradfitz@android.com> resolved conflicts for merge of f37cbe6b to master

Change-Id: I529b17e55b9668f900f685f92e9831e14a82db05
438d0595121a7a2cdf19741e76e3c0e21a5c173d 10-Jun-2010 Brad Fitzpatrick <bradfitz@android.com> Introduce "StrictMode"

This is a new public API for developers to opt-in to strict rules
about what they're allowed to do on certain threads. (this is the
public face of the @hide dalvik.system.BlockGuard, added recently...)

In practice this will be used for developers to opt-in to declaring
that they don't want to be allowed to do various operations (such as
disk I/O or network operations) on their main UI threads. (these
operations are often accidental, or even when they are fast come with
a good chance of being slow or very slow in some cases....)

Implementation wise, this is just a thread-local integer that has a
bitmask of the things that aren't allowed, and more bits for saying
what the violation penalty is. The penalties, of which multiple can
be chosen, include:

* logging
* dropbox uploading for analysis/reporting
* annoying dialog
* full-on crashing

These are all only very roughly implemented at this point, but all
parts now minimally work end-to-end now, so this is a good checkpoint
commit before this gets too large.

Future CLs will polish all the above 4 penalties, including
checksumming of stacktraces and minimizing penalties for duplicate
violations.

Change-Id: Icbe61a2e950119519e7364030b10c3c28d243abe
trictMode.java
4aaf8ec9dfb9a9e0f3d84e8ee95d7ac2ebca8d92 03-Jun-2010 Romain Guy <romainguy@google.com> Do not invoke onProgressUpdate if the task is canceled.
Bug #2734382

Change-Id: I8d507ae72af2f6dfe66598fb9090872520111a6b
syncTask.java
dd27f14da251645c2e0638b2b038be8d55563ae7 02-Jun-2010 Dan Egnor <egnor@google.com> am b8dd6b19: am 1e1e292e: am 1f5e8473: am a80331c4: Merge "Comment-only change to add documentation for FileObserver" into froyo
1e1e292edcb75fdef93fe63b12355bfef642e5bc 01-Jun-2010 Dan Egnor <egnor@google.com> am 1f5e8473: am a80331c4: Merge "Comment-only change to add documentation for FileObserver" into froyo

Merge commit '1f5e847350ef1aece046666e20e7692a1651d9dc' into kraken

* commit '1f5e847350ef1aece046666e20e7692a1651d9dc':
Comment-only change to add documentation for FileObserver
3dc1c7f5e84a888bc0a3aee764e9c6fa01395d8a 31-May-2010 Dan Egnor <egnor@google.com> Comment-only change to add documentation for FileObserver

Change-Id: Icd9bc65be020a23f78c8bcda78fc68e7d05c93b4
ileObserver.java
a42f4c249f89fde12eff5713169c32cbb32ab74a 18-May-2010 Mike Lockwood <lockwood@android.com> am 0b6e30d2: am c5859388: am 3e9e9696: am eb9cbb8f: Resurrect flashlight support in obsolete IHardwareService Binder API.
c5859388bd6c666a83017869bf8a9935defe0bd0 17-May-2010 Mike Lockwood <lockwood@android.com> am 3e9e9696: am eb9cbb8f: Resurrect flashlight support in obsolete IHardwareService Binder API.

Merge commit '3e9e9696f147c8df1236c1d7aa9496124864a81c' into kraken

* commit '3e9e9696f147c8df1236c1d7aa9496124864a81c':
Resurrect flashlight support in obsolete IHardwareService Binder API.
eb9cbb8fdddf4c887004b20b504083035d57a15f 17-May-2010 Mike Lockwood <lockwood@android.com> Resurrect flashlight support in obsolete IHardwareService Binder API.

This is to avoid flashlight apps that had been using reflection to access
this API after this class was removed after eclair.

Change-Id: I26ed929abad93345468eb33d4a15977a31ebea7e
Signed-off-by: Mike Lockwood <lockwood@android.com>
HardwareService.aidl
834910f51f8a2d70d8b43182a48e91314ff63ba6 11-May-2010 Dianne Hackborn <hackbod@google.com> am 217f2686: am 7d5cea98: am 7e76b6d1: am 6d00151c: Merge "Hopefully fix issue #2662536: Why is launcher being killed?" into froyo
7d5cea988bdab9a32fe5b21333613042857882f8 11-May-2010 Dianne Hackborn <hackbod@google.com> am 7e76b6d1: am 6d00151c: Merge "Hopefully fix issue #2662536: Why is launcher being killed?" into froyo

Merge commit '7e76b6d191e1173bd85337a2861d9914922f5a0d' into kraken

* commit '7e76b6d191e1173bd85337a2861d9914922f5a0d':
Hopefully fix issue #2662536: Why is launcher being killed?
906497c574d45d8dfd295b16dece0d0bc32c0895 11-May-2010 Dianne Hackborn <hackbod@google.com> Hopefully fix issue #2662536: Why is launcher being killed?

It looks like there was a subtle bug where Process.setOomAdj() could
return false just because the given process doesn't exist, even though
it is documented to only return false if OOM killing is not supported
at all. This would cause the activity manager to fall into its code
path of trying to clean up processes itself, which it does a much
poorer problem at. I am thinking we may be seeing this problem more
now that the activity manager is killing background processes itself
when there are too many of them.

In addition, this change cleans up and reduces some of the logging
around killing processes.

Finally, try to improve process LRU management a bit by taking
into account process dependencies. Any dependent processes are
pulled up in the LRU list with the processes that is actually
moving. Also, we bring a process up if someone accesses its content
provider.

Change-Id: I34ea161f839679345578ffe681e8d9c5d26ab948
rocess.java
10c40078d0cd75544d9183dec9df59bee9fa00ac 07-May-2010 Christopher Tate <ctate@google.com> am 5cfec530: am fa9e7c05: Sketch of Native input for MessageQueue / Looper / ViewRoot
fa9e7c05c7be6891a6cf85a11dc635a6e6853078 06-May-2010 Christopher Tate <ctate@google.com> Sketch of Native input for MessageQueue / Looper / ViewRoot

MessageQueue now uses a socket for internal signalling, and is prepared
to also handle any number of event input pipes, once the plumbing is
set up with ViewRoot / Looper to tell it about them as appropriate.

Change-Id: If9eda174a6c26887dc51b12b14b390e724e73ab3
essageQueue.java
arcelFileDescriptor.java
8640c1d0e55281530da58350ef54a881d5c51187 29-Apr-2010 Dianne Hackborn <hackbod@google.com> am 14cee9f6: New xlarge screen size.
14cee9f688c32d63d8521188e7422811629bb7c2 24-Apr-2010 Dianne Hackborn <hackbod@google.com> New xlarge screen size.

Not complete, only for experimentation at this point.

This includes a reworking of how screen size configurations are matched,
so that if you are on a larger screen we can select configurations for
smaller screens if there aren't any exactly matching the current screen.

The screen size at which we switch to xlarge has been arbitrarily
chosen; the compatibility behavior has not yet been defined.

Change-Id: I1a33b3818eeb51a68fb72397568c39ab040a07f5
uild.java
7f4b6842ce2388b8e60cd31bdc3273f80472f632 28-Apr-2010 Gilles Debunne <debunne@google.com> Changed steps names in documentation.

Change-Id: I0541709a719e35575bb2c42e6f2ea457d21c545b
syncTask.java
aa7d09d4563413e2d443ccdbffa8c6e8ef042172 09-Apr-2010 Jeff Brown <jeffbrown@google.com> am 52a28b25: am 6883c176: am 6c099149: am 37d2f5d1: Merge "Remove @link to hidden ACCESS_CACHE_FILESYSTEM permission." into froyo
6883c1769f089904b395e1bdf35472cf893c1602 09-Apr-2010 Jeff Brown <jeffbrown@google.com> am 6c099149: am 37d2f5d1: Merge "Remove @link to hidden ACCESS_CACHE_FILESYSTEM permission." into froyo

Merge commit '6c099149daff56ca04ab40a86950e7b61caf6505' into kraken

* commit '6c099149daff56ca04ab40a86950e7b61caf6505':
Remove @link to hidden ACCESS_CACHE_FILESYSTEM permission.
64010e835057d4b85e2d90cf75cc562f3b5eb552 09-Apr-2010 Jeff Brown <jeffbrown@google.com> Remove @link to hidden ACCESS_CACHE_FILESYSTEM permission.

Change-Id: I4be691f20f650b412beb22b199a4cbef879b2668
ecoverySystem.java
2e13f37347b4f65f865e00a68ddd1947af78a355 08-Apr-2010 Dianne Hackborn <hackbod@google.com> am f0dc083d: am d49c455c: am 822a7e2d: am ce59fb8b: Fix issue #2578244: playing audio file downloaded by the browser...
d49c455cc97d5fcdd8af497dc2ba85efdc719959 08-Apr-2010 Dianne Hackborn <hackbod@google.com> am 822a7e2d: am ce59fb8b: Fix issue #2578244: playing audio file downloaded by the browser...

Merge commit '822a7e2defcfbd006a7840e1da19cf0827d46736' into kraken

* commit '822a7e2defcfbd006a7840e1da19cf0827d46736':
Fix issue #2578244: playing audio file downloaded by the browser...
ce59fb8b684357f2a10ab62368beeece34bc0e5d 08-Apr-2010 Dianne Hackborn <hackbod@google.com> Fix issue #2578244: playing audio file downloaded by the browser...

...shows an image downloaded by the browser

The downloads directory needs to be non-plural for backwards compatibility.

Change-Id: Ifb6ddf8ee980a57ad113a5fc8b51f5acd8df5955
nvironment.java
a33438937333a065f73a1d06d2f283710a82f09b 08-Apr-2010 San Mehat <san@google.com> am cf1a7a77: am 12ebde61: am 692329cf: am fd998a0c: Merge "NetworkManagementService: Remove \'maxkbs\' parameter from throttle API" into froyo
12ebde61a578505d4a019fdfffc84ff7f3b5a35f 08-Apr-2010 San Mehat <san@google.com> am 692329cf: am fd998a0c: Merge "NetworkManagementService: Remove \'maxkbs\' parameter from throttle API" into froyo

Merge commit '692329cf3f1512b3f0475b619058f9a10d9950a8' into kraken

* commit '692329cf3f1512b3f0475b619058f9a10d9950a8':
NetworkManagementService: Remove 'maxkbs' parameter from throttle API
f0db6e1853e929ae3b65501c31ee57c4dfbc767c 08-Apr-2010 San Mehat <san@google.com> NetworkManagementService: Remove 'maxkbs' parameter from throttle API

Change-Id: I1cfbdac7d06478243931c6acec462da8e257f42f
Signed-off-by: San Mehat <san@google.com>
NetworkManagementService.aidl
8839544ebb5e0949d42d1508b1a20a79e855cc4a 05-Apr-2010 San Mehat <san@google.com> am d32de7f3: am 9d782f62: am 73a8f26a: Merge "NetworkManagementService: Combine setInterfaceRx/Tx throttle and add max speed" into froyo
d32de7f38f7d675d7fed8edc23e12f445a5bd091 05-Apr-2010 San Mehat <san@google.com> am 9d782f62: am 73a8f26a: Merge "NetworkManagementService: Combine setInterfaceRx/Tx throttle and add max speed" into froyo

Merge commit '9d782f62defba898c3ebaa498ea1be9e5cb26ac7' into kraken

* commit '9d782f62defba898c3ebaa498ea1be9e5cb26ac7':
NetworkManagementService: Combine setInterfaceRx/Tx throttle and add max speed
be23fba286e6772f2eb37ef25f252d7a73ef9dce 02-Apr-2010 San Mehat <san@google.com> NetworkManagementService: Combine setInterfaceRx/Tx throttle and add max speed

Change-Id: I1d6816c9754801504a988802118a2167e0eb8690
Signed-off-by: San Mehat <san@google.com>
NetworkManagementService.aidl
a6dfa15e640b6794e3fe17c7dd02628522efd879 01-Apr-2010 Robert Greenwalt <robdroid@android.com> am 4e925f8a: am cab133a7: am 33eb7767: Merge "NetworkManagementService: Add interface counters & throttle API" into froyo
4e925f8afb6f94a9867145d252d186eb65e79ccf 01-Apr-2010 Robert Greenwalt <robdroid@android.com> am cab133a7: am 33eb7767: Merge "NetworkManagementService: Add interface counters & throttle API" into froyo

Merge commit 'cab133a7fa39969f136e3f401f97f6ce843514bb' into kraken

* commit 'cab133a7fa39969f136e3f401f97f6ce843514bb':
NetworkManagementService: Add interface counters & throttle API
91cac64cd010e6b4006fdd14b39dbc75778f20cb 31-Mar-2010 San Mehat <san@google.com> NetworkManagementService: Add interface counters & throttle API

Change-Id: I4976549cdbb027ba7859335e69bf866e738961c9
Signed-off-by: San Mehat <san@google.com>
NetworkManagementService.aidl
6f63dd5dc8ae38f866e297883435dd1fd3a5cdfd 30-Mar-2010 San Mehat <san@google.com> framework: Hide StorageManager for froyo - do not merge

Change-Id: I9a871e49cc9e1accb28c7e4b76bb0796eaf26d7b
torage/StorageEventListener.java
torage/StorageManager.java
torage/StorageResultCode.java
591ad27d748c5c605d4fd44b89b2a8ea8f0057ff 31-Mar-2010 Dianne Hackborn <hackbod@google.com> am 6d630607: am 5cdd7858: Merge "Fix issue #2553553: API REVIEW: android.context.Context" into froyo

Merge commit '6d63060768f9d73c6062a2b603d3c51c7d5f0043' into kraken

* commit '6d63060768f9d73c6062a2b603d3c51c7d5f0043':
Fix issue #2553553: API REVIEW: android.context.Context
acaf028fc9efd9754f57ed65476e79a816811b35 30-Mar-2010 Dianne Hackborn <hackbod@google.com> Fix issue #2553553: API REVIEW: android.context.Context

Change-Id: I3e3ab7a909329d498544dc9ed4d500cbcc4ed281
nvironment.java
63cce836e43c7cac8cd7c0b19f98dc8095ab122d 30-Mar-2010 San Mehat <san@google.com> framework: Hide StorageManager for froyo - DO NOT MERGE

Change-Id: Icd58d5be0de1cc0549a5d766421bcc773c8cd868
Signed-off-by: San Mehat <san@google.com>
torage/StorageEventListener.java
torage/StorageManager.java
torage/StorageResultCode.java
1f4df90bfab8ca42eabe95f19eadff3432eee7fd 27-Mar-2010 Oscar Montemayor <oam@google.com> DO NOT MERGE
Removing unused features from source tree.
Please refer to Bug#2502219.

Change-Id: I879c29bfd5ffe933f64bb1082aaae7c956450a5a
nvironment.java
ecoverySystem.java
d76ef97930d45e37dba4ac58b376c3067c2eb54a 29-Mar-2010 Dirk Dougherty <ddougherty@google.com> doc change: In fundamentals doc, make statement about synchronous execution of RPC less strict. Indicate that FLAG_ONEWAY applies only across processes.

Bug: 2554090
Change-Id: Ia13b3d156d230609e8296a3b31c2882ba13681f3
Binder.java
2911e8eff79572a896b24debb11f20d179bd6f83 26-Mar-2010 Brad Fitzpatrick <bradfitz@android.com> Merge "Clarify some Binder docs regarding things that are thread-local."
a0527f207bf4af313e9f4fa9c39afe1bbee51e16 26-Mar-2010 Brad Fitzpatrick <bradfitz@android.com> Clarify some Binder docs regarding things that are thread-local.

Change-Id: I433c9c2f4593866b2e9846893676b93a670817d4
inder.java
bfb7bfa53847832db2a3eb05e5eff7cb974c3c7a 25-Mar-2010 Robert Greenwalt <robdroid@android.com> Update Framework to support multiple dhpc ranges

Previously we only supported a single range - this was inadequate for
multiple interfaces. Adding a second range so we can support
both usb and wifi tethering.

Also moving out of the zero-conf range as our dhcp client won't
accept ip addrs in that range (no nexus to nexus wifi action).

bug: 2537963
bug: 2533491
bug: 2538303
Change-Id: I600b421343c28c2f9839ed2076122ae3d0ff5d3d
NetworkManagementService.aidl
186683923ce8d6a2d5c6fd4768b26b90308661e9 24-Mar-2010 Dianne Hackborn <hackbod@google.com> Maybe fix #2422586: Native crash in android_os_Parcel_closeFileDescriptor()
killed the phone process

Try to make sure we never have a ParcelFileDescriptor with a null
FileDescriptor. That is just wrong.

Change-Id: Ib779ad1852dd239827797cd8f93505bfe6157e58
emoryFile.java
arcelFileDescriptor.java
92e77dd718cc1c378efa0cf3bef737e463225e82 22-Mar-2010 Mike Lockwood <lockwood@android.com> Merge "Improve wakelock debugging:"
f5bd092b5099cf43f031c3f53ad01592dda57f4b 22-Mar-2010 Mike Lockwood <lockwood@android.com> Improve wakelock debugging:

Throw NullPointerException if tag is null in PowerManager.newWakelock()
Print wakelock owner's uid and pid in dumpsys power output.

BUG: 2522675

Change-Id: I462c7f8c49f9896b2f58cef5a678ebd2c062a8f7
Signed-off-by: Mike Lockwood <lockwood@android.com>
owerManager.java
e99bb5f10b90736d10cee9729b56cba156fc0921 19-Mar-2010 Suchi Amalapurapu <asuchitra@google.com> Add new method call back in MountService.
PackageManager invokes this call back when its done handling
the media status update.
Add new uid check for updateExternalMediaStatus
Change killPids method in ActivityManager.
Remove mountsd command in Pm.java We cannot arbitrarily enable/disable
packages in PackageManager now.

Change-Id: I28dcba4afd2b4486f68abdaa1628a31b66544c91
torage/IMountService.aidl
2e805b19cdb309ea6eeb6d2e8b0915681f831f5a 22-Mar-2010 Brad Fitzpatrick <bradfitz@android.com> Grammar fixes.

Change-Id: I77672d2260c26aee146bb6a853137c14e3db1f28
torage/IMountService.aidl
1afd1c90ebe789b8d3a137004127a50d2db7e3b5 19-Mar-2010 Dianne Hackborn <hackbod@google.com> Maybe fix issue #2457218: Corrupt batterystats.bin file preventing phone boot - LIBtt68127

No steps to repro, but makes the code more robust by using the standard
JournaledFile class and doing sanity checks on the input it reads.

This required moving the JournaledFile class in to the framework (and
we really should get rid of either it or AtomicFile, but they have
different recovery semantics so that is tough). Also went through and
cleaned up the file management in various places.

Change-Id: Ieb7268d8435e77dff66b6e67bb63b62e5dea572e
ileUtils.java
c2f54c267b896cd1799d82be81e904a2b56c2f26 18-Mar-2010 Irfan Sheriff <isheriff@google.com> Clean up changing AP configuration

Bug: 2527293
Change-Id: I35e82e24e27349e2966f88189ebca4246ad1a354
NetworkManagementService.aidl
9ab518ad793385f8405edf19363fe825fb64f5f8 13-Mar-2010 Irfan Sheriff <isheriff@google.com> softAp framework changes

Remove AP persist settings
Add new netd interface
Handle errors
Handle AP config change
Bug: 2413908
Change-Id: I31a1221ef5479da8d4a2620f0f0ee0b62539bc69
NetworkManagementService.aidl
15a4d2ffd04dc6c70f2cd17dae12ac6bc14c69ab 12-Mar-2010 Kenny Root <kroot@google.com> Add correct copyright headers to multiple files

Format for the list of changes shows the origin commit reference followed
by the file name.

33931-p9 awt/org/apache/harmony/awt/gl/font/AndroidGlyphVector.java
33931-p9 awt/org/apache/harmony/awt/gl/image/PngDecoderJava.java
133776-p9 core/java/android/app/IntentService.java
127013-p9 core/java/android/appwidget/AppWidgetHost.java
27863-p9 core/java/android/bluetooth/BluetoothAudioGateway.java
60765-p9 core/java/android/content/SyncResult.java
43920-p9 core/java/android/content/pm/ActivityInfo.java
43920-p9 core/java/android/content/pm/ApplicationInfo.java
43920-p9 core/java/android/content/pm/InstrumentationInfo.java
43920-p9 core/java/android/content/pm/PackageInfo.java
44103-p9 core/java/android/content/pm/PackageItemInfo.java
68960-p9 core/java/android/content/pm/PackageStats.java
43920-p9 core/java/android/content/pm/ResolveInfo.java
43920-p9 core/java/android/content/pm/ServiceInfo.java
60641-p9 core/java/android/content/res/Configuration.java
60734-p9 core/java/android/content/res/TypedArray.java
137672-p9 core/java/android/inputmethodservice/ExtractButton.java
123112-p9 core/java/android/inputmethodservice/ExtractEditText.java
119291-p9 core/java/android/inputmethodservice/IInputMethodSessionWrapper.java
112946-p9 core/java/android/inputmethodservice/IInputMethodWrapper.java
115078-p9 core/java/android/os/BatteryStats.java
124790-p9 core/java/android/text/style/UpdateAppearance.java
45083-p9 core/java/android/view/RawInputEvent.java
101491-p9 core/java/android/view/inputmethod/EditorInfo.java
114701-p9 core/java/android/view/inputmethod/ExtractedText.java
123112-p9 core/java/android/view/inputmethod/ExtractedTextRequest.java
119291-p9 core/java/com/android/internal/os/HandlerCaller.java
129279-p9 core/java/com/android/internal/os/PkgUsageStats.java
114701-p9 core/java/com/android/internal/view/IInputConnectionWrapper.java
114701-p9 core/java/com/android/internal/view/InputConnectionWrapper.java
84364-p9 opengl/java/android/opengl/EGLLogWrapper.java
11355-p9 opengl/tools/glgen/src/CFunc.java
11355-p9 opengl/tools/glgen/src/CType.java
11355-p9 opengl/tools/glgen/src/CodeEmitter.java
11355-p9 opengl/tools/glgen/src/GenerateGL.java
11355-p9 opengl/tools/glgen/src/JFunc.java
11355-p9 opengl/tools/glgen/src/JType.java
11355-p9 opengl/tools/glgen/src/JniCodeEmitter.java
11355-p9 opengl/tools/glgen/src/ParameterChecker.java
57236-p9 services/java/com/android/server/status/AnimatedImageView.java
66754-p9 services/java/com/android/server/status/CloseDragHandle.java
57188-p9 services/java/com/android/server/status/DateView.java
46928-p9 services/java/com/android/server/status/ExpandedView.java
70590-p9 services/java/com/android/server/status/FixedSizeDrawable.java
45968-p9 services/java/com/android/server/status/IconData.java
57470-p9 services/java/com/android/server/status/IconMerger.java
82719-p9 services/java/com/android/server/status/LatestItemView.java
45968-p9 services/java/com/android/server/status/NotificationData.java
66754-p9 services/java/com/android/server/status/NotificationLinearLayout.java
57458-p9 services/java/com/android/server/status/NotificationViewList.java
45968-p9 services/java/com/android/server/status/StatusBarException.java
45968-p9 services/java/com/android/server/status/StatusBarIcon.java
46130-p9 services/java/com/android/server/status/StatusBarNotification.java
45968-p9 services/java/com/android/server/status/StatusBarView.java
46199-p9 services/java/com/android/server/status/Ticker.java
62286-p9 services/java/com/android/server/status/TickerView.java
57188-p9 services/java/com/android/server/status/TrackingView.java
86041-p9 telephony/java/android/telephony/PhoneStateListener.java
87020-p9 telephony/java/com/android/internal/telephony/TelephonyIntents.java
136269-p9 telephony/java/com/android/internal/telephony/gsm/SpnOverride.java
34409-p9 tests/FrameworkTest/src/com/android/frameworktest/FrameworkTestApplication.java
55717-p9 tests/FrameworkTest/src/com/android/frameworktest/performance/InvalidateCycle.java
128994-p9 tests/ImfTest/src/com/android/imftest/samples/AutoCompleteTextViewActivityLandscape.java
128994-p9 tests/ImfTest/src/com/android/imftest/samples/AutoCompleteTextViewActivityPortrait.java
129372-p9 tests/ImfTest/src/com/android/imftest/samples/BigEditTextActivityNonScrollablePanScan.java
129372-p9 tests/ImfTest/src/com/android/imftest/samples/BigEditTextActivityNonScrollableResize.java
129372-p9 tests/ImfTest/src/com/android/imftest/samples/BigEditTextActivityScrollablePanScan.java
129372-p9 tests/ImfTest/src/com/android/imftest/samples/BigEditTextActivityScrollableResize.java
128994-p9 tests/ImfTest/src/com/android/imftest/samples/BottomEditTextActivityPanScan.java
128994-p9 tests/ImfTest/src/com/android/imftest/samples/BottomEditTextActivityResize.java
127341-p9 tests/ImfTest/src/com/android/imftest/samples/ButtonActivity.java
129347-p9 tests/ImfTest/src/com/android/imftest/samples/DialogActivity.java
129372-p9 tests/ImfTest/src/com/android/imftest/samples/EditTextActivityDialog.java
128994-p9 tests/ImfTest/src/com/android/imftest/samples/ManyEditTextActivityNoScrollPanScan.java
128994-p9 tests/ImfTest/src/com/android/imftest/samples/ManyEditTextActivityScrollPanScan.java
128994-p9 tests/ImfTest/src/com/android/imftest/samples/ManyEditTextActivityScrollResize.java
128994-p9 tests/ImfTest/src/com/android/imftest/samples/OneEditTextActivityNotSelected.java
128994-p9 tests/ImfTest/src/com/android/imftest/samples/OneEditTextActivitySelected.java
25959-p9 tests/framework-tests/src/android/test/FrameworkTests.java
46162-p9 tests/framework-tests/src/com/android/internal/http/multipart/MultipartTest.java
77101-p9 tools/layoutlib/bridge/tests/com/android/layoutlib/bridge/NinePatchTest.java
9788976b1465ce982b5ae7c741345edd0ecd9322 core/java/android/accounts/AuthenticatorDescription.java
53332883543868fb83e111a07306368b7772b340 core/java/android/app/UiModeManager.java
93e7e22ec91dbc641d10ca6d70423e1357a95bba core/java/android/app/FullBackupAgent.java
328c0e7986aa6bb7752ec6de3da9c999920bb55f core/java/android/content/CursorEntityIterator.java
307da1a46b4c9b711bafe8fbaaa6b98e8868c18e core/java/android/content/SyncQueue.java
307da1a46b4c9b711bafe8fbaaa6b98e8868c18e core/java/android/content/SyncOperation.java
eb034652c2037a47ebfd99779e8383bb8bb528af core/java/android/content/pm/LabeledIntent.java
49237345d83e62fdb9eb8d50b13ad086636a04fa core/java/android/content/pm/FeatureInfo.java
a2b6c3775ed6b8924232d6a01bae4a19740a15f8 core/java/android/content/pm/PackageInfoLite.java
3ecd5f437580e49d80beecd29489d5fb1f7a7db0 core/java/android/content/pm/RegisteredServicesCacheListener.java
5ebbb4a6b3e16f711735ae0615b9a9ea64faad38 core/java/android/content/pm/XmlSerializerAndParser.java
c4516a7b62de525e3d6d5e76851bdfaf12c11f05 core/java/android/database/sqlite/SQLiteTransactionListener.java
9bbc21a773cbdfbef2876a75c32bda5839647751 core/java/com/android/internal/backup/LocalTransport.java
21f1bd17b2dfe361acbb28453b3f3b1a110932fa core/java/com/android/internal/content/PackageMonitor.java
4c62fc0e1e5ea9c69a12a7d1cf8b3ec8b2d114a3 core/java/com/android/internal/view/BaseSurfaceHolder.java
4c62fc0e1e5ea9c69a12a7d1cf8b3ec8b2d114a3 core/java/com/android/internal/view/BaseIWindow.java
e540833fdff4d58e37c9ba859388e24e2945ed45 core/java/com/android/internal/os/SamplingProfilerIntegration.java
192ab903887bbb8e7c7b6da5c581573850e30f46 core/tests/coretests/src/android/widget/expandablelistview/PositionTesterContextMenuListener.java
1619367ab823150fa8856d419abe02ceb75886f1 media/tests/MediaFrameworkTest/src/com/android/mediaframeworktest/MediaProfileReader.java
27f8002e591b5c579f75b2580183b5d1c4219cd4 opengl/tools/glgen/stubs/gles11/glGetString.java
560814f6b11abe83ff0c4ed18cac015c276b3181 opengl/tools/glgen/stubs/gles11/glGetProgramInfoLog.java
560814f6b11abe83ff0c4ed18cac015c276b3181 opengl/tools/glgen/stubs/gles11/glGetShaderInfoLog.java
560814f6b11abe83ff0c4ed18cac015c276b3181 opengl/tools/glgen/stubs/gles11/glShaderSource.java
1c4907ee77392afb768c2f088e0dedbe4239f6fb opengl/tools/glgen/src/GenerateGLES.java
1c4907ee77392afb768c2f088e0dedbe4239f6fb opengl/tools/glgen/src/Jsr239CodeEmitter.java
1c4907ee77392afb768c2f088e0dedbe4239f6fb opengl/tools/glgen/src/GLESCodeEmitter.java
69e21f5f6e0d04539cd92848ea009dd615d88c2c opengl/tests/gldual/src/com/android/gldual/TriangleRenderer.java
c028be4f3b8c7476b46859f66c3f33d528adf181 packages/DefaultContainerService/src/com/android/defcontainer/DefaultContainerService.java
7c6efa13f129dbae5319f0981a430d4662f43354 tests/BrowserPowerTest/src/com/android/browserpowertest/PowerMeasurement.java
7c6efa13f129dbae5319f0981a430d4662f43354 tests/BrowserPowerTest/src/com/android/browserpowertest/PowerTestActivity.java
7c6efa13f129dbae5319f0981a430d4662f43354 tests/BrowserPowerTest/src/com/android/browserpowertest/PowerTestRunner.java
df8a3f31d871db25e952972c2eb346a71186e9e3 tests/BrowserTestPlugin/src/com/android/testplugin/TestPlugin.java
cfaef699e1dfb3a75d5b51f3b15816f13670fd51 tests/permission/src/com/android/framework/permission/tests/ActivityManagerPermissionTests.java
cfaef699e1dfb3a75d5b51f3b15816f13670fd51 tests/permission/src/com/android/framework/permission/tests/ServiceManagerPermissionTests.java
cfaef699e1dfb3a75d5b51f3b15816f13670fd51 tests/permission/src/com/android/framework/permission/tests/WindowManagerPermissionTests.java

Copyright header moved to top in following file:

core/tests/coretests/src/android/widget/ListViewTest.java

Change-Id: I3c3198be5a0ba36e18679ed834170432bf0b8418
atteryStats.java
c95142d4a0ab7bebb899167da17c70c3196abbe4 11-Mar-2010 Dan Egnor <egnor@google.com> Move boot log file writing into a background thread to avoid ANR.

Bug: 2507228
Change-Id: I35695f89f1d62b907f04511e3e6b71722008949b
ecoverySystem.java
cb95657326add53f81cd2f8a0ae0a1a0527ae799 11-Mar-2010 Doug Zongker <dougz@android.com> make RecoverySystem.verifyPackage interruptible

Change-Id: I09f6746914ef63c81312efd3a8959b0c28f6003a
ecoverySystem.java
6ffce2e9a3c57634bb73f8ff133ca680f8070d5d 08-Mar-2010 Suchi Amalapurapu <asuchitra@google.com> Add new shutdown observer for MountService.
Use new observer before rebooting and shutting down.
Add some unit tests for unmount and shutdown code paths
Fix registering/unregistering part in MountService
Use ShutdownThread in PowerManager.reboot()
Add reboot support to ShutdownThread.
Remove MountService code from PowerManagerService.java and Power.java.
Clean shutdown/reboot is handled exclusively by ShutdownThread now.

Change-Id: Iefb157451d3d9c426cb431707b870a873c09123d
ower.java
torage/IMountService.aidl
torage/IMountShutdownObserver.aidl
3eda9799a162765dd49f481cc303fc5702a9c5fe 05-Mar-2010 Dan Egnor <egnor@google.com> Add Debug.dumpService(), a public method for "dumpsys" functionality
ebug.java
1877d0158b529663b8315482e7346a7bcaa96166 05-Mar-2010 Brad Fitzpatrick <bradfitz@android.com> Add "call" method on ContentProvider.

This permits implementing interfaces which are faster than using
remote Cursors. It then uses it for Settings & SettingProvider, which
together account for ~50% of total ContentProvider event loop stalls
across Froyo dogfooders.

For fetching Settings this looks like it should reduce average
Settings lookup from 10 ms to 0.4 ms on Sholes, once the
SettingsProvider serves most gets from in-memory cache. Currently it
brings the Sholes average down from 10ms to 2.5 ms while still using
SQLite queries on each get.
undle.java
5321aef4a22daef6ed01ed48d936cdd82f2e38b7 12-Feb-2010 Irfan Sheriff <isheriff@google.com> Wifi AP framework changes first pass

Bug: 2421638
Change-Id: Ic5ea8f7560a7fe5e1b0769daa5d92cc33eefc692
NetworkManagementService.aidl
0eec21d97d9dc4eb4fdbad0e4c0fc53703452d02 26-Feb-2010 Suchi Amalapurapu <asuchitra@google.com> Add dialog to display storage users when enabling/disabling ums

Some error dialogs and related strings
MountService changes to follow unmount path when enabling ums.

Please note that MountService api setUmsEnabled does not return
error codes for now. This is a known limitation.
torage/IMountService.aidl
torage/StorageManager.java
08bbffb049c135c5dfd40d261118c90d1a6dc111 25-Feb-2010 Bjorn Bringert <bringert@android.com> Support CharSequence lists+arrays in Bundle+Intent

Fixes http://b/issue?id=2468093

Change-Id: Id82686f6ca8c9501f6db8a07018278a78ddacd05
undle.java
arcel.java
c42e29e0a58d07a95d470780216cdf1d67476bd6 23-Feb-2010 Suchi Amalapurapu <asuchitra@google.com> Add new handler mechanism in MountService to make unmount api asynchronous.
MountService updates state on PackageManager and then tries to
kill processes holding file references to media about to be unmounted by
invoking api on ACtivityManager. This is retried upto 4 times to make sure all
processes holding file references are killed before unmounting the media
at specified path.

Also changed PackageManger api to return boolean value to indicate if
MountService is likely to receive broadcasts related to apps on sd.
torage/IMountService.aidl
c4e1bf7282d454ba3e9ba16cde5b660d79dd5345 23-Feb-2010 Andy McFadden <fadden@android.com> Add class init stats to alloc counters (API change).

Add calls to retrieve class initialization stats via the allocation
count mechanism.

For bug 2461549.
ebug.java
21f1bd17b2dfe361acbb28453b3f3b1a110932fa 20-Feb-2010 Dianne Hackborn <hackbod@google.com> Fix issue #2438980: Implement package watcher for voice recognizer service setting

I am getting tired of writing package monitor code, realized this is missing in
a number of places, and at this point it has gotten complicated enough that I
don't think anyone actually does it 100% right so:

Introducing PackageMonitor.

Yes there are no Java docs. I am still playing around with just what this
thing is to figure out what makes sense and how people will use it. It is
being used to fix this bug for monitoring voice recognizers (integrating the
code from the settings provider for setting an initial value), to replace
the existing code for monitoring input methods (and fix the bug where we
wouldn't remove an input method from the enabled list when it got
uninstalled), to now monitor live wallpaper package changes (now allowing
us to avoid reverting back to the default live wallpaper when the current
one is updated!), and to monitor device admin changes.

Also includes a fix so you can't uninstall an .apk that is currently enabled
as a device admin.

Also includes a fix where the default time zone was not initialized early
enough which should fix issue #2455507 (Observed Google services frame work crash).

In addition, this finally introduces a mechanism to determine if the
"force stop" button should be enabled, with convenience in PackageMonitor
for system services to handle it. All services have been updated to support
this. There is also new infrastructure for reporting battery usage as an
applicatin error report.
atteryStats.java
90d141c1fab7fa32f26f815f63c10ceaf750b01a 19-Feb-2010 Chih-Chung Chang <chihchung@google.com> Merge "Do setThreadPriority() later so we can notify the waiting thread and release the lock as soon as possible even if we run the loop in background priority."
939d5fafc904ff71f6d3afaedc3eb05420fac543 19-Feb-2010 Robert Greenwalt <robdroid@android.com> Merge "Add USB RNDIS enable/disable control"
75288fa1a4ee4886959af7243995d8afd9c3c905 17-Feb-2010 Dianne Hackborn <hackbod@google.com> Improve Service documentation with some samples.

Also some small tweaks to the Message API to improve its
use in the MessengerService sample.
essage.java
ce1200d42c46ae5d3ec637587b07dfdc02ad21c0 18-Feb-2010 Robert Greenwalt <robdroid@android.com> Add USB RNDIS enable/disable control
NetworkManagementService.aidl
d970998b0d489774ad1c5b94b47d233912f00214 18-Feb-2010 San Mehat <san@google.com> framework: storage: Add 'force' option to unmount/destroy storage apis, and update callsites.

Also adds additional storage unit tests

Signed-off-by: San Mehat <san@google.com>
torage/IMountService.aidl
torage/StorageResultCode.java
c1b4ce93be60aa09eda5653edc2f6a8ce864526d 17-Feb-2010 San Mehat <san@google.com> MountService: Add API call for getting a list of pids currently using the specified mountpoint

Signed-off-by: San Mehat <san@google.com>
torage/IMountService.aidl
59bac03b280115ba843b540298dfb2fbc20491af 17-Feb-2010 Chih-Chung Chang <chihchung@google.com> Do setThreadPriority() later so we can notify the waiting thread
and release the lock as soon as possible even if we run the loop
in background priority.
andlerThread.java
1c9131c91f27c8258dfad0a92cee105275f5422a 13-Feb-2010 Dan Egnor <egnor@google.com> Remove all traces of the old checkin service (and its associated parental
control interfaces) from the framework.
CheckinService.aidl
ParentalControlCallback.aidl
1ab6d751589c1f16512a64395b67508ac8b8fa94 11-Feb-2010 San Mehat <san@google.com> Merge "MountService: Fix some mountset bugs and tighten up some return values"
18e939623556928f73fcc7511c85a537929a4a7e 11-Feb-2010 Dan Egnor <egnor@google.com> Eliminate dependencies on Checkin, replacing checkin events with EventLog
events (and in one case, a DropBox entry).

Add a simple intent that triggers master-clear (and toggle EFS), given the
right permissions.

Bug: 2264596
Bug: 2350452
Bug: 2264596
CheckinService.aidl
a181b21305e0bcf171e2112a3ca5c08eb4fd2434 11-Feb-2010 San Mehat <san@google.com> MountService: Fix some mountset bugs and tighten up some return values

Signed-off-by: San Mehat <san@google.com>
torage/StorageResultCode.java
23085b781e145ed684e7270af1d5ced6800b8eff 09-Feb-2010 Ben Cheng <bccheng@android.com> Support per-application switch to execute the VM in safe mode.

The new attribute can be set by adding android:safeMode="true"
in AndroidManifest.xml with the SDK.

Tested with pairing locally compiled SDK with Eclipse and verified that the JIT
(the only component currently included in the safe mode) is indeed disabled
with the new attribute.

Bug: 2267583
rocess.java
6cdd9c08565a6871ad72cd388adfdfca23532e5e 09-Feb-2010 San Mehat <san@google.com> MountService: Add isSecureContainerMounted() API call

Signed-off-by: San Mehat <san@google.com>
torage/IMountService.aidl
e83cefcef07f9ac025642c1ffec76b4c7ab39cf2 05-Feb-2010 Dianne Hackborn <hackbod@google.com> New external storage APIs.

This implements the spec for external storage organization, and
properly reflects how the media scanner organizes the files it finds.

Also includes package manager support for removing app private
files from external storage when the application is uninstalled.

For the new APIs and paths, the main place to look is Environment
and Context.
nvironment.java
44d993798f8241b78229718bbc358046f590de7e 09-Feb-2010 Dan Egnor <egnor@google.com> Merge "Fix NPE in FileObserver when multiple events pile in for a defunct observer. Also, fix up some bogus whitespace (hard tabs, etc)."
b104340496e3a531e26c8f428c808eca0e039f50 05-Feb-2010 San Mehat <san@google.com> Framework: Clean up / Refactor Mount APIs

- Move android.storage.* -> android.os.storage.* and refactor users
- Refactor generic shares back to explicit ums enable/disable/isEnabled
- Remove media insert/removed event callbacks (not ready for Froyo)
- Remove 'label' from volume state change callbacks
- Add public API functions for enabling/disabling USB mass storage (permissions enforced
in MountSevice)
- Remove some stray un-needed import lines
- Move android.os.IMountService / android.os.IMountServiceListener -> android.os.storage
- Improve code comments

Updated:
MountService: Add dup state check and move debugging behind a conditional
UsbStorageActivity: Fix review comments + a TODO
StorageNotification: Add @Override tags
StorageManager: Don't use a static Listener list
MountService: Reduce bloat and fix == where I meant .equals()
PackageManagerTests: Update for new API

Signed-off-by: San Mehat <san@google.com>
nvironment.java
MountService.aidl
MountServiceListener.aidl
ountServiceListener.java
ountServiceResultCode.java
ower.java
torage/IMountService.aidl
torage/IMountServiceListener.aidl
torage/MountServiceListener.java
torage/StorageEventListener.java
torage/StorageManager.java
torage/StorageResultCode.java
d95244faef7b54fe46223aec1ed5754cd9b74a3e 05-Feb-2010 Dan Egnor <egnor@google.com> Fix NPE in FileObserver when multiple events pile in for a defunct
observer. Also, fix up some bogus whitespace (hard tabs, etc).
ileObserver.java
870d81d038391d1d3896e7f2fa44801d1667f5bf 08-Feb-2010 Doug Zongker <dougz@android.com> remove android.os.Base64Utils

There are no more users of this code.

Change-Id: Ie0109ece2ea329aeb9607e9193eaf0808955eab9
ase64Utils.java
d0e18ffb82b59d38aeaf0e552f48e734202719ab 26-Jan-2010 Robert Greenwalt <robdroid@android.com> First pass at USB Tethering.

bug:2281900
NetworkManagementService.aidl
74885efc8ce6d315e0593e5f669cc805e264cf68 03-Feb-2010 Doug Zongker <dougz@android.com> expose bootloader & radio versions, hardware string in API

Adds three new device-version-related strings to android.os.Build.

Change-Id: I832f87f26e50a649249c58037f563426f3bfc4bf
uild.java
216bccf804db9c972b317620a27de6a8adf7fbfe 02-Feb-2010 Adam Powell <adamp@google.com> Updated GestureDetector to ignore multitouch if requested by the app
or if targetSdkVersion >= Froyo. Made ScaleGestureDetector
public. current.xml API updates for gestures.
uild.java
556d350a4d68be72c74b30ca9cd87a152f8512c2 02-Feb-2010 San Mehat <san@google.com> StorageManager: API_CHANGE: Move StorageManager into android.storage

Signed-off-by: San Mehat <san@google.com>
torageEventListener.java
torageManager.java
4270e1ea74c57f1c65620e9f5ecaa8c2a5daf0e1 29-Jan-2010 San Mehat <san@google.com> MountService: Massive bloat reduction and rewrite

- Most API calls now return an int as a result code (see MountServiceResultCode.java)
- All notification code has been removed
- All settings code has been removed
- Removed UMS centric API calls in favor of more generic 'shares'
- Mount error reporting is no longer done via an event, but is done as part of the
actual mount process
- Rework vold IPC commands to be more sane

Updated:
MountService: Rename MountServiceObserver -> MountServiceListener
MountService: Add support for Async callbacks

Updated:
MountService: Add BinderDeath handling

Updated:
MountService: Remove notifys since we dont listen anyways

Updated:
MountService: Fix bad cast

Signed-off-by: San Mehat <san@google.com>
MountService.aidl
MountServiceListener.aidl
MountServiceObserver.aidl
ountServiceListener.java
ountServiceObserver.java
ountServiceResultCode.java
1b7f7cfab6c9448adcb6733b1edd541529d1ac53 01-Feb-2010 San Mehat <san@google.com> StorageManager: Introduce StorageManager

StorageManager provides an API for applications to receive storage
notifications on the app main thread.

Signed-off-by: San Mehat <san@google.com>
torageEventListener.java
torageManager.java
07a9661f31797a68b8ecd3f135fe1417f214663b 29-Jan-2010 Andy McFadden <fadden@android.com> Added dumpHprofDataDdms() call.

This adds a hidden dumpHprofDataDdms() method, which initiates an hprof
dump that sends its data directly to DDMS.
ebug.java
b4a162e50a96d2eef5fa3ed686e1418c4fbc8ded 28-Jan-2010 San Mehat <san@google.com> framework: os: Introduce IMountServiceObserver

Signed-off-by: San Mehat <san@google.com>
MountServiceObserver.aidl
ountServiceObserver.java
254cb446faa7cb13699d8150eb4cc4f44cb61a2d 28-Jan-2010 Dianne Hackborn <hackbod@google.com> More device admin.

- Clean up device policy manager APIs.
- Implement lockNow(). For now this just turns the screen off to lock the device.
PowerManager.aidl
1812a4bfda7142411dcfd9d29720b2f176508b96 28-Jan-2010 Andy McFadden <fadden@android.com> Merge "Add streaming method profiling support."
72a20db0c71c6bddaa9fd2e4046242fc9d540e1c 22-Jan-2010 Andy McFadden <fadden@android.com> Add streaming method profiling support.

This adds a new (hidden) startMethodTracingDdms call. It's like the
normal method tracing calls, but you don't specify an output file.
Instead, when tracing stops, the data is sent directly to DDMS.

This also adds handlers for the MPSS/MPSE requests that DDMS sends.
ebug.java
8ea138cbf12b140d43fd81f4f12fe1a9234f1f25 27-Jan-2010 Dianne Hackborn <hackbod@google.com> More work on device admins:

- You can now show a dynamic message to the user when asking to
have your DeviceAdmin added.
- A DeviceAdmin can now provide a warning message that is displayed
before a user disables it.
- Better ordering (and text) of the policy warnings.
- New API to set the maximum failed password attempts before the device
wipes itself.
- We now store the number of failed unlock attempts in persistent
storage.
- New managed dialog APIs that will be used by the settings app.

Also a little bit of cleanup as I was working on this - removed the
long unused MailboxNotAvailableException, fixed a java doc in Messenger.
RemoteCallback.aidl
ailboxNotAvailableException.java
essenger.java
emoteCallback.aidl
emoteCallback.java
45f61040823d8c442838f75cde8760f236603dae 23-Jan-2010 San Mehat <san@google.com> MountService: Add support for renaming secure containers

Signed-off-by: San Mehat <san@google.com>
MountService.aidl
4d02d001ef6e06583e858e63e48d1aebf54ba28d 23-Jan-2010 San Mehat <san@google.com> NetworkManagementService: Introduce INetworkManagementEventObserver

Introduce a callback event observer which can be registered on the
INetworkManagementService instance to receive events from the service.

Signed-off-by: San Mehat <san@google.com>
NetworkManagementService.aidl
63454ebcc9604407152ee54e29ee91c726374f56 23-Jan-2010 San Mehat <san@google.com> Merge "NetworkManagementService: Introduce API methods for configuring interfaces"
ed4fc8acc52d89f1d4dec853a29288c6d06717c3 22-Jan-2010 San Mehat <san@google.com> NetworkManagementService: Introduce API methods for configuring interfaces

Signed-off-by: San Mehat <san@google.com>
NetworkManagementService.aidl
e577232406649450a513140bf09cb3fc8c3fe046 22-Jan-2010 Andy McFadden <fadden@android.com> Move VM feature strings (used by DDMS) into VM.

Until now, we used a place-holder in frameworks/base.

Disable a test that shouldn't have been on.
ebug.java
df83afaf299666e99c519aa86e7e082b7c116e95 20-Jan-2010 Dianne Hackborn <hackbod@google.com> More device policy manager / admin work.

Update API with some new features, re-arrange how you check for valid
passwords, and start hooking up the back-end implementation.
PowerManager.aidl
72759df749bb8557269db86c2e3b2a8a0343cc26 19-Jan-2010 San Mehat <san@google.com> INetworkManagementService: Add support for enumerating TTYs and attaching ppp servers to them

Signed-off-by: San Mehat <san@google.com>

Updated: Refactor out duplicated code
NetworkManagementService.aidl
873f2145941cc28f6931dc18b5e9987bd22e2e19 14-Jan-2010 San Mehat <san@google.com> framework: Introduce INetworkManagementService for communicating with netd

This is the framework-exposed interface for the (future) management of
all Android network management functions. Initial support is for providing
tethering.

Updated: Integrate feedback from review; clean up naming

Updated: Switch from add/remove/list to get/set for DNS forwarders
- allows prioritization / ordering of DNS servers

Updated: Refactor NAT api

Updated: Refactor NAT api (last time sorry)

Signed-off-by: San Mehat <san@google.com>
NetworkManagementService.aidl
9dba709d4439d8cdb464a3dcccbddffdbe4b10ff 18-Jan-2010 San Mehat <san@google.com> MountService: Add new 'unmountSecureContainer' API call

Signed-off-by: San Mehat <san@google.com>
MountService.aidl
22dd86e0556bf60f46bb92a4d90aef8c2d55da58 12-Jan-2010 San Mehat <san@google.com> MountService: Refactor to use NativeDaemonConnector and clean-up

Signed-off-by: San Mehat <san@google.com>
MountService.aidl
fa101530bc74bdf1517a1840a9415249211b9414 12-Jan-2010 Jean-Baptiste Queru <jbq@google.com> resolved conflicts for merge of d26707da to master

Change-Id: I1a379194f70c4b14191333ca2d8e6dd9d8b0f9dd
7ebf017658070323ed1c2bbd80c46c7cd2390d87 12-Jan-2010 San Mehat <san@google.com> framework: storage: Ensure that filesystems are unmounted before shutdown/reboot

Signed-off-by: San Mehat <san@google.com>
MountService.aidl
ower.java
42471dd5552a346dd82a58a663159875ccc4fb79 08-Jan-2010 Dan Egnor <egnor@google.com> Simplify & update ANR logging; report ANR data into the dropbox.
Eliminate the per-process 200ms timeout during ANR thread-dumping.
Dump all the threads at once, then wait for the file to stabilize.
Seems to work great and is much, much, much faster.

Don't dump stack traces to traces.txt on app crashes (it isn't very
useful and mostly just clutters up the file).

Tweak the formatting of the dropbox dumpsys a bit, for readability,
and avoid running out of memory when dumping large log files.

Report build & kernel version with kernel log dropbox entries.
uild.java
ileUtils.java
0f5525ad3b9b341a6c288ded8a8a08572fc657c6 11-Jan-2010 San Mehat <san@google.com> framework: asec: Rename 'Cache' -> 'Container'

Signed-off-by: San Mehat <san@google.com>
MountService.aidl
71de7851a2d1c1ef0251bdc1ea59c5e6f58cf429 08-Jan-2010 Ficus Kirkpatrick <ficus@android.com> Make Build.UNKNOWN public.

There needs to be a way for apps to determine whether or not
a build property exists. Exposing UNKNOWN (the value that
Build sets properties to by default) will give apps something
to compare against.
uild.java
1f6301e1ff1a8ba04bc2b9c55fe6ceb883ce43bf 08-Jan-2010 San Mehat <san@google.com> MountService: Add new Settings for UMS prompting and notification behavior

Signed-off-by: San Mehat <san@google.com>
MountService.aidl
a6a72814e0852abf0db3c58d6e62d8db59ac6033 08-Jan-2010 San Mehat <san@google.com> Environment: Catch *all* exceptions from MountService

Signed-off-by: San Mehat <san@google.com>
nvironment.java
fa9cafa074eb5d98b49b63795cd947877df1f21d 07-Jan-2010 Ficus Kirkpatrick <ficus@android.com> Add a string for second-ABI system property to android.os.Build.
uild.java
91c7761139c0931da0fcbc89bce38cee4b9cc535 07-Jan-2010 San Mehat <san@google.com> MountService: Add an ACTION_SHUTDOWN handler and export a method for external shutdown

Signed-off-by: San Mehat <san@google.com>
MountService.aidl
d1265febc4ae20b0e709177735b175acd94b286a 06-Jan-2010 San Mehat <san@google.com> Merge "framework: MountService: Add initial support for Android Secure External Caches"
0cb047c0de7fe6a775bc6e9cff194af9dcb726cf 06-Jan-2010 Doug Zongker <dougz@android.com> unhide the RecoverySystem class

The recovery system is already part of the platform; this class
defines an interface for interacting with it from the regular system.

Change-Id: I87dff8d6c1dbd11ac8f397a3f34ea5cb16d2d227
ecoverySystem.java
3697229cc7adfd89493e87ba8b6401c8b68bdd71 06-Jan-2010 San Mehat <san@google.com> framework: MountService: Add initial support for Android Secure External Caches

Signed-off-by: San Mehat <san@google.com>
MountService.aidl
1af33d0ddc2f50ade146e4d48e2feb6f1d553427 05-Jan-2010 Doug Zongker <dougz@android.com> add recovery system interface to API

Adds android.os.RecoverySystem (marked as pending) to replace the
(hidden) com.android.internal.os.RecoverySystem. RecoverySystem
contains methods for:

- verifying the signature of an update package
- rebooting to install a package
- rebooting to wipe user data

(The reboot functions require "android.permission.REBOOT" and
"android.permission.ACCESS_CACHE_FILESYSTEM".) Providing these
simplifies implementation of OTA update for device builders.

Change-Id: I63ce743b156e7a1a0327fd395b0e4a82c0eda79a
ecoverySystem.java
7bcbd511731e13b9f2778e6aa6c633417d266f5e 23-Jun-2009 Marco Nelissen <marcone@google.com> Don't round size to page size. Ashmem will do this internally as needed.
emoryFile.java
7fd0fee968f4a3e474e1ea9933fc03552fe5f50a 17-Dec-2009 San Mehat <san@google.com> services: MountService: Refactor MountService for vold2

Squash of the following:
services: MountService: Rework the way volume states are handled
MountService: Add new API for directly getting volume state via a mount point
Environment: Switch from using system property for external storage state.
MountService: Add support for UMS
MountService: Fix a few bugs
services: MountService: Add support for mount-on-insertion
services: MountService: Add some debugging around UMS
services: MountService: Fix some UMS bugs and clean-up startup mount code

Signed-off-by: San Mehat <san@google.com>
nvironment.java
MountService.aidl
202f560f85446008808e443ad28e438622bca49f 28-Dec-2009 Owen Lin <owenlin@google.com> Fix a typo.

Change-Id: Idbe649678a7321a6bd9511218788bc4dfb3cbdb4
syncTask.java
60d8762413e8daba5f73559786312a9ec5e3b827 17-Dec-2009 Dan Egnor <egnor@google.com> DropBox logging of app & system server crashes.

The crashes are also reported to the event log (and of course the
main logcat, like they always have been). Ordinary Log.e(t,m,e) isn't dropboxed
but there's a new Log.wtf() which always is. (Still @pending in this change.)

Add a hook to IPowerManager to crash the system server on demand
(only for apps with REBOOT permission, since it's basically a restart).
This is not exposed in PowerManager, must be invoked directly -- mostly
this is there so "Bad Behavior" in dev tools can do it.
ileObserver.java
PowerManager.aidl
essageQueue.java
owerManager.java
d021302134460efbb596f4a4a2951e75b83d0ede 11-Dec-2009 Dan Egnor <egnor@google.com> resolved conflicts for merge of f6bb01b0 to master
b7f0367cec1c744aa66ef397b0244e25d507491c 10-Dec-2009 Dan Egnor <egnor@google.com> Eliminate CrashData and friends.

(CrashData was a custom-marshalled crash-info class used for a server crash
reporting system I am deprecating). Use ApplicationErrorReport.CrashInfo
instead to report crash details (mostly the stack trace) from RuntimeInfo to
ActivityManagerService, since we're likely to need the crash information in
that form anyway.

Remove the (long-disabled) flags and support for the "Debug" button
in the crash dialog.

Further gut the ICheckinService interface by removing the crash-reporting
APIs (and everything that calls them), plus the synchronous checkin()
method (which has been stubbed out for a while now).

A new dropbox-based crash reporting system is in the works, but not part
of this change.
CheckinService.aidl
7a4fb7376b6819f609b8f462c56329eff50fcb6d 11-Dec-2009 Wink Saville <wink@google.com> am 595c4092: am 8fb0faf3: Merge change I0a56959e into eclair-mr2

Merge commit '595c40920f31ba7b6674eb341548173e2aaf6ea7'

* commit '595c40920f31ba7b6674eb341548173e2aaf6ea7':
Implement a HierarchicalStateMachine
8fb0faf3cc2f792db8cf38fe5ab67c5eab7baa5c 11-Dec-2009 Android (Google) Code Review <android-gerrit@google.com> Merge change I0a56959e into eclair-mr2

* changes:
Implement a HierarchicalStateMachine
d2169dde42284fa2e56b1b870d4ffcfe824f975d 10-Dec-2009 Android (Google) Code Review <android-gerrit@google.com> Merge change If3bafe4f

* changes:
Encrypted File Systems. Recovery changes for framework. Modifications to allow for new call to recovery to toggle EFS settings.
630432e4249ca775e28eedeeb28d1f367ca45296 10-Dec-2009 Ken Shirriff <kens@google.com> am d44c2f2c: am 1270e2e2: Merge change I96ddd6e2 into eclair-mr2

Merge commit 'd44c2f2c85c8720763837b89a8988b6e5cc248bf'

* commit 'd44c2f2c85c8720763837b89a8988b6e5cc248bf':
Migration to TrafficStats.
fc5b4802a544b6ca304aa7e58a26018ef714d233 09-Dec-2009 Wink Saville <wink@google.com> Implement a HierarchicalStateMachine

A hierarchical state machine is a state machine which processes messages
and can have states arranged hierarchically. Each state in the state
machine may have a single parent state and if a child state is unable to
handle a message it may have the message processed by its parent.

Change-Id: I0a56959ece8f89e4f9122dc8044120b82d517bbb
andlerState.java
andlerStateMachine.java
1719a39a4c0ff3afbf9c9e5f03f20ba50f490902 08-Dec-2009 Ken Shirriff <kens@google.com> Migration to TrafficStats.

TrafficStats is the SDK version of NetStat.
etStat.java
3baf1bf734b6212908486d84b356ed1bc7cd838b 30-Nov-2009 Oscar Montemayor <oam@google.com> Encrypted File Systems. Recovery changes for framework.
Modifications to allow for new call to recovery to toggle EFS settings.
CheckinService.aidl
f3ab5c6b32e682e94e6909ef427e1ac7381f0490 25-Nov-2009 Dan Egnor <egnor@google.com> am 86ef717e: am 99cee031: Merge change Ieb7a7d57 into eclair-mr2

Merge commit '86ef717e2660dbc914dcf68295fbf9943c45bc44'

* commit '86ef717e2660dbc914dcf68295fbf9943c45bc44':
Change the DropBoxManager API slightly (this is public, but not yet released) --
99cee0318bdceb6e996bbe9a3e0f961d622e0365 25-Nov-2009 Android (Google) Code Review <android-gerrit@google.com> Merge change Ieb7a7d57 into eclair-mr2

* changes:
Change the DropBoxManager API slightly (this is public, but not yet released) -- take a File instead of a ParcelFileDescriptor (gets opened internally) -- that way the caller doesn't have to worry about closing their PFD and so on. (Pretty much 100% of the time the caller will be uploading a file, anyway.)
d107146ca174adc51721b2e654e9d29d7478234b 25-Nov-2009 Mike Lockwood <lockwood@android.com> am f6a1dab0: am f3e291a0: Merge change Id7b9903e into eclair-mr2

Merge commit 'f6a1dab030095ad1ed58d387ff21a112bca5b610'

* commit 'f6a1dab030095ad1ed58d387ff21a112bca5b610':
Add setAttentionLight() to IPowerManager for the Phone app.
eb7a7d57ca50f85b054edadab766b51ff22a2dfd 25-Nov-2009 Dan Egnor <egnor@google.com> Change the DropBoxManager API slightly (this is public, but not yet released) --
take a File instead of a ParcelFileDescriptor (gets opened internally) --
that way the caller doesn't have to worry about closing their PFD and so on.
(Pretty much 100% of the time the caller will be uploading a file, anyway.)
ropBoxManager.java
b11832de735e95aac1a1b9e900dbbd8285cee3ad 25-Nov-2009 Mike Lockwood <lockwood@android.com> Add setAttentionLight() to IPowerManager for the Phone app.

Change-Id: Id7b9903e1efaf56a2336519a8653962b6ae2c13d
Signed-off-by: Mike Lockwood <lockwood@android.com>
PowerManager.aidl
726a570258828d85e401ab62fd4220812fe9344f 25-Nov-2009 Mike Lockwood <lockwood@android.com> resolved conflicts for merge of dfaf2e03 to master

Change-Id: I440d2042dd404a421789063e42102699fa33b7c0
3a32213c4029a03fe39486f3d6ebd0ea18928ee1 24-Nov-2009 Mike Lockwood <lockwood@android.com> Remove HardwareService and move vibrator support to VibratorService.

The lights support is only needed by PowerManagerService and NotificationManagerService, so we do not need a Binder API for it.
Move backlight and notification light support to new LightsService class.
The camera flash is now handled directly by the camera HAL, so the flash Hardware service flash support is obsolete.

Change-Id: I086d681f54668e7f7de3e8b90df3de19d59833c5
Signed-off-by: Mike Lockwood <lockwood@android.com>
ardware.java
HardwareService.aidl
VibratorService.aidl
ibrator.java
a8529f68671a8a118751cb6ad577f44eaf076b96 18-Nov-2009 Oscar Montemayor <oam@google.com> Encrypted File Systems Project. Installer modifications.
Started to modify isntaller for data redirection to a secure location.
nvironment.java
4ddc2ed883e37d9bb45bc8551ea8d2cb11d1b434 23-Nov-2009 Mike Lockwood <lockwood@android.com> am fa351d38: am e5683369: Merge change I60dfecdc into eclair-mr2

Merge commit 'fa351d388d0441432f4e616ef87a5c97a088dd04'

* commit 'fa351d388d0441432f4e616ef87a5c97a088dd04':
Add window manager support for overriding button and keyboard backlight values.
fb73f79340375013225618a5d87f46b958f698ef 20-Nov-2009 Mike Lockwood <lockwood@android.com> Add window manager support for overriding button and keyboard backlight values.

The new backlightBrightness field works similarly as the existing WindowManager.LayoutParams.screenBrightness field

Needed for bugs:
b/2233655 (under low ambient light the touch keys remain illuminated during video playback and never timeout)
b/2221079 (Backlight for home/search/back/etc buttons should turn off when in dock in night mode)

Change-Id: I60dfecdc7bb653b0db38094464de651220b3d438
ocalPowerManager.java
347ed410c2e598c064a0ce4ef7236d84aada36d3 20-Nov-2009 Mike Lockwood <lockwood@android.com> am 9d633968: am 401a712e: IPowerManager: remove some unused methods.

Merge commit '9d633968ceb502e95f9785b169742624f72614f5'

* commit '9d633968ceb502e95f9785b169742624f72614f5':
IPowerManager: remove some unused methods.
401a712e3b3b41c77e79a130d7b07d653e18bcab 20-Nov-2009 Mike Lockwood <lockwood@android.com> IPowerManager: remove some unused methods.

Change-Id: I7c7fa7eaf6c99e723da20939c27fbc172ad51613
Signed-off-by: Mike Lockwood <lockwood@android.com>
PowerManager.aidl
ocalPowerManager.java
81e3048020e48cbc0e2b89084cb0b3d67860dbb3 20-Nov-2009 Doug Zongker <dougz@android.com> am 043c7276: am 6fd4e76c: fix bad link in javadoc that\'s breaking SDK build

Merge commit '043c72766248d0a4783c506fd4f604ed63e763d4'

* commit '043c72766248d0a4783c506fd4f604ed63e763d4':
fix bad link in javadoc that's breaking SDK build
6fd4e76ca1866772d125089e8f2e3f1d54fcae08 20-Nov-2009 Doug Zongker <dougz@android.com> fix bad link in javadoc that's breaking SDK build
owerManager.java
608620da67d697380eea2bd1ece346f4e05ffbb7 20-Nov-2009 Doug Zongker <dougz@android.com> am a7ad3f6c: am 50a21f4d: add reboot() method to PowerManager

Merge commit 'a7ad3f6c71ad6701fcaa6ecf75452563addb0dd0'

* commit 'a7ad3f6c71ad6701fcaa6ecf75452563addb0dd0':
add reboot() method to PowerManager
50a21f4d3b70360b36acad20e234c380654fd59f 19-Nov-2009 Doug Zongker <dougz@android.com> add reboot() method to PowerManager

In order to unbundle System Update, we need some to expose in the SDK
some way to reboot the device into recovery. Add a reboot() method to
PowerManager, protected by the android.permission.REBOOT permission.
PowerManager.aidl
owerManager.java
1c391ed88ce7a239d026353c2527f1cc2c9942bb 19-Nov-2009 Dianne Hackborn <hackbod@google.com> resolved conflicts for merge of a82e7e24 to master
2b38a09f044ad0bb14db7360b352fcca612f49ac 19-Nov-2009 Dianne Hackborn <hackbod@google.com> am 23ef7b48: Fix most of issue #2271640: Fix wallpaper etc docs

Merge commit '23ef7b4836d66d31430fedee2aac36275bb30d4b' into eclair-mr2

* commit '23ef7b4836d66d31430fedee2aac36275bb30d4b':
Fix most of issue #2271640: Fix wallpaper etc docs
23ef7b4836d66d31430fedee2aac36275bb30d4b 19-Nov-2009 Dianne Hackborn <hackbod@google.com> Fix most of issue #2271640: Fix wallpaper etc docs

Only thing remaining is the live wallpaper feature.

Change-Id: I8854c7978999d759bf618307f4f984c9c89d3fc8
uild.java
c1786f1697b3376585f1e59585b84781c9811f10 19-Nov-2009 repo sync <lockwood@android.com> am d28fcd5b: resolved conflicts for merge of efd91d7c to eclair-mr2-plus-aosp

Merge commit 'd28fcd5bb8e5734a12b83f7cefde759c009e7b6e'

* commit 'd28fcd5bb8e5734a12b83f7cefde759c009e7b6e':
Fixes for proximity sensor behavior:
efd91d7ce01c7bd538fb0ca66d9f5395352211f8 19-Nov-2009 Mike Lockwood <lockwood@android.com> am 03786b83: Merge change I813fdb7a into eclair

Merge commit '03786b83bd02f8dd8e1049d333fbfdee395ac965' into eclair-mr2

* commit '03786b83bd02f8dd8e1049d333fbfdee395ac965':
Fixes for proximity sensor behavior:
0e39ea83c5578e0d55e120c91ff7cfeeb0c1cb2f 18-Nov-2009 Mike Lockwood <lockwood@android.com> Fixes for proximity sensor behavior:

Add optional flag to Wakelock.release() to specify whether we should wait for proximity sensor to go negative before turning on the screen.
Clear the "waiting for proximity sensor to go negative" state when the power key is pressed.

Part of the fix for b/2243198 (Black screen lockup after ending call)

Change-Id: I813fdb7aa4192cd3384a25be9e59d7d4b90da53a
Signed-off-by: Mike Lockwood <lockwood@android.com>
PowerManager.aidl
owerManager.java
1d9a742cdfc295e6e1482a8b6f5bb7012b406850 15-Nov-2009 Dan Egnor <egnor@google.com> am c51e2793: am e3cfe2d9: Fix the SDK build.

Merge commit 'c51e279366ff7eed48d3256811381528692240d0'

* commit 'c51e279366ff7eed48d3256811381528692240d0':
Fix the SDK build.
e3cfe2d92868513c9524804a362c3c3c8b8cc4e5 15-Nov-2009 Dan Egnor <egnor@google.com> Fix the SDK build.
ropBoxManager.java
4c38ea650f37fda7ee930ed10d48c05b02b1bdf2 14-Nov-2009 Mike Lockwood <lockwood@android.com> am c104e1b3: am dc656339: am 991475a2: Merge change I0e419fcf into eclair

Merge commit 'c104e1b3912f1389848b0cc841866564d9314287'

* commit 'c104e1b3912f1389848b0cc841866564d9314287':
Add isScreenOn() to LocalPowerManager interface so we can call it from PhoneWindowManager
dc6563393789e90d75b44b9ce97c167863bf0771 14-Nov-2009 Mike Lockwood <lockwood@android.com> am 991475a2: Merge change I0e419fcf into eclair

Merge commit '991475a2e5dcb344299387521b52fb637d6b1e4d' into eclair-mr2

* commit '991475a2e5dcb344299387521b52fb637d6b1e4d':
Add isScreenOn() to LocalPowerManager interface so we can call it from PhoneWindowManager
746b3184bfe4973aa16055eff0adc89c7c77c7e2 13-Nov-2009 Mike Lockwood <lockwood@android.com> Add isScreenOn() to LocalPowerManager interface so we can call it from PhoneWindowManager

Needed for the fix for b/2260437 (device wakes itself back up when camera is last application running)

Change-Id: I0e419fcf05542df203eb3f127dde7a888416e86d
Signed-off-by: Mike Lockwood <lockwood@android.com>
ocalPowerManager.java
ddbc0107b76fde1ccca14e81817b49a7ae52820b 13-Nov-2009 Dianne Hackborn <hackbod@google.com> am 255ba31a: am 1ca191c2: am 1778776c: Fix issue #2258571: Fix build versions

Merge commit '255ba31a75d864d9c7278c9aceb542652b80d586'

* commit '255ba31a75d864d9c7278c9aceb542652b80d586':
Fix issue #2258571: Fix build versions
1ca191c2f7eb2be53d0f96117784ecafd888da73 13-Nov-2009 Dianne Hackborn <hackbod@google.com> am 1778776c: Fix issue #2258571: Fix build versions

Merge commit '1778776cf1349a5f275945c53edcd1454d58639c' into eclair-mr2

* commit '1778776cf1349a5f275945c53edcd1454d58639c':
Fix issue #2258571: Fix build versions
1778776cf1349a5f275945c53edcd1454d58639c 13-Nov-2009 Dianne Hackborn <hackbod@google.com> Fix issue #2258571: Fix build versions

Update the definition of SDK 6, remove all new APIs from it.

Change-Id: Id96827f630ab46279d9ad8d3f7498e5515e0a688
uild.java
67abf57846168dd00fa951489c3d636e6016f3ce 12-Nov-2009 Dan Egnor <egnor@google.com> am 00556831: am f18a01c7: Rename [I]DropBox[Service] to [I]DropBoxManager[Service].

Merge commit '00556831f7503a922a5402c525b4387ebdd1a4bb'

* commit '00556831f7503a922a5402c525b4387ebdd1a4bb':
Rename [I]DropBox[Service] to [I]DropBoxManager[Service].
f18a01c77e78209b74e34d05cfb352fa4a92db5f 12-Nov-2009 Dan Egnor <egnor@google.com> Rename [I]DropBox[Service] to [I]DropBoxManager[Service].

Un-hide the DropBoxManager interface, and update the public API accordingly.
ropBox.aidl
ropBox.java
ropBoxManager.aidl
ropBoxManager.java
7ebdc03a95c39b00cf8ce4d56e5f9aa78290ad62 10-Nov-2009 Bjorn Bringert <bringert@android.com> am e3dc9f49: am e8341ebb: am 2bb53754: Merge change Icaf932d0 into eclair

Merge commit 'e3dc9f491a8e9f9cdc6f7815be9ece4c87ebe8a4'

* commit 'e3dc9f491a8e9f9cdc6f7815be9ece4c87ebe8a4':
Fix code example in Parcelable javadoc
e8341ebbc672fb196e31cadbf5cf43770cec0525 10-Nov-2009 Bjorn Bringert <bringert@android.com> am 2bb53754: Merge change Icaf932d0 into eclair

Merge commit '2bb53754337225508f2b4d12f1575df7c226100c' into eclair-mr2

* commit '2bb53754337225508f2b4d12f1575df7c226100c':
Fix code example in Parcelable javadoc
2bb53754337225508f2b4d12f1575df7c226100c 09-Nov-2009 Android (Google) Code Review <android-gerrit@google.com> Merge change Icaf932d0 into eclair

* changes:
Fix code example in Parcelable javadoc
08c2fd1ecc5fcc2682d33c0ee62a208799182ec2 06-Nov-2009 Charles Mendis <cmendis@google.com> am 7e3873a0: am 6b07bf3d: am 3cba7288: Merge change I6ccd2ebc into eclair

Merge commit '7e3873a0d24453057850b408f17fa0e2e37ba0c7'

* commit '7e3873a0d24453057850b408f17fa0e2e37ba0c7':
Expose PowerManager.isScreenOn in the public api.
6b07bf3d8f8f9b5124c19f1206e11634a774c356 06-Nov-2009 Charles Mendis <cmendis@google.com> am 3cba7288: Merge change I6ccd2ebc into eclair

Merge commit '3cba72880b78b81cda2868136462c9e261a3e403' into eclair-mr2

* commit '3cba72880b78b81cda2868136462c9e261a3e403':
Expose PowerManager.isScreenOn in the public api.
322591cb4b158dc2edbc3d95cd02e44f132feb5f 29-Oct-2009 Charles Mendis <cmendis@google.com> Expose PowerManager.isScreenOn in the public api.

Change-Id: I6ccd2ebcbf3f8ad9ffa4b86a9c037cb0c25a7b78
PowerManager.aidl
owerManager.java
e5e5e5098e22de8ebe1b603f4e7ebccbad99d012 05-Nov-2009 Eric Olsen <eolsen@android.com> am 122f412a: am 76922b83: am 9053fdb3: Merge change I76127f6f into eclair

Merge commit '122f412a0177c54e32d52a23bf92b78aae4679f7'

* commit '122f412a0177c54e32d52a23bf92b78aae4679f7':
Add support for colored LED on jogball backlight.
76922b8378f235e79fd861ba846bed833199e59f 05-Nov-2009 Eric Olsen <eolsen@android.com> am 9053fdb3: Merge change I76127f6f into eclair

Merge commit '9053fdb32b38d1240d856bd6efedf72eefba48d3' into eclair-mr2

* commit '9053fdb32b38d1240d856bd6efedf72eefba48d3':
Add support for colored LED on jogball backlight.
f42f15cf450772d8eeb9c0c81a8403d33ffe1c9b 30-Oct-2009 Eric Olsen <eolsen@android.com> Add support for colored LED on jogball backlight.

Signed-off-by: Eric Olsen <eolsen@android.com>
HardwareService.aidl
a64f95639f54b9ae2ea49836add0cf8ee6cf9acf 02-Nov-2009 Jack Wang <jackwang@google.com> am af93c05c: am 227ba207: am e8228afb: Merge change I92cdc5ed into eclair

Merge commit 'af93c05c9a25018daf375094c8e697b83795b2d4'

* commit 'af93c05c9a25018daf375094c8e697b83795b2d4':
PerformanceCollector: Collect & report perf measurements in key/value form
227ba2072df1474a0b3abaae7c415f152d32bcc2 31-Oct-2009 Jack Wang <jackwang@google.com> am e8228afb: Merge change I92cdc5ed into eclair

Merge commit 'e8228afb2bd005ae25ce58719f9d678389b26a16' into eclair-mr2

* commit 'e8228afb2bd005ae25ce58719f9d678389b26a16':
PerformanceCollector: Collect & report perf measurements in key/value form
e8228afb2bd005ae25ce58719f9d678389b26a16 31-Oct-2009 Android (Google) Code Review <android-gerrit@google.com> Merge change I92cdc5ed into eclair

* changes:
PerformanceCollector: Collect & report perf measurements in key/value form
f267b947657a3c057d15650a39b98e7b2129bc70 29-Oct-2009 Dianne Hackborn <hackbod@google.com> am 9a27909e: am 40946aa2: am 1f668fff: Merge change Idb13ed9a into eclair

Merge commit '9a27909e754b8b2623bbc82a931c2930c033cbb1'

* commit '9a27909e754b8b2623bbc82a931c2930c033cbb1':
Add SDK version for MR1.
11e3364a6afd4e83cc60894031793dabcc6193a3 29-Oct-2009 Dan Egnor <egnor@google.com> am 473bbd21: am 95240270: Instead of a raw AIDL interface, give DropBox a Java interface (android.os.DropBox); move the Binder interface behind the scenes. Make DropBoxEntry into DropBox.Entry. Make it possible to get a dropbox from an (Application)Context with the u

Merge commit '473bbd2140a2515a6a9a450ee955a790e0b6dcff'

* commit '473bbd2140a2515a6a9a450ee955a790e0b6dcff':
Instead of a raw AIDL interface, give DropBox a Java
40946aa20183984fd60f2dbdc7708cf1c5431047 29-Oct-2009 Dianne Hackborn <hackbod@google.com> am 1f668fff: Merge change Idb13ed9a into eclair

Merge commit '1f668fff8ad2b8d79d42da5d9667d308fa0b9441' into eclair-mr2

* commit '1f668fff8ad2b8d79d42da5d9667d308fa0b9441':
Add SDK version for MR1.
952402704a175ba27f6c89dff1ada634c5ce5626 28-Oct-2009 Dan Egnor <egnor@google.com> Instead of a raw AIDL interface, give DropBox a Java
interface (android.os.DropBox); move the Binder interface
behind the scenes. Make DropBoxEntry into DropBox.Entry.
Make it possible to get a dropbox from an (Application)Context
with the usual getSystemService(DROPBOX_SERVICE) type thing.
Update the tests accordingly.
ropBox.aidl
ropBox.java
ropBoxEntry.aidl
ropBoxEntry.java
DropBox.aidl
075997f12e2fb2b646172a92926be0f26f739099 28-Oct-2009 Jack Wang <jackwang@google.com> PerformanceCollector: Collect & report perf measurements in key/value form

- Added new functions to PerformanceCollector and PerformanceResultsWriter
- Modified unit tests to test new functionality and fix flakiness reported in
2218327 and 2118268
- Added PerformanceCollectorTest to small suite
erformanceCollector.java
d8919f07d10662e6b15cf6d73cddb167a144f0e7 28-Oct-2009 Bjorn Bringert <bringert@android.com> Fix code example in Parcelable javadoc

DOCS ONLY

The code example for android.os.Parcelable contained several errors:

- There was no type parameter for Parcelable.Creator (due to unescaped
< > in the javadoc comment).

- There was no implementation of describeContents().

- The semicolon after the CREATOR declaration was missing.

This change fixes all of the above.

Fixes issue http://b/issue?id=2221120

Change-Id: Icaf932d079573cc7699f1caa643aac49e85ccca0
arcelable.java
0fa35918af608b56fb3f6aa98341624e22447f92 23-Oct-2009 Dianne Hackborn <hackbod@google.com> Add SDK version for MR1.

Change-Id: Idb13ed9a35397effbfb72a934a7db5f5a882c79c
uild.java
bfd6d481fa6a7217cafa6d7760674ec927500b5a 23-Oct-2009 Andy McFadden <fadden@android.com> Add a reference table dump call.

This is just an android.os.Debug method that calls into the VM.

Bug 2075355
ebug.java
2a2805b7fbd25ee11ad554e33bf34dbb2e8b71c5 20-Oct-2009 Android (Google) Code Review <android-gerrit@google.com> Merge change Ib3b06fc3 into eclair-mr2

* changes:
It turns out to be useful to allow enumeration on a per-tag basis, and it's easy to support based on the data structures we have, so add a tag parameter to getNextEvent().
b3b06fc39b032288d33f663b687d78bec7f1d724 20-Oct-2009 Dan Egnor <egnor@google.com> It turns out to be useful to allow enumeration on a per-tag basis,
and it's easy to support based on the data structures we have, so
add a tag parameter to getNextEvent().
DropBox.aidl
b0f4d0cd249773927c891ab52505505b6b19347b 20-Oct-2009 Amith Yamasani <yamasani@google.com> am f37447ba: Proper fix for zero signal strength and no_service. Fixes #2176141

Merge commit 'f37447bad3773b62176baa837908daf6edb44273' into eclair-mr2

* commit 'f37447bad3773b62176baa837908daf6edb44273':
Proper fix for zero signal strength and no_service. Fixes #2176141
f37447bad3773b62176baa837908daf6edb44273 09-Oct-2009 Amith Yamasani <yamasani@google.com> Proper fix for zero signal strength and no_service. Fixes #2176141

Track phone service state changes and use a separate timer for out-of-service
since the hunting can timeout on some devices.

Store the timeout value in the config.xml, as it is device/network specific.

Settings App will also change to use the hunting duration to compute the cost
of zero signal.
atteryStats.java
2086152c1b60ad3bfe85c1ddc3871cff77e6da1b 16-Oct-2009 Mike Lockwood <lockwood@android.com> am f55aa972: Merge change I01935be3 into eclair

Merge commit 'f55aa972f9911c6aafc9fbdb736bdec11e004542' into eclair-mr2

* commit 'f55aa972f9911c6aafc9fbdb736bdec11e004542':
Remove PowerManager.setAutoBrightness()
dc3494e3d8e17aeb0dbbe41953a5ef763d95ff78 15-Oct-2009 Mike Lockwood <lockwood@android.com> Remove PowerManager.setAutoBrightness()

We will use the System.SCREEN_BRIGHTNESS_MODE Settings value instead.
Add SCREEN_BRIGHTNESS_MODE_MANUAL and SCREEN_BRIGHTNESS_MODE_AUTOMATIC constants.

Change-Id: I01935be3fcb48cf76392d2c594205cb47babc5b2
Signed-off-by: Mike Lockwood <lockwood@android.com>
PowerManager.aidl
4410ec8f7cec6ab05a8c24c04fe2d5ed5d1e18df 12-Sep-2009 Dan Egnor <egnor@google.com> Framework-side DropBox service that maintains a size-bounded
queue of data chunks (sort of a blob-oriented logcat).

In the future, this will be coupled with a revised checkin service that
would actually upload this data.
ropBoxEntry.aidl
ropBoxEntry.java
DropBox.aidl
6dc3f4e553d333b9f115a222a9a684bb2aa55b5e 10-Oct-2009 Jeff Hamilton <jham@android.com> Now that Eclair has been defined as API revision 5 mark Build.VERSION_CODES.ECLAIR as such.

Change-Id: I45af1fe80f6f93a1db8389600dc780af9cedf22c
uild.java
4b057801d5a5a859c2f9a68230744a6b0939ae01 05-Oct-2009 Romain Guy <romainguy@android.com> Make sure AsyncTask sens a null result to onPostExecute() when cancelled.

This is in accordance to the documentation. This bug was approved by hackbod.
The change is safe and is a single line of code.

Change-Id: I9b771df3ae2aa4f496d15e6c43b677f3245539ac
syncTask.java
aef439e6f825c0cb99a2ac08c8207f48b7a9fe10 28-Sep-2009 Nick Pelly <npelly@google.com> Move android.bluetooth.ParcelUuid to android.os.ParcelUuid

Change-Id: I564429d5c5b6a5372b6ff26a53b0d7e518b53631
arcelUuid.aidl
arcelUuid.java
7609764295d1b3ec0b53d1ae536ee0280f5e0407 26-Sep-2009 Mike Cleron <mcleron@google.com> Fix 2146581: Make tabs work for donut apps
Use different tab assets with the original coloring scheme
for apps that are not Eclair-aware.
uild.java
e43530ab571e901f94361078c7c1f970a0bd27f2 21-Aug-2009 Amith Yamasani <yamasani@google.com> Track CPU speed stepping to get more accurate CPU cost per app.

More CPU speed stepping happening with newer devices, so we need
to qualify CPU time with the CPU speed, since power consumption
varies greatly by speed. Apps that peg the CPU should get a higher
penaltly.

Also, fix for 2062930: NPE at VolumePreference.onKey()
atteryStats.java
edd9316ca9b3b24d54e8a2468927da7e813098fc 19-Sep-2009 Dianne Hackborn <hackbod@google.com> Add better APIs for the battery status, and other cleanup.

Also add new configs for keeping screen on while docked, which will
be used elsewhere.

Change-Id: Ifaa1118f14fd850ac809895f9a5c9e8c413259b8
atteryManager.java
4f21c4cf077cfee5b35a56703618115614bc40f2 17-Sep-2009 Dianne Hackborn <hackbod@google.com> Add API to retrieve memory used by running processes.

Change-Id: I9c1935c2ef3c78bd67ec4dfd811a1caaab4514c3
ebug.java
237a29923a05663a2195bf93b392768dbaf31ebf 15-Sep-2009 Mike Lockwood <lockwood@android.com> Move backlight brightness from HardwareService to PowerManager

to prevent apps from changing the hardware behind its back.
Fixes b/2041941 Lock screen flashes the screen very bright before dimming

Change-Id: Ice757f7ae87902bdfb3634471cf44f020ebfaae4
Signed-off-by: Mike Lockwood <lockwood@android.com>
HardwareService.aidl
PowerManager.aidl
owerManager.java
4e3cdf854441b84c15fd9f127127b6d116834c51 15-Sep-2009 Android (Google) Code Review <android-gerrit@google.com> Merge change 23619 into eclair

* changes:
Add automatic lighting control framework
951764b97010dfa073126f52b43ea1bdf1b35998 27-Aug-2009 Dan Murphy <D.Murphy@motorola.com> Add automatic lighting control framework

Add changes to have the ability to turn on and off the
automatic light sensing for the device. This is fully configurable
and is by default not present. Vendors should override the ALS setting
to enable the automatic lighting controls.

These changes will add a check box to the Brightness settings menu to give control
to the user to allow the device's display lighting to be controlled via the slide bar
or the auto lighting system.

If the user selects auto then the slide bar will become invisible. Manual mode
will present the slide bar to the user.

Change-Id: I146a6d75b99b08c9b839218ce6b85adf21f9fd73
Signed-off-by: Dan Murphy <D.Murphy@motorola.com>
Signed-off-by: Mike Lockwood <lockwood@android.com>
HardwareService.aidl
8d37426c754e9822feaa8c6cc0b7c13e8523e217 15-Sep-2009 Dianne Hackborn <hackbod@google.com> Various fixed for back key handling.

My last change was far from perfect. Hopefully this gets us
a little closer.

Change-Id: I413e55b6af42400b565de3040859d25d668bc9d2
uild.java
19382ac1a4e4e7c23a1346d299368763f149de9c 12-Sep-2009 Dianne Hackborn <hackbod@google.com> Some optizations to wallpaper drawing/scrolling.

First, fix some issues with the final wallpaper bitmap
we use: ensure it is always 16bpp, and make sure dithering
of its bitmap is turned off. We take of dithering
when loading, to make sure we don't use it when drawing.

Also add new APIs to return the wallpaper with the equivalent
of Launcher's old FastBitmapDrawable. As doing this, also load
the default wallpaper the same way as custom ones, taking care to
resize it as needed at load time.

Finally implement a mechanism for the window manager to wait
for the wallpaper to redraw at its new position before returning
from the application's call to change the offset. This ensures
that the wallpaper better tracks the application. Note that there
is a timeout in this wait that is relatively short, and if it
expires we will run for a while without waiting.

Change-Id: Ife449437746da85958bd447e0a6cf3d2223b398c
andlerThread.java
ff1df69dd4835c177c724e1b5f1ba02d1f674047 27-Aug-2009 Jack Wang <jackwang@google.com> Performance measurement framework:

+ For bug 1810508
- Added PerformanceCollector class to collect runtime and memory usage data
* Moved performance snapshotting from Intrumentation to PerformanceCollector
- Added PerformanceResultsWriter interface which defines functions for
reporting performance data

+ Framework integration
- Added TimedTest annotation to automatically time tests and write results
to instrumentation output
- Modified PerformanceTestBase to add collection hooks and wrapper methods
- Modified WatcherResultPrinter in InstrumentationTestRunner to implement
PerformanceResultsWriter for instrumentation output of performance data
- Modified InstrumentationTestRunner and AndroidTestRunner to pass writer
instance to test
erformanceCollector.java
d42685d5de1dbd6d75b48d42418f370adaa4daef 03-Sep-2009 Mike Lockwood <lockwood@android.com> Add support for running apps with uid/gid AID_LOG by specifying android.uid.log in the manifest

This is needed to allow the BugReportService to start the dumpstate service.

Change-Id: I12cab23767c919592da102c654b6b80416717661
Signed-off-by: Mike Lockwood <lockwood@android.com>
rocess.java
3025ef332c29e255388f74b2afefe05f64bce07c 01-Sep-2009 Dianne Hackborn <hackbod@google.com> Various infrastructure to support a running services UI.

Some of this is temporary (in particular the two approaches for getting
process memory, one working but horrible, the other not working but
preferred) until I figure out the best way to do it.

Change-Id: I8c8f25062d481fcea22a47d459b083d2fd8a5040
ebug.java
4a51c20ce607c74914f90fd897f04080121ac13b 22-Aug-2009 Dianne Hackborn <hackbod@google.com> I am getting tired of the java doc warnings, so fix them.

Change-Id: I2205eebae419eaf4a0992c9f5b7cd807eb843fe1
uild.java
andlerStateMachine.java
f6f9f2d0256930ce0bb4913b2260b8480914edc2 22-Aug-2009 Dianne Hackborn <hackbod@google.com> Add more control over a service's start state.

One of the problems I have been noticing is background services
sitting around running and using resources. Some times this is
due to the app developer doing this when they shouldn't, but there
are also a number of issues with the current Service interaction
model that make it very difficult (or impossible) to avoid
getting services stuck in the started state. This is a
change/enhancement to the Service API to try to address this.

The main change is that Service.onStart() has been deprecated,
replaced with a new Service.onStartCommand() that allows the
service to better control how the system should manage it. The
key part here is a new result code returned by the function, telling
the system what it should do with the service afterwards:

- START_STICKY is basically the same as the previous behavior,
where we usually leave the service running. The only difference
is that it if it gets restarted because its process is killed,
onStartCommand() will be called on the new service with a null
Intent instead of not being called at all.

- START_NOT_STICKY says that, upon returning to the system, if
its process is killed with no remaining start commands to
deliver, then the service will be stopped instead of restarted.
This makes a lot more sense for services that are intended to
only run while executing commands sent to them.

- START_REDELIVER_INTENT is like START_NOT_STICKY, except if
the service's process is killed before it calls stopSelf()
for a given intent, that intent will be re-delivered to it
until it completes (unless after 4 or more tries it still
can't complete, at which point we give up).

Change-Id: I978f5ca420d70023d1b5e7f97de639d09381f8ad
uild.java
04bfa42078020de663747c9110a14c0529481fe6 13-Aug-2009 Dianne Hackborn <hackbod@google.com> resolved conflicts for merge of 6550076f to master
fe77ec8e0881963714b2464efad9514d921d089a 13-Aug-2009 Dianne Hackborn <hackbod@google.com> The DONUT constant also needs to be updated to the official SDK version.

Also remove all of the resource value padding.
uild.java
d1945950451220932f70bac83408c761dcba231f 12-Aug-2009 Mike Lockwood <lockwood@android.com> SystemProperties: eliminate unnecessary string allocation.

getInt(), getLong() and getBoolean() no longer allocate a temporary String object.

Signed-off-by: Mike Lockwood <lockwood@android.com>
ystemProperties.java
37296dc4edae8d1383179e956dff2ecf806ac166 01-Aug-2009 Joe Onorato <joeo@android.com> Update docs.
ystemClock.java
9bb8fd77c8dc177aab9ac96bed4f55972dcda70a 29-Jul-2009 Joe Onorato <joeo@android.com> Only restore the bits for wallpapers that aren't built in.
ileObserver.java
bc706a03a25f0dfe2cb0ecd1f6e4f7be905592a7 27-Jul-2009 Mike Lockwood <lockwood@android.com> PowerManager: Add proximity sensor support.

Add new wakelock flag PROXIMITY_SCREEN_OFF_WAKE_LOCK.
If you create a wakelock with this flag, while the wakelock is acquired,
the screen will turn off automatically when the sensor detects an object close to the screen.
Removing the object will cause the screen to wake up again.

Added PowerManager.getSupportedWakeLockFlags(), which can be used to determine
if proximity screen off wakelocks are supported by the hardware.

Signed-off-by: Mike Lockwood <lockwood@android.com>
PowerManager.aidl
owerManager.java
a695d185f11b2b03ecf0e0f796621fb00bfe7855 21-Jul-2009 Android (Google) Code Review <android-gerrit@google.com> am ef1a92ab: Merge change 7961 into donut

Merge commit 'ef1a92abe1bebe4feba4ba33cd0c7e25ee83fcc0'

* commit 'ef1a92abe1bebe4feba4ba33cd0c7e25ee83fcc0':
Bluetooth at command tracking.
3f7e35c2c7d3d7f08f50c1d93cd16b1f49354ccc 14-Jul-2009 Amith Yamasani <yamasani@google.com> Bluetooth at command tracking.
atteryStats.java
0bca96bcbfe559f9330a01f723c5c9cba51ec05a 17-Jul-2009 Marco Nelissen <marcone@google.com> Make Process.getFreeMemory() return a long instead of an int, to better
work on the simulator now, and phones 2 years from now.
rocess.java
dace230043314d6fab1c5ced4b031eaccd814c25 14-Jul-2009 Dianne Hackborn <hackbod@google.com> resolved conflicts for merge of b06ea706 to master
b06ea706530e6d19eb2a1a9a7ae6c5dd77d80af0 13-Jul-2009 Dianne Hackborn <hackbod@google.com> Add reporting of activity movement for search manager.

This adds a new API with the activity manager to find out about movement between
activities. For my sanity, the old IActivityWatcher is now renamed to
IActivityController, and the new activity movement interface is named
IActivityWatcher.

This changes the search manager itself to use the new API to manage its state.
Note that there are still problems when going back to the search dialog after
it was hidden -- the suggestions window no longer appears until you explicitly
dismiss and re-show it.
emoteCallbackList.java
54a26bc85f4fe972e929e42b986c65a710a229b3 11-Jul-2009 Dianne Hackborn <hackbod@google.com> resolved conflicts for merge of 889c2d37 to master
854060af30f928c0a65591e9c8314ae17056e6b8 10-Jul-2009 Dianne Hackborn <hackbod@google.com> Fix bug #1873249i: Apps can DoS/brick device

This is the problem where various things are listening for broadcasts
(such as battery status, PIN/PUK/Network) that an application can send
to cause harm to the system.

Solving this is tricky because many of these broadcasts are sticky,
and I have never figured out how to do permissions with sticky
broadcasts in a sane way. So instead, I am going to punt on the
general problem and just brute force it:

There is new a way for system components to declare specific
broadcast actions to be protected, which means that only the system
and the phone can send them. This is good enough for now. None
of it is exposed in the public API so we can make something a little
less stupid in the future if we ever need to.
rocess.java
c6f81c6716c634317c69343fc2fd9a2fe6a2c034 09-Jul-2009 Android (Google) Code Review <android-gerrit@google.com> am d1e5e3ff: Merge change 6639 into donut

Merge commit 'd1e5e3ffc22478bad8525dec4f1c6d57fe0ad368'

* commit 'd1e5e3ffc22478bad8525dec4f1c6d57fe0ad368':
Restore audio settings and wifi.
d158214511a3c04753de04fa6389e46d33135c38 09-Jul-2009 Amith Yamasani <yamasani@google.com> Restore audio settings and wifi.

Optimize backups by writing an entity only if the checksum of the data has changed.
Call into the hidden AudioService API to apply changed audio settings.
After restoring wifi data, make sure that the permissions and ownership are set
properly for the supplicant process to access it.
Locale isn't restoring properly - TODO added.
rocess.java
18dd5f0d25f1004e123dc265dc498a8bf8897af9 02-Jul-2009 Patrick Scott <phanna@android.com> Improve the Vibrator service by keeping track of multiple vibration requests.

There are 2 types of vibrations: simple and repeated. Simple vibrations run for
a given length of time while repeated patterns run until canceled or the calling
process dies.

If a vibration is currently running and another request is issued, the newer
request always takes precedence unless the current vibration is a simple one and
the time left is longer than the new request.

If a repeating vibration is running and a new request overrides that vibration,
the current vibration is pushed onto a stack. Once the new vibration completes,
the previous vibration resumes. IBinder tokens are used to identify Vibration
requests which means that multiple calls to Vibrator.vibrate with the same
Vibrator object will override previous vibrations on that object.
HardwareService.aidl
ibrator.java
5ceae67f8a053ec4f47accf6e0ddad2d29af022c 30-Jun-2009 Android (Google) Code Review <android-gerrit@google.com> am 040441fa: Merge change 5529 into donut

Merge commit '040441fa992bcfc11070d559bfceeb039667b382'

* commit '040441fa992bcfc11070d559bfceeb039667b382':
Tweak the core and maximum pool sizes for AsyncTask.
a9be47cea45c19f2869732252e9922bf88fa4d86 26-Jun-2009 Romain Guy <romainguy@android.com> Tweak the core and maximum pool sizes for AsyncTask.

This change allows up to 5 AsyncTasks to run concurrently. Before, only 1 task
could run at a time, which was too limited. This change also bumps up the maximum
number of tasks that can be created; this large number is not an issue because
tasks are queued up and run only 5 at a time.
syncTask.java
2383415ab982ff156a85929f58029c0b863750c5 25-Jun-2009 Android (Google) Code Review <android-gerrit@google.com> am f881762f: Merge change 5351 into donut

Merge commit 'f881762f97c74253bbc7f629380bb65739457041'

* commit 'f881762f97c74253bbc7f629380bb65739457041':
Add a method to Process to get uid for a pid.
819f928f6a9dc3fdf408236f33e17f03a7dfed2c 25-Jun-2009 Amith Yamasani <yamasani@google.com> Add a method to Process to get uid for a pid.

Use the uids to track native processes. Cache the uids to avoid
checking /proc every time.
rocess.java
afed82bca9e173cabe2c2f25314b202e5c1ccbca 25-Jun-2009 Dianne Hackborn <hackbod@google.com> am 9c8dd55a: Fix bug 1829561 ("am profile" with bad filename kills process).

Merge commit '9c8dd55a9d829c29a3feee9469d8c2f27a9f5516'

* commit '9c8dd55a9d829c29a3feee9469d8c2f27a9f5516':
Fix bug 1829561 ("am profile" with bad filename kills process).
9c8dd55a9d829c29a3feee9469d8c2f27a9f5516 24-Jun-2009 Dianne Hackborn <hackbod@google.com> Fix bug 1829561 ("am profile" with bad filename kills process).

The am command is now the one that takes care of opening the target file,
handling the opened file descriptor to the process that will be profiled.
This allows you to send profile data to anywhere the shell can access, and
avoids any problems coming up from the target process trying to open the
file.
ebug.java
ec100900e63a8374ac010e7131d9c7e54c5e6984 17-Jun-2009 Marco Nelissen <marcone@google.com> MemoryFile.isMemoryFile was internally determining the length of
the ashmem region. This is actually useful information to have,
so expose that more directly.
emoryFile.java
138197f961b671ff5b48785b0fe61477ebfc7627 04-Jun-2009 Amith Yamasani <yamasani@google.com> am eaeb663b: Track activity foreground CPU usage for battery stats.

Merge commit 'eaeb663bcd7a82b654954b42663232cbd7bef7e7'

* commit 'eaeb663bcd7a82b654954b42663232cbd7bef7e7':
Track activity foreground CPU usage for battery stats.
eaeb663bcd7a82b654954b42663232cbd7bef7e7 04-Jun-2009 Amith Yamasani <yamasani@google.com> Track activity foreground CPU usage for battery stats.

Track the foreground CPU time of an activity so that we can tell if apps are
spending more time in the background compared to foreground.
Update power profile values for screen backlight and GPS.
Fix some javadoc bugs (milliseconds vs. microseconds).
atteryStats.java
b15a5348e6586c143bd7027574f7574433874131 03-Jun-2009 Bjorn Bringert <bringert@android.com> am c1823701: Handle EOF correctly in MemoryFile input stream.

Merge commit 'c1823701cc76790494fb622fe58f0942236cd7d0'

* commit 'c1823701cc76790494fb622fe58f0942236cd7d0':
Handle EOF correctly in MemoryFile input stream.
c0cbfda0fe0184bbb282bde4d894e2ff210c0e47 03-Jun-2009 Bjorn Bringert <bringert@android.com> am 963cd006: Allow creating AssetFileDescriptors for MemoryFiles.

Merge commit '963cd006c45716b034f656bf7e7179e6476f7e4d'

* commit '963cd006c45716b034f656bf7e7179e6476f7e4d':
Allow creating AssetFileDescriptors for MemoryFiles.
c1823701cc76790494fb622fe58f0942236cd7d0 01-Jun-2009 Bjorn Bringert <bringert@android.com> Handle EOF correctly in MemoryFile input stream.

Before, the variants of MemoryFile.MemoryInputStream.read() would throw
IOException or IndexOutOfBoundsException if EOF was encountered
before the requested number of bytes was read. This violates
the contract of InputStream.read().

This patch makes read() return the number of bytes available, if any.
If already at EOF, -1 is returned. The patch also adds new tests,
which checks cases where MemoryFile.MemoryInputStream.read()
should throw IndexOutOfBoundsException or return -1. several of these
tests failed with the old code and pass now.

This fixes http://b/issue?id=1881894
emoryFile.java
963cd006c45716b034f656bf7e7179e6476f7e4d 29-May-2009 Bjorn Bringert <bringert@android.com> Allow creating AssetFileDescriptors for MemoryFiles.

This allows content providers to use in-memory data to implement
ContentProvider.openAssetFile(), instead of just normal files
and sockets as before.

To test cross-process use of AssetFileDescriptors for MemoryFiles,
a test content provider and a client for it are added to
AndroidTests.

Fixes http://b/issue?id=1871731
emoryFile.java
7c49790cde0acb494b6e8980662842c95dd8859a 01-Jun-2009 Android (Google) Code Review <android-gerrit@google.com> am 162c9d0e: Merge change 2805 into donut

Merge commit '162c9d0e90eaa71adc8c7d1456d1a9a95e638c47'

* commit '162c9d0e90eaa71adc8c7d1456d1a9a95e638c47':
base: Rename WRITE_SDCARD -> WRITE_EXTERNAL_STORAGE
5a3a77dabd744d5be79d7745c2a977c108a9ad98 01-Jun-2009 San Mehat <san@google.com> base: Rename WRITE_SDCARD -> WRITE_EXTERNAL_STORAGE

Signed-off-by: San Mehat <san@google.com>
uild.java
0ad6dc0ebc5c6c92b4f1e9eed427efce7b46de09 29-May-2009 Bjorn Bringert <bringert@android.com> am 761e0918: Unmap memory in MemoryFile.close().

Merge commit '761e0918d30b6a3f292625b44b86dffd1538bc78'

* commit '761e0918d30b6a3f292625b44b86dffd1538bc78':
Unmap memory in MemoryFile.close().
761e0918d30b6a3f292625b44b86dffd1538bc78 29-May-2009 Bjorn Bringert <bringert@android.com> Unmap memory in MemoryFile.close().

As reported in http://b/issue?id=1398215 MemoryFile did not
munmap(2) the ashmem region after closing it. This
causes the process to leak virtual address space.

This change fixes the problem by calling munmap(2) in
close(). The unmapping is done by a helper method deactivate().
The change also replaces the use of an int for the
file descriptor with a FileDescriptor object to
make sure that we keep track of when the file descriptor
has been closed. I chose to implement it this way because I
will need decativate() and a FileDescriptor object in an
upcoming change that allows sending MemoryFile file
descriptors between processes.

The change also adds a number of tests for the behavior
of close(). The testCloseRead() and testCloseWrite() fail
with the old MemoryFile implementation, and testCloseLeak()
causes a segfault. They all pass now.
emoryFile.java
0c66b4bcfb5a1c477f549d846a20ec0dc380dde2 29-May-2009 Bjorn Bringert <bringert@android.com> am 9fc2e9c9: MemoryFile constructor and native methods throw IOExceptions.

Merge commit '9fc2e9c965c68d56a0caf812f7f6d38d15317063'

* commit '9fc2e9c965c68d56a0caf812f7f6d38d15317063':
MemoryFile constructor and native methods throw IOExceptions.
9fc2e9c965c68d56a0caf812f7f6d38d15317063 28-May-2009 Bjorn Bringert <bringert@android.com> MemoryFile constructor and native methods throw IOExceptions.

These native methods in android.os.MemoryFile throw IOException but their
Java declarations did not include "throws IOException":
native_open(),native_mmap(),native_read(),native_write(),native_pin()

The MemoryFile(String,int) constructor calls native_open and
native_mmap, but does not declare that it throws IOException. The other
Java methods that call the native methods do actually declare that they
throw IOException.

This means that any code that created memory files could throw
an IOException, without knowing about it.

This changes adds "throws IOException" to the native methods and to
the constructor. The constructor change changes the public API, but
maintains binary compatibility. There is some precedent for making
source incompatible source API changes for this sort of thing
(see https://mondrian.corp.google.com/changelist/124214-p9).

The change also makes the native methods static, which
they seem to have been intended to be, as indicated by the
second parameter to the native implementations being named
"clazz".

This requires changes to the Compatibility Test Suite to catch the exceptions.
This is done in https://android-git.corp.google.com/g/2617
Unfortunately that change must be submitted together with this one in order
not to break the build.

Fixes http://b/issue?id=1881829
emoryFile.java
a742dc421bd17117ec802b944190a1c731e05a91 23-May-2009 Android (Google) Code Review <android-gerrit@google.com> am fea1a459: Merge change 2364 into donut

Merge commit 'fea1a459aaebc5fd66b12520312ddbe09547f094'

* commit 'fea1a459aaebc5fd66b12520312ddbe09547f094':
Initial checkin for App Fuel Gauge infrastructure.
fea1a459aaebc5fd66b12520312ddbe09547f094 23-May-2009 Android (Google) Code Review <android-gerrit@google.com> Merge change 2364 into donut

* changes:
Initial checkin for App Fuel Gauge infrastructure.
385bb79ebb436e5672915eac2fc1a4fcdedf88b6 23-May-2009 Dianne Hackborn <hackbod@google.com> am b181118b: Define TARGET_CPU_ABI for finding native code in .apks

Merge commit 'b181118b6e58c0014da4e9d52bf38548adc73a8a'

* commit 'b181118b6e58c0014da4e9d52bf38548adc73a8a':
Define TARGET_CPU_ABI for finding native code in .apks
b181118b6e58c0014da4e9d52bf38548adc73a8a 22-May-2009 Dianne Hackborn <hackbod@google.com> Define TARGET_CPU_ABI for finding native code in .apks
uild.java
9f7d60cbfaa40bd78c0f4d5d4e3b8e8cf257e87a 22-May-2009 Android (Google) Code Review <android-gerrit@google.com> am d50a458b: Merge change 2351 into donut

Merge commit 'd50a458bb291801ab9fdc119301bc7b84b42a6e3'

* commit 'd50a458bb291801ab9fdc119301bc7b84b42a6e3':
Fix a major bug in Bundle when unparcelling from AIDL.
244fa5c05b2cc8c4c0754aeed4ee42c588ea89d1 22-May-2009 Amith Yamasani <yamasani@google.com> Initial checkin for App Fuel Gauge infrastructure.

This adds the PowerProfile class and data file that provides power consumption numbers
for different subsystems. Also added Audio/Video subsystems to track on a per UID basis.
atteryStats.java
6aff905048ba3b03724f17e2aba9089872e14cd2 22-May-2009 Dianne Hackborn <hackbod@google.com> Fix a major bug in Bundle when unparcelling from AIDL.

There was a serious problem in the Bundle(Parcel) and readFromParcel() methods,
where it wasn't doing the copying of the Parcel that Parcel.readBundle() does
and is a basic requirement for it to work correctly.

This re-arranges the code to make all of these functions (hopefully) correct.

Also fix a problem in Parcel where we were not duping fds when copying data from
one Parcel to another.
undle.java
arcel.java
9d248d4ab4ae0923dcd5c61fafb99ffa8d65d1d7 20-May-2009 Dianne Hackborn <hackbod@google.com> am d62ad4f1: Fix issue #1859814: Add android.os.Build.MANUFACTURER

Merge commit 'd62ad4f120e92fd597f44caf125ac853ac0ea11c'

* commit 'd62ad4f120e92fd597f44caf125ac853ac0ea11c':
Fix issue #1859814: Add android.os.Build.MANUFACTURER
d62ad4f120e92fd597f44caf125ac853ac0ea11c 20-May-2009 Dianne Hackborn <hackbod@google.com> Fix issue #1859814: Add android.os.Build.MANUFACTURER
uild.java
e27a8c9b1e85f889d984d74f92801b328f33dfcd 20-May-2009 San Mehat <san@google.com> am 3e458241: process: Add setProcessGroup() hidden API call to set the cgroup of a process and all its child threads.

Merge commit '3e458241d9930465a20a861ecb42744355d48e48'

* commit '3e458241d9930465a20a861ecb42744355d48e48':
process: Add setProcessGroup() hidden API call to set the cgroup of
3e458241d9930465a20a861ecb42744355d48e48 19-May-2009 San Mehat <san@google.com> process: Add setProcessGroup() hidden API call to set the cgroup of
a process and all its child threads.

Signed-off-by: San Mehat <san@google.com>
rocess.java
62da8461ed5317fe78ae5e3793662694e7fc99a3 14-May-2009 Dianne Hackborn <hackbod@google.com> Implement compatibility support for WRITE_SDCARD permission.

Now old applications will automatically be granted it. Also renamed it from
SDCARD_WRITE to WRITE_SDCARD to be consistent with our other permissions,
and re-arranged how we do targetSdkVersion to actually be usuable for this
kind of stuff.

Note that right now this results in basically all apps being given the
WRITE_SDCARD permission, because their targetSdkVersion is not set. I will
be dealing with that in a future change.
uild.java
53071d6d159f6dfd6fe0328a39bcf967ef308a64 14-May-2009 Michael Chan <mchan@android.com> Added LatencyTimer to ease latency measurements

new file: core/java/android/os/LatencyTimer.java
modified: core/java/android/view/MotionEvent.java
modified: core/java/android/view/ViewRoot.java
modified: services/java/com/android/server/InputDevice.java
modified: services/java/com/android/server/KeyInputQueue.java
modified: services/java/com/android/server/WindowManagerService.java
atencyTimer.java
a96cbb435d7b2197ab2b61fd98d14cbd6e0c5c3d 14-May-2009 Dianne Hackborn <hackbod@google.com> Implement compatibility support for WRITE_SDCARD permission.

Now old applications will automatically be granted it. Also renamed it from
SDCARD_WRITE to WRITE_SDCARD to be consistent with our other permissions,
and re-arranged how we do targetSdkVersion to actually be usuable for this
kind of stuff.

Note that right now this results in basically all apps being given the
WRITE_SDCARD permission, because their targetSdkVersion is not set. I will
be dealing with that in a future change.
uild.java
aa2b7237d1e8c0c833fc19cd9d25a8d3700244a4 14-May-2009 Android (Google) Code Review <android-gerrit@google.com> am 2a5cfe51: Merge change 1590 into donut

Merge commit '2a5cfe519298702ef71ff8755b14f8daf6a92b2a'

* commit '2a5cfe519298702ef71ff8755b14f8daf6a92b2a':
Add wifi multicast filter api (enable/disable).
a9e0bdbbd06c90c8f79ef6d59afedc1401c4926f 14-May-2009 Romain Guy <romainguy@android.com> am d4103d0d: Fix the build

Merge commit 'd4103d0d143f3774a2fc9e35afb0fffc2160d7fc'

* commit 'd4103d0d143f3774a2fc9e35afb0fffc2160d7fc':
Fix the build
a64b860749ad7e5f9e887013d87b56b928c5d405 14-May-2009 Android (Google) Code Review <android-gerrit@google.com> am aa642c0c: Merge changes 1591,1596 into donut

Merge commit 'aa642c0cc20293137376d44f8221876c121e5be9'

* commit 'aa642c0cc20293137376d44f8221876c121e5be9':
Get the backup calling through to the file backup helper.
Fix typos.
Add a new feature to android.os.Debug to add the ability to inject only specific fields when calling setFieldsOn().
Fixes #1836075. Adds consistency checks for the View hierarchy. To enable them, you need a debug build and ViewDebug.sConsistencyCheckEnabled set to true in debug.prop. This change also lets you easily enable drawing and layout profiling in ViewRoot by setting ViewRoot.sProfileDrawing, ViewRoot.sProfileLayout and ViewRoot.sShowFps in debug.prop with a debug build.
Add Intent.ACTION_APP_ERROR
2a5cfe519298702ef71ff8755b14f8daf6a92b2a 14-May-2009 Android (Google) Code Review <android-gerrit@google.com> Merge change 1590 into donut

* changes:
Add wifi multicast filter api (enable/disable). Fixes 1833432. Automatically re-disables any request when the app exits/crashes. Also hooked into Battery Stats for power managment analysis.
d4103d0d143f3774a2fc9e35afb0fffc2160d7fc 14-May-2009 Romain Guy <romainguy@android.com> Fix the build
ebug.java
c4b11a79fb164310af03c1190622fe52e3695d2b 14-May-2009 Romain Guy <romainguy@android.com> Add a new feature to android.os.Debug to add the ability to inject only specific fields when calling setFieldsOn().
ebug.java
5347bd4cda2b6afc18f8acab48e52131f35ed13c 14-May-2009 Robert Greenwalt <robdroid@android.com> Add wifi multicast filter api (enable/disable).
Fixes 1833432. Automatically re-disables any request when the app
exits/crashes. Also hooked into Battery Stats for power managment analysis.
atteryStats.java
849e89c94d206d9723fd5635ed6e7a69814849e3 09-May-2009 Dianne Hackborn <hackbod@google.com> am 851a541: Implement targetSdkVersion and maxSdkVersion, plus version c

Merge commit '851a54143c15a1c33361efae2db3f7f45059b472'

* commit '851a54143c15a1c33361efae2db3f7f45059b472':
Implement targetSdkVersion and maxSdkVersion, plus version code names.
851a54143c15a1c33361efae2db3f7f45059b472 08-May-2009 Dianne Hackborn <hackbod@google.com> Implement targetSdkVersion and maxSdkVersion, plus version code names.

This adds new attributes for specifying a targetSdkVersion and maxSdkVersion.
There is a new ApplicationInfo flag that is set if the application has set
its targetSdkVersion to the current platform or later. Also you can now
use a string for minSdkVersion and targetSdkVerion, to indicate you are
building against a development tree instead of an official platform.
uild.java
3531fdb1d9a0ca536bd7a7a27d35b3e62c318ad9 08-May-2009 The Android Open Source Project <initial-contribution@android.com> merge 55280a9

Merge commit '55280a9'
55280a91884b9256e8db6af6a09f28b3feeaa9d8 08-May-2009 Dianne Hackborn <hackbod@google.com> Improve shutdown process to send broadcast for applications.

This introduces a new class in the base platform for performing a clean
shutdown (which was copied from the classes in the policies). It
includes new features to send a shutdown broadcast for applications
to do cleanup, and ot have the activity manager pause the current
activity before proceeding with the shutdown. These facilities are
also use to write at the most recent stat files for sync, battery
and user activity.
ower.java
7a1355950172b7a549820e9a2cd4a9b2099ec32f 06-May-2009 Dianne Hackborn <hackbod@google.com> merged 231cc608d06ffc31c24bf8aa8c8275bdd2636581
231cc608d06ffc31c24bf8aa8c8275bdd2636581 28-Apr-2009 Dianne Hackborn <hackbod@google.com> Rewrite SyncStorageEngine to use flat files and in-memory data structures.

The previous implementation used a database for storing all of its state, which could cause
a significant amount of IO activity as its tables were updated through the stages of a sync.
This new implementation replaces that in-memory data structures, with hand-written code
for writing them to persistent storage.

There are now 4 files associated with this class, holding various pieces of its state that
should be consistent. These are everything from a main XML file of account information that
must always be retained, to a binary file of per-day statistics that can be thrown away at
any time. Writes of these files as scheduled at various times based on their importance of
the frequency at which they change.

Because the database no longer exists, there needs to be a new explicit interface for
interacting with the sync manager database. This is provided by new APIs on IContentService,
with a hidden method on ContentResolver to retrieve the IContentService so that various
system entities can use it. Other changes in other projects are required to update to the
new API.

The goal here is to have as little an impact on the code and functionality outside of
SyncStorageEngine, though due to the necessary change in API it is still somewhat extensive.
emoteCallbackList.java
d52d8dee7768e04b936b8df86028823bdc5b1dc6 05-May-2009 Android (Google) Code Review <android-gerrit@google.com> am 2c9eec6: Merge change 952 into donut

Merge commit '2c9eec6b1d072a665b17dd4285260aa4d4fadcf4'

* commit '2c9eec6b1d072a665b17dd4285260aa4d4fadcf4':
Debug: Minor cleanup
e9bfd9b873fcce4fad31c99f51a14449ee074c6b 04-May-2009 Dave Bort <dbort@android.com> Debug: Minor cleanup

Address crazybob's comments.

Avoid referring to a static in one of the helper methods.
ebug.java
c34c8c6fa1164576cfbe5db5fce9fda458aae18e 04-May-2009 Android (Google) Code Review <android-gerrit@google.com> am 7ff9436: Merge change 911 into donut

Merge commit '7ff943673e48a912eb7cc5add08e206c2c25d68e'

* commit '7ff943673e48a912eb7cc5add08e206c2c25d68e':
Debug: Add setPropertiesOn(), and @hide it for now
7ff943673e48a912eb7cc5add08e206c2c25d68e 04-May-2009 Android (Google) Code Review <android-gerrit@google.com> Merge change 911 into donut

* changes:
Debug: Add setPropertiesOn(), and @hide it for now
bf61e19b64cab7df4367c7c4db0d374b814683a5 04-May-2009 Romain Guy <romainguy@android.com> am 6a1ae64: Fix another HTML formatting in android.os.AsyncTask

Merge commit '6a1ae64f7735a3817713a223096bf8034f78a620'

* commit '6a1ae64f7735a3817713a223096bf8034f78a620':
Fix another HTML formatting in android.os.AsyncTask
61cf54d3a0169cbb17c36bf32cfc5d8d6fba4532 04-May-2009 Android (Google) Code Review <android-gerrit@google.com> am 8d121ce: Merge change 917 into donut

Merge commit '8d121ce945204e96d90d3338ecafe637b0494ed8'

* commit '8d121ce945204e96d90d3338ecafe637b0494ed8':
Fix HTML formatting in android.os.AsyncTask
6a1ae64f7735a3817713a223096bf8034f78a620 03-May-2009 Romain Guy <romainguy@android.com> Fix another HTML formatting in android.os.AsyncTask
syncTask.java
b97aec64be8a3f8c37b1735c981167b958d39403 03-May-2009 Romain Guy <romainguy@android.com> Fix HTML formatting in android.os.AsyncTask
syncTask.java
1ce5bd34632e91a928aa12a30b1c160a35db033b 23-Apr-2009 Dave Bort <dbort@android.com> Debug: Add setPropertiesOn(), and @hide it for now

This lets a caller reflectively set the static fields of a class
based on debug build properties.

Signed-off-by: Dave Bort <dbort@android.com>
ebug.java
d1d2af6846156e9deddac7a256e6c3b756073267 29-Apr-2009 Android (Google) Code Review <android-gerrit@google.com> am 3eab744: Merge change 376 into donut

Merge commit '3eab744d018924189b1b8f5530accd52e91213de'

* commit '3eab744d018924189b1b8f5530accd52e91213de':
Add support for changing a threads scheduler group. Three groups are available (default, background non interactive, foreground boost). Setting a thread priority to PRIORITY_BACKGROUND will transparently change groups to background
137b0c9d6430ccb519c82a1198048cf413e06c5e 29-Apr-2009 Android (Google) Code Review <android-gerrit@google.com> am 0b8ffd1: Merge change 460 into donut

Merge commit '0b8ffd17bc6641fc522db3e842a868b6cdbf6d82'

* commit '0b8ffd17bc6641fc522db3e842a868b6cdbf6d82':
More optimization of dumpsys output.
3eab744d018924189b1b8f5530accd52e91213de 27-Apr-2009 Android (Google) Code Review <android-gerrit@google.com> Merge change 376 into donut

* changes:
Add support for changing a threads scheduler group. Three groups are available (default, background non interactive, foreground boost). Setting a thread priority to PRIORITY_BACKGROUND will transparently change groups to background
e9d376b801b7890b1ef5006ed55de4208e64bb63 21-Apr-2009 San Mehat <san@google.com> Add support for changing a threads scheduler group. Three groups are available (default, background non interactive, foreground boost). Setting a thread priority to PRIORITY_BACKGROUND will transparently change groups to background

Signed-off-by: San Mehat <san@google.com>
rocess.java
1d442e0d990b581357f33f5463c7c5cb49b551e8 21-Apr-2009 Dianne Hackborn <hackbod@google.com> More optimization of dumpsys output.

There are three major classes of changes here:

- Avoid writing lines where their values are often empty, false, or some other typical thing.
- Use partial writes to the PrintWriter to avoid creating temporary strings.
- Use StringBuilder where we need to generate real String objects (and where possible cache the result).
atteryStats.java
74e258d63eccef41da923adad47bd2b20056aa5f 19-Apr-2009 Evan Millar <> AI 146854: am: CL 146853 Add kernel wakelock data to batteryinfo dump.
Original author: emillar

Automated import of CL 146854
atteryStats.java
rocess.java
c64edde69d18498fb2954f71a546357b07ab996a 18-Apr-2009 Evan Millar <> AI 146853: Add kernel wakelock data to batteryinfo dump.
BUG=1755458

Automated import of CL 146853
atteryStats.java
rocess.java
935ae463d495d41155e27feb849768ad2b8b16db 14-Apr-2009 Dianne Hackborn <> AI 145994: Integrate #145778 from Donut.

Automated import of CL 145994
ooper.java
f8a7ceaef2e7d5cd530c9426bde91b6fa9a40b75 11-Apr-2009 Andy Stadler <> AI 145778: Manual merge changes 145382-145384 from cupcake.

Automated import of CL 145778
ooper.java
599c918d9794b51992de85b42befa0c71d9ec07f 08-Apr-2009 Andy McFadden <> AI 144931: Added a (hidden) way to "pre-cache" register maps.
The 50 methods that appeared on the GC stacks of the most applications
require 13KB of native heap for their uncompressed register maps, and
the full set took 5ms to uncompress. Pre-computation doesn't represent
a significant improvement in space or time, at the cost of a big pile
of strings in ZygoteInit.
I'm leaving the method in ZygoteInit, but it's not called, and the
static final String[] of method descriptors is empty. We may want to
revisit this later.
BUG=1729570

Automated import of CL 144931
ebug.java
8fd3a039f8e8cfd9d2d46a3853901e30b19c30c0 03-Apr-2009 Evan Millar <> AI 144417: am: CL 144379 Make checkin batteryinfo dump more terse
Original author: emillar

Automated import of CL 144417
atteryStats.java
0ba31ed95ed7ac9b5627973f0bb1b5d9147ea95f 03-Apr-2009 Evan Millar <> AI 144410: am: CL 144333 Change the way the battery level tracking code works in BatteryStats. Before we simply kept track of the last
2 levels as recorded at plug and unplug events. During charge cycles this would be useful because it would tell us
what the start and end levels were in the last discharge cycle. However during a discharge cycle this information could
be misleading as it would give you the level at the last unplug event (beginning the the discharge cycle) and last plug
event (end of the previous discharge cycle).
Now we are still keeping track of 2 values, but they are "discharge cycle start level" and "discharge cycle current level".
During a discharge cycle this will give you the level the current discharge cycle started at, and the current level. During
a charge cycle the same data will be supplied as before (the start/end of the last discharge cycle).
Original author: emillar

Automated import of CL 144410
atteryStats.java
e84de8d702bd26fb1e5b55f3cfdd953d8a31ec22 03-Apr-2009 Evan Millar <> AI 144379: Make checkin batteryinfo dump more terse
BUG=1755458

Automated import of CL 144379
atteryStats.java
633a1740ce5951ccb5d478ba2795f6f4fada1646 03-Apr-2009 Evan Millar <> AI 144333: Change the way the battery level tracking code works in BatteryStats. Before we simply kept track of the last
2 levels as recorded at plug and unplug events. During charge cycles this would be useful because it would tell us
what the start and end levels were in the last discharge cycle. However during a discharge cycle this information could
be misleading as it would give you the level at the last unplug event (beginning the the discharge cycle) and last plug
event (end of the previous discharge cycle).
Now we are still keeping track of 2 values, but they are "discharge cycle start level" and "discharge cycle current level".
During a discharge cycle this will give you the level the current discharge cycle started at, and the current level. During
a charge cycle the same data will be supplied as before (the start/end of the last discharge cycle).
B=144249

Automated import of CL 144333
atteryStats.java
84d8d693bd79082069d1781284213030006841b7 02-Apr-2009 Jack Palevich <> AI 144129: Remove hidden class android.os.Exec.
Change BugReportService to use java.os.ProcessBuilder instead.
Remove unused import from DumpStateReceiver.
An earlier change list created a private copy of this class for Term.
BUG=1750582

Automated import of CL 144129
xec.java
617f877c06c82584a38f41bb60d836e08c5e3bda 01-Apr-2009 Dianne Hackborn <> AI 143800: am: CL 143748 Fix issue #1743326 (More battery stats)
Adds stats for:
- Number of raw user events that have happened in the system.
- Number of times user activity has been reported, dividied by UID and type of activity.
- Duration of screen brightness levels in 4 buckets.
- Per-UID tracking of who has turned on Wifi and how long we can attribute it being on because of them.
Original author: hackbod
Merged from: //branches/cupcake/...

Automated import of CL 143800
atteryStats.java
ocalPowerManager.java
bed30e1b6ea4a1d71dbe5e731c274cc66974283a 31-Mar-2009 Dianne Hackborn <> AI 143823: am: CL 143800 am: CL 143748 Fix issue #1743326 (More battery stats)
Adds stats for:
- Number of raw user events that have happened in the system.
- Number of times user activity has been reported, dividied by UID and type of activity.
- Duration of screen brightness levels in 4 buckets.
- Per-UID tracking of who has turned on Wifi and how long we can attribute it being on because of them.
Original author: hackbod
Merged from: //branches/cupcake/...
Original author: android-build
Merged from: //branches/donutburger/...

Automated import of CL 143823
atteryStats.java
ocalPowerManager.java
c38c0f6b9869889fbb6743275e35f120a27f6361 31-Mar-2009 Evan Millar <> AI 143720: am: CL 143710 am: CL 143615 -Add more stats:
-total network sent/received
-total full/partial wakelock times.
-Format the network sent/received amounts to be more easily readable.
Original author: emillar
Merged from: //branches/cupcake/...
Original author: android-build
Merged from: //branches/donutburger/...

Automated import of CL 143720
atteryStats.java
22ac043ec139714644256cc5e2a9ff8d126ade00 31-Mar-2009 Evan Millar <> AI 143710: am: CL 143615 -Add more stats:
-total network sent/received
-total full/partial wakelock times.
-Format the network sent/received amounts to be more easily readable.
Original author: emillar
Merged from: //branches/cupcake/...

Automated import of CL 143710
atteryStats.java
05bc50ddba02299e7dd0a4f7be1d46254d8ff99d 28-Mar-2009 Evan Millar <> AI 143358: am: CL 143207 am: CL 142996 Fix bug in human readable battery stats dumping code which caused the wifi lock times to be off by an order of magnitude.
Original author: emillar
Merged from: //branches/cupcake/...
Original author: android-build
Merged from: //branches/donutburger/...

Automated import of CL 143358
atteryStats.java
2a15f38ec2072141de086720a8e914c51056a69d 28-Mar-2009 Evan Millar <> AI 143207: am: CL 142996 Fix bug in human readable battery stats dumping code which caused the wifi lock times to be off by an order of magnitude.
Original author: emillar
Merged from: //branches/cupcake/...

Automated import of CL 143207
atteryStats.java
4840e143df9804e3399a4e0341c0601f80d65d6e 25-Mar-2009 Dianne Hackborn <> Automated import from //branches/master/...@142348,142348
atteryStats.java
627bba736d022c39696b7c582a6af5592d2b8c33 25-Mar-2009 Dianne Hackborn <> Automated import from //branches/donutburger/...@142347,142347
atteryStats.java
e68ffcb5764152da6d36adc8f2918200b4472c23 25-Mar-2009 Joe Onorato <> Automated import from //branches/donutburger/...@140997,140997
ocalPowerManager.java
36197e77c34b33135b4a3dc89d36ce80320dcd72 25-Mar-2009 Joe Onorato <> Automated import from //branches/master/...@141000,141000
ocalPowerManager.java
07970839eb39a1a18013c8bd15052b761736208e 25-Mar-2009 Andy McFadden <> Automated import from //branches/donutburger/...@140700,140700
ebug.java
f93f02fb8a6b6bdbc294085d89e733dcd5078630 25-Mar-2009 Eric Shienbrood <> Automated import from //branches/master/...@140680,140680
atteryStats.java
d4c5f8919b0522bcaab41a5863c313fec52d3a79 25-Mar-2009 Eric Shienbrood <> Automated import from //branches/donutburger/...@140679,140679
atteryStats.java
7b0b1ed979aa665175bf3952c8902ce13c763ab8 19-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import //branches/master/...@140412
ebug.java
emoteCallbackList.java
105925376f8d0f6b318c9938c7b83ef7fef094da 19-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //branches/cupcake_rel/...@140373
atteryStats.java
ardware.java
HardwareService.aidl
ower.java
emoteCallbackList.java
ba87e3e6c985e7175152993b5efcc7dd2f0e1c93 13-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //branches/cupcake_rel/...@138607
MountService.aidl
4df2423a947bcd3f024cc3d3a1a315a8dc428598 05-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //depot/cupcake/@136594
esultReceiver.aidl
esultReceiver.java
9066cfe9886ac131c34d59ed0e2d287b0e3c0087 04-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //depot/cupcake/@135843
syncResult.java
syncTask.java
adParcelableException.java
ase64Utils.java
atteryManager.java
atteryStats.java
inder.java
roadcaster.java
uild.java
undle.aidl
undle.java
onditionVariable.java
ountDownTimer.java
eadObjectException.java
ebug.java
nvironment.java
xec.java
ileObserver.java
ileUtils.java
andler.java
andlerState.java
andlerStateMachine.java
andlerThread.java
ardware.java
Binder.java
CheckinService.aidl
HardwareService.aidl
Interface.java
Messenger.aidl
MountService.aidl
NetStatService.aidl
ParentalControlCallback.aidl
PermissionController.aidl
PowerManager.aidl
ServiceManager.java
ocalPowerManager.java
ooper.java
ailboxNotAvailableException.java
emoryFile.java
essage.aidl
essage.java
essageQueue.java
essenger.aidl
essenger.java
etStat.java
arcel.java
arcelFileDescriptor.aidl
arcelFileDescriptor.java
arcelFormatException.java
arcelable.java
atternMatcher.aidl
atternMatcher.java
ower.java
owerManager.java
rocess.java
egistrant.java
egistrantList.java
emoteCallbackList.java
emoteException.java
emoteMailException.java
erviceManager.java
erviceManagerNative.java
tatFs.java
ystemClock.java
ystemProperties.java
ystemService.java
okenWatcher.java
EventObserver.java
ibrator.java
ackage.html
d83a98f4ce9cfa908f5c54bbd70f03eec07e7553 04-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //depot/cupcake/@135843
syncResult.java
syncTask.java
adParcelableException.java
ase64Utils.java
atteryManager.java
atteryStats.java
inder.java
roadcaster.java
uild.java
undle.aidl
undle.java
onditionVariable.java
ountDownTimer.java
eadObjectException.java
ebug.java
nvironment.java
xec.java
ileObserver.java
ileUtils.java
andler.java
andlerState.java
andlerStateMachine.java
andlerThread.java
ardware.java
Binder.java
CheckinService.aidl
HardwareService.aidl
Interface.java
Messenger.aidl
MountService.aidl
NetStatService.aidl
ParentalControlCallback.aidl
PermissionController.aidl
PowerManager.aidl
ServiceManager.java
ocalPowerManager.java
ooper.java
ailboxNotAvailableException.java
emoryFile.java
essage.aidl
essage.java
essageQueue.java
essenger.aidl
essenger.java
etStat.java
arcel.java
arcelFileDescriptor.aidl
arcelFileDescriptor.java
arcelFormatException.java
arcelable.java
atternMatcher.aidl
atternMatcher.java
ower.java
owerManager.java
rocess.java
egistrant.java
egistrantList.java
emoteCallbackList.java
emoteException.java
emoteMailException.java
erviceManager.java
erviceManagerNative.java
tatFs.java
ystemClock.java
ystemProperties.java
ystemService.java
okenWatcher.java
EventObserver.java
ibrator.java
ackage.html
076357b8567458d4b6dfdcf839ef751634cd2bfb 03-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //depot/cupcake/@132589
atteryStats.java
arcelFileDescriptor.java
3dec7d563a2f3e1eb967ce2054a00b6620e3558c 03-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //depot/cupcake/@137055
atteryStats.java
arcelFileDescriptor.java
3001a035439d8134a7d70d796376d1dfbff3cdcd 19-Feb-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //branches/cupcake/...@132276
atteryStats.java
andlerInterface.java
CheckinService.aidl
PowerManager.aidl
d24b8183b93e781080b2c16c487e60d51c12da31 11-Feb-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //branches/cupcake/...@130745
atteryStats.java
inder.java
uild.java
ebug.java
nvironment.java
Binder.java
CheckinService.aidl
MountService.aidl
NetStatService.aidl
etStat.java
f1e484acb594a726fb57ad0ae4cfe902c7f35858 22-Jan-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //branches/cupcake/...@127436
atteryStats.java
9266c558bf1d21ff647525ff99f7dadbca417309 16-Jan-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //branches/cupcake/...@126645
ebug.java
b798689749c64baba81f02e10cf2157c747d6b46 10-Jan-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //branches/cupcake/...@125939
andlerState.java
andlerStateMachine.java
PowerManager.aidl
ower.java
f013e1afd1e68af5e3b868c26a653bbfb39538f8 18-Dec-2008 The Android Open Source Project <initial-contribution@android.com> Code drop from //branches/cupcake/...@124589
syncTask.java
atteryManager.java
atteryStats.java
ebug.java
andler.java
CheckinService.aidl
PowerManager.aidl
ooper.java
rocess.java
54b6cfa9a9e5b861a9930af873580d6dc20f773c 21-Oct-2008 The Android Open Source Project <initial-contribution@android.com> Initial Contribution
syncResult.java
adParcelableException.java
ase64Utils.java
atteryManager.java
inder.java
roadcaster.java
uild.java
undle.aidl
undle.java
onditionVariable.java
ountDownTimer.java
eadObjectException.java
ebug.java
nvironment.java
xec.java
ileObserver.java
ileUtils.java
andler.java
andlerInterface.java
andlerThread.java
ardware.java
Binder.java
CheckinService.aidl
HardwareService.aidl
Interface.java
Messenger.aidl
MountService.aidl
NetStatService.aidl
ParentalControlCallback.aidl
PermissionController.aidl
PowerManager.aidl
ServiceManager.java
ocalPowerManager.java
ooper.java
ailboxNotAvailableException.java
emoryFile.java
essage.aidl
essage.java
essageQueue.java
essenger.aidl
essenger.java
etStat.java
arcel.java
arcelFileDescriptor.aidl
arcelFileDescriptor.java
arcelFormatException.java
arcelable.java
atternMatcher.aidl
atternMatcher.java
ower.java
owerManager.java
rocess.java
egistrant.java
egistrantList.java
emoteCallbackList.java
emoteException.java
emoteMailException.java
erviceManager.java
erviceManagerNative.java
tatFs.java
ystemClock.java
ystemProperties.java
ystemService.java
okenWatcher.java
EventObserver.java
ibrator.java
ackage.html