)]}'
{
  "log": [
    {
      "commit": "305a2eb8e5957a4f3db2734a8918faf1a39fb9a4",
      "tree": "4733d69aba3b7cf238dc751a79325dc8f22918f0",
      "parents": [
        "b37d8a484cb81b7cc58bc97c18507ec556b33468"
      ],
      "author": {
        "name": "Romain Guy",
        "email": "romainguy@android.com",
        "time": "Tue Feb 09 11:30:44 2010 -0800"
      },
      "committer": {
        "name": "Romain Guy",
        "email": "romainguy@android.com",
        "time": "Tue Feb 09 11:36:44 2010 -0800"
      },
      "message": "Properly notifies listener when an animation is cancelled.\nBug: #2428005.\n"
    },
    {
      "commit": "b104340496e3a531e26c8f428c808eca0e039f50",
      "tree": "11247cb68359d43ca4871c0cb0165c9bec339a6f",
      "parents": [
        "3ee1317173260252d475772fec09d492f8fcfd33"
      ],
      "author": {
        "name": "San Mehat",
        "email": "san@google.com",
        "time": "Fri Feb 05 08:26:50 2010 -0800"
      },
      "committer": {
        "name": "San Mehat",
        "email": "san@google.com",
        "time": "Tue Feb 09 11:03:16 2010 -0800"
      },
      "message": "Framework: Clean up / Refactor Mount APIs\n\n - Move android.storage.* -\u003e android.os.storage.* and refactor users\n - Refactor generic shares back to explicit ums enable/disable/isEnabled\n - Remove media insert/removed event callbacks (not ready for Froyo)\n - Remove \u0027label\u0027 from volume state change callbacks\n - Add public API functions for enabling/disabling USB mass storage (permissions enforced\n   in MountSevice)\n - Remove some stray un-needed import lines\n - Move android.os.IMountService / android.os.IMountServiceListener -\u003e android.os.storage\n - Improve code comments\n\nUpdated:\n  MountService: Add dup state check and move debugging behind a conditional\n  UsbStorageActivity: Fix review comments + a TODO\n  StorageNotification: Add @Override tags\n  StorageManager: Don\u0027t use a static Listener list\n  MountService: Reduce bloat and fix \u003d\u003d where I meant .equals()\n  PackageManagerTests: Update for new API\n\nSigned-off-by: San Mehat \u003csan@google.com\u003e\n"
    },
    {
      "commit": "ace5a3fbfbf1b41905410925f1ea007040a7a675",
      "tree": "d97a9b2ea4ecc457a04d4e2c905634dba3a4bc72",
      "parents": [
        "9c6393b8df5dc8266f91bdaa13e56071f76cd50c"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Fri Feb 05 12:59:28 2010 -0800"
      },
      "committer": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Tue Feb 09 08:47:30 2010 -0800"
      },
      "message": "Hide resourceDirs from public API\n\nChange-Id: I070558c0adca43c8650ac740d3cda4334d0f4a50\n"
    },
    {
      "commit": "628fd6d9c11ed9806abebf34bc986247c106328f",
      "tree": "402876b69159436587770bc8754f6a66d02326ed",
      "parents": [
        "53bd2522ca7767f46646606123b6e2689b811850"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Mon Jan 25 22:46:13 2010 -0500"
      },
      "committer": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Mon Feb 08 23:20:27 2010 -0500"
      },
      "message": "Network Location unbundling:\n\nThe network location and geocode provider services are now started on demand\nand their interfaces are now retrieved via bindService().\n\nRemove obsolete LocationManager installLocationProvider() and installGeocodeProvider() methods.\n\nAdd abstract class android.location.provider.GeocodeProvider to provide a public wrapper to\nthe IGeocodeProvider Binder interface. Replaces the LocationManager.GeocodeProvider interface.\n\nRename LocationProviderImpl to android.location.provider.LocationProvider.\n\nMove LocationManager.reportLocation() to android.location.provider.LocationProvider,\nso all methods related to external location providers are now all in one class.\n\nAvoid calling from the Location Manager Service into providers that are disabled so we\ndo not start the network location service unnecessarily.\n\nChange-Id: If3ed2d5d62b83ba508006711d575cad09f4a0007\nSigned-off-by: Mike Lockwood \u003clockwood@android.com\u003e\n"
    },
    {
      "commit": "53bd2522ca7767f46646606123b6e2689b811850",
      "tree": "40a43c4d19ee0c6af8443878e3e889307f33652a",
      "parents": [
        "9be54d400d68c735013bc8069fbcb66c3f98c3ee"
      ],
      "author": {
        "name": "Fred Quintana",
        "email": "fredq@google.com",
        "time": "Fri Feb 05 15:28:12 2010 -0800"
      },
      "committer": {
        "name": "Fred Quintana",
        "email": "fredq@google.com",
        "time": "Mon Feb 08 16:54:43 2010 -0800"
      },
      "message": "- change the SyncManager to retry MANUAL syncs that encounter a soft error\n- make the sync dump handle the case where there are no accounts\n- fix a bug that caused the SyncManager to burn up CPU in the system process\n\nThe following was implemented:\n\nscheduler offers:\n - settings to disable sync\n - retries of certain errors\n - backoffs\n\nwant a way to control these when scheduling a sync\n - \"ignore_settings\"\n - \"ignore initial backoff\"\n - \"manual\" : ignore settings, ignore initial backoff\n - \"do not retry\"\n\n- need to change the default behavior of not retrying manual syncs to retry regardless\n"
    },
    {
      "commit": "836a1f2cb99600c26a1a928a9e3240b9dec3079b",
      "tree": "f6848d720a102e09ad2590857a5825fa9c9cd517",
      "parents": [
        "e8d898f4edb4dca397ec21c14f2a63c79ffdeccc"
      ],
      "author": {
        "name": "Joe Onorato",
        "email": "joeo@android.com",
        "time": "Mon Feb 08 13:41:00 2010 -0800"
      },
      "committer": {
        "name": "Joe Onorato",
        "email": "joeo@android.com",
        "time": "Mon Feb 08 13:42:06 2010 -0800"
      },
      "message": "Fix the build.  That was an API change.\n"
    },
    {
      "commit": "8d45e4e4c6244cc3a508da3b56fec8cfd4cadd1d",
      "tree": "bc434a1f1c8c2c8c6223af982ac255a52a94cf7b",
      "parents": [
        "aea16fb62f50ec26a399e1308592f43ed4fd1a50"
      ],
      "author": {
        "name": "Vasu Nori",
        "email": "vnori@google.com",
        "time": "Fri Feb 05 22:35:47 2010 -0800"
      },
      "committer": {
        "name": "Vasu Nori",
        "email": "vnori@google.com",
        "time": "Mon Feb 08 11:12:04 2010 -0800"
      },
      "message": "changes after review by API council\n\nplease refer to http://b/issue?id\u003d2420299\n"
    },
    {
      "commit": "458034799861fef47e00d85d528b4dac5e00bd51",
      "tree": "59ac7eea5cc95ea3b9fd5368e435a73f3d0a3d14",
      "parents": [
        "420bc12ed03dd0514e0d0400385ceba3e91bbe2c"
      ],
      "author": {
        "name": "Adam Powell",
        "email": "adamp@google.com",
        "time": "Mon Jan 25 15:10:44 2010 -0800"
      },
      "committer": {
        "name": "Adam Powell",
        "email": "adamp@google.com",
        "time": "Fri Feb 05 17:57:41 2010 -0800"
      },
      "message": "ListView updates. Fixed several overscrolling bugs. Added programmatic\nscrolling to ListView. Added auto-scrolling to show expanded content\nfor ExpandableListView. Fixed an AbsListView recycler bug where\noffscreen views would stick around in the view hierarchy.\n\nAddresses bugs 1161597 and 1119429.\n"
    },
    {
      "commit": "c5d1c6db61f208b206b260f897bb5bbc64be4d97",
      "tree": "91a5ffe88326b446f57b7249ddf1406b8654d2f6",
      "parents": [
        "0a45a09814dea0398647f26497ecff54a77c5f8c"
      ],
      "author": {
        "name": "Fred Quintana",
        "email": "fredq@google.com",
        "time": "Wed Jan 27 12:17:49 2010 -0800"
      },
      "committer": {
        "name": "Fred Quintana",
        "email": "fredq@google.com",
        "time": "Fri Feb 05 15:16:20 2010 -0800"
      },
      "message": "add sync polling\n\n- added the ability to specify that a sync (of account/authority/extras)\n  should occur at a given frequency\n- the existing daily poll code was replaced with seeding each\n  account/authority with a 24 hour periodic sync\n- enhanced the \"adb shell dumpsys content\" output to show the\n  periodic syncs and when they will next run\n"
    },
    {
      "commit": "97e44947282b3918ee0bed2d16b33b983f882580",
      "tree": "ae30514672b93407b1c9438aa46555363f9f5fc6",
      "parents": [
        "9446c5046872e8ae44120d4057ae724875aba1a4"
      ],
      "author": {
        "name": "Dan Egnor",
        "email": "egnor@google.com",
        "time": "Thu Feb 04 20:27:47 2010 -0800"
      },
      "committer": {
        "name": "Dan Egnor",
        "email": "egnor@google.com",
        "time": "Fri Feb 05 12:31:41 2010 -0800"
      },
      "message": "Add an AlarmManager API to set the system time (with the proper permissions).\n"
    },
    {
      "commit": "7722abe2591026e7db8910afa0431602723fc1e0",
      "tree": "89dc9b8551651944280d9f42eb2e63e57abeb970",
      "parents": [
        "744d90245378e53862ba02869864b36cea832648"
      ],
      "author": {
        "name": "Paul Westbrook",
        "email": "pwestbro@google.com",
        "time": "Thu Feb 04 14:01:33 2010 -0800"
      },
      "committer": {
        "name": "Paul Westbrook",
        "email": "pwestbro@google.com",
        "time": "Fri Feb 05 09:31:38 2010 -0800"
      },
      "message": "Bug 2420366\n\nRehide NumberPicker widget\n"
    },
    {
      "commit": "3da3cad97269d694a6153771fb4a0c3775ca6ab5",
      "tree": "54c6e90eb5f20661d7bfd508125e3f6123a796b0",
      "parents": [
        "f6e003bc4a885c186a023bd46beaaafa3842cf51"
      ],
      "author": {
        "name": "Valentin Kravtsov",
        "email": "valentink@google.com",
        "time": "Thu Jan 28 14:53:41 2010 +0000"
      },
      "committer": {
        "name": "Valentin Kravtsov",
        "email": "valentink@google.com",
        "time": "Fri Feb 05 14:21:07 2010 +0000"
      },
      "message": "Adding speech recognition service public API\n\nChange-Id: Ia2c13d4c7993d646956090aa5c56d1a441af9e5a\n"
    },
    {
      "commit": "a969dc4ea47051e6cd7f29fd91fd83924c749f0a",
      "tree": "22b000b2b23606d803670bfee531c1f0fffc55ff",
      "parents": [
        "5c19aeca3d41c6a5820dc05a51c38736d3583378"
      ],
      "author": {
        "name": "Michael Chan",
        "email": "mchan@android.com",
        "time": "Wed Feb 03 14:08:18 2010 -0800"
      },
      "committer": {
        "name": "Michael Chan",
        "email": "mchan@android.com",
        "time": "Thu Feb 04 14:51:28 2010 -0800"
      },
      "message": "Unhiding Rfc822Tokenizer.tokenize(CharSequence text, Collection\u003cRfc822Token\u003e out)\n\nNote that Rfc822Tokenizer.tokenize(CharSequence text) is already in the SDK\nand it just wraps the version I am unhiding.\n\nChange-Id: I1ac3b405a04df960fc1e65ca4797d6f5adf85dc4\n"
    },
    {
      "commit": "5c19aeca3d41c6a5820dc05a51c38736d3583378",
      "tree": "842d01879f26ea60425ab99a98c1144b761db712",
      "parents": [
        "46c53129c6f27c9193ab195a69cb50591b8c1fa2"
      ],
      "author": {
        "name": "Ken Shirriff",
        "email": "kens@google.com",
        "time": "Thu Feb 04 13:33:45 2010 -0800"
      },
      "committer": {
        "name": "Ken Shirriff",
        "email": "kens@google.com",
        "time": "Thu Feb 04 14:37:21 2010 -0800"
      },
      "message": "API review: TrafficStats: rename Pkts to Packets\n\nRename getMobileTxPackets(), getMobileRxPackets(), getTotalTxPackets(),\ngetMobileRxPackets()\n\nbug 2420318\n"
    },
    {
      "commit": "46c53129c6f27c9193ab195a69cb50591b8c1fa2",
      "tree": "787f7e27179b7be2237870304b641345f266e0b9",
      "parents": [
        "8f3ff09556b2d0c45eebdf97bd980f3b9f0c7d8f"
      ],
      "author": {
        "name": "Romain Guy",
        "email": "romainguy@android.com",
        "time": "Thu Feb 04 14:19:50 2010 -0800"
      },
      "committer": {
        "name": "Romain Guy",
        "email": "romainguy@android.com",
        "time": "Thu Feb 04 14:27:00 2010 -0800"
      },
      "message": "Rename GestureUtilities to GestureUtils.\n"
    },
    {
      "commit": "da5c1bd4443b5b569a0d392cd53b476b4e160c47",
      "tree": "025f448615600a914c9b081c859de978c8b22270",
      "parents": [
        "76bc4a6bb355d402b82bfa146ff29b8b81099076"
      ],
      "author": {
        "name": "Bjorn Bringert",
        "email": "bringert@android.com",
        "time": "Thu Feb 04 15:11:25 2010 +0000"
      },
      "committer": {
        "name": "Bjorn Bringert",
        "email": "bringert@android.com",
        "time": "Thu Feb 04 19:34:19 2010 +0000"
      },
      "message": "Remove source selector from SearchDialog\n\nFixes http://b/issue?id\u003d2419208\n\nThis reverts commit 32d580c360da0a0f15e7a080f4ebd0b7b514fe4c.\n\nChange-Id: I5d8821d52badf3e0347230b86671f8ceb65a663d\n"
    },
    {
      "commit": "3141e0a62abe57e93e5d716895a2a57cc052bb50",
      "tree": "95927990d870487c71e3813e6631bed5bdcb3b78",
      "parents": [
        "5d9661be8eaa2a4702a4d3c0fa0fd07a8638b503"
      ],
      "author": {
        "name": "Ben Murdoch",
        "email": "benm@google.com",
        "time": "Thu Jan 28 15:06:32 2010 +0000"
      },
      "committer": {
        "name": "Ben Murdoch",
        "email": "benm@google.com",
        "time": "Thu Feb 04 10:44:18 2010 +0000"
      },
      "message": "Add new ConsoleMessage class that adds more information (such as the Message Log Level from WebCore) and a new overload of onConsoleMessage that takes this as a parameter.\nThis change requires a corresponding change in external/webkit.\n\nBUG\u003d2401755\n\nChange-Id: Iea2c58e93172240f162d8ad57eb2c8f2352f8162\n"
    },
    {
      "commit": "5d9661be8eaa2a4702a4d3c0fa0fd07a8638b503",
      "tree": "98d80c1a3037f0d81cd13d4e04414f1226a4331a",
      "parents": [
        "fcebc0cd2d0913b880a4e0a1c0fdda1a0693df43"
      ],
      "author": {
        "name": "Wu-cheng Li",
        "email": "wuchengli@google.com",
        "time": "Sun Jan 31 17:03:30 2010 +0800"
      },
      "committer": {
        "name": "Wu-cheng Li",
        "email": "wuchengli@google.com",
        "time": "Thu Feb 04 16:11:38 2010 +0800"
      },
      "message": "Add getAttributeDouble() and focal length tag.\n\nbug:2375989\n"
    },
    {
      "commit": "74885efc8ce6d315e0593e5f669cc805e264cf68",
      "tree": "22da6c153588b0ef843411cfa6f760bc8660fc16",
      "parents": [
        "a7ff78d82022f711ee8ac57c07f8169d0ad559a4"
      ],
      "author": {
        "name": "Doug Zongker",
        "email": "dougz@android.com",
        "time": "Tue Feb 02 17:39:26 2010 -0800"
      },
      "committer": {
        "name": "Doug Zongker",
        "email": "dougz@android.com",
        "time": "Wed Feb 03 10:37:29 2010 -0800"
      },
      "message": "expose bootloader \u0026 radio versions, hardware string in API\n\nAdds three new device-version-related strings to android.os.Build.\n\nChange-Id: I832f87f26e50a649249c58037f563426f3bfc4bf\n"
    },
    {
      "commit": "355ca575a907e0f82c1c3f4849ed666c994e1ab6",
      "tree": "908330094531ce32cbd41113f6d8912f7a11b2b4",
      "parents": [
        "3a8cab88e7747dc280ce85895af014f98e80a6cc"
      ],
      "author": {
        "name": "Ray Chen",
        "email": "raychen@google.com",
        "time": "Wed Feb 03 11:34:29 2010 +0800"
      },
      "committer": {
        "name": "Ray Chen",
        "email": "raychen@google.com",
        "time": "Wed Feb 03 11:34:29 2010 +0800"
      },
      "message": "Add GPS_TIMESTAMP and GPS_DATESTAMP tag to ExifInterface.\n"
    },
    {
      "commit": "216bccf804db9c972b317620a27de6a8adf7fbfe",
      "tree": "229296e8cd22d3d8c4efbd55300d5b7c8c77339f",
      "parents": [
        "8c18d89f282d88ba80444f53771778ecf066874a"
      ],
      "author": {
        "name": "Adam Powell",
        "email": "adamp@google.com",
        "time": "Mon Feb 01 15:03:17 2010 -0800"
      },
      "committer": {
        "name": "Adam Powell",
        "email": "adamp@google.com",
        "time": "Tue Feb 02 17:52:29 2010 -0800"
      },
      "message": "Updated GestureDetector to ignore multitouch if requested by the app\nor if targetSdkVersion \u003e\u003d Froyo. Made ScaleGestureDetector\npublic. current.xml API updates for gestures.\n"
    },
    {
      "commit": "556d350a4d68be72c74b30ca9cd87a152f8512c2",
      "tree": "82afb98d79c7d6c66698f2b58474794fba26fabc",
      "parents": [
        "9ec33186c9f35e5dee23c65fb51873636694258e"
      ],
      "author": {
        "name": "San Mehat",
        "email": "san@google.com",
        "time": "Tue Feb 02 12:54:07 2010 -0800"
      },
      "committer": {
        "name": "San Mehat",
        "email": "san@google.com",
        "time": "Tue Feb 02 12:56:45 2010 -0800"
      },
      "message": "StorageManager: API_CHANGE: Move StorageManager into  android.storage\n\nSigned-off-by: San Mehat \u003csan@google.com\u003e\n"
    },
    {
      "commit": "c9d8175f40691228e25f0dd924cc2453a6f08e10",
      "tree": "c2ef9465b1c4fec1a92e9b3b5b6b91793d4a60f4",
      "parents": [
        "63d15ee6ae4ff5079c7551ca4131c6d7f23ad91c"
      ],
      "author": {
        "name": "San Mehat",
        "email": "san@google.com",
        "time": "Mon Feb 01 10:23:27 2010 -0800"
      },
      "committer": {
        "name": "San Mehat",
        "email": "san@google.com",
        "time": "Tue Feb 02 11:17:47 2010 -0800"
      },
      "message": "Context: API_CHANGE: Add support for retrieving StorageManager\n\nSigned-off-by: San Mehat \u003csan@google.com\u003e\n"
    },
    {
      "commit": "2df9a91ff5c61dc6d788e034f5e0eb7a77a57ac6",
      "tree": "fa7de4752662ebd0464d13b57548ec9bae207640",
      "parents": [
        "3565456ca7a48718500fcc8db3ff4c19abfa8cf5"
      ],
      "author": {
        "name": "Grace Kloba",
        "email": "klobag@google.com",
        "time": "Mon Feb 01 12:25:11 2010 -0800"
      },
      "committer": {
        "name": "Grace Kloba",
        "email": "klobag@google.com",
        "time": "Tue Feb 02 10:30:23 2010 -0800"
      },
      "message": "Hide the android.webkit.CallbackProxy class from the API. This is a android.webkit package class and internal to our implementation.\n\nAlthough not strictly a published API (the class does not appear in the docs), it has found it\u0027s way into the API through\nthe public, subclassable android.webkit.JsResult class where it is a protected member.\n\nBased on changed from Ben.\n"
    },
    {
      "commit": "56fcd69b14610e5ae7fc08f285c7b57585723c5a",
      "tree": "beadf635b9c335f3e35283a9ca886f5be8c9e69f",
      "parents": [
        "2cd543aad5cc38fb3e7158f1cc5080c7e9ff5d24"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Mon Feb 01 15:34:52 2010 -0500"
      },
      "committer": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Mon Feb 01 15:34:52 2010 -0500"
      },
      "message": "Remove unused method LocationProviderImpl.isEnabled().\n\nThis should have been removed in my previous change.\n\nChange-Id: I3a080888f995e77a61e3ebf1c194ccd65686af1e\nSigned-off-by: Mike Lockwood \u003clockwood@android.com\u003e\n"
    },
    {
      "commit": "6c8d2760736a0753dad96b4bb8f98c7d075e6d54",
      "tree": "5df1fac94e122b86f92095d697d4da8bb737d210",
      "parents": [
        "4c4300c71229638183d814ab8374e09f722910f5"
      ],
      "author": {
        "name": "Wu-cheng Li",
        "email": "wuchengli@google.com",
        "time": "Wed Jan 27 22:55:14 2010 +0800"
      },
      "committer": {
        "name": "Wu-cheng Li",
        "email": "wuchengli@google.com",
        "time": "Sat Jan 30 20:36:04 2010 +0800"
      },
      "message": "Add focal length and view angle API.\n\nbug:2375989,2375987\n"
    },
    {
      "commit": "4c4300c71229638183d814ab8374e09f722910f5",
      "tree": "74433bbded099adab785c4e978d75a1abcbccb71",
      "parents": [
        "4bc1772ccacf6adde33adf8dff9c696bc7bf76e3"
      ],
      "author": {
        "name": "Wu-cheng Li",
        "email": "wuchengli@google.com",
        "time": "Sat Jan 23 15:45:39 2010 +0800"
      },
      "committer": {
        "name": "Wu-cheng Li",
        "email": "wuchengli@google.com",
        "time": "Sat Jan 30 19:44:52 2010 +0800"
      },
      "message": "Add Camera.getSupportedThumbnailSizes() and Size.equals().\n\nbug:2375986\n"
    },
    {
      "commit": "9327f4f671de3cbb795612bf4f314ceff88de865",
      "tree": "f6f1109e4b3c8966eb6747f6f73835ea0623312e",
      "parents": [
        "7912a29cf24cab2f999186d95afa13ecdada0b8e"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Fri Jan 29 10:38:29 2010 -0800"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Fri Jan 29 17:16:02 2010 -0800"
      },
      "message": "More device policy work: clarify password modes, monkeying.\n\nClarifies what the password modes mean, renaming them to \"quality\"\nand updating their documentation and the implementation to follow.\n\nAlso adds a facility to find out if a monkey is running, which I\nneed for the api demo to avoid letting it wipe the device.\n"
    },
    {
      "commit": "bf124e7e41f7850ac1b7be808221a462db6f3447",
      "tree": "e831e6443bc122c5c8f35c4560517cd09ec7852b",
      "parents": [
        "c88ed5dc5de7b2a7a02f975c83ee12e0fc1df27f"
      ],
      "author": {
        "name": "Ray Chen",
        "email": "raychen@google.com",
        "time": "Tue Jan 26 14:43:35 2010 -0800"
      },
      "committer": {
        "name": "Ray Chen",
        "email": "raychen@google.com",
        "time": "Fri Jan 29 14:30:05 2010 -0800"
      },
      "message": "Unhide ThumbnailUtils to support Camera unbundling.\nhttp://b/2375978\n"
    },
    {
      "commit": "ef73162887943e16587b8e737b19e59348338e8c",
      "tree": "8a769b3abba1289bd2d6c39cc801c656491f60e2",
      "parents": [
        "3b889f52195cbbc12200ca237e312e825003132d"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Wed Jan 27 17:51:34 2010 -0500"
      },
      "committer": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Fri Jan 29 17:05:04 2010 -0500"
      },
      "message": "Support for triggering the lockscreen while the screen is on:\n\nAdd new ALLOW_LOCK_WHILE_SCREEN_ON window manager flag, which when set\ncauses the window manager to put up the lockscreen after the\nnormal screen timeout has elapsed.\n\nAdd plumbing to pass PowerManager.userActivity() to the window manager policy.\n\nChange-Id: I05adc52bad39c56031a08e8ec3cbcf5c2d9b9827\nSigned-off-by: Mike Lockwood \u003clockwood@android.com\u003e\n"
    },
    {
      "commit": "6eb7c45a8fdb774c4094b5012c8496f2a009c032",
      "tree": "0763573ab8e0df9bb6e45a1cb02c66fc7023fe72",
      "parents": [
        "35ec7863e18ce3d242010b76a50df5a8c285325b"
      ],
      "author": {
        "name": "Vasu Nori",
        "email": "vnori@google.com",
        "time": "Wed Jan 27 14:31:24 2010 -0800"
      },
      "committer": {
        "name": "Vasu Nori",
        "email": "vnori@google.com",
        "time": "Fri Jan 29 12:24:28 2010 -0800"
      },
      "message": "make SqliteDatabase ConflictAlgorithm and associated methods public.\n\nSQLiteDatabase.java has ConflictAlgorithm which allows callers to specify\nactions to take when insert or update causes constraint violations.\nThese actions are documented at http://www.sqlite.org/lang_conflict.html.\n\nwhy make these public? usecase is the following:\nGmail has a table with a column \"_id\" being the integer primary key and\nthey let sqlite assign key values to the column.\nbut there is another UNIQUE key column (message_id) in the table.\nso an insert could fail due to constraint violation on the message_id column\n(i.e., not on the primary key). and when that happens, they would like to\nget the value of _id that caused constraint violation.\n\ncurrently hidden method insertOnConflict() already provides the above\nfunctionality. that means exposing ConflictAlgorithm also.\n"
    },
    {
      "commit": "254cb446faa7cb13699d8150eb4cc4f44cb61a2d",
      "tree": "1647a7558348a67989c0892b4e5b0350ba4392c5",
      "parents": [
        "2fd75f35158b8347251d18e8ec48585d6e020777"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Wed Jan 27 19:23:59 2010 -0800"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu Jan 28 13:15:57 2010 -0800"
      },
      "message": "More device admin.\n\n- Clean up device policy manager APIs.\n- Implement lockNow().  For now this just turns the screen off to lock the device.\n"
    },
    {
      "commit": "679091849754c60bdde5670495c38493065fd308",
      "tree": "9c46ad0425892c6f9025625fa63b06035e7cbac5",
      "parents": [
        "0561f1175dcbcaa19059eb5bde09cc02f81da0b3"
      ],
      "author": {
        "name": "Grace Kloba",
        "email": "klobag@google.com",
        "time": "Wed Jan 27 14:11:13 2010 -0800"
      },
      "committer": {
        "name": "Grace Kloba",
        "email": "klobag@google.com",
        "time": "Thu Jan 28 09:19:10 2010 -0800"
      },
      "message": "Use a single EXTRA_HEADERS intent.\n"
    },
    {
      "commit": "c58ffe8253ca76160908d153242d8150f668ea32",
      "tree": "c4ff7cd483a091453a63c57146cc82cd4856355a",
      "parents": [
        "f9e573ec337e79043a5ee74fe3c03d97b31e11e6"
      ],
      "author": {
        "name": "Wei-Ta Chen",
        "email": "weita@google.com",
        "time": "Wed Jan 27 16:16:17 2010 +0800"
      },
      "committer": {
        "name": "Wei-Ta Chen",
        "email": "weita@google.com",
        "time": "Thu Jan 28 15:48:54 2010 +0800"
      },
      "message": "Unhide YuvImage, which supports compressing a YUV rectangle region to JPEG.\n\nBug: 2285598\n"
    },
    {
      "commit": "f9e573ec337e79043a5ee74fe3c03d97b31e11e6",
      "tree": "d1cc3e6110d2aa49c0fc6569aefc2b65a6422047",
      "parents": [
        "7543f9e293467333165dd6d88570f19b537fbca1"
      ],
      "author": {
        "name": "Jesse Wilson",
        "email": "jessewilson@google.com",
        "time": "Wed Jan 27 15:11:10 2010 -0800"
      },
      "committer": {
        "name": "Jesse Wilson",
        "email": "jessewilson@google.com",
        "time": "Wed Jan 27 22:30:38 2010 -0800"
      },
      "message": "Updating Android\u0027s API XML files to reflect our new XML APIs!\n\nThe effective change is here: https://android-git.corp.google.com/g/38533\nIt updates DOM to v3 and adds several javax.xml packages to be compatible\nwith Java 5.\n"
    },
    {
      "commit": "d47c6ed4a9f2b5bd31f6c806b74701428efe458b",
      "tree": "dcaea393c297e01163a4f57e377e295cf3cbe877",
      "parents": [
        "9cf5b455d95ff2024b6d23e3416aca4abf93ff8c"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Wed Jan 27 16:21:20 2010 -0800"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Wed Jan 27 17:31:56 2010 -0800"
      },
      "message": "Bite the bullet and add support for multiple device admins.\n"
    },
    {
      "commit": "e7bd22a9d9441916aa9c67d80ee9f02a2d3e10e5",
      "tree": "3b779c292cb051157853958b83953d7e25698362",
      "parents": [
        "83e5ff09d5ea440c3d32c9293449701d2475f4eb"
      ],
      "author": {
        "name": "Chih-Chung Chang",
        "email": "chihchung@google.com",
        "time": "Wed Jan 27 10:24:42 2010 -0800"
      },
      "committer": {
        "name": "Chih-Chung Chang",
        "email": "chihchung@google.com",
        "time": "Wed Jan 27 17:05:21 2010 -0800"
      },
      "message": "Unhide camera api for set display orientation.\n"
    },
    {
      "commit": "43c9cdffb619f93d9d4525dffd05701dc9c8c4bf",
      "tree": "a266084c0bb0dd8bb2940361dd48679fe447c53c",
      "parents": [
        "507354e4ba07e1d8701d747d60414b053eb517b4"
      ],
      "author": {
        "name": "Romain Guy",
        "email": "romainguy@android.com",
        "time": "Wed Jan 27 13:53:55 2010 -0800"
      },
      "committer": {
        "name": "Romain Guy",
        "email": "romainguy@android.com",
        "time": "Wed Jan 27 15:53:40 2010 -0800"
      },
      "message": "New View.dispatchDisplayHint() API.\nBug #2399147\n\nThis new API will be used by scrollable containers to tell children that they\nare/are not displayed. This will allow lists to hide their filter popup window\nfor instance.\n"
    },
    {
      "commit": "8ea138cbf12b140d43fd81f4f12fe1a9234f1f25",
      "tree": "65d820bd65d69af867e4558b1fbd407634309eb2",
      "parents": [
        "2fc1f4a02957de3fdc785ca3dde414fb8e97bc49"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Tue Jan 26 18:01:04 2010 -0800"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Wed Jan 27 13:51:53 2010 -0800"
      },
      "message": "More work on device admins:\n\n- You can now show a dynamic message to the user when asking to\n  have your DeviceAdmin added.\n- A DeviceAdmin can now provide a warning message that is displayed\n  before a user disables it.\n- Better ordering (and text) of the policy warnings.\n- New API to set the maximum failed password attempts before the device\n  wipes itself.\n- We now store the number of failed unlock attempts in persistent\n  storage.\n- New managed dialog APIs that will be used by the settings app.\n\nAlso a little bit of cleanup as I was working on this - removed the\nlong unused MailboxNotAvailableException, fixed a java doc in Messenger.\n"
    },
    {
      "commit": "d0d9bc2f2fe737d186c0cc8c29a325e4f2907e8e",
      "tree": "f2cf97810b503211f57c972fb0db36d94e195703",
      "parents": [
        "946e007283d76d6855824ed00910fb1470d369c2"
      ],
      "author": {
        "name": "Grace Kloba",
        "email": "klobag@google.com",
        "time": "Tue Jan 26 18:08:28 2010 -0800"
      },
      "committer": {
        "name": "Grace Kloba",
        "email": "klobag@google.com",
        "time": "Wed Jan 27 12:28:11 2010 -0800"
      },
      "message": "Add request header support for the Browser/WebView.\nQSB can use this instead of POST to send the location\ndata. After QSB makes the switch, we should also\nremove the POST_DATA intent which is hidden.\n\nAdd loadUrl(String url, HashMap extraHeaders) to\nWebView so that the caller can send the extra http\nheaders.\n\nRemove \"inline:\" as no one is using it and it is a\nhidden feature.\n\nPart 1 of 3-project checkin."
    },
    {
      "commit": "e6be0f7263484eb5e49153f049ac170c57444c74",
      "tree": "afb2625a072389864d179b70b921c0d40d632af2",
      "parents": [
        "11c628a605c228f46d1b66b4a6c4deab683fbb9e"
      ],
      "author": {
        "name": "Romain Guy",
        "email": "romainguy@android.com",
        "time": "Tue Jan 26 17:05:11 2010 -0800"
      },
      "committer": {
        "name": "Romain Guy",
        "email": "romainguy@android.com",
        "time": "Tue Jan 26 17:05:11 2010 -0800"
      },
      "message": "Fix the build.\n"
    },
    {
      "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": "017091669a5af2dd3d0a457f05f153f4d31848b6",
      "tree": "2679fa41ed025078a595757af090c34dcf7c6a32",
      "parents": [
        "fd0c2dda2dc77944bd0a94cedd88acba707804c8"
      ],
      "author": {
        "name": "Chih-Chung Chang",
        "email": "chihchung@google.com",
        "time": "Fri Jan 22 18:10:53 2010 -0800"
      },
      "committer": {
        "name": "Chih-Chung Chang",
        "email": "chihchung@google.com",
        "time": "Tue Jan 26 12:08:21 2010 -0800"
      },
      "message": "Unhide brightness constants to help unbundle Camera.\n"
    },
    {
      "commit": "a3d5e0c5e3d12b3f8d7f43acb0c170b5e5899876",
      "tree": "47d6652f38ff4cb51f172023cb2d7f0ebd8422a9",
      "parents": [
        "8d9eb9f681941fe0bf9eb91696427700ba5ed810"
      ],
      "author": {
        "name": "Mark Vandevoorde",
        "email": "mtv@google.com",
        "time": "Tue Jan 26 08:42:10 2010 -0800"
      },
      "committer": {
        "name": "Mark Vandevoorde",
        "email": "mtv@google.com",
        "time": "Tue Jan 26 08:42:10 2010 -0800"
      },
      "message": "Unhide the secure setting for LocationProviderEnabled\n\nThe unbundled NetworkLocationProvider needs to get/set the enabled bit\nfrom the settings database.\n"
    },
    {
      "commit": "9d8b876c61831fd52abf56a87c518b999cc17821",
      "tree": "27957d0ade63396dabf21922d2c41490ac67be78",
      "parents": [
        "0c8569f2a345b8321ff842d76191b5d72b4bdb54"
      ],
      "author": {
        "name": "Daniel Sandler",
        "email": "dsandler@google.com",
        "time": "Fri Jan 22 20:50:15 2010 -0500"
      },
      "committer": {
        "name": "Daniel Sandler",
        "email": "dsandler@google.com",
        "time": "Tue Jan 26 09:59:35 2010 -0500"
      },
      "message": "Add android.provider.Settings.ACTION_DEVICE_INFO_SETTINGS.\n\nMaps to \"android.settings.DEVICE_INFO_SETTINGS\", which\nlaunches the DeviceInfoSettings activity in Settings.\n"
    },
    {
      "commit": "79896bd123aa3bc69c6455d4e2ddf2b2b555e6e5",
      "tree": "62d7cfa207de2108e964b44949f0ccf1e124f11c",
      "parents": [
        "c30ffda0d84e0c3d9b8a4ccc18b3895ae467ae40"
      ],
      "author": {
        "name": "Valentin Kravtsov",
        "email": "valentink@google.com",
        "time": "Fri Jan 15 11:56:03 2010 +0000"
      },
      "committer": {
        "name": "Valentin Kravtsov",
        "email": "valentink@google.com",
        "time": "Tue Jan 26 11:23:52 2010 +0000"
      },
      "message": "Adding Recognition Service and Listener wrappers\n\nChange-Id: Ib5068fb6d42b6752d09b0828964b6cbe92d015d3\n"
    },
    {
      "commit": "199566045d2c22981604b1894e416373eb0e74ed",
      "tree": "af683ac4eea76def755bff2e0725881c8c763d18",
      "parents": [
        "a98ae1f7d60a1c7b9c9342ee622cd92f3eced204"
      ],
      "author": {
        "name": "Mike LeBeau",
        "email": "mlebeau@android.com",
        "time": "Mon Jan 25 21:31:09 2010 -0500"
      },
      "committer": {
        "name": "Mike LeBeau",
        "email": "mlebeau@android.com",
        "time": "Mon Jan 25 21:48:08 2010 -0500"
      },
      "message": "Unhide RecognizerIntent.ACTION_VOICE_SEARCH_SETTINGS, which our voice search\n(or other voice search implementations) can use to implement settings in the\nsystem settings.\n"
    },
    {
      "commit": "307da1a46b4c9b711bafe8fbaaa6b98e8868c18e",
      "tree": "a83cd290b7fc4e6d7f11a56c96318f282df37838",
      "parents": [
        "e0560e484b4b31edbb81beae1dca7e109126cb73"
      ],
      "author": {
        "name": "Fred Quintana",
        "email": "fredq@google.com",
        "time": "Thu Jan 21 14:24:20 2010 -0800"
      },
      "committer": {
        "name": "Fred Quintana",
        "email": "fredq@google.com",
        "time": "Mon Jan 25 16:41:58 2010 -0800"
      },
      "message": "enhance the sync manager backoff logic and add support for retry-after\n\nmoved SyncQueue and SyncOperation into their own top-level classes\nto ease maintainability and testing6\n\nremoved some dead code\n"
    },
    {
      "commit": "c7f930f5a9a62470775e913945c771ca57e0b10f",
      "tree": "08b12ed959d90867de457c4b5de306d351646b09",
      "parents": [
        "bb04b631b60e0286c02e0fd4dd7ab764a001e0ce"
      ],
      "author": {
        "name": "Yang Li",
        "email": "liyang@google.com",
        "time": "Mon Jan 25 15:10:28 2010 -0800"
      },
      "committer": {
        "name": "Yang Li",
        "email": "liyang@google.com",
        "time": "Mon Jan 25 15:15:55 2010 -0800"
      },
      "message": "Made GestureUtilities\u0027s several methods public; Changed GestureStroke\u0027s smoothening threshold.\n"
    },
    {
      "commit": "d1ab01682b136b586aac94334f976f03c762b3c7",
      "tree": "f266e77778c4b79050e3f372c0146ce1a2a34e84",
      "parents": [
        "92da0b4453b46f314a9acdc60302cf196ff0d1fe"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Thu Jan 21 17:27:14 2010 -0800"
      },
      "committer": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Fri Jan 22 17:05:50 2010 -0800"
      },
      "message": "Add extra resources field for ApplicationInfo\n\nAllow ApplicationInfo to track multiple files it wants to use as\nresources by adding a string array to its public definition.\n\nChange-Id: Ieffc4b1755270520b59c4e5a3c084e86aef02346\n"
    },
    {
      "commit": "3214839482aebcdfccc7cec0b0849739ef46fa68",
      "tree": "a7e6e79ea98ffbf6aa3eecfabe4a2c9b42cd8fde",
      "parents": [
        "55434a7999222d89205f32efb03da7e70dd74073"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Thu Jan 21 15:40:47 2010 -0800"
      },
      "committer": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Fri Jan 22 16:56:26 2010 -0800"
      },
      "message": "Unhide resource-related API calls in Context\n\nContext hides methods related to the underlying functioning of\nresources which are readily available from the ApplicationInfo\nobject.  This change allows getting access to information\nwithout having to make PackageManager calls for it.\n\nChange-Id: Icf6a9da652dad8175bd11b5cd81a924181070373\n"
    },
    {
      "commit": "68f2f547f56f239b60d13b2b62a08a65874f6662",
      "tree": "85b9828928b50972b34a42dc70008e21e8e88536",
      "parents": [
        "37f3ddb60ba75acde323066836e6ba2111dabb98"
      ],
      "author": {
        "name": "Paul Westbrook",
        "email": "pwestbro@google.com",
        "time": "Wed Jan 13 12:13:57 2010 -0800"
      },
      "committer": {
        "name": "Paul Westbrook",
        "email": "pwestbro@google.com",
        "time": "Thu Jan 21 16:56:57 2010 -0800"
      },
      "message": "Bug 2330111\n\nMake NumberPicker public\n\nMade setCurrent() more robust, as the value needs to be within the range\nspecified earlier. setCurrent() will now throw an exception\nif the specified doesn\u0027t fall in the range\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": "ef340357cefeee452403a77c2b6c1aa01c239d6b",
      "tree": "ea4cad3c00cfc34263495ad9a9868aef02815967",
      "parents": [
        "2fa6b52c2bdd83bcb8c58be6b9e29c7d292fb1c6"
      ],
      "author": {
        "name": "Justin Mattson",
        "email": "jmatt@google.com",
        "time": "Wed Jan 13 21:05:46 2010 -0800"
      },
      "committer": {
        "name": "Justin Mattson",
        "email": "jmatt@google.com",
        "time": "Thu Jan 21 11:40:58 2010 -0800"
      },
      "message": "NEW_API: Declare an ACTION_SEARCH_SETTINGS constant in android.provider.Settings so that apps can cause this system setting group to be opened directly.\n\nThe Settings app already responds to this action it just was not exposed in the platform API.\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": "130a8b71bbfb93c1cbe0642e7f2cb97322f899d1",
      "tree": "fb6cc0d97884d0c4ffe2c5e626aadcc458a6abc3",
      "parents": [
        "7c44220d0b57bd3bbb87f5db00454f9ea9faed9a"
      ],
      "author": {
        "name": "Ficus Kirkpatrick",
        "email": "ficus@android.com",
        "time": "Thu Jan 14 15:39:43 2010 -0800"
      },
      "committer": {
        "name": "Ficus Kirkpatrick",
        "email": "ficus@android.com",
        "time": "Fri Jan 15 11:35:06 2010 -0800"
      },
      "message": "Add Dialog.setOnShowListener() to the public API.\n"
    },
    {
      "commit": "3084a6f80180506ce26fe4773d9a19f004b7f625",
      "tree": "0664c1d8c214b494ab9b936d630cc01d45466ae5",
      "parents": [
        "013b9c249dbcb5ca293c5cfe6a0e7908ced32418"
      ],
      "author": {
        "name": "Fred Quintana",
        "email": "fredq@google.com",
        "time": "Thu Jan 14 18:02:03 2010 -0800"
      },
      "committer": {
        "name": "Fred Quintana",
        "email": "fredq@google.com",
        "time": "Fri Jan 15 11:05:44 2010 -0800"
      },
      "message": "rename testHasFeatures to hasFeatures\n"
    },
    {
      "commit": "b8a2aafdef732764bd6b189d035e9f0765bb027a",
      "tree": "69aae5bc60a77cd81de50dc68a13377f898296f2",
      "parents": [
        "0894498712de1f15b6491fa5fe111b2da7fb7038"
      ],
      "author": {
        "name": "Nicolas Catania",
        "email": "niko@google.com",
        "time": "Thu Jan 14 10:44:02 2010 -0800"
      },
      "committer": {
        "name": "Nicolas Catania",
        "email": "niko@google.com",
        "time": "Fri Jan 15 10:41:56 2010 -0800"
      },
      "message": "New method to return the last dialed number\nBug:2227429\n"
    },
    {
      "commit": "c5dfa70410121c63079ecd7e4945d774562c8998",
      "tree": "dd1634a2a96b68aebaa61f21be2b3d6c06c17e73",
      "parents": [
        "633feacf17ef3188fb77751b6234140326568522"
      ],
      "author": {
        "name": "Nicolas Catania",
        "email": "niko@google.com",
        "time": "Fri Jan 15 09:52:54 2010 -0800"
      },
      "committer": {
        "name": "Nicolas Catania",
        "email": "niko@google.com",
        "time": "Fri Jan 15 09:52:54 2010 -0800"
      },
      "message": "Revert \"New method to return the last dialed number\"\n\nThis reverts commit ac835c94b81c9497404a27af4da9c957e5c82045.\n"
    },
    {
      "commit": "ac835c94b81c9497404a27af4da9c957e5c82045",
      "tree": "32cf79cd662d66a1fc671d6bc9629491f8e04a2b",
      "parents": [
        "0f26ec1aa10f070dea33a24de02bb766ef698c0a"
      ],
      "author": {
        "name": "Nicolas Catania",
        "email": "niko@google.com",
        "time": "Thu Jan 14 10:44:02 2010 -0800"
      },
      "committer": {
        "name": "Nicolas Catania",
        "email": "niko@google.com",
        "time": "Fri Jan 15 08:19:45 2010 -0800"
      },
      "message": "New method to return the last dialed number\nBug:2227429\n"
    },
    {
      "commit": "e495d1f74af13aec8d5d825e93e4cfe1e4fe7468",
      "tree": "598f4255c3068e244a15911423e375464f70f44d",
      "parents": [
        "f2275078bd5ba6bc0b184098573341c5958289ab"
      ],
      "author": {
        "name": "Vasu Nori",
        "email": "vnori@google.com",
        "time": "Wed Jan 06 16:34:19 2010 -0800"
      },
      "committer": {
        "name": "Vasu Nori",
        "email": "vnori@google.com",
        "time": "Thu Jan 14 15:22:58 2010 -0800"
      },
      "message": "fix a bug in compiled-sql caching \u0026 hide public api setMaxSqlCacheSize\n\nthis is a clone of https://android-git.corp.google.com/g/#change,35174.\nif the cache is full to its capacity and if a new statement is to be cached,\none of the entries in the cache is thrown out to make room for the new one.\nbut the one that is thrown out doesn\u0027t get deallocated by SQLiteProgram\nbecause it doesn\u0027t know that it should.\nfixed this by having SQLiteProgram finalize its sql statement in\nreleaseReference*() methods, if the statement is not in cache.\n"
    },
    {
      "commit": "55f3ac5f293e78618995202274f8555f2481994d",
      "tree": "fbec5ee65e87c4fcd651573900bf4acd78eed427",
      "parents": [
        "e414f32f7753ccb44544dda73853bbe27d68236b"
      ],
      "author": {
        "name": "Bjorn Bringert",
        "email": "bringert@android.com",
        "time": "Thu Jan 14 11:38:22 2010 +0000"
      },
      "committer": {
        "name": "Bjorn Bringert",
        "email": "bringert@android.com",
        "time": "Thu Jan 14 20:56:59 2010 +0000"
      },
      "message": "Expose SearchManager constants for global search\n\nThis change exposes some constants that are needed for\nstarting the global search activity (QuickSearchBox):\n\n- SearchManager.INTENT_ACTION_GLOBAL_SEARCH\n- SearchManager.EXTRA_SELECT_QUERY\n\nChange-Id: I2f1f10070f502a8d5b644e78c03837d5d8b43486\n"
    },
    {
      "commit": "bb68a4fc54231e147d91fe3668d1409ccfd81a45",
      "tree": "230ca5f17556e77a9e2c51a0fd7535201f3e6064",
      "parents": [
        "8178753301003c9469e34e9322fe60630ea34f61"
      ],
      "author": {
        "name": "Fred Quintana",
        "email": "fredq@google.com",
        "time": "Wed Jan 13 17:28:39 2010 -0800"
      },
      "committer": {
        "name": "Fred Quintana",
        "email": "fredq@google.com",
        "time": "Thu Jan 14 10:35:33 2010 -0800"
      },
      "message": "add AccountManager.testHasFeatures() to make it easy to check if a given account has a set of features\n"
    },
    {
      "commit": "c849cdf5cfde007ce591838c4e2b777fb4843c8d",
      "tree": "c21dde7e344ea856d73099844fd09bfb2d21ffd3",
      "parents": [
        "a77f93f76a40128ecc3d017ead6d1105f96b282a"
      ],
      "author": {
        "name": "Robert Greenwalt",
        "email": "robdroid@android.com",
        "time": "Fri Jan 08 11:47:27 2010 -0800"
      },
      "committer": {
        "name": "Robert Greenwalt",
        "email": "robdroid@android.com",
        "time": "Wed Jan 13 10:01:44 2010 -0800"
      },
      "message": "Unhide some CM constants to support unbundling.\n\nThe MOBILE_MMS, MOBILE_SUPL, MOBILE_DUN and MOBILE_HIPRI net types used\nby location, messaging, and vending needed to be exposed.\n\nBug: 2363272\nChange-ID: I6d2361d3642064db619b283b9217512563eb3439\n"
    },
    {
      "commit": "0408675d8770fc55c40631cdfa87d79fc00f0a3c",
      "tree": "56afa805f7c1c8b5801994150d5c1d0a5025315b",
      "parents": [
        "7240b50449fc75cdb6c1a60a4dfe201497207a6f"
      ],
      "author": {
        "name": "Bjorn Bringert",
        "email": "bringert@android.com",
        "time": "Tue Jan 12 15:50:04 2010 +0000"
      },
      "committer": {
        "name": "Bjorn Bringert",
        "email": "bringert@android.com",
        "time": "Tue Jan 12 15:50:04 2010 +0000"
      },
      "message": "Add and expose SearchManager.getSearchableInfo()\n\nThis method is needed by QuickSearchBox to get the searchability\nmeta-data for an activity.\n\nChange-Id: I1b7a72d4dde1ff15410288cfdc33c043738be977\n"
    },
    {
      "commit": "52eab1c7601862d94c90366878088e072b1c6017",
      "tree": "4a7af6e47f21069dac1ce2764b04dc07a87afac2",
      "parents": [
        "3b06c9f3dda91dbbf567f3163da1ac9648221f14"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Sun Jan 10 22:25:31 2010 -0500"
      },
      "committer": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Mon Jan 11 12:32:50 2010 -0500"
      },
      "message": "Unhide LocationManager APIs needed for unbundled location providers.\n\nSigned-off-by: Mike Lockwood \u003clockwood@android.com\u003e\n"
    },
    {
      "commit": "32d580c360da0a0f15e7a080f4ebd0b7b514fe4c",
      "tree": "abdd91232ac40dc59b227a7ee431c78b6192930c",
      "parents": [
        "71de7851a2d1c1ef0251bdc1ea59c5e6f58cf429"
      ],
      "author": {
        "name": "Bjorn Bringert",
        "email": "bringert@android.com",
        "time": "Wed Jan 06 09:29:11 2010 +0000"
      },
      "committer": {
        "name": "Bjorn Bringert",
        "email": "bringert@android.com",
        "time": "Sat Jan 09 13:19:52 2010 +0000"
      },
      "message": "Copy SearchSourceSelector from QuickSearchBox\n\nThe widget shows the icon for a search source, and when clicked\nfires an intent that shows a search source selection activity.\nThat intent is handled by the QuickSearchBox app.\n\nThis change also adds the source selector to the in-app\nsearch dialog.\n\nAn upcoming change to QuickSearchBox will add the search source\nselector to the home screen search widget and to the Quick Search Box\nactivity.\n\nTODO: Add assets for selected and pressed states to the search selector.\nTODO: The SearchDialog hides when the soruce selection activity\nappears. This will be fixed when SearchDialog is changed from a\nsystem window to a normal app window.\n\nChange-Id: I91eadd60682577614e274ecf5b995b927c70a48a\n"
    },
    {
      "commit": "71de7851a2d1c1ef0251bdc1ea59c5e6f58cf429",
      "tree": "ab1cdc4c9e0e5386d01b5a75c931d948fed4c4f8",
      "parents": [
        "4b138d8703d9f88031a5f2fbe6a6bda2d9ccf151"
      ],
      "author": {
        "name": "Ficus Kirkpatrick",
        "email": "ficus@android.com",
        "time": "Fri Jan 08 13:10:51 2010 -0800"
      },
      "committer": {
        "name": "Ficus Kirkpatrick",
        "email": "ficus@android.com",
        "time": "Fri Jan 08 16:37:43 2010 -0800"
      },
      "message": "Make Build.UNKNOWN public.\n\nThere needs to be a way for apps to determine whether or not\na build property exists.  Exposing UNKNOWN (the value that\nBuild sets properties to by default) will give apps something\nto compare against.\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": "431f5fd9e8c9d63f77ae47cd156f72175307ff85",
      "tree": "73b0af369face5860d8c169fe029748dcec4c21d",
      "parents": [
        "698893fc902b0510d45864e4d221d01eec508386"
      ],
      "author": {
        "name": "Evan Millar",
        "email": "emillar@google.com",
        "time": "Wed Jan 06 14:36:31 2010 -0800"
      },
      "committer": {
        "name": "Evan Millar",
        "email": "emillar@google.com",
        "time": "Fri Jan 08 10:17:02 2010 -0800"
      },
      "message": "Unhide WebView#emulateShiftHeld() so that gmail can do select-to-copy\n"
    },
    {
      "commit": "6a5b0ecae5dc89a951e1e204bc007f50f944c5d1",
      "tree": "e1a397b9504f9b3ec0e661a5d4ac5052a6af16c2",
      "parents": [
        "624d39dd818037d4c2f1b0ab846b0ba336a7e767"
      ],
      "author": {
        "name": "Patrick Scott",
        "email": "phanna@android.com",
        "time": "Fri Jan 08 09:55:33 2010 -0500"
      },
      "committer": {
        "name": "Patrick Scott",
        "email": "phanna@android.com",
        "time": "Fri Jan 08 10:16:33 2010 -0500"
      },
      "message": "Deprecate onTooManyRedirects.\n\nThe method was added a long time ago but has never been called. Rather than\nspend time implementing and testing this feature, deprecate the function.\n\nBug: 2257857\n"
    },
    {
      "commit": "624d39dd818037d4c2f1b0ab846b0ba336a7e767",
      "tree": "9e0292371f5460917c844152f608897266d7dd18",
      "parents": [
        "b0ef1bcfa1f059ae695eb22ed462b366747039c9"
      ],
      "author": {
        "name": "Chih-Chung Chang",
        "email": "chihchung@google.com",
        "time": "Thu Jan 07 16:39:20 2010 +0800"
      },
      "committer": {
        "name": "Chih-Chung Chang",
        "email": "chihchung@google.com",
        "time": "Fri Jan 08 12:31:16 2010 +0800"
      },
      "message": "Unhide intent extra constants for Camera.\n"
    },
    {
      "commit": "6e70912bd53aaa5264259e160eb2b4d2eb0f302c",
      "tree": "eab23ab6e33add58cc05a936520f8670ab08fed3",
      "parents": [
        "edc5189c33de03f3e2f5f73edc0e007992b933c9"
      ],
      "author": {
        "name": "Dan Egnor",
        "email": "egnor@google.com",
        "time": "Thu Jan 07 10:08:19 2010 -0800"
      },
      "committer": {
        "name": "Dan Egnor",
        "email": "egnor@google.com",
        "time": "Thu Jan 07 19:10:43 2010 -0800"
      },
      "message": "Bumper un-@hide (un-@pending actually) of previously reviewed APIs:\n\n- new Log methods for reportable conditions\n- EventLog publication, EventLogTags deprecation\n- a new stackTrace field in ProcessErrorStateInfo\n"
    },
    {
      "commit": "fa9cafa074eb5d98b49b63795cd947877df1f21d",
      "tree": "74a00a2ceaaa2b47ee20e287c7e272d47acd5b3b",
      "parents": [
        "1c819a5e3e7ba7499589e798a5f971263cf3c65b"
      ],
      "author": {
        "name": "Ficus Kirkpatrick",
        "email": "ficus@android.com",
        "time": "Wed Jan 06 17:37:13 2010 -0800"
      },
      "committer": {
        "name": "Ficus Kirkpatrick",
        "email": "ficus@android.com",
        "time": "Thu Jan 07 12:57:42 2010 -0800"
      },
      "message": "Add a string for second-ABI system property to android.os.Build.\n"
    },
    {
      "commit": "9d2f7a7d66d1802f2f25ad6a556063ea9340f8c8",
      "tree": "4e1c3b5adbb40f8957507602a5acdcdeb6775c1f",
      "parents": [
        "0caa13b257935d2ed436ed0b05f6144c5f48a23c"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Wed Jan 06 10:15:58 2010 -0500"
      },
      "committer": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Wed Jan 06 22:35:46 2010 -0500"
      },
      "message": "Add LocationManagerImpl class to act as a public wrapper for the ILocationProvider interface\n\nLocation providers implemented outside of the core android platform (like network location)\ncan subclass LocationManagerImpl to implement the location provider interface\nwithout being bound too tightly to the location manager internals.\n\nChange-Id: Id193d4d09f9a14bea13e81af03c914074cd37cb9\n"
    },
    {
      "commit": "6e99b7a3b29fbb1936463a3a48fe693dae909c8f",
      "tree": "1e37b2b44ecb2a17d2e6b43d0018e33445af9b31",
      "parents": [
        "9027696bf01d712658db9ff3003d0c11a89ddc2a"
      ],
      "author": {
        "name": "Doug Zongker",
        "email": "dougz@android.com",
        "time": "Wed Jan 06 15:02:52 2010 -0800"
      },
      "committer": {
        "name": "Doug Zongker",
        "email": "dougz@android.com",
        "time": "Wed Jan 06 15:05:24 2010 -0800"
      },
      "message": "add ACCESS_CACHE_FILESYSTEM permission to core manifest\n\nAll of the permissions in data/etc/platform.xml are defined in\ncore/res/AndroidManifest.xml, except for ACCESS_CACHE_FILESYSTEM.  Add\nit.\n\nChange-Id: If7906bc0007484cc21196fb1c0593b967fd79920\n"
    },
    {
      "commit": "0cb047c0de7fe6a775bc6e9cff194af9dcb726cf",
      "tree": "e97138f52cc4dacfebd8b0b15d42b46605f16230",
      "parents": [
        "f66de3cd8eb8df996ac53f6008cd0dbd71157935"
      ],
      "author": {
        "name": "Doug Zongker",
        "email": "dougz@android.com",
        "time": "Wed Jan 06 09:01:27 2010 -0800"
      },
      "committer": {
        "name": "Doug Zongker",
        "email": "dougz@android.com",
        "time": "Wed Jan 06 14:02:09 2010 -0800"
      },
      "message": "unhide the RecoverySystem class\n\nThe recovery system is already part of the platform; this class\ndefines an interface for interacting with it from the regular system.\n\nChange-Id: I87dff8d6c1dbd11ac8f397a3f34ea5cb16d2d227\n"
    },
    {
      "commit": "d755b06805dd3ed4dc6c08ff1750e28543901854",
      "tree": "8e1ffd184ed4f9b2754b433f3451f9a86021fe06",
      "parents": [
        "e0a8efd8747f4f8b0d0cc986239dda77021ea918"
      ],
      "author": {
        "name": "Bjorn Bringert",
        "email": "bringert@android.com",
        "time": "Wed Jan 06 17:15:37 2010 +0000"
      },
      "committer": {
        "name": "Bjorn Bringert",
        "email": "bringert@android.com",
        "time": "Wed Jan 06 17:38:17 2010 +0000"
      },
      "message": "Add RemoteViews.setBundle() method.\n\nThis is needed for setting the app search data for an upcoming search\nsource selection widget which is @RemoteView.\n\nChange-Id: I2d04ff68d0ad7f12e88ed25ded75e174a8403bcc\n"
    },
    {
      "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": "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": "592632562a2c5c01c016c893b0d2d2a16d9081b6",
      "tree": "c4adfc8f65aa9b92efeabbf4e13c18302c66b88d",
      "parents": [
        "3979a60a9496ea29b0b680021a79bcf15b374fd9"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Tue Jan 05 09:22:18 2010 -0800"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Tue Jan 05 12:56:04 2010 -0800"
      },
      "message": "Unhide some MediaStore things that should be public.\n"
    },
    {
      "commit": "a6276fdd4253c3a7150ab675678c750473ab6c45",
      "tree": "d025885cd75cd415b62eb7757d25c05174c3db49",
      "parents": [
        "8eb3ea659761edc2cd5db3acf448059f19389e5e"
      ],
      "author": {
        "name": "Jack Palevich",
        "email": "jackpal@google.com",
        "time": "Mon Dec 28 19:31:43 2009 +0800"
      },
      "committer": {
        "name": "Jack Palevich",
        "email": "jackpal@google.com",
        "time": "Thu Dec 31 13:31:04 2009 +0800"
      },
      "message": "A library for encoding and decoding ETC1 textures.\n\nThe ETC1 compressed texture format is commonly\nsupported by OpenGL ES 2.0-capable devices.\n"
    },
    {
      "commit": "a0b517609dfd8436a98bdebb31466f19ffec6cb5",
      "tree": "d7e60d6d46f73fedc1eb42fff9764293ed340e1d",
      "parents": [
        "08dca8fa4bd3e90bd7b98feb15dc0efdea8193c7",
        "68e9014e47f7350b3889e1704dde809b2a926968"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Sun Dec 27 16:33:17 2009 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Sun Dec 27 16:33:17 2009 -0800"
      },
      "message": "am 68e9014e: am 484d2888: Fix issue 2299360: Change in in-call volume affects the Bluetooth in-call volume and vice versa.\n\nMerge commit \u002768e9014e47f7350b3889e1704dde809b2a926968\u0027\n\n* commit \u002768e9014e47f7350b3889e1704dde809b2a926968\u0027:\n  Fix issue 2299360: Change in in-call volume affects the Bluetooth in-call volume and vice versa.\n"
    },
    {
      "commit": "484d2888680e18e6ad8c3fcc51e3b70a705a096e",
      "tree": "22e4a46d917cd9f062803bf053cce1da82cbf570",
      "parents": [
        "4350e1451c9f884fabcabfda915b58a26c6ebf5f"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Dec 08 09:05:45 2009 -0800"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Dec 22 10:10:24 2009 -0800"
      },
      "message": "Fix issue 2299360: Change in in-call volume affects the Bluetooth in-call volume and vice versa.\n\nAdd a separate system settings entry for bluetooth SCO volume.\n"
    },
    {
      "commit": "ee0511d76ce0ceae2f54782ca33e400e62d08137",
      "tree": "32abe56c6cea3657f5e565564fa97f2d56560a80",
      "parents": [
        "6cf67faf3b77c3a442d41b46081ca1fdf2ca853c"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Mon Dec 21 18:08:13 2009 -0800"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Mon Dec 21 18:08:13 2009 -0800"
      },
      "message": "Fix issue #1154972: clone defined, but class doesn\u0027t implement Cloneable\n"
    },
    {
      "commit": "bde0716dac7f25d9940195359f52175fe6724ff1",
      "tree": "f0741cdbe89a17db8d037e93580d02935f65105a",
      "parents": [
        "0f51324c507161750b90046c2f670ba1183d50ba",
        "08ace2e0f5bc83848c723e9cf533c55fd55745e0"
      ],
      "author": {
        "name": "Jeff Hamilton",
        "email": "jham@android.com",
        "time": "Thu Dec 17 15:17:54 2009 -0600"
      },
      "committer": {
        "name": "Jeff Hamilton",
        "email": "jham@android.com",
        "time": "Thu Dec 17 15:17:54 2009 -0600"
      },
      "message": "resolved conflicts for merge of 08ace2e0 to master\n"
    },
    {
      "commit": "f3960b1271c65d64f9836894af600948bd804e7c",
      "tree": "648ae3cc7993da4681ea6eec4c724402199dc2d9",
      "parents": [
        "492604e95239c1427dd5acb9109eb8acaaafc50d"
      ],
      "author": {
        "name": "Jeff Hamilton",
        "email": "jham@android.com",
        "time": "Fri Nov 20 20:04:03 2009 -0800"
      },
      "committer": {
        "name": "Jeff Hamilton",
        "email": "jham@android.com",
        "time": "Thu Dec 17 13:47:36 2009 -0600"
      },
      "message": "Remove the IM provider contract class.\n\nChange-Id: Ia644689021aca3e429d42727dfd6262b6986dfd2\n"
    },
    {
      "commit": "2c5634198a4438e0d6be3e8cc3ae5fc6b0fdf588",
      "tree": "06ec42e1a77f438bad81867cf22200d59d582471",
      "parents": [
        "c333133107fb492de481a96ed1277e71daf2dd8c",
        "5a374f94f8be9604e0485e07943637783522c0b7"
      ],
      "author": {
        "name": "Fred Quintana",
        "email": "fredq@google.com",
        "time": "Tue Dec 15 15:57:33 2009 -0800"
      },
      "committer": {
        "name": "Fred Quintana",
        "email": "fredq@google.com",
        "time": "Tue Dec 15 15:57:33 2009 -0800"
      },
      "message": "resolved conflicts for merge of 5a374f94 to master\n"
    },
    {
      "commit": "274dc9d35fdf5d0464f74071a9a8f14e497d4d5f",
      "tree": "ecc71d179dd35751170f6a8138f220eb1c95e1cd",
      "parents": [
        "15f1bfb0d29915ed1790b22a00fd7032f035ddb0"
      ],
      "author": {
        "name": "Fred Quintana",
        "email": "fredq@google.com",
        "time": "Fri Dec 11 13:17:08 2009 -0800"
      },
      "committer": {
        "name": "Fred Quintana",
        "email": "fredq@google.com",
        "time": "Mon Dec 14 16:33:13 2009 -0800"
      },
      "message": "moved the hidden sync helpers out of the framework\n"
    },
    {
      "commit": "74a76d5e071ba11eb92c92933fa5de338010374d",
      "tree": "c71ab22e555562f42bab98c564a426a83774d5f0",
      "parents": [
        "96610668869cd1c8c614d0c0eab3b79218da7cd7",
        "83652ebfe1963bcecdcf24383165904223baca6e"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Mon Dec 14 16:15:03 2009 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Dec 14 16:15:03 2009 -0800"
      },
      "message": "am 83652ebf: am 3a3fd2ba: Merge change Iaf1f0918 into eclair-mr2\n\nMerge commit \u002783652ebfe1963bcecdcf24383165904223baca6e\u0027\n\n* commit \u002783652ebfe1963bcecdcf24383165904223baca6e\u0027:\n  Implement API to have new broadcasts replace existing broadcasts.\n"
    },
    {
      "commit": "1c633fc89bae9bf0af6fe643ac7ad2e744f27bed",
      "tree": "ba72742fc17755ec69996ad3dd6a6f82f445a2ab",
      "parents": [
        "19553241513bd2ee2610026ebbce8c45c7ae0dbc"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Tue Dec 08 19:45:14 2009 -0800"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Mon Dec 14 15:03:35 2009 -0800"
      },
      "message": "Implement API to have new broadcasts replace existing broadcasts.\n\nUse this in various places where it should serve no purpose to deliver\nboth broadcasts.  This is intended to reduce somewhat the flurry of\nbroadcasts that we churn through during boot.\n"
    },
    {
      "commit": "80ffd8c5ae598c679ff491e7a7168ef96fe54c45",
      "tree": "d0f1719667115f763e88ec5c062ac979b46dc6e1",
      "parents": [
        "d2169dde42284fa2e56b1b870d4ffcfe824f975d",
        "da9691e9d6796ec85a09aae6ed806116a4025759"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Thu Dec 10 15:46:33 2009 -0800"
      },
      "committer": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Thu Dec 10 15:46:33 2009 -0800"
      },
      "message": "resolved conflicts for merge of da9691e9 to master\n"
    },
    {
      "commit": "326d808b858359464b2ffeb84f2e0a8e0c79b600",
      "tree": "11974c82f0aa6398a0a7eb122b97c2a4c95a46f1",
      "parents": [
        "f2f68760eb10b52bd53d6a266f9b5e2b06037d9f"
      ],
      "author": {
        "name": "Adam Powell",
        "email": "adamp@google.com",
        "time": "Wed Dec 09 15:10:07 2009 -0800"
      },
      "committer": {
        "name": "Adam Powell",
        "email": "adamp@google.com",
        "time": "Thu Dec 10 14:49:14 2009 -0800"
      },
      "message": "Added View#dispatchViewVisibilityChanged and View#onDispatchVisibilityChanged; updated api; tests\n\nReverted a change to InstrumentationTestCase that would have allowed @UiThreadTest on setUp() methods of tests.\n"
    },
    {
      "commit": "4c2fc8cb2571061371a34e736f157686ba57a779",
      "tree": "933d94ad6bdde1ec0297f0e0693b8d9fb0bbf207",
      "parents": [
        "b9863ec01b7721a6b64b51cd5d306871fc58da57",
        "fac576360f7b2cd06e6b174894e8d192088349b0"
      ],
      "author": {
        "name": "Jack Palevich",
        "email": "jackpal@google.com",
        "time": "Thu Dec 10 12:13:54 2009 -0800"
      },
      "committer": {
        "name": "Jack Palevich",
        "email": "jackpal@google.com",
        "time": "Thu Dec 10 12:13:54 2009 -0800"
      },
      "message": "resolved conflicts for merge of fac57636 to master\n"
    },
    {
      "commit": "513b7234a64b3eedb5a6804d0f66dd1992fa858f",
      "tree": "0f466becec1caae0bd8284670537417e1d60e94e",
      "parents": [
        "717f0eb34b67639b33a17b215dbfd81402ba8feb"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Thu Dec 10 11:14:41 2009 -0800"
      },
      "committer": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Thu Dec 10 11:14:41 2009 -0800"
      },
      "message": "use a fixed value for public ID\n"
    },
    {
      "commit": "2ec6c5699181316e5a5c2cd293c006ac4a8bb101",
      "tree": "5dffd05ec1b6cd3630bef911631ef2150904088a",
      "parents": [
        "8415afdb706c94cc297195a0dd5b5a62726d66e4"
      ],
      "author": {
        "name": "Fred Quintana",
        "email": "fredq@google.com",
        "time": "Wed Dec 09 16:00:31 2009 -0800"
      },
      "committer": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Thu Dec 10 10:37:52 2009 -0800"
      },
      "message": "am 328c0e79: - removed the concept of Entity from the ContentProvider APIs - removed the parcelling ability from Entity and EntityIterator and made them public - added an EntityIterator abstract implementation that allow easy wrapping of a Cursor - changed the VCard c\n\nMerge commit \u0027328c0e7986aa6bb7752ec6de3da9c999920bb55f\u0027 into eclair-mr2-plus-aosp\n\n* commit \u0027328c0e7986aa6bb7752ec6de3da9c999920bb55f\u0027:\n  - removed the concept of Entity from the ContentProvider APIs\n"
    },
    {
      "commit": "a74df10ac2e13be0cc4396b819749309a0a116be",
      "tree": "82d1efa1acd8f65b2994834d9ff2640c097daecc",
      "parents": [
        "02909d44d5b283991bdd392fcccae12986ddc6c1",
        "cfccf5a1d35c4150fe99d7e9eae29e3a1c9d34db"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Thu Dec 10 09:19:02 2009 -0800"
      },
      "committer": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Thu Dec 10 09:19:02 2009 -0800"
      },
      "message": "resolved conflicts for merge of cfccf5a1 to master\n"
    },
    {
      "commit": "9b902a5266603ac969dfc64eee48c51706b54a83",
      "tree": "1947fc4692f61b11ba62b1e363fb1dd71d889c28",
      "parents": [
        "ce912dbb40ad074bd17d9f2f31ce3c0afeff1d98",
        "eb68a226563f60265663f1688dda77c4f909e5de"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu Dec 10 07:55:00 2009 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Dec 10 07:55:00 2009 -0800"
      },
      "message": "am eb68a226: am af9788a9: Merge change Ia53c6725 into eclair-mr2\n\nMerge commit \u0027eb68a226563f60265663f1688dda77c4f909e5de\u0027\n\n* commit \u0027eb68a226563f60265663f1688dda77c4f909e5de\u0027:\n  Add bindService API to not bring ot foreground.\n"
    },
    {
      "commit": "507ecd530613f04fec670b1312c43c2c15b74b69",
      "tree": "3b570bcb1f6bef9ece446ab773d6b3e8478c7658",
      "parents": [
        "d35566c77f6fb0773b4f56b320fae6103c5e94ab",
        "c99f154b549ff0bae84b082dc4d80351b341494e"
      ],
      "author": {
        "name": "Bjorn Bringert",
        "email": "bringert@android.com",
        "time": "Thu Dec 10 07:06:00 2009 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Dec 10 07:06:00 2009 -0800"
      },
      "message": "am c99f154b: am dcd8bad3: Merge change Ia28d9547 into eclair-mr2\n\nMerge commit \u0027c99f154b549ff0bae84b082dc4d80351b341494e\u0027\n\n* commit \u0027c99f154b549ff0bae84b082dc4d80351b341494e\u0027:\n  Expose SearchableInfo and getSearchablesInGlobalSearch()\n"
    },
    {
      "commit": "8ea486788fe5e77111ab9d6e1834cc6e6a3edc76",
      "tree": "10010fabbdd7d4af01f8e93854de47cb8c19d281",
      "parents": [
        "0ea7e7f6ac968b5b0e2fd2e9684858b923f51a9b",
        "0e933c853ad53037631e5bca5b4a46f056c1e538"
      ],
      "author": {
        "name": "Ken Shirriff",
        "email": "kens@google.com",
        "time": "Thu Dec 10 07:04:31 2009 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Dec 10 07:04:31 2009 -0800"
      },
      "message": "am 0e933c85: am f7d0b013: Add TrafficStats class to SDK.\n\nMerge commit \u00270e933c853ad53037631e5bca5b4a46f056c1e538\u0027\n\n* commit \u00270e933c853ad53037631e5bca5b4a46f056c1e538\u0027:\n  Add TrafficStats class to SDK.\n"
    }
  ],
  "next": "328c0e7986aa6bb7752ec6de3da9c999920bb55f"
}
