)]}'
{
  "log": [
    {
      "commit": "ec3cad8ec6b18da75b179d0fd279d652ae8fc1aa",
      "tree": "aab4d43b1b72f62a53bf9ed7363c5e24b18bce33",
      "parents": [
        "7b04317be85245ec3987421fc5cfa73df9442ae4",
        "5b77dab23469273d41f9c530d947ac055765e6ea"
      ],
      "author": {
        "name": "San Mehat",
        "email": "san@google.com",
        "time": "Tue Jan 26 14:18:47 2010 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jan 26 14:18:47 2010 -0800"
      },
      "message": "Merge \"MountService: Explicitly query volume state on startup\""
    },
    {
      "commit": "7b04317be85245ec3987421fc5cfa73df9442ae4",
      "tree": "d49e623ef246f7133652b8e6155dc7ed243ed26d",
      "parents": [
        "b91f4643b66dc263d5c69ced9faf6980edec5583",
        "80120b43745102b3a8c635c796698d748b329222"
      ],
      "author": {
        "name": "San Mehat",
        "email": "san@google.com",
        "time": "Tue Jan 26 13:38:41 2010 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jan 26 13:38:41 2010 -0800"
      },
      "message": "Merge \"NativeDaemonConnector: fix doListCommand() to return *all* list elements\""
    },
    {
      "commit": "5b77dab23469273d41f9c530d947ac055765e6ea",
      "tree": "4b9625ce58751940adcd9a2435595aa62d8dd025",
      "parents": [
        "80120b43745102b3a8c635c796698d748b329222"
      ],
      "author": {
        "name": "San Mehat",
        "email": "san@google.com",
        "time": "Tue Jan 26 13:28:50 2010 -0800"
      },
      "committer": {
        "name": "San Mehat",
        "email": "san@google.com",
        "time": "Tue Jan 26 13:28:50 2010 -0800"
      },
      "message": "MountService: Explicitly query volume state on startup\n\nSigned-off-by: San Mehat \u003csan@google.com\u003e\n"
    },
    {
      "commit": "80120b43745102b3a8c635c796698d748b329222",
      "tree": "b765a470284fd3aa694a7cb6f786c58506bd4a94",
      "parents": [
        "03b58bdf0e97f9e3bd247cb731b69fa87a845eeb"
      ],
      "author": {
        "name": "San Mehat",
        "email": "san@google.com",
        "time": "Tue Jan 26 12:48:39 2010 -0800"
      },
      "committer": {
        "name": "San Mehat",
        "email": "san@google.com",
        "time": "Tue Jan 26 13:18:03 2010 -0800"
      },
      "message": "NativeDaemonConnector: fix doListCommand() to return *all* list elements\n\nSigned-off-by: San Mehat \u003csan@google.com\u003e\n"
    },
    {
      "commit": "b91f4643b66dc263d5c69ced9faf6980edec5583",
      "tree": "2a39bc27ee50de7056b4495905070cbb853ed8f4",
      "parents": [
        "8aa2e8939c61d788cbc192098465e79f584e173a",
        "80202c8cb8c8e4ab507079e79b864c61a8eeeee9"
      ],
      "author": {
        "name": "Chris Tate",
        "email": "ctate@android.com",
        "time": "Tue Jan 26 12:29:13 2010 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jan 26 12:29:13 2010 -0800"
      },
      "message": "Merge \"Move towards a formal public API for backup and restore\""
    },
    {
      "commit": "8aa2e8939c61d788cbc192098465e79f584e173a",
      "tree": "83f2ea06758e1bb3f28a8fabedae29c3a5b89582",
      "parents": [
        "148fea03caed2a082387c45ae12a91561b8e41e5"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Fri Jan 22 11:31:30 2010 -0800"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Tue Jan 26 12:28:15 2010 -0800"
      },
      "message": "More device admin work: description, policy control.\n\nThere is now a description attribute associated with all components,\nthat can supply user-visible information about what the component does.\nWe use this to show such information about device admins, and wallpapers\nare also updated to be able to show this in addition to the existing\ndescription in their meta-data.\n\nThis also defines security control for admins, requiring that they\ndeclare the policies they will touch, and enforcing that they do\nso to be able to use various APIs.\n"
    },
    {
      "commit": "508370f0cb5d3e03b1bcf04f1164ea1f384f496f",
      "tree": "a2c873a202605c3245c1fd4aef7e835cc6782d1d",
      "parents": [
        "9903f71b046e29bf6c1a3b7d3dc7facf372aa6f4",
        "1edab2b551995a8df25f4b533405d6003b8b8b66"
      ],
      "author": {
        "name": "David Turner",
        "email": "digit@google.com",
        "time": "Tue Jan 26 11:24:47 2010 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jan 26 11:24:47 2010 -0800"
      },
      "message": "Merge \"Make PackageManager unpack gdbserver binaries at installation time.\""
    },
    {
      "commit": "09ac3c3cbc6278af127cffedb9d534449e63b683",
      "tree": "bd1a1058521b559c935474cb734af04c054a5ef3",
      "parents": [
        "996dddff64f90d8469e24107c44bfd618cf0c2dd",
        "1f2f23bd16ff798a08d73f4159ddcb621e70fc94"
      ],
      "author": {
        "name": "Robert Greenwalt",
        "email": "robdroid@android.com",
        "time": "Tue Jan 26 10:09:52 2010 -0800"
      },
      "committer": {
        "name": "Robert Greenwalt",
        "email": "robdroid@android.com",
        "time": "Tue Jan 26 10:09:52 2010 -0800"
      },
      "message": "resolved conflicts for merge of 1f2f23bd to master\n"
    },
    {
      "commit": "d1df8ac6d076ef15ba8857211da2e447b6505fb3",
      "tree": "dc726575cfa963ce7ae3bf9444b0e9c13dea8317",
      "parents": [
        "0c8569f2a345b8321ff842d76191b5d72b4bdb54"
      ],
      "author": {
        "name": "San Mehat",
        "email": "san@google.com",
        "time": "Tue Jan 26 06:17:26 2010 -0800"
      },
      "committer": {
        "name": "San Mehat",
        "email": "san@google.com",
        "time": "Tue Jan 26 07:51:05 2010 -0800"
      },
      "message": "NetworkManagementService: Start service when SystemServer starts up\n\nSigned-off-by: San Mehat \u003csan@google.com\u003e\n"
    },
    {
      "commit": "80202c8cb8c8e4ab507079e79b864c61a8eeeee9",
      "tree": "517c775feb878d11f2e10eec0074907cea724574",
      "parents": [
        "da77d0a6e7fe70b7da229077039bcca1f232bd89"
      ],
      "author": {
        "name": "Christopher Tate",
        "email": "ctate@google.com",
        "time": "Mon Jan 25 19:37:47 2010 -0800"
      },
      "committer": {
        "name": "Christopher Tate",
        "email": "ctate@google.com",
        "time": "Mon Jan 25 19:41:23 2010 -0800"
      },
      "message": "Move towards a formal public API for backup and restore\n\nThis commit makes a few changes towards establishing a formal application\ninterface for interacting with the backup/restore mechanism:\n\n1. Introduce public wrapper classes around the various binder interfaces; 3rd\nparty code will never see the binders directly.\n\n2. Progress update callbacks during a restore sequence now occur on the main\nthread, not in a binder thread [and not with system-process permissions!].\n\n3. Rename the BackupManagerService\u0027s inner \"RestoreSession\" class to avoid\nambiguity with the new public \"RestoreSession\" class.\n"
    },
    {
      "commit": "1edab2b551995a8df25f4b533405d6003b8b8b66",
      "tree": "5d6f545170ac5820c19b03e1aea6fd3332084c3d",
      "parents": [
        "8fdd45e1aa26e62fe02b053683624ac2b28bce93"
      ],
      "author": {
        "name": "David \u0027Digit\u0027 Turner",
        "email": "digit@google.com",
        "time": "Thu Jan 21 15:15:23 2010 -0800"
      },
      "committer": {
        "name": "David \u0027Digit\u0027 Turner",
        "email": "digit@google.com",
        "time": "Mon Jan 25 11:27:08 2010 -0800"
      },
      "message": "Make PackageManager unpack gdbserver binaries at installation time.\n\nNative-debuggable packages contain a lib/\u003cabi\u003e/gdbserver executable.\nThis patch ensures that the package manager will copy it to the\nproper location (/data/data/\u003cappname\u003e/lib) at installation time.\n\nNote that such packages are marked with a new ApplicationInfo flag\nnamed FLAG_NATIVE_DEBUGGABLE, to be used later by the Activity\nManager.\n"
    },
    {
      "commit": "45f61040823d8c442838f75cde8760f236603dae",
      "tree": "2c45ee66fd0458b7656bab5c0237fd5ca04950a5",
      "parents": [
        "60e8495c1699f6f4d4046a3394b1eafdeefe6d64"
      ],
      "author": {
        "name": "San Mehat",
        "email": "san@google.com",
        "time": "Sat Jan 23 08:12:43 2010 -0800"
      },
      "committer": {
        "name": "San Mehat",
        "email": "san@google.com",
        "time": "Sat Jan 23 08:12:43 2010 -0800"
      },
      "message": "MountService: Add support for renaming secure containers\n\nSigned-off-by: San Mehat \u003csan@google.com\u003e\n"
    },
    {
      "commit": "3e3a6430ea49abcdcc645a26a6f1df65acd97345",
      "tree": "72a1f2e39c6eae5dd437bb19814d745147a5f41d",
      "parents": [
        "4d02d001ef6e06583e858e63e48d1aebf54ba28d"
      ],
      "author": {
        "name": "San Mehat",
        "email": "san@google.com",
        "time": "Fri Jan 22 16:46:23 2010 -0800"
      },
      "committer": {
        "name": "San Mehat",
        "email": "san@google.com",
        "time": "Fri Jan 22 16:46:23 2010 -0800"
      },
      "message": "Fix whitespace issue causing protocol syntax error\n\nSigned-off-by: San Mehat \u003csan@google.com\u003e\n"
    },
    {
      "commit": "4d02d001ef6e06583e858e63e48d1aebf54ba28d",
      "tree": "62bc259feafbea7df30d695e0e00cff9dc0623de",
      "parents": [
        "55434a7999222d89205f32efb03da7e70dd74073"
      ],
      "author": {
        "name": "San Mehat",
        "email": "san@google.com",
        "time": "Fri Jan 22 16:07:46 2010 -0800"
      },
      "committer": {
        "name": "San Mehat",
        "email": "san@google.com",
        "time": "Fri Jan 22 16:10:29 2010 -0800"
      },
      "message": "NetworkManagementService: Introduce INetworkManagementEventObserver\n\n  Introduce a callback event observer which can be registered on the\nINetworkManagementService instance to receive events from the service.\n\nSigned-off-by: San Mehat \u003csan@google.com\u003e\n"
    },
    {
      "commit": "85fd374eabe610ab8213109ae87e2862a4da8985",
      "tree": "0626ee7bc2d4dc8504922e22ea4351b6ac13dca1",
      "parents": [
        "63454ebcc9604407152ee54e29ee91c726374f56",
        "2780e73ae7ec32418a1827671ddf0687a218ed13"
      ],
      "author": {
        "name": "Dan Egnor",
        "email": "egnor@google.com",
        "time": "Fri Jan 22 15:24:17 2010 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jan 22 15:24:17 2010 -0800"
      },
      "message": "Merge \"As requested, expand ANR event log entry (and crash/WTF too) to include process flags (including FLAG_SYSTEM, etc).\""
    },
    {
      "commit": "63454ebcc9604407152ee54e29ee91c726374f56",
      "tree": "a24606cfdc3ea2b75f0e84518f10e33714975a5a",
      "parents": [
        "bf81cacc962cdf5befdc0934fbb86008ccc11bae",
        "ed4fc8acc52d89f1d4dec853a29288c6d06717c3"
      ],
      "author": {
        "name": "San Mehat",
        "email": "san@google.com",
        "time": "Fri Jan 22 15:20:18 2010 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jan 22 15:20:18 2010 -0800"
      },
      "message": "Merge \"NetworkManagementService: Introduce API methods for configuring interfaces\""
    },
    {
      "commit": "2780e73ae7ec32418a1827671ddf0687a218ed13",
      "tree": "1e723156c81fe6632d4593baeafc8f2b0a5f5b1e",
      "parents": [
        "264ce3825892e4b5ef6af61d330832f4592130bf"
      ],
      "author": {
        "name": "Dan Egnor",
        "email": "egnor@google.com",
        "time": "Fri Jan 22 14:47:35 2010 -0800"
      },
      "committer": {
        "name": "Dan Egnor",
        "email": "egnor@google.com",
        "time": "Fri Jan 22 14:47:35 2010 -0800"
      },
      "message": "As requested, expand ANR event log entry (and crash/WTF too) to include\nprocess flags (including FLAG_SYSTEM, etc).\n"
    },
    {
      "commit": "ed4fc8acc52d89f1d4dec853a29288c6d06717c3",
      "tree": "2c74edcb02a1e294e161f0e5e039168022a695b8",
      "parents": [
        "353ced79b49269151b056c4b06dc632801b59497"
      ],
      "author": {
        "name": "San Mehat",
        "email": "san@google.com",
        "time": "Fri Jan 22 12:28:36 2010 -0800"
      },
      "committer": {
        "name": "San Mehat",
        "email": "san@google.com",
        "time": "Fri Jan 22 12:28:36 2010 -0800"
      },
      "message": "NetworkManagementService: Introduce API methods for configuring interfaces\n\nSigned-off-by: San Mehat \u003csan@google.com\u003e\n"
    },
    {
      "commit": "c0cea4857683c83e5b5df370ae1c90cc11ed25ae",
      "tree": "19651d952c8afb9eec07369215efae5948fb2d9d",
      "parents": [
        "f226e9f27baa5a29aacffab87e0c0fc52d59fe13",
        "5f64128568d815f91dcd37db43d4e26a0566b41c"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Fri Jan 22 11:59:41 2010 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Jan 22 11:59:41 2010 -0800"
      },
      "message": "am 5f641285: am b1c4a2a3: Fix issue #2364506: Phone locked up while listening to music and attempting to download an update\n\nMerge commit \u00275f64128568d815f91dcd37db43d4e26a0566b41c\u0027\n\n* commit \u00275f64128568d815f91dcd37db43d4e26a0566b41c\u0027:\n  Fix issue #2364506: Phone locked up while listening to music and attempting to download an update\n"
    },
    {
      "commit": "4141d035c7d41f39f023d7a051568dff87c7cd32",
      "tree": "f11e8f74249e199b151dab5f21ebf2cbb4f64862",
      "parents": [
        "051ab623342746b6e25676c740f6104989902de6"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu Jan 21 16:29:00 2010 -0800"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu Jan 21 16:29:00 2010 -0800"
      },
      "message": "Don\u0027t crash when there is no admin.\n"
    },
    {
      "commit": "df83afaf299666e99c519aa86e7e082b7c116e95",
      "tree": "65480fb272324aee6613d0449d40d5e078a700a8",
      "parents": [
        "04ce08f34e39928a5b8e9ea59134f255c9ff08f6"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Wed Jan 20 13:37:26 2010 -0800"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu Jan 21 14:30:57 2010 -0800"
      },
      "message": "More device policy manager / admin work.\n\nUpdate API with some new features, re-arrange how you check for valid\npasswords, and start hooking up the back-end implementation.\n"
    },
    {
      "commit": "1f2f23bd16ff798a08d73f4159ddcb621e70fc94",
      "tree": "f41d20a8d5feae27e151002e257a556a8eddc082",
      "parents": [
        "d051434773769926671bc6f98e273e385819b653",
        "9fdf82e080ea20086378e751ace245a4a1b022dc"
      ],
      "author": {
        "name": "Robert Greenwalt",
        "email": "robdroid@android.com",
        "time": "Thu Jan 21 10:05:13 2010 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Jan 21 10:05:13 2010 -0800"
      },
      "message": "am 9fdf82e0: Merge \"Try to switch to another default net on connection failure.\" into eclair\n\nMerge commit \u00279fdf82e080ea20086378e751ace245a4a1b022dc\u0027 into eclair-plus-aosp\n\n* commit \u00279fdf82e080ea20086378e751ace245a4a1b022dc\u0027:\n  Try to switch to another default net on connection failure.\n"
    },
    {
      "commit": "80ffe5d2fe8288623844c8f6c7ba1305d074a852",
      "tree": "a0974c2dfd0ac7153fbc89e3839b5ad2234eaaa3",
      "parents": [
        "db43099f9ec481afb4f24f1e08f1db720fbd3e3c",
        "670f93283b5e2445c58998153de9c476acddc37b"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@google.com",
        "time": "Thu Jan 21 08:18:15 2010 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jan 21 08:18:15 2010 -0800"
      },
      "message": "Merge \"Implement Notification.DEFAULT_LIGHTS flag.\""
    },
    {
      "commit": "670f93283b5e2445c58998153de9c476acddc37b",
      "tree": "6f55352c72e6a31ee30c26afb81b65f5f31d22a0",
      "parents": [
        "867e8eb753422bb9ef83297b72f925b92040daf9"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Wed Jan 20 12:13:36 2010 -0500"
      },
      "committer": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Wed Jan 20 22:43:47 2010 -0500"
      },
      "message": "Implement Notification.DEFAULT_LIGHTS flag.\n\nThis flag was already in the public API but did not do anything until now.\nWe now use it so we can override the default notification LED color on a per device basis.\n\nChange-Id: I0d6e239b7da2fdbeda9608d6d4de3e778aa88e2c\nBUG: 2329568\n\nSigned-off-by: Mike Lockwood \u003clockwood@android.com\u003e\n"
    },
    {
      "commit": "da03c4e4b3d47e6917fdcddecf68f2f52564e3a0",
      "tree": "a08480b57b97e4033f0c2e909bef9d358aa75eb1",
      "parents": [
        "48ef378d01b3ace349cbb6ba564276b854d872c9"
      ],
      "author": {
        "name": "Robert Greenwalt",
        "email": "robdroid@android.com",
        "time": "Wed Jan 20 19:29:41 2010 -0800"
      },
      "committer": {
        "name": "Robert Greenwalt",
        "email": "robdroid@android.com",
        "time": "Wed Jan 20 19:29:41 2010 -0800"
      },
      "message": "Try to switch to another default net on connection failure.\n\nThis shouldn\u0027t be required, but there seems to be something odd going on\nin wifi and it doesn\u0027t hurt to try other available options.  Makes a\nconnection failure case work like a disconnected case.\n\nbug: 2378462\n"
    },
    {
      "commit": "db43099f9ec481afb4f24f1e08f1db720fbd3e3c",
      "tree": "148581719ef7fe429fc9806a699631dee0553c02",
      "parents": [
        "8ab6135841ca0fede5b99fdd9ff166fbfe0176c0",
        "72759df749bb8557269db86c2e3b2a8a0343cc26"
      ],
      "author": {
        "name": "San Mehat",
        "email": "san@google.com",
        "time": "Wed Jan 20 18:15:43 2010 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jan 20 18:15:43 2010 -0800"
      },
      "message": "Merge \"INetworkManagementService: Add support for enumerating TTYs and attaching ppp servers to them\""
    },
    {
      "commit": "8ab6135841ca0fede5b99fdd9ff166fbfe0176c0",
      "tree": "7187a066f8aa267340c598af1621146b69f71a7a",
      "parents": [
        "45891e8bfd77bbb55e2568933f490d6512add865"
      ],
      "author": {
        "name": "San Mehat",
        "email": "san@google.com",
        "time": "Wed Jan 20 15:16:42 2010 -0800"
      },
      "committer": {
        "name": "San Mehat",
        "email": "san@google.com",
        "time": "Wed Jan 20 18:14:09 2010 -0800"
      },
      "message": "MountService: Codeshrink\n\nSigned-off-by: San Mehat \u003csan@google.com\u003e\n"
    },
    {
      "commit": "45891e8bfd77bbb55e2568933f490d6512add865",
      "tree": "2df95f9591aabcda4576814a284e7c761633d983",
      "parents": [
        "703f0614f3111957c0bda4e3595c10c413255894",
        "deba6935c6595c724416cde3368a92c32d8f8683"
      ],
      "author": {
        "name": "San Mehat",
        "email": "san@google.com",
        "time": "Wed Jan 20 18:12:54 2010 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jan 20 18:12:54 2010 -0800"
      },
      "message": "Merge \"NativeDaemonConnector: Add a convenience method for obtaining lists\""
    },
    {
      "commit": "deba6935c6595c724416cde3368a92c32d8f8683",
      "tree": "42fba642d439ca5d290999d4b69f90917a89d993",
      "parents": [
        "8be346429c18929d4c429b81a4b6fff9dce661b0"
      ],
      "author": {
        "name": "San Mehat",
        "email": "san@google.com",
        "time": "Wed Jan 20 15:14:31 2010 -0800"
      },
      "committer": {
        "name": "San Mehat",
        "email": "san@google.com",
        "time": "Wed Jan 20 15:32:02 2010 -0800"
      },
      "message": "NativeDaemonConnector: Add a convenience method for obtaining lists\n\nSigned-off-by: San Mehat \u003csan@google.com\u003e\n"
    },
    {
      "commit": "72759df749bb8557269db86c2e3b2a8a0343cc26",
      "tree": "b3894692d3db96f62f3d976a7dbd3fa8e2206504",
      "parents": [
        "8be346429c18929d4c429b81a4b6fff9dce661b0"
      ],
      "author": {
        "name": "San Mehat",
        "email": "san@google.com",
        "time": "Tue Jan 19 13:50:37 2010 -0800"
      },
      "committer": {
        "name": "San Mehat",
        "email": "san@google.com",
        "time": "Wed Jan 20 15:17:45 2010 -0800"
      },
      "message": "INetworkManagementService: Add support for enumerating TTYs and attaching ppp servers to them\n\nSigned-off-by: San Mehat \u003csan@google.com\u003e\n\nUpdated: Refactor out duplicated code\n"
    },
    {
      "commit": "1206b9eb71e0fc0cfeb98677b92f16afb8179a31",
      "tree": "7394a1e5929eeb0b2f48605fc44bb4ed4bd93175",
      "parents": [
        "973fbb1591b94c83fe1d62593c3e26eaf82741f3",
        "31f90b62e8c83270094f5b0b4c75a0e06d72cd75"
      ],
      "author": {
        "name": "Jim Miller",
        "email": "jaggies@google.com",
        "time": "Wed Jan 20 15:12:04 2010 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jan 20 15:12:04 2010 -0800"
      },
      "message": "Merge \"Fix 2385283: Add DevicePolicyManager calls to LockScreen.\""
    },
    {
      "commit": "31f90b62e8c83270094f5b0b4c75a0e06d72cd75",
      "tree": "5f3cd8d9dfe70cbb5ed607cb4dabf7e46a29c648",
      "parents": [
        "b49d9af7e1205312cc25e23636ef3980bee4c1b0"
      ],
      "author": {
        "name": "Jim Miller",
        "email": "jaggies@google.com",
        "time": "Wed Jan 20 13:35:20 2010 -0800"
      },
      "committer": {
        "name": "Jim Miller",
        "email": "jaggies@google.com",
        "time": "Wed Jan 20 14:48:37 2010 -0800"
      },
      "message": "Fix 2385283: Add DevicePolicyManager calls to LockScreen.\n"
    },
    {
      "commit": "6b32c0a2ffd3fe8bf5c290eeecc78fb2e3521520",
      "tree": "3191fa2c7bd3502b86cd96b3dd18809d7ef202c0",
      "parents": [
        "8c48b4a532b1011a2f76f3565335c77fc5b141b3",
        "48ef378d01b3ace349cbb6ba564276b854d872c9"
      ],
      "author": {
        "name": "Irfan Sheriff",
        "email": "isheriff@google.com",
        "time": "Wed Jan 20 13:30:17 2010 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Jan 20 13:30:17 2010 -0800"
      },
      "message": "am 48ef378d: Merge \"DO NOT MERGE Avoid wifi disable in a UNKNOWN state\" into eclair\n\nMerge commit \u002748ef378d01b3ace349cbb6ba564276b854d872c9\u0027 into eclair-plus-aosp\n\n* commit \u002748ef378d01b3ace349cbb6ba564276b854d872c9\u0027:\n  DO NOT MERGE Avoid wifi disable in a UNKNOWN state\n"
    },
    {
      "commit": "8c48b4a532b1011a2f76f3565335c77fc5b141b3",
      "tree": "3c14e4ebe95f836f1f7c73125dff125795e0ea4f",
      "parents": [
        "70660425c03ac9688d749b13b48bba24d22efabf",
        "1a337547d5377c57dbb10a24d4d73ad6bda829ea"
      ],
      "author": {
        "name": "Robert Greenwalt",
        "email": "robdroid@android.com",
        "time": "Wed Jan 20 13:30:11 2010 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Jan 20 13:30:11 2010 -0800"
      },
      "message": "am 1a337547: Merge \"Add bugreport info about network feature use. DO NOT MERGE\" into eclair\n\nMerge commit \u00271a337547d5377c57dbb10a24d4d73ad6bda829ea\u0027 into eclair-plus-aosp\n\n* commit \u00271a337547d5377c57dbb10a24d4d73ad6bda829ea\u0027:\n  Add bugreport info about network feature use. DO NOT MERGE\n"
    },
    {
      "commit": "48ef378d01b3ace349cbb6ba564276b854d872c9",
      "tree": "a2f8b5768d6a9d80e54a4cb2671355d661d21809",
      "parents": [
        "1a337547d5377c57dbb10a24d4d73ad6bda829ea",
        "0fe3f7cbbf769b80cd5ee549bbd0f7723f4d9312"
      ],
      "author": {
        "name": "Irfan Sheriff",
        "email": "isheriff@google.com",
        "time": "Wed Jan 20 13:26:08 2010 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jan 20 13:26:08 2010 -0800"
      },
      "message": "Merge \"DO NOT MERGE Avoid wifi disable in a UNKNOWN state\" into eclair"
    },
    {
      "commit": "73912ce083a35e0b4cbccd9a364791c3725d9e34",
      "tree": "672a704a496916f1af9c661b20c2d7352db4907f",
      "parents": [
        "8c166512a7e6ffaf87e41cd3a85d55993648fe9b"
      ],
      "author": {
        "name": "Robert Greenwalt",
        "email": "robdroid@android.com",
        "time": "Mon Dec 21 18:24:07 2009 -0800"
      },
      "committer": {
        "name": "Robert Greenwalt",
        "email": "robdroid@android.com",
        "time": "Wed Jan 20 12:36:09 2010 -0800"
      },
      "message": "Add bugreport info about network feature use. DO NOT MERGE\n\nBackported from master change Ib9285359.\n\nWe\u0027ve had a couple bug reports showing the effects of a left-live feature request.\nWe need a bit more bugreport-time logging.\n\nbug: 2323226\nbug: 2377507\nchange-id: I296b2887101c260aea678bf6db91144535cbad7e\n"
    },
    {
      "commit": "e0ee6efb1e5bc6cf219555e333635ce98531bc85",
      "tree": "c190aeb5e7975cbc4633516840ebf21280068f6e",
      "parents": [
        "918007b75539f5eabfd173a369c2da628c607ba7"
      ],
      "author": {
        "name": "Jacek Surazski",
        "email": "jaceks@google.com",
        "time": "Thu Jan 07 16:23:03 2010 +0100"
      },
      "committer": {
        "name": "Jacek Surazski",
        "email": "jaceks@google.com",
        "time": "Wed Jan 20 12:27:58 2010 -0800"
      },
      "message": "Add systemApp field to ApplicationErrorReport\n"
    },
    {
      "commit": "d2c21c1518631edd798367cf20cbc5434321d266",
      "tree": "cdcd559724466f92ef776f4d6975d10e25e6a4c3",
      "parents": [
        "47d302a001c71f90bee8dc31d868b463a47f2d51",
        "8c166512a7e6ffaf87e41cd3a85d55993648fe9b"
      ],
      "author": {
        "name": "Robert Greenwalt",
        "email": "robdroid@android.com",
        "time": "Wed Jan 20 11:12:40 2010 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Jan 20 11:12:40 2010 -0800"
      },
      "message": "am 8c166512: Merge \"Cleanup of process-specific DNS.\" into eclair\n\nMerge commit \u00278c166512a7e6ffaf87e41cd3a85d55993648fe9b\u0027 into eclair-plus-aosp\n\n* commit \u00278c166512a7e6ffaf87e41cd3a85d55993648fe9b\u0027:\n  Cleanup of process-specific DNS.\n"
    },
    {
      "commit": "0fe3f7cbbf769b80cd5ee549bbd0f7723f4d9312",
      "tree": "177f9c11c4af7a4b57d4b641bcbc5cf109d95e9f",
      "parents": [
        "bb79e5fdb52eb86963fc688e6a455451b6e1a867"
      ],
      "author": {
        "name": "Irfan Sheriff",
        "email": "isheriff@google.com",
        "time": "Fri Jan 08 09:36:04 2010 -0800"
      },
      "committer": {
        "name": "Irfan Sheriff",
        "email": "isheriff@google.com",
        "time": "Wed Jan 20 10:08:23 2010 -0800"
      },
      "message": "DO NOT MERGE Avoid wifi disable in a UNKNOWN state\n\nMultiple broadcast receiver unregister calls cause exception.\n\nBug: 2361335\n"
    },
    {
      "commit": "5f64128568d815f91dcd37db43d4e26a0566b41c",
      "tree": "12239bd2a8c29ab0086cabbaf11791ea7919d26c",
      "parents": [
        "60e3c09ec0fa73a3e650f4aec89c763599c2e0b7",
        "b1c4a2a3b37fccf68e6a9563cccf1685df2bf3e7"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Tue Jan 19 19:59:04 2010 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Jan 19 19:59:04 2010 -0800"
      },
      "message": "am b1c4a2a3: Fix issue #2364506: Phone locked up while listening to music and attempting to download an update\n\nMerge commit \u0027b1c4a2a3b37fccf68e6a9563cccf1685df2bf3e7\u0027 into eclair-plus-aosp\n\n* commit \u0027b1c4a2a3b37fccf68e6a9563cccf1685df2bf3e7\u0027:\n  Fix issue #2364506: Phone locked up while listening to music and attempting to download an update\n"
    },
    {
      "commit": "15abc90147333fccf7c9576cbf90d40d73e5a20f",
      "tree": "7880b6a08134a951316b29de9b8c19209a4fd134",
      "parents": [
        "5910cb53ea7085dff4c8c6b9c1edde5a1b59fa28"
      ],
      "author": {
        "name": "Robert Greenwalt",
        "email": "robdroid@android.com",
        "time": "Thu Dec 17 14:54:59 2009 -0800"
      },
      "committer": {
        "name": "Robert Greenwalt",
        "email": "robdroid@android.com",
        "time": "Tue Jan 19 18:01:36 2010 -0800"
      },
      "message": "Cleanup of process-specific DNS.\n\nBackport of MR2 change 421c72b6.\n\nRemoves entries sooner.  A bug.\nDoesn\u0027t add one for phone process at all.  This was intended to be removed long ago.\n\nbug: 2329900\nbug: 2377507\n"
    },
    {
      "commit": "77872f76a12c883c163a70a42e347f35c4e9a269",
      "tree": "d71046f1af8c6bd9dd35c92571ed1363b06b7eb8",
      "parents": [
        "b49d9af7e1205312cc25e23636ef3980bee4c1b0",
        "63ce8e817c9b800b4f08b64c343e533783961b6e"
      ],
      "author": {
        "name": "Joe Onorato",
        "email": "joeo@google.com",
        "time": "Tue Jan 19 16:34:58 2010 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jan 19 16:34:58 2010 -0800"
      },
      "message": "Merge \"Make the space between the time and the AM/PM smaller by putting preceding whitespace inside the span.\""
    },
    {
      "commit": "b1c4a2a3b37fccf68e6a9563cccf1685df2bf3e7",
      "tree": "82eaa515232769b237fc3c38cdbacc7b1ba5bd7f",
      "parents": [
        "6866daee6a18992e8f2c9a948e873bbfc2090fb0"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Tue Jan 19 15:36:42 2010 -0800"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Tue Jan 19 15:36:42 2010 -0800"
      },
      "message": "Fix issue #2364506: Phone locked up while listening to music and attempting to download an update\n\nMake sure calls into the notification manager are not done with the\nactivity manager lock held.\n\nChange-Id: Ib53c3b9f46160d94ee1e7079b1a5123e0d1225d8\n"
    },
    {
      "commit": "b49d9af7e1205312cc25e23636ef3980bee4c1b0",
      "tree": "d99571e6880423eb6f5a1c43e59f1fc5629e82a4",
      "parents": [
        "56d42582f20efce1ff46ea2b5fff60b26cf2c1f0",
        "fd3530f90562bb7e66edfee39d90fc8beda82f1d"
      ],
      "author": {
        "name": "Suchi Amalapurapu",
        "email": "asuchitra@google.com",
        "time": "Tue Jan 19 14:11:43 2010 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jan 19 14:11:43 2010 -0800"
      },
      "message": "Merge \"Mount/Unmount secure containers Persist flags in PackageSetting. Flags are relevant to ApplicationInfo.FLAG_SYSTEM, Application.FLAG_ON_SDCARD, ApplicationInfo.FLAG_FORWARD_LOCK. New pm command to simulate mount/unmount in Pm. This will be removed when MountService/vold event generation gets fixed. Calls from MountService into PackageManager when media gets mounted/unmounted. Scan the packages and grant permissions when the sdcard gets mounted. This api might change again.\""
    },
    {
      "commit": "fd3530f90562bb7e66edfee39d90fc8beda82f1d",
      "tree": "3829a74034270ac5434a0863e5dd115172443dfc",
      "parents": [
        "97d1195832829905b07b7680b73bed8af959f430"
      ],
      "author": {
        "name": "Suchi Amalapurapu",
        "email": "asuchitra@google.com",
        "time": "Mon Jan 18 00:15:59 2010 -0800"
      },
      "committer": {
        "name": "Suchi Amalapurapu",
        "email": "asuchitra@google.com",
        "time": "Tue Jan 19 14:04:54 2010 -0800"
      },
      "message": "Mount/Unmount secure containers\nPersist flags in PackageSetting. Flags are relevant to ApplicationInfo.FLAG_SYSTEM, Application.FLAG_ON_SDCARD, ApplicationInfo.FLAG_FORWARD_LOCK.\nNew pm command to simulate mount/unmount in Pm. This will be removed\nwhen MountService/vold event generation gets fixed.\nCalls from MountService into PackageManager when media gets mounted/unmounted.\nScan the packages and grant permissions when the sdcard gets mounted.\nThis api might change again.\n"
    },
    {
      "commit": "f078d058ab6c496480a5d1c805cc4f56ba9f4b0c",
      "tree": "2255efc332d8be1ae9f046b7080e14337a3746f4",
      "parents": [
        "425500913aee9885a0f2de1dc5de82910035091e",
        "873f2145941cc28f6931dc18b5e9987bd22e2e19"
      ],
      "author": {
        "name": "San Mehat",
        "email": "san@google.com",
        "time": "Tue Jan 19 11:21:44 2010 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jan 19 11:21:44 2010 -0800"
      },
      "message": "Merge \"framework: Introduce INetworkManagementService for communicating with netd\""
    },
    {
      "commit": "0dac8c0f7ec00d94b09f92823fa238142163aba8",
      "tree": "a4d486e209d4de080ba95a740a5d90721b02d8ed",
      "parents": [
        "97d1195832829905b07b7680b73bed8af959f430"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Tue Jan 19 11:48:14 2010 -0500"
      },
      "committer": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Tue Jan 19 14:00:48 2010 -0500"
      },
      "message": "LocationManagerService: Fix bug removing proximity alerts.\n\nAlerts were not being removed from the mProximitiesEntered array.\n\nSigned-off-by: Mike Lockwood \u003clockwood@android.com\u003e\n"
    },
    {
      "commit": "873f2145941cc28f6931dc18b5e9987bd22e2e19",
      "tree": "4793e2bca832a46a0d77eb3ce8072502f4c02661",
      "parents": [
        "97d1195832829905b07b7680b73bed8af959f430"
      ],
      "author": {
        "name": "San Mehat",
        "email": "san@google.com",
        "time": "Thu Jan 14 10:25:07 2010 -0800"
      },
      "committer": {
        "name": "San Mehat",
        "email": "san@google.com",
        "time": "Tue Jan 19 10:47:52 2010 -0800"
      },
      "message": "framework: Introduce INetworkManagementService for communicating with netd\n\nThis is the framework-exposed interface for the (future) management of\nall Android network management functions. Initial support is for providing\ntethering.\n\nUpdated: Integrate feedback from review; clean up naming\n\nUpdated: Switch from add/remove/list to get/set for DNS forwarders\n         - allows prioritization / ordering of DNS servers\n\nUpdated: Refactor NAT api\n\nUpdated: Refactor NAT api (last time sorry)\n\nSigned-off-by: San Mehat \u003csan@google.com\u003e\n"
    },
    {
      "commit": "2b7ff1c47147e31521a3ef9e7d02252111192cb3",
      "tree": "32ca31462eafb0bdb075ffa47e72a7438c73e1cc",
      "parents": [
        "840e958847f31f835dbf17ce539c9f8317251cc9",
        "9dba709d4439d8cdb464a3dcccbddffdbe4b10ff"
      ],
      "author": {
        "name": "San Mehat",
        "email": "san@google.com",
        "time": "Mon Jan 18 07:14:02 2010 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jan 18 07:14:02 2010 -0800"
      },
      "message": "Merge \"MountService: Add new \u0027unmountSecureContainer\u0027 API call\""
    },
    {
      "commit": "9dba709d4439d8cdb464a3dcccbddffdbe4b10ff",
      "tree": "07b08f8bee730d8ec59604d6e29287f7cb0f7b88",
      "parents": [
        "5fbf4094f5857ab15801c65a260a5c4b6866d655"
      ],
      "author": {
        "name": "San Mehat",
        "email": "san@google.com",
        "time": "Mon Jan 18 06:47:41 2010 -0800"
      },
      "committer": {
        "name": "San Mehat",
        "email": "san@google.com",
        "time": "Mon Jan 18 06:49:19 2010 -0800"
      },
      "message": "MountService: Add new \u0027unmountSecureContainer\u0027 API call\n\nSigned-off-by: San Mehat \u003csan@google.com\u003e\n"
    },
    {
      "commit": "63ce8e817c9b800b4f08b64c343e533783961b6e",
      "tree": "36499efa89f6956b58d5594ce997b623589589a3",
      "parents": [
        "ff58b5770514521ebdd48f500d8dc121a42d7eb2"
      ],
      "author": {
        "name": "Joe Onorato",
        "email": "joeo@android.com",
        "time": "Sun Jan 17 19:06:51 2010 -0500"
      },
      "committer": {
        "name": "Joe Onorato",
        "email": "joeo@android.com",
        "time": "Sun Jan 17 19:09:35 2010 -0500"
      },
      "message": "Make the space between the time and the AM/PM smaller by putting preceding whitespace inside the\nspan.\n\nAlso cache the SimpleDateFormat object because those are relatively expensive.\n"
    },
    {
      "commit": "d68478467e3f837511196c80891d7245d0e163df",
      "tree": "598148f587955a89e72017b59df3ba7ba4d8b20b",
      "parents": [
        "5fbf4094f5857ab15801c65a260a5c4b6866d655"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Tue Jan 12 18:14:19 2010 -0800"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Sun Jan 17 15:10:24 2010 -0800"
      },
      "message": "First pass at new device policy and administration APIs.\n\nThis adds new DevicAdmin, DevicePolicyManager, and DeviceAdminInfo classes.\nSee the java docs for each on documentation on them.  Basically: a DeviceAdmin\nis what you derive from to administer a device; DevicePolicyManager is what you\nuse to apply and check your policy requirements and perform other administration\ntasks.\n"
    },
    {
      "commit": "5fbf4094f5857ab15801c65a260a5c4b6866d655",
      "tree": "16ff4a03f8a332156610d3e6809515e18825ebf2",
      "parents": [
        "ff58b5770514521ebdd48f500d8dc121a42d7eb2"
      ],
      "author": {
        "name": "San Mehat",
        "email": "san@google.com",
        "time": "Fri Jan 15 10:13:59 2010 -0800"
      },
      "committer": {
        "name": "San Mehat",
        "email": "san@google.com",
        "time": "Sat Jan 16 06:11:27 2010 -0800"
      },
      "message": "MountService: Suppress media removed notification when enabling UMS\n\nSigned-off-by: San Mehat \u003csan@google.com\u003e\n"
    },
    {
      "commit": "462f0378280f2c9717ad3bcafd8b9d1827b840b6",
      "tree": "3a2e8dd3dbb4e6ecff86321fe54cef07255769d5",
      "parents": [
        "3fe3ebfaa671d940f9cd571d782c8c95ce5eaec1"
      ],
      "author": {
        "name": "Oscar Montemayor",
        "email": "oam@google.com",
        "time": "Thu Jan 14 16:38:40 2010 -0800"
      },
      "committer": {
        "name": "Oscar Montemayor",
        "email": "oam@google.com",
        "time": "Fri Jan 15 16:34:11 2010 -0800"
      },
      "message": "Apps on SD card.\nAdded support for retrieving and generating keys as Hex Strings.\nUsing keys to mount encrypted FS.\n"
    },
    {
      "commit": "d02546b4151214abb2db1c88bf7debfc70bd2421",
      "tree": "706596caff37b2f9ba6c04da64bf3b98172da00e",
      "parents": [
        "851b2e75e600a7e3f557b46c4c48c11da025d1f4"
      ],
      "author": {
        "name": "Oscar Montemayor",
        "email": "oam@google.com",
        "time": "Thu Jan 14 16:38:40 2010 -0800"
      },
      "committer": {
        "name": "Oscar Montemayor",
        "email": "oam@google.com",
        "time": "Fri Jan 15 15:08:06 2010 -0800"
      },
      "message": "Apps on SD card.\nAdded support for retrieving and generating keys as Hex Strings.\nUsing keys to mount encrypted FS.\n"
    },
    {
      "commit": "7c44220d0b57bd3bbb87f5db00454f9ea9faed9a",
      "tree": "7727834b30e2d7276198d7723c5e67e91b65f060",
      "parents": [
        "3084a6f80180506ce26fe4773d9a19f004b7f625",
        "36e136c2c86f39f03cdd4275f07deb30dc2c95aa"
      ],
      "author": {
        "name": "Eric Fischer",
        "email": "enf@google.com",
        "time": "Fri Jan 15 11:23:00 2010 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jan 15 11:23:00 2010 -0800"
      },
      "message": "Merge \"Make the \"AM\" or \"PM\" in the status bar clock be in a smaller font size.\""
    },
    {
      "commit": "40bbaaac5f0b93de8d8b8164ac8b59583bc0113a",
      "tree": "b3eb1bf2b147b408e4a712a35412a90f99d3866b",
      "parents": [
        "0894498712de1f15b6491fa5fe111b2da7fb7038",
        "90528645ad7d40634737075dc49a9f60bc7a1748"
      ],
      "author": {
        "name": "Robert Greenwalt",
        "email": "robdroid@android.com",
        "time": "Fri Jan 15 10:45:11 2010 -0800"
      },
      "committer": {
        "name": "Robert Greenwalt",
        "email": "robdroid@android.com",
        "time": "Fri Jan 15 10:45:11 2010 -0800"
      },
      "message": "resolved conflicts for merge of 90528645 to master\n"
    },
    {
      "commit": "0894498712de1f15b6491fa5fe111b2da7fb7038",
      "tree": "380c74d989140d60d3395a06869c04d90ab88a10",
      "parents": [
        "c5dfa70410121c63079ecd7e4945d774562c8998",
        "de8383ca312c03fa8e935ac1549ae31ce668652c"
      ],
      "author": {
        "name": "Robert Greenwalt",
        "email": "robdroid@android.com",
        "time": "Fri Jan 15 10:20:18 2010 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jan 15 10:20:18 2010 -0800"
      },
      "message": "Merge \"Set net.hostname sys property to our unique ID.\""
    },
    {
      "commit": "48c0273eb978d44ee093f514545d4332f034e473",
      "tree": "04b0fcc39e15672a8d29526818ab82d81f7cd5ed",
      "parents": [
        "daec1722fae57a042c176664ec1e89c95095e926"
      ],
      "author": {
        "name": "Andrew Stadler",
        "email": "stadler@android.com",
        "time": "Fri Jan 15 00:03:41 2010 -0800"
      },
      "committer": {
        "name": "Andrew Stadler",
        "email": "stadler@android.com",
        "time": "Fri Jan 15 00:03:41 2010 -0800"
      },
      "message": "Fix to set package path properly after \u0027adb sync\u0027\n\nThis is a followup to daec1722fae57a042c176664ec1e89c95095e926\n"
    },
    {
      "commit": "daec1722fae57a042c176664ec1e89c95095e926",
      "tree": "cc31f06dd3413649d1611a125e7977042ec46de2",
      "parents": [
        "ba7eb9a1d044ee11268f0ced0af333e5f87ba7a8"
      ],
      "author": {
        "name": "Suchi Amalapurapu",
        "email": "asuchitra@google.com",
        "time": "Thu Jan 14 21:25:16 2010 -0800"
      },
      "committer": {
        "name": "Suchi Amalapurapu",
        "email": "asuchitra@google.com",
        "time": "Thu Jan 14 21:48:37 2010 -0800"
      },
      "message": "Avoid renaming apk paths when scanning directories on reboot\n"
    },
    {
      "commit": "de8383ca312c03fa8e935ac1549ae31ce668652c",
      "tree": "e46a21108681d02a40f1db0db47e6c79381bee30",
      "parents": [
        "8d528c85d00cea5168ed6842f17c7f5afae338c4"
      ],
      "author": {
        "name": "Robert Greenwalt",
        "email": "robdroid@android.com",
        "time": "Thu Jan 14 17:47:58 2010 -0800"
      },
      "committer": {
        "name": "Robert Greenwalt",
        "email": "robdroid@android.com",
        "time": "Thu Jan 14 18:09:17 2010 -0800"
      },
      "message": "Set net.hostname sys property to our unique ID.\n\nGive us a default name networking wise so that wifi (at least) can use it.\n\nBug:2327089\n"
    },
    {
      "commit": "110fea7ebd6c5e0162c3af353d36a1b0383199f4",
      "tree": "0f07488ce845ee697f00d2825eecdd2113f7ac75",
      "parents": [
        "8d528c85d00cea5168ed6842f17c7f5afae338c4"
      ],
      "author": {
        "name": "Suchi Amalapurapu",
        "email": "asuchitra@google.com",
        "time": "Thu Jan 14 17:50:23 2010 -0800"
      },
      "committer": {
        "name": "Suchi Amalapurapu",
        "email": "asuchitra@google.com",
        "time": "Thu Jan 14 17:50:23 2010 -0800"
      },
      "message": "Fix runtime restart when replacing packages\n"
    },
    {
      "commit": "36e136c2c86f39f03cdd4275f07deb30dc2c95aa",
      "tree": "306dbb7713a87a286b530137d18882d133e153bd",
      "parents": [
        "66ef01e23288eb93bf410823b7fdc123fd9c5197"
      ],
      "author": {
        "name": "Eric Fischer",
        "email": "enf@google.com",
        "time": "Thu Jan 14 17:42:48 2010 -0800"
      },
      "committer": {
        "name": "Eric Fischer",
        "email": "enf@google.com",
        "time": "Thu Jan 14 17:42:48 2010 -0800"
      },
      "message": "Make the \"AM\" or \"PM\" in the status bar clock be in a smaller font size.\n\nBug 1146468\n"
    },
    {
      "commit": "af8e9f4805643f90a9dc0ecfa119e0a860c12f8a",
      "tree": "a6ea88a10b61204a5256901dca8b958849e13dc4",
      "parents": [
        "f6fff20a96268b0b1136a2c44199ad8de46ced5d"
      ],
      "author": {
        "name": "Suchi Amalapurapu",
        "email": "asuchitra@google.com",
        "time": "Tue Jan 12 10:17:28 2010 -0800"
      },
      "committer": {
        "name": "Suchi Amalapurapu",
        "email": "asuchitra@google.com",
        "time": "Thu Jan 14 14:02:39 2010 -0800"
      },
      "message": "app install on sdcard. provide skeleton implementation\nto install an app on sdcard, just resources.\nAdd new install path for /asec in installd.\nignore . when checking for apk path since the sdcard packages id\u0027ed\nby package name.\nAdd new -s option to adb shell pm\nRefactor fwd locked from scanMode to ApplicationInfo.\nAdd new flag for sd install\nAdd new parse flags for fwd locking and installing on sdcard\nNew mock api\u0027s in PackageManagerService to invoke MountService api\u0027s. These\nwill be refactored again and so have been wrapped internally.\nSome error codes in PackageManager\nChanges in PackageManagerService to use mPath and mScanPath during installation\nand switch to using PackageParser.Package.applicationInfo attributes for\nsource and public resource directories.\nSome known issues that will be addressed later\n using system_uid for now. needs some tinkering with uid and packagesetting creation to use the actual app uid\n error handling from vold not very robust. ignoring lot of things for now\n sending a delayed destroy to delete packages. will revisit later\n revisit temp file creation later. just copy for now\n"
    },
    {
      "commit": "90528645ad7d40634737075dc49a9f60bc7a1748",
      "tree": "08e8daf2e96fd043239cd00dedc3f7af1660acc4",
      "parents": [
        "b4f41119044e5ec7f7b76ed4ac02b5cfbaeb474d",
        "1193ae4e824c66b75083c444ce0f250594e138ee"
      ],
      "author": {
        "name": "Robert Greenwalt",
        "email": "robdroid@android.com",
        "time": "Wed Jan 13 17:09:40 2010 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Jan 13 17:09:40 2010 -0800"
      },
      "message": "am 1193ae4e: Backport l53e91db7 from master.\n\nMerge commit \u00271193ae4e824c66b75083c444ce0f250594e138ee\u0027 into eclair-plus-aosp\n\n* commit \u00271193ae4e824c66b75083c444ce0f250594e138ee\u0027:\n  Backport l53e91db7 from master.\n"
    },
    {
      "commit": "1193ae4e824c66b75083c444ce0f250594e138ee",
      "tree": "f623c169b053a5714a3d02220034ee5310917d68",
      "parents": [
        "a1d08886ec8549878ad16c19754a3239706fb61b"
      ],
      "author": {
        "name": "Robert Greenwalt",
        "email": "robdroid@android.com",
        "time": "Wed Jan 13 09:36:31 2010 -0800"
      },
      "committer": {
        "name": "Robert Greenwalt",
        "email": "robdroid@android.com",
        "time": "Wed Jan 13 09:36:31 2010 -0800"
      },
      "message": "Backport l53e91db7 from master.\n\nPrevents sending out ConnectivityManager broadcasts when the connection\nis repeating the same major state.  This means continued wifi scanning\ndoes not generate CM broadcasts (though wifi state broadcasts continue).\n\nbug: 2265222\nDr No approval: jsh\n"
    },
    {
      "commit": "cd7703712eafb68b735233146b5e13c8c8e17609",
      "tree": "f5c54d9e1547d720b309867939584f971db199df",
      "parents": [
        "22dd86e0556bf60f46bb92a4d90aef8c2d55da58"
      ],
      "author": {
        "name": "Irfan Sheriff",
        "email": "isheriff@google.com",
        "time": "Fri Jan 08 09:36:04 2010 -0800"
      },
      "committer": {
        "name": "Irfan Sheriff",
        "email": "isheriff@google.com",
        "time": "Tue Jan 12 14:53:44 2010 -0800"
      },
      "message": "Avoid wifi disable in a UNKNOWN state\n\nMultiple broadcast receiver unregister calls cause exception.\n\nBug: 2361335\n"
    },
    {
      "commit": "22dd86e0556bf60f46bb92a4d90aef8c2d55da58",
      "tree": "960252dfa23185cee7c3412db3b2a2f9e8a00fe1",
      "parents": [
        "67bd2cd75f0615c1a08a221f2114d2acda90d1ce"
      ],
      "author": {
        "name": "San Mehat",
        "email": "san@google.com",
        "time": "Tue Jan 12 12:21:18 2010 -0800"
      },
      "committer": {
        "name": "San Mehat",
        "email": "san@google.com",
        "time": "Tue Jan 12 14:12:16 2010 -0800"
      },
      "message": "MountService: Refactor to use NativeDaemonConnector and clean-up\n\nSigned-off-by: San Mehat \u003csan@google.com\u003e\n"
    },
    {
      "commit": "67bd2cd75f0615c1a08a221f2114d2acda90d1ce",
      "tree": "e2100cb759dbfc4de3f73e950727dec57e861141",
      "parents": [
        "bfd2df21ea711a8a09bb0a0637a5e0a52892ed93"
      ],
      "author": {
        "name": "San Mehat",
        "email": "san@google.com",
        "time": "Tue Jan 12 12:18:49 2010 -0800"
      },
      "committer": {
        "name": "San Mehat",
        "email": "san@google.com",
        "time": "Tue Jan 12 13:55:39 2010 -0800"
      },
      "message": "services: Introduce NativeDaemonConnector class\n\nThis class provides an interface to communicate with native daemons using the\nlibsysutils framework communication code.\n\nSigned-off-by: San Mehat \u003csan@google.com\u003e\n\nNativeDaemonConnector: fix whitespace\n\nSigned-off-by: San Mehat \u003csan@google.com\u003e\n\nNativeDaemonConnector: Fix review comments\n\nSigned-off-by: San Mehat \u003csan@google.com\u003e\n\nNativeDaemonConnector: On an error, re-try the connection\n\nSigned-off-by: San Mehat \u003csan@google.com\u003e\n"
    },
    {
      "commit": "fa101530bc74bdf1517a1840a9415249211b9414",
      "tree": "f0c93712359e7b102a1ed5edd2fb81a7f6ecb374",
      "parents": [
        "8f028a94fc533e75077485a7d11a04e4de820335",
        "d26707da8965bffb63c55d729f19ddfcb83044b3"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Tue Jan 12 11:53:42 2010 -0800"
      },
      "committer": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Tue Jan 12 11:53:42 2010 -0800"
      },
      "message": "resolved conflicts for merge of d26707da to master\n\nChange-Id: I1a379194f70c4b14191333ca2d8e6dd9d8b0f9dd\n"
    },
    {
      "commit": "d26707da8965bffb63c55d729f19ddfcb83044b3",
      "tree": "a371e18a5b2c5068a08dd750efa34fca5c2ff43f",
      "parents": [
        "f5a84f8a7f91422f698ffbea3fabf77f2f7f77c8",
        "c93c70c4b849d31ff1b5e5cf2fb9462fd60e5da0"
      ],
      "author": {
        "name": "San Mehat",
        "email": "san@google.com",
        "time": "Tue Jan 12 10:02:40 2010 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Jan 12 10:02:40 2010 -0800"
      },
      "message": "am c93c70c4: Merge \"framework: storage: Ensure that filesystems are unmounted before shutdown/reboot\" into eclair\n\nMerge commit \u0027c93c70c4b849d31ff1b5e5cf2fb9462fd60e5da0\u0027 into eclair-plus-aosp\n\n* commit \u0027c93c70c4b849d31ff1b5e5cf2fb9462fd60e5da0\u0027:\n  framework: storage: Ensure that filesystems are unmounted before shutdown/reboot\n"
    },
    {
      "commit": "7ebf017658070323ed1c2bbd80c46c7cd2390d87",
      "tree": "3e5d6d274f3ef4f56e79883e21a04078ef941871",
      "parents": [
        "595f48b2a4fa2751ad638b60d2476e77738b21da"
      ],
      "author": {
        "name": "San Mehat",
        "email": "san@google.com",
        "time": "Tue Jan 12 07:57:42 2010 -0800"
      },
      "committer": {
        "name": "San Mehat",
        "email": "san@google.com",
        "time": "Tue Jan 12 07:57:42 2010 -0800"
      },
      "message": "framework: storage: Ensure that filesystems are unmounted before shutdown/reboot\n\nSigned-off-by: San Mehat \u003csan@google.com\u003e\n"
    },
    {
      "commit": "f523609e8db372add763424c73f77d926865bb50",
      "tree": "66bd91b2bec18271afb39ddef7969659f85407ae",
      "parents": [
        "58f24686dcfbc0ec9cac42a49b167a2f194389ed"
      ],
      "author": {
        "name": "Joe Onorato",
        "email": "joeo@android.com",
        "time": "Mon Jan 11 20:15:26 2010 -0500"
      },
      "committer": {
        "name": "Joe Onorato",
        "email": "joeo@android.com",
        "time": "Mon Jan 11 20:15:46 2010 -0500"
      },
      "message": "stop crashing.  I\u0027m not sure what triggered this.\n"
    },
    {
      "commit": "42471dd5552a346dd82a58a663159875ccc4fb79",
      "tree": "67137d33665f7ce22573230ddfc92a6fce964423",
      "parents": [
        "c408d5c2782012661f8181e511eda76e3be8cd13"
      ],
      "author": {
        "name": "Dan Egnor",
        "email": "egnor@google.com",
        "time": "Thu Jan 07 17:25:22 2010 -0800"
      },
      "committer": {
        "name": "Dan Egnor",
        "email": "egnor@google.com",
        "time": "Mon Jan 11 14:51:22 2010 -0800"
      },
      "message": "Simplify \u0026 update ANR logging; report ANR data into the dropbox.\nEliminate the per-process 200ms timeout during ANR thread-dumping.\nDump all the threads at once, then wait for the file to stabilize.\nSeems to work great and is much, much, much faster.\n\nDon\u0027t dump stack traces to traces.txt on app crashes (it isn\u0027t very\nuseful and mostly just clutters up the file).\n\nTweak the formatting of the dropbox dumpsys a bit, for readability,\nand avoid running out of memory when dumping large log files.\n\nReport build \u0026 kernel version with kernel log dropbox entries.\n"
    },
    {
      "commit": "0f5525ad3b9b341a6c288ded8a8a08572fc657c6",
      "tree": "2c55b7fcfdc4f8853b660f2f71b5d61985ce63c1",
      "parents": [
        "ee7d5524216523f1c759d19ec7bb6f01c2d71a08"
      ],
      "author": {
        "name": "San Mehat",
        "email": "san@google.com",
        "time": "Mon Jan 11 10:15:16 2010 -0800"
      },
      "committer": {
        "name": "San Mehat",
        "email": "san@google.com",
        "time": "Mon Jan 11 10:15:16 2010 -0800"
      },
      "message": "framework: asec: Rename \u0027Cache\u0027 -\u003e \u0027Container\u0027\n\nSigned-off-by: San Mehat \u003csan@google.com\u003e\n"
    },
    {
      "commit": "f96135857f2f3de12576174712d6bea8b363277d",
      "tree": "1d5a27c3e27520646ea0219ca092fea121d9768d",
      "parents": [
        "f6298db02365b5f31d7ab6b4dadcbe27bee88c43"
      ],
      "author": {
        "name": "San Mehat",
        "email": "san@google.com",
        "time": "Sun Jan 10 13:01:11 2010 -0800"
      },
      "committer": {
        "name": "San Mehat",
        "email": "san@google.com",
        "time": "Mon Jan 11 08:20:59 2010 -0800"
      },
      "message": "MountService: Clean up some logspam\n\nSigned-off-by: San Mehat \u003csan@google.com\u003e\n"
    },
    {
      "commit": "980a938c1c9a6a5791a8240e5a1e6638ab28dc77",
      "tree": "75a3a1347b5423cc98859d3976076cea3dc22564",
      "parents": [
        "0a0289420227fee51406cf4cc508f09d8ecdd2f4"
      ],
      "author": {
        "name": "Romain Guy",
        "email": "romainguy@android.com",
        "time": "Fri Jan 08 15:06:28 2010 -0800"
      },
      "committer": {
        "name": "Romain Guy",
        "email": "romainguy@android.com",
        "time": "Fri Jan 08 15:11:38 2010 -0800"
      },
      "message": "Deprecate fill_parent and introduce match_parent.\nBug: #2361749.\n"
    },
    {
      "commit": "1f6301e1ff1a8ba04bc2b9c55fe6ceb883ce43bf",
      "tree": "1d16af96f42d3557d404acb15e9d971e4c501cd8",
      "parents": [
        "87734d3bc118cba8f42845ddd51f10edadb84abf"
      ],
      "author": {
        "name": "San Mehat",
        "email": "san@google.com",
        "time": "Thu Jan 07 22:40:27 2010 -0800"
      },
      "committer": {
        "name": "San Mehat",
        "email": "san@google.com",
        "time": "Fri Jan 08 12:56:33 2010 -0800"
      },
      "message": "MountService: Add new Settings for UMS prompting and notification behavior\n\nSigned-off-by: San Mehat \u003csan@google.com\u003e\n"
    },
    {
      "commit": "51d3e798985944a3be1aafb1e01216a6627625e0",
      "tree": "453f68b28f0068076c7eb47d55fbea7d849836f7",
      "parents": [
        "7aac5547daf54005243c5d685cf60c5a4ff74a44",
        "6c133a78950e458df5ae1291e3a8d18dca2664db"
      ],
      "author": {
        "name": "San Mehat",
        "email": "san@google.com",
        "time": "Fri Jan 08 12:38:24 2010 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jan 08 12:38:24 2010 -0800"
      },
      "message": "Merge \"MountService: Fix asec list bug\""
    },
    {
      "commit": "cffea95e1ef203223b87ae8a6bde415b25c5c415",
      "tree": "14f1f01f0257466fd1a4f34b2715f268fea90b6e",
      "parents": [
        "d31d7397ba26dcd913e96d06f0a8fd593780d629",
        "3fb4ee4e03351078ceadf3d8dd05789ae152e8dd"
      ],
      "author": {
        "name": "Daniel Sandler",
        "email": "dsandler@android.com",
        "time": "Fri Jan 08 12:33:17 2010 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Jan 08 12:33:17 2010 -0800"
      },
      "message": "am 3fb4ee4e: Merge \"Immediately close the shade when the status bar is disabled. (DO NOT MERGE)\" into eclair\n\nMerge commit \u00273fb4ee4e03351078ceadf3d8dd05789ae152e8dd\u0027 into eclair-plus-aosp\n\n* commit \u00273fb4ee4e03351078ceadf3d8dd05789ae152e8dd\u0027:\n  Immediately close the shade when the status bar is disabled. (DO NOT MERGE)\n"
    },
    {
      "commit": "6c133a78950e458df5ae1291e3a8d18dca2664db",
      "tree": "aed6760434c4415c8627fb78ecddd18595fe8bf0",
      "parents": [
        "595ae28dabf7058e22419846f57bb8d4cb44012a"
      ],
      "author": {
        "name": "San Mehat",
        "email": "san@google.com",
        "time": "Fri Jan 08 12:25:13 2010 -0800"
      },
      "committer": {
        "name": "San Mehat",
        "email": "san@google.com",
        "time": "Fri Jan 08 12:32:54 2010 -0800"
      },
      "message": "MountService: Fix asec list bug\n\nSigned-off-by: San Mehat \u003csan@google.com\u003e\n"
    },
    {
      "commit": "7aac5547daf54005243c5d685cf60c5a4ff74a44",
      "tree": "c5b1a1763bf1acdec678ddcfa76e2451a6d07df5",
      "parents": [
        "660cc3461afbf0631cc8d4ab628628d68d840014"
      ],
      "author": {
        "name": "Irfan Sheriff",
        "email": "isheriff@google.com",
        "time": "Tue Dec 22 21:42:17 2009 -0800"
      },
      "committer": {
        "name": "Irfan Sheriff",
        "email": "isheriff@google.com",
        "time": "Fri Jan 08 12:04:30 2010 -0800"
      },
      "message": "Synchronize all WifiNative calls\n\nSome of the native calls were left unsynchronized in the framework. Pre-empted IOCTL call\ninterrupted by another call from the framework cannot be handled in the driver.\n\nBug: 2310455\n"
    },
    {
      "commit": "43866e0c48bb0effe8805afd62b253e50ca7d591",
      "tree": "c70bc473e8e7d9662916ff645d6bac8cfe85d478",
      "parents": [
        "6414970ac7dc629345942059f75362d894c2310e"
      ],
      "author": {
        "name": "Doug Zongker",
        "email": "dougz@android.com",
        "time": "Thu Jan 07 12:09:54 2010 -0800"
      },
      "committer": {
        "name": "Doug Zongker",
        "email": "dougz@android.com",
        "time": "Thu Jan 07 14:20:39 2010 -0800"
      },
      "message": "move some system services from gservices to secure settings\n\nChange-Id: Ie2dfb99a2b42b2cc9310b858c044d8684e3493fa\n"
    },
    {
      "commit": "dde25397985d82352965c54d68c0ee181b2c3cc8",
      "tree": "0c17660a058813097f7d351aa0ec1103e43cef06",
      "parents": [
        "1b780a01904234ef08a2061adaa70d02bdbf6345"
      ],
      "author": {
        "name": "San Mehat",
        "email": "san@google.com",
        "time": "Thu Jan 07 11:33:29 2010 -0800"
      },
      "committer": {
        "name": "San Mehat",
        "email": "san@google.com",
        "time": "Thu Jan 07 11:36:22 2010 -0800"
      },
      "message": "MountService: Remove ACTION_SHUTDOWN handler\n\n   Shutdown handlers run too early for unmounting, so don\u0027t handle it.\nShutdown will be called explicitly from the ShutdownThread\n\nSigned-off-by: San Mehat \u003csan@google.com\u003e\n"
    },
    {
      "commit": "1b780a01904234ef08a2061adaa70d02bdbf6345",
      "tree": "e9666bcc1e8f31dbc28b032edc1db696a1db5c07",
      "parents": [
        "9e6f148347523824a382675412de9ac3329a927f",
        "1e512790bfe13bdf4d174892c8b699b93f7f2203"
      ],
      "author": {
        "name": "San Mehat",
        "email": "san@google.com",
        "time": "Thu Jan 07 11:35:29 2010 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jan 07 11:35:29 2010 -0800"
      },
      "message": "Merge \"PowerManagerService: Switch to using MountService shutdown for media\""
    },
    {
      "commit": "9e6f148347523824a382675412de9ac3329a927f",
      "tree": "86cb01ab68754e28f723cfc7ccf83359a7c641d5",
      "parents": [
        "0a49913c810b9bd72d593f878acb714f2b8f3715",
        "91c7761139c0931da0fcbc89bce38cee4b9cc535"
      ],
      "author": {
        "name": "San Mehat",
        "email": "san@google.com",
        "time": "Thu Jan 07 11:35:23 2010 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jan 07 11:35:23 2010 -0800"
      },
      "message": "Merge \"MountService: Add an ACTION_SHUTDOWN handler and export a method for external shutdown\""
    },
    {
      "commit": "1e512790bfe13bdf4d174892c8b699b93f7f2203",
      "tree": "cafe3c55840fb6b95d632f5b483eb4eec16bcfbe",
      "parents": [
        "91c7761139c0931da0fcbc89bce38cee4b9cc535"
      ],
      "author": {
        "name": "San Mehat",
        "email": "san@google.com",
        "time": "Thu Jan 07 10:40:29 2010 -0800"
      },
      "committer": {
        "name": "San Mehat",
        "email": "san@google.com",
        "time": "Thu Jan 07 10:40:29 2010 -0800"
      },
      "message": "PowerManagerService: Switch to using MountService shutdown for media\n\nSigned-off-by: San Mehat \u003csan@google.com\u003e\n"
    },
    {
      "commit": "91c7761139c0931da0fcbc89bce38cee4b9cc535",
      "tree": "419569199c5eca8f69997de4967629fbacf92a14",
      "parents": [
        "1a8eec69e164cbac2bbe97828e2839e8c2a62bd8"
      ],
      "author": {
        "name": "San Mehat",
        "email": "san@google.com",
        "time": "Thu Jan 07 10:39:41 2010 -0800"
      },
      "committer": {
        "name": "San Mehat",
        "email": "san@google.com",
        "time": "Thu Jan 07 10:39:41 2010 -0800"
      },
      "message": "MountService: Add an ACTION_SHUTDOWN handler and export a method for external shutdown\n\nSigned-off-by: San Mehat \u003csan@google.com\u003e\n"
    },
    {
      "commit": "914d6597d2ec36b10b33d28b1a26cc2df1760368",
      "tree": "6f09169be36d88f76b0dd7ec5c053c2ba9a8422f",
      "parents": [
        "f80a762400a5500ec926b6a98051fec95558ad9d",
        "f68888951ae6056f5a15a7e2a84045c067bc6ba2"
      ],
      "author": {
        "name": "Doug Zongker",
        "email": "dougz@android.com",
        "time": "Thu Jan 07 09:24:01 2010 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jan 07 09:24:01 2010 -0800"
      },
      "message": "Merge \"move Watchdog\u0027s settings from Gservices to Secure\""
    },
    {
      "commit": "1a8eec69e164cbac2bbe97828e2839e8c2a62bd8",
      "tree": "d04e862a4d2ad817c342c0830d7c7f985baf045f",
      "parents": [
        "283ae234a71cb83c5cd9f58fe2c2a9414987113e"
      ],
      "author": {
        "name": "San Mehat",
        "email": "san@google.com",
        "time": "Thu Jan 07 08:05:28 2010 -0800"
      },
      "committer": {
        "name": "San Mehat",
        "email": "san@google.com",
        "time": "Thu Jan 07 08:06:10 2010 -0800"
      },
      "message": "MountListener: Improve error logging\n\nSigned-off-by: San Mehat \u003csan@google.com\u003e\n"
    },
    {
      "commit": "f68888951ae6056f5a15a7e2a84045c067bc6ba2",
      "tree": "d914d657fcbc85f1fd358a590dc6dad7874a2d71",
      "parents": [
        "11881844d38e2740396642e5940906d8a5a94784"
      ],
      "author": {
        "name": "Doug Zongker",
        "email": "dougz@android.com",
        "time": "Wed Jan 06 16:38:14 2010 -0800"
      },
      "committer": {
        "name": "Doug Zongker",
        "email": "dougz@android.com",
        "time": "Wed Jan 06 16:38:14 2010 -0800"
      },
      "message": "move Watchdog\u0027s settings from Gservices to Secure\n\nChange-Id: Iac1146dafa12f9247874514c9aeefa5f8f83933d\n"
    },
    {
      "commit": "14e69afdfcefe21c81679a95c476e64ebb276fbe",
      "tree": "a516d52a468d63e1b32148eca3036d98e8359d5b",
      "parents": [
        "d1265febc4ae20b0e709177735b175acd94b286a"
      ],
      "author": {
        "name": "San Mehat",
        "email": "san@google.com",
        "time": "Wed Jan 06 14:58:18 2010 -0800"
      },
      "committer": {
        "name": "San Mehat",
        "email": "san@google.com",
        "time": "Wed Jan 06 15:36:01 2010 -0800"
      },
      "message": "PowerManagerService: When rebooting, ensure external storage is unmounted\n\nSigned-off-by: San Mehat \u003csan@google.com\u003e\n"
    },
    {
      "commit": "3697229cc7adfd89493e87ba8b6401c8b68bdd71",
      "tree": "4af80cf6e36951b86cf244823218864f17432c60",
      "parents": [
        "432bff01ec67533dbbb6ed27cb190c99e83ea226"
      ],
      "author": {
        "name": "San Mehat",
        "email": "san@google.com",
        "time": "Wed Jan 06 11:06:32 2010 -0800"
      },
      "committer": {
        "name": "San Mehat",
        "email": "san@google.com",
        "time": "Wed Jan 06 13:54:41 2010 -0800"
      },
      "message": "framework: MountService: Add initial support for Android Secure External Caches\n\nSigned-off-by: San Mehat \u003csan@google.com\u003e\n"
    },
    {
      "commit": "5ef58f6d0f4dff7dae2f1cbf21d01b1b486f5ddd",
      "tree": "5d31f6f68d50218e6705769c9682500b2431281b",
      "parents": [
        "1af33d0ddc2f50ade146e4d48e2feb6f1d553427",
        "34901409a404c8c66914c5a8ad0f29b1bcde0e78"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@google.com",
        "time": "Wed Jan 06 07:08:56 2010 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jan 06 07:08:56 2010 -0800"
      },
      "message": "Merge \"Cleanup and add public wrapper for IGeocodeProvider interface to prepare for network location unbundling.\""
    },
    {
      "commit": "34901409a404c8c66914c5a8ad0f29b1bcde0e78",
      "tree": "acb354a4cc41207692e486a84d9541925a15e8e6",
      "parents": [
        "3e7b44fade95848a717b0f4d1b7365ce72e885ed"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Mon Jan 04 12:14:21 2010 -0500"
      },
      "committer": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Tue Jan 05 23:39:29 2010 -0500"
      },
      "message": "Cleanup and add public wrapper for IGeocodeProvider interface to prepare for network location unbundling.\n\nChange-Id: I6523d115b56dbf450121e73d48e151f200827eb4\nSigned-off-by: Mike Lockwood \u003clockwood@android.com\u003e\n"
    },
    {
      "commit": "1af33d0ddc2f50ade146e4d48e2feb6f1d553427",
      "tree": "acd5598a9ce13ffe36f13f0ba4d782c96f24c6c7",
      "parents": [
        "3e7b44fade95848a717b0f4d1b7365ce72e885ed"
      ],
      "author": {
        "name": "Doug Zongker",
        "email": "dougz@android.com",
        "time": "Tue Jan 05 11:28:55 2010 -0800"
      },
      "committer": {
        "name": "Doug Zongker",
        "email": "dougz@android.com",
        "time": "Tue Jan 05 20:03:19 2010 -0800"
      },
      "message": "add recovery system interface to API\n\nAdds android.os.RecoverySystem (marked as pending) to replace the\n(hidden) com.android.internal.os.RecoverySystem.  RecoverySystem\ncontains methods for:\n\n  - verifying the signature of an update package\n  - rebooting to install a package\n  - rebooting to wipe user data\n\n(The reboot functions require \"android.permission.REBOOT\" and\n\"android.permission.ACCESS_CACHE_FILESYSTEM\".)  Providing these\nsimplifies implementation of OTA update for device builders.\n\nChange-Id: I63ce743b156e7a1a0327fd395b0e4a82c0eda79a\n"
    },
    {
      "commit": "03abb8179f0d912e6dabfc0e2b0f129d85066d17",
      "tree": "96bb3a814c750fd498db0171dab2e40bb9b1ae8f",
      "parents": [
        "129ef0aab3506f3cd80506843f42813ba20ce8ea"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Mon Jan 04 18:43:19 2010 -0800"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Tue Jan 05 15:47:05 2010 -0800"
      },
      "message": "Kill the task killers.\n\nThe ActivityManager.restartPackage() API is now deprecated, and no longer\nallows applications to mess up the state of other applications.  This was\nbeing abused by task killers, causing users to think their other applications\nhad bugs.\n\nA new API is introduced for task killers,\nActivityManager.killBackgroundProcesses(), which allows these applications\nto kill processes but only the same amount that the out of memory\nkiller does, thus causing no permanent damage.  The old restartPackage()\nAPI is now a wrapper for calling this new API.\n\nThere is also a new private forceStopPackage() API that is used for the\nsystem\u0027s force stop UI which does what the old restartPackage() API did.\n"
    },
    {
      "commit": "7fd0fee968f4a3e474e1ea9933fc03552fe5f50a",
      "tree": "97dcbc74194b56d32a9f9c4e323db7b62b9f6c59",
      "parents": [
        "8af9649d44745adba8be4db4e96af053ba32f2c5"
      ],
      "author": {
        "name": "San Mehat",
        "email": "san@google.com",
        "time": "Thu Dec 17 07:12:23 2009 -0800"
      },
      "committer": {
        "name": "San Mehat",
        "email": "san@google.com",
        "time": "Sat Jan 02 07:24:07 2010 -0800"
      },
      "message": "services: MountService: Refactor MountService for vold2\n\nSquash of the following:\nservices: MountService: Rework the way volume states are handled\nMountService: Add new API for directly getting volume state via a mount point\nEnvironment: Switch from using system property for external storage state.\nMountService: Add support for UMS\nMountService: Fix a few bugs\nservices: MountService: Add support for mount-on-insertion\nservices: MountService: Add some debugging around UMS\nservices: MountService: Fix some UMS bugs and clean-up startup mount code\n\nSigned-off-by: San Mehat \u003csan@google.com\u003e\n"
    },
    {
      "commit": "8eb3ea659761edc2cd5db3acf448059f19389e5e",
      "tree": "f7e4a63d32ecf88806dfac9c710b43e02b80fb3c",
      "parents": [
        "cc632731e2b6b83c1ec096d0d6c1dfa6b33d1377"
      ],
      "author": {
        "name": "Brad Larson",
        "email": "brad.larson@garmin.com",
        "time": "Tue Dec 29 11:47:55 2009 -0600"
      },
      "committer": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Wed Dec 30 10:22:35 2009 -0500"
      },
      "message": "Use isLocationProviderEnabled to test for enabled providers\n\nLocationManagerService was just checking if the string of (comma-separated)\nLocation Providers contained the provider we were interested in.  This works\nfine in normal cases, but breaks if we add a provider such as test_network.\nEnabling test_network causes LocationManagerService to think that the network\nprovider is also enabled.\n\nThe code in Settings.Secure.isLocationProviderEnabled() checks for the commas\nin the string as well, to make sure that a provider name which is a substring\nof another provider name won\u0027t cause problems.  It also centralizes the code\nwhich reads the string.\n\nSigned-off-by: Brad Larson \u003cbrad.larson@garmin.com\u003e\n"
    },
    {
      "commit": "5808317af880d0042dc8de451bbdaf039665433b",
      "tree": "af6afa9ab89bb41285ae7e91b5e2d5ea1da8becb",
      "parents": [
        "eb5ffc239b6482b9c1e046f6f5872187043d852c"
      ],
      "author": {
        "name": "Daniel Sandler",
        "email": "dsandler@google.com",
        "time": "Wed Dec 23 14:47:18 2009 -0600"
      },
      "committer": {
        "name": "Daniel Sandler",
        "email": "dsandler@google.com",
        "time": "Sun Dec 27 14:08:51 2009 -0500"
      },
      "message": "Immediately close the shade when the status bar is disabled. (DO NOT MERGE)\n\nThis provides a quick fix for http://b/2298803 (if the\nin-call UI comes up while the user is holding the\nwindowshade, the shade sticks in place and the display\nbecomes unresponsive).\n\nMerged from master (I92a824fe).\n\nTODO: safely restore code to animate the shade closed rather\nthan simply causing it to disappear.\n\nChange-Id: I53dc76fdfe86636f30f37a223a88d27a5766d3eb\n"
    }
  ],
  "next": "76032b7f167879782fd635f6b30cc15dd5b20ea0"
}
