)]}'
{
  "log": [
    {
      "commit": "7393bbff7f288cafe70ea8c8b0c0a5ec69a63537",
      "tree": "0bfd1358336ffb6cb781a2832fcd3beb90b4fbc5",
      "parents": [
        "cb640c413027c87dc94e08befea4684665d4463f"
      ],
      "author": {
        "name": "Dan Egnor",
        "email": "egnor@google.com",
        "time": "Fri Sep 11 16:40:01 2009 -0700"
      },
      "committer": {
        "name": "Dan Egnor",
        "email": "egnor@google.com",
        "time": "Tue Oct 13 16:17:50 2009 -0700"
      },
      "message": "Framework-side DropBox service that maintains a size-bounded\nqueue of data chunks (sort of a blob-oriented logcat).\n\nIn the future, this will be coupled with a revised checkin service that\nwould actually upload this data.\n"
    },
    {
      "commit": "16fb88a673c41b93c5d57ccb28c2697e7d87701a",
      "tree": "f6c32d70ca192de4fd6608c931b501263de2766b",
      "parents": [
        "64dd5be583bab8218e54068bbf70edc5fc6087c8"
      ],
      "author": {
        "name": "Nick Pelly",
        "email": "npelly@google.com",
        "time": "Wed Oct 07 07:44:03 2009 +0200"
      },
      "committer": {
        "name": "Nick Pelly",
        "email": "npelly@google.com",
        "time": "Wed Oct 07 23:25:24 2009 +0200"
      },
      "message": "Encourage developers to connect RFCOMM by UUID instead of Channel.\n\nHide createRfcommSocket(int channel)\nAdd createRfcommSocketWithServiceRecord(UUID uuid)\n\nRename listenUsingRfcomm(String,UUID) -\u003e listenUsingRfcommWithServiceRecord(..)\n\nNow we have a complete API for developers to make peer-peer RFCOMM connections\nwith hard-coding the limited (30) RFCOMM channels, instead using SDP lookup\nof an UUID.\n\nThis commit addresses two serious bugs:\n- Do not throw IOException on accepting an incoming RFCOMM connection with\n  BluetoothSocket. This was a regression from commit 24bb9b8af4ff6915\n- Workaround failure of bluez to update SDP cache when channel changes by\n  trying to use the same RFCOMM channel on the server every time, instead\n  of picking server channels randomly. This is a pretty ugly workaround,\n  and we are still trying to fix the caching issue - but with this\n  workaround we are at least shippable and apps will work at least until\n  they start colliding on the 30 RFCOMM channels.\n\nDrNo: eastham\nBug: 2158900\nJoke: What did the digital watch say to his mom? \"Look mom no hands.\"\nChange-Id: Ia4879943b83afac06b6f1a3f2391cf1628afce7d\n"
    },
    {
      "commit": "aef439e6f825c0cb99a2ac08c8207f48b7a9fe10",
      "tree": "69633f84a5a75b185ca8c97c0108a06d71f75ba7",
      "parents": [
        "2dfa6edcd086bb9ce4fbb3b979f3afec93f6cddc"
      ],
      "author": {
        "name": "Nick Pelly",
        "email": "npelly@google.com",
        "time": "Mon Sep 28 12:33:17 2009 -0700"
      },
      "committer": {
        "name": "Nick Pelly",
        "email": "npelly@google.com",
        "time": "Mon Sep 28 13:06:22 2009 -0700"
      },
      "message": "Move android.bluetooth.ParcelUuid to android.os.ParcelUuid\n\nChange-Id: I564429d5c5b6a5372b6ff26a53b0d7e518b53631\n"
    },
    {
      "commit": "1cdf932b97223c7a5468620054829c24c65d1212",
      "tree": "2e95650b3c1c06d67eac387eb3cb0efc58757762",
      "parents": [
        "45dfa63af3c279ed1ed456a30bea4bf8cca67f83"
      ],
      "author": {
        "name": "Scott Main",
        "email": "smain@google.com",
        "time": "Thu Sep 17 17:16:09 2009 -0700"
      },
      "committer": {
        "name": "Scott Main",
        "email": "smain@google.com",
        "time": "Thu Sep 17 17:16:09 2009 -0700"
      },
      "message": "add Eclair to the droiddoc \u0027since\u0027 options so that we\ncan see API Level diffs in the docs.\n"
    },
    {
      "commit": "361ec7711aa689aa70c5473348f4a1bc91bc1c06",
      "tree": "bb94da78ce5fb3b66843d9a9e3ceed68def2f620",
      "parents": [
        "82dbf6785184a9a0808210294365e32ff21add9c"
      ],
      "author": {
        "name": "Alex Gruenstein",
        "email": "alexgru@android.com",
        "time": "Tue Sep 15 11:19:58 2009 -0700"
      },
      "committer": {
        "name": "Alex Gruenstein",
        "email": "alexgru@android.com",
        "time": "Wed Sep 16 17:58:37 2009 -0700"
      },
      "message": "do not merge.  Revert \"do not merge.  Remove voicesearch-specific functionality from framework.\"\n\nThis reverts commit f1b64f64ab088a3e8cd32ec31f61c958c61d19e5.\n\nIt also updates RecognitionResult.java with changes made while it was in the voicesearch branch.\n\nChange-Id: Ibffbe25397628a01ec49393a23c1825cef116501\n"
    },
    {
      "commit": "618ded26c61afbf907e72b4568a4f4f1c6c287a7",
      "tree": "3f6ac28873a35d56c45f51e1a64b69f949821b01",
      "parents": [
        "e00d660aba91a7a682f83b2e0216296b0f3cca64",
        "a6602f1fe4590e48c760f21ce29a92629240c463"
      ],
      "author": {
        "name": "Dirk Dougherty",
        "email": "ddougherty@google.com",
        "time": "Wed Sep 02 19:14:24 2009 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Sep 02 19:14:24 2009 -0700"
      },
      "message": "am a6602f1f: Add docs for SDK update. Add redirects for preview files. Manually integrate a few doc changes from cupcake.\n\nMerge commit \u0027a6602f1fe4590e48c760f21ce29a92629240c463\u0027 into eclair\n\n* commit \u0027a6602f1fe4590e48c760f21ce29a92629240c463\u0027:\n  Add docs for SDK update.\n"
    },
    {
      "commit": "a6602f1fe4590e48c760f21ce29a92629240c463",
      "tree": "1ddee32c422ea1ec449dad1db53e0231fda6bd0a",
      "parents": [
        "96b7f921a5aea4264af1e0b4970263a3135c04d0"
      ],
      "author": {
        "name": "Dirk Dougherty",
        "email": "ddougherty@google.com",
        "time": "Thu Aug 27 16:26:43 2009 -0700"
      },
      "committer": {
        "name": "Dirk Dougherty",
        "email": "ddougherty@google.com",
        "time": "Wed Sep 02 19:08:28 2009 -0700"
      },
      "message": "Add docs for SDK update.\nAdd redirects for preview files.\nManually integrate a few doc changes from cupcake.\n\nChange-Id:I524d7dbf929371ee501599229894640660f352ce\n"
    },
    {
      "commit": "d2227277d405fc368c1baf1a80c2d600dca96145",
      "tree": "056da34e2d8bd4d8ff68d4f82964ce0ca4bd310f",
      "parents": [
        "56f67d21459ad3f136c73c8932904d4a495989c0",
        "a84a26d2afab503ed32e6ecc94acba46a5eb9eb3"
      ],
      "author": {
        "name": "Scott Main",
        "email": "smain@google.com",
        "time": "Sat Aug 29 13:40:53 2009 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Sat Aug 29 13:40:53 2009 -0700"
      },
      "message": "am a84a26d2: Merge change 23241 into donut\n\nMerge commit \u0027a84a26d2afab503ed32e6ecc94acba46a5eb9eb3\u0027 into eclair\n\n* commit \u0027a84a26d2afab503ed32e6ecc94acba46a5eb9eb3\u0027:\n  add searchable dictionary to html docs and dev guide nav\n"
    },
    {
      "commit": "689d16be5e091545371ef5f5ff4ed25649520bc3",
      "tree": "a29c765c692320cf414d0bf607b8dd8b2429fbb3",
      "parents": [
        "e1df82248a68282a4d556ce61db09949fc186827"
      ],
      "author": {
        "name": "Scott Main",
        "email": "smain@google.com",
        "time": "Sat Aug 29 13:17:53 2009 -0700"
      },
      "committer": {
        "name": "Scott Main",
        "email": "smain@google.com",
        "time": "Sat Aug 29 13:25:19 2009 -0700"
      },
      "message": "add searchable dictionary to html docs and dev guide nav\nand add screenshots.\n"
    },
    {
      "commit": "22d1f9fb23015471de6af1a70e40fb5c82ecb665",
      "tree": "0952ea04b5b0059aa48812f76e26599946e605c2",
      "parents": [
        "0409cde3601131caf14c88d132c65d74774bbd79"
      ],
      "author": {
        "name": "Danke Xie",
        "email": "dankex@qualcomm.com",
        "time": "Tue Aug 18 18:28:45 2009 -0400"
      },
      "committer": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Thu Aug 27 14:18:30 2009 -0700"
      },
      "message": "gps: Network initiated SUPL\n\nInitial contribution from Qualcomm.\n\nSigned-off-by: Mike Lockwood \u003clockwood@android.com\u003e\n"
    },
    {
      "commit": "e120cfd49fa27d04ed119e6922568eca2a9d6f9e",
      "tree": "1a66d4f53f90a6333cf1a92fb1bbfa56870a147c",
      "parents": [
        "5e6ad4786d599e17c1736cf52e5846a44e19d374",
        "b385508d89747e4c383979f1cc6fa2814b1cedbd"
      ],
      "author": {
        "name": "Scott Main",
        "email": "smain@google.com",
        "time": "Mon Aug 24 15:35:28 2009 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Aug 24 15:35:28 2009 -0700"
      },
      "message": "am b385508d: Add more code samples to the online docs. Add build rules to include the development samples in the droiddoc build process. Add all the sample screenshots to a new samples/images/ directory Revise the samples homepage to include links to new samples\n\nMerge commit \u0027b385508d89747e4c383979f1cc6fa2814b1cedbd\u0027 into eclair\n\n* commit \u0027b385508d89747e4c383979f1cc6fa2814b1cedbd\u0027:\n  Add more code samples to the online docs.\n"
    },
    {
      "commit": "b385508d89747e4c383979f1cc6fa2814b1cedbd",
      "tree": "1cf9ea4d45d1c8dbdd31c16a7fa10d275c9630ba",
      "parents": [
        "8c937a17667704ee9ba60663f4c4b76f3c3a0f78"
      ],
      "author": {
        "name": "Scott Main",
        "email": "smain@google.com",
        "time": "Mon Aug 24 14:45:00 2009 -0700"
      },
      "committer": {
        "name": "Scott Main",
        "email": "smain@google.com",
        "time": "Mon Aug 24 14:45:00 2009 -0700"
      },
      "message": "Add more code samples to the online docs.\nAdd build rules to include the development samples in the droiddoc build process.\nAdd all the sample screenshots to a new samples/images/ directory\nRevise the samples homepage to include links to new samples\n"
    },
    {
      "commit": "6965666d34ec1fce0442707865dab3fc389df383",
      "tree": "9a4d1427f9114bfdd9ecd8b93e52fe9db239f7b2",
      "parents": [
        "84235ee923c13e58ce339c25c86f734b338a81e0"
      ],
      "author": {
        "name": "Scott Su",
        "email": "scott.su@myriadgroup.com",
        "time": "Mon Aug 24 10:24:57 2009 +0800"
      },
      "committer": {
        "name": "Wei Huang",
        "email": "weih@google.com",
        "time": "Sun Aug 23 23:41:50 2009 -0700"
      },
      "message": "Remove frameworks/base/im since these stuff are only used by IM app\n"
    },
    {
      "commit": "f1b64f64ab088a3e8cd32ec31f61c958c61d19e5",
      "tree": "9c0299b04e59c894cc9734bf871d042840fce5c8",
      "parents": [
        "00ddbcaa2e8a181a2efd5456a65c619ed941e4b0"
      ],
      "author": {
        "name": "Alex Gruenstein",
        "email": "alexgru@android.com",
        "time": "Fri Aug 21 14:18:43 2009 -0700"
      },
      "committer": {
        "name": "Alex Gruenstein",
        "email": "alexgru@android.com",
        "time": "Fri Aug 21 14:59:26 2009 -0700"
      },
      "message": "do not merge.  Remove voicesearch-specific functionality from framework.\n"
    },
    {
      "commit": "bd022f423a33f0794bb53e5b0720da2d67e4631c",
      "tree": "4def583f15b783ada3d49866a8cd29bcdb1bbe00",
      "parents": [
        "82e7408be29c6c8c6ed80887ea97f48f38b3223d"
      ],
      "author": {
        "name": "Nick Pelly",
        "email": "npelly@google.com",
        "time": "Fri Aug 14 18:33:38 2009 -0700"
      },
      "committer": {
        "name": "Nick Pelly",
        "email": "npelly@google.com",
        "time": "Tue Aug 18 08:24:22 2009 -0700"
      },
      "message": "Bluetooth: API change.\n\nSplit BluetoothDevice into BluetoothDevice and BluetoothAdapter.\n\nBluetoothAdapter: Represents the local BT adapter. Operations on the local\n                  adapter (start a scan, etc).\nBluetoothDevice: Represents a remote BT device. Operations on remote devices\n                 (pair, connect, etc).\n\nIBluetoothDevice.aidl -\u003e Bluetooth.aidl\nBluetoothDeviceService.java -\u003e BluetoothDeviceService.java\n\nTODO:\nJavadoc\n"
    },
    {
      "commit": "4c62fc0e1e5ea9c69a12a7d1cf8b3ec8b2d114a3",
      "tree": "4bda953a3a1e32695c3c22006dc320b6a0cbcb1b",
      "parents": [
        "542040c51c49874c92d01381de1b1986cb53b4dd"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Sat Aug 08 20:40:27 2009 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Sat Aug 08 22:13:46 2009 -0700"
      },
      "message": "Very primitive wallpapers in a surface.\n\nThis is all of the basic pieces:\n\n- The WallpaperService now creates a surface with the window manager for its\n  contents.\n- There is a simple service that displays a bitmap.\n- The wallpaper manager takes care of starting and stopping the service.\n- The window manager knows about wallpaper windows and how to layer them with\n  the windows that want to be shown on top of wallpaper.\n\nLots and lots of issues remain, but at this point you can actually write a\nwallpaper service, select it in the UI, and see it behind an activity.\n"
    },
    {
      "commit": "5e72709d38b94db2563928a3ce6b725a60594bf7",
      "tree": "a64fc800a8c7f0a255abed318db2e3b92110607f",
      "parents": [
        "19202cf788de80819bf3408d5efb9fc127151b9a",
        "f11d7d559a6cd866bbffaead39da9f6a84919ecc"
      ],
      "author": {
        "name": "Dirk Dougherty",
        "email": "ddougherty@google.com",
        "time": "Thu Aug 06 00:59:38 2009 -0700"
      },
      "committer": {
        "name": "Dirk Dougherty",
        "email": "ddougherty@google.com",
        "time": "Thu Aug 06 01:14:04 2009 -0700"
      },
      "message": "resolved conflicts for merge of f11d7d55 to master\n"
    },
    {
      "commit": "f11d7d559a6cd866bbffaead39da9f6a84919ecc",
      "tree": "ad5de5d60bf3d9752bf373677f9f7ba5f9b8eebb",
      "parents": [
        "2dce6988c26332b4733a06851eee9631151b0bda"
      ],
      "author": {
        "name": "Dirk Dougherty",
        "email": "ddougherty@google.com",
        "time": "Wed Aug 05 19:04:18 2009 -0700"
      },
      "committer": {
        "name": "Dirk Dougherty",
        "email": "ddougherty@google.com",
        "time": "Thu Aug 06 00:14:25 2009 -0700"
      },
      "message": "Add support for preview SDK handling in doc templates. Add preview SDK docs.\n\nBug: 2031559\n"
    },
    {
      "commit": "8cc6a5026aeb5cf9cc36529426fe0cc66714f5fb",
      "tree": "ca9812a99f135eeed8a1e6217cc4b21e006858a3",
      "parents": [
        "53c66b490a7bcae0efd3c8379ba01080d25ef69c"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Wed Aug 05 21:29:42 2009 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Wed Aug 05 21:29:42 2009 -0700"
      },
      "message": "First bit of wallpaper work.\n\nThis is mostly refactoring, adding a new WallpaperManager class that takes care\nof the old wallpaper APIs on Context, so we don\u0027t need to pollute Context with\nvarious new wallpaper APIs as they are needed.  Also adds the first little\ndefinition of a wallpaper service, which is not yet used or useful.\n"
    },
    {
      "commit": "fcc638dbba28f1804fb0f83b6f6964f8a408e4c9",
      "tree": "0c20aef8c6745c5da770989598caf95e87e6fd28",
      "parents": [
        "7a17cf3418eb0cbd23804f51921b7dd66713ad03",
        "7a3e39cac812b6ec63fade9613bb0c1f04156fa0"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Aug 03 12:01:55 2009 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Aug 03 12:01:55 2009 -0700"
      },
      "message": "am 7a3e39ca: Merge change 9378 into donut\n\nMerge commit \u00277a3e39cac812b6ec63fade9613bb0c1f04156fa0\u0027\n\n* commit \u00277a3e39cac812b6ec63fade9613bb0c1f04156fa0\u0027:\n  add \"since\" info for reference docs\n"
    },
    {
      "commit": "6dceb76b3e02cd2e0f08105f54d942e6ad8c4456",
      "tree": "755181ad871ef789f53826fe01ab6119045b27b9",
      "parents": [
        "17c195c8da3470b2e69880e206342f0c2d85f938"
      ],
      "author": {
        "name": "Scott Main",
        "email": "smain@google.com",
        "time": "Fri Jul 31 13:03:36 2009 -0700"
      },
      "committer": {
        "name": "Scott Main",
        "email": "smain@google.com",
        "time": "Fri Jul 31 16:47:19 2009 -0700"
      },
      "message": "add \"since\" info for reference docs\n"
    },
    {
      "commit": "3f41673265dcaaef058703311c5481e8a51fd8be",
      "tree": "9b144a36666a265225e970eecf6b6dd773c63b8c",
      "parents": [
        "c0ecdf152d796419b8e3eb4f8ea7fc3aa3619ec5"
      ],
      "author": {
        "name": "Jiafa Liu",
        "email": "pbx376@motorola.com",
        "time": "Thu Jul 02 16:36:02 2009 +0800"
      },
      "committer": {
        "name": "Jaikumar Ganesh",
        "email": "jaikumar@google.com",
        "time": "Sun Jul 26 22:54:35 2009 -0700"
      },
      "message": "frameworks/base: Add PBAP support\n\n- Update according to comments\n- Add aidl support in frameworks for Settings to retrieve current\n  PBAP transaction status.\n- Add status bar support for PBAP\n"
    },
    {
      "commit": "d5ec6ebee26e530d96299d9821950f7cce4b3636",
      "tree": "86dea6e13b333ccda7a930c0413684c673f7190d",
      "parents": [
        "678d1ed007d880128284bae2c9af7b773bf14eb7",
        "11b6a29dfe380c97fa3df67a6b97ff3383592b58"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sun Jul 26 21:47:27 2009 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Sun Jul 26 21:47:27 2009 -0700"
      },
      "message": "am 11b6a29d: Merge change 8564 into donut\n\nMerge commit \u002711b6a29dfe380c97fa3df67a6b97ff3383592b58\u0027\n\n* commit \u002711b6a29dfe380c97fa3df67a6b97ff3383592b58\u0027:\n  AI 150594: change the homepage markup and styles to allow variable height in\n  AI 150587: add a sitemap for translated docs, for submission to Webmaster Tools,\n  AI 150541: roll the docs forward to 1.5 r3\n  AI 150538: add note that appwidget updates will wake the device and suggest an alarm\n  AI 150536: Change the formatting of sdk redirect pages so that they are not language-specific.\n  AI 150535: add the Videos page to the site\n"
    },
    {
      "commit": "96616bb59f2673ee55053b261faf828c52be638c",
      "tree": "fef46ab6cbebcdf64fd46e2b2398d54d44ef2206",
      "parents": [
        "f0e9f05d06f930a4f35f4518f09a25c16adc35f9",
        "eec841f0505c3aeb5b18e53f48b755ff69b78c15"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sun Jul 26 21:47:08 2009 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Sun Jul 26 21:47:08 2009 -0700"
      },
      "message": "am eec841f0: Merge change 8560 into donut\n\nMerge commit \u0027eec841f0505c3aeb5b18e53f48b755ff69b78c15\u0027\n\n* commit \u0027eec841f0505c3aeb5b18e53f48b755ff69b78c15\u0027:\n  AI 150460: Add  missing art files for menu_guidelines doc.\n  AI 150397: turn off the right arrow in the carousel -- we only have 3 items.\n  AI 150390: Roll the docs back to 1.5 r2, temporarily.\n  AI 150381: Add localized content (ja2) to developer site.\n  AI 150380: Add localized content (ja) for developer site.\n  AI 150369: Add localized TOCs for developer site.\n  AI 150351: Doc updates for Android 1.5 SDK r3.\n"
    },
    {
      "commit": "76e95bbea6071eda65a62fc23b6a1a653c484d24",
      "tree": "621db5e5a81267202fc1ea45d7d6bbe6e920d40c",
      "parents": [
        "1ac40c700c86043e22f90c10aeee96df5d5144c5",
        "a8d035ccf319e1aed685a1e1509681350f737fd1"
      ],
      "author": {
        "name": "Dirk Dougherty",
        "email": "ddougherty@google.com",
        "time": "Fri Jul 24 15:34:57 2009 -0700"
      },
      "committer": {
        "name": "Dirk Dougherty",
        "email": "ddougherty@google.com",
        "time": "Fri Jul 24 15:35:09 2009 -0700"
      },
      "message": "Merge doc change from cupcake: commit \u0027a8d035ccf319e1aed685a1e1509681350f737fd1\u0027 into manualmerge\n"
    },
    {
      "commit": "2bfd344b676c938884990eb1fb0a15a5eddf5987",
      "tree": "5b43188eb12f8ae9e9373f34db0f11f5a5065f86",
      "parents": [
        "0c64c1c96ad35d1b1165fd4cff46161620db06c4",
        "5ae517d9659e96e9525406ffbce18dcacc3294bc"
      ],
      "author": {
        "name": "Dirk Dougherty",
        "email": "ddougherty@google.com",
        "time": "Fri Jul 24 12:58:01 2009 -0700"
      },
      "committer": {
        "name": "Dirk Dougherty",
        "email": "ddougherty@google.com",
        "time": "Fri Jul 24 14:39:03 2009 -0700"
      },
      "message": "Merge doc changes from cupcake: commit \u00275ae517d9659e96e9525406ffbce18dcacc3294bc\u0027 into manualmerge\n"
    },
    {
      "commit": "ccfca2ee9ebe6d3de861f6f001bd4810c863cab1",
      "tree": "aa120b702caada306bf257e6880430f49f677c22",
      "parents": [
        "4a06b68c82fc011d8cd780ed7f0393d1d0617a07"
      ],
      "author": {
        "name": "Joe Onorato",
        "email": "joeo@android.com",
        "time": "Mon Jul 20 11:57:12 2009 -0400"
      },
      "committer": {
        "name": "Joe Onorato",
        "email": "joeo@android.com",
        "time": "Mon Jul 20 11:57:12 2009 -0400"
      },
      "message": "Add a separate version of the docs build that only does the stubs.\n\nThat way we don\u0027t have to wait for clearsilver to write the thousands\nof html files during every build.\n\n(this is the frameworks/base change, there is also a build change)\n"
    },
    {
      "commit": "4b508759dcf02b5b11e3d28ae63864fafd410644",
      "tree": "c2a11bf0e594aa7ee01994f418a93bae05fed497",
      "parents": [
        "e518606504f285c4046a36886ef5bd05c7cfeed2"
      ],
      "author": {
        "name": "Dirk Dougherty",
        "email": "nobody@android.com",
        "time": "Thu Jul 16 08:51:33 2009 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Thu Jul 16 08:51:33 2009 -0700"
      },
      "message": "AI 150541: roll the docs forward to 1.5 r3\n  BUG\u003d1790234\n\nAutomated import of CL 150541\n"
    },
    {
      "commit": "dace230043314d6fab1c5ced4b031eaccd814c25",
      "tree": "0c2fbb477f5d94641cee6aa892600b6d34bc96d3",
      "parents": [
        "ae4f31706fa0589ede00dfce344779a1570cd2f3",
        "b06ea706530e6d19eb2a1a9a7ae6c5dd77d80af0"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Tue Jul 14 12:51:00 2009 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Tue Jul 14 12:51:00 2009 -0700"
      },
      "message": "resolved conflicts for merge of b06ea706 to master\n"
    },
    {
      "commit": "b06ea706530e6d19eb2a1a9a7ae6c5dd77d80af0",
      "tree": "2fcae8f89195ef4b162627892aeca97f06d42ef7",
      "parents": [
        "3660c09500a4d01eb6a733b5f0b15545855f8fe8"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Mon Jul 13 13:07:51 2009 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Tue Jul 14 11:37:11 2009 -0700"
      },
      "message": "Add reporting of activity movement for search manager.\n\nThis adds a new API with the activity manager to find out about movement between\nactivities.  For my sanity, the old IActivityWatcher is now renamed to\nIActivityController, and the new activity movement interface is named\nIActivityWatcher.\n\nThis changes the search manager itself to use the new API to manage its state.\nNote that there are still problems when going back to the search dialog after\nit was hidden -- the suggestions window no longer appears until you explicitly\ndismiss and re-show it.\n"
    },
    {
      "commit": "ab41ea3d24511ad9debdc1ba9b596c11bff8489d",
      "tree": "07e4a2d6672bc352d43df97f51c74574bef82a76",
      "parents": [
        "d81d0ed9c5becc586f4e23d42762cd21e104079a"
      ],
      "author": {
        "name": "Dirk Dougherty",
        "email": "nobody@android.com",
        "time": "Wed Jul 08 14:41:49 2009 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Wed Jul 08 14:41:49 2009 -0700"
      },
      "message": "AI 150390: Roll the docs back to 1.5 r2, temporarily.\n  BUG\u003d1790234\n\nAutomated import of CL 150390\n"
    },
    {
      "commit": "13d30dc375de954ea70bbab2c89ce7e1e58fcf8c",
      "tree": "e0acc82911b101b3c5c70cd6880d0436c4412073",
      "parents": [
        "151dfac555c95d892fa30eb6804da21b491dac28"
      ],
      "author": {
        "name": "Dirk Dougherty",
        "email": "nobody@android.com",
        "time": "Tue Jul 07 17:37:13 2009 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Tue Jul 07 17:37:13 2009 -0700"
      },
      "message": "AI 150369: Add localized TOCs for developer site.\n  BUG\u003d1910893\n\nAutomated import of CL 150369\n"
    },
    {
      "commit": "151dfac555c95d892fa30eb6804da21b491dac28",
      "tree": "2a3119b0aa0a94c1b932aaa0d488de857e531d20",
      "parents": [
        "ff339f0b966c5ca62867689a13ea713e6cb62a15"
      ],
      "author": {
        "name": "Dirk Dougherty",
        "email": "nobody@android.com",
        "time": "Tue Jul 07 11:18:52 2009 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Tue Jul 07 11:18:52 2009 -0700"
      },
      "message": "AI 150351: Doc updates for Android 1.5 SDK r3.\n  BUG\u003d1790234\n\nAutomated import of CL 150351\n"
    },
    {
      "commit": "0d8dc1425681d99c5e757354956f41e2e9a1374e",
      "tree": "c03bfec1f80861ed71bf511862e0fdd8468e1c91",
      "parents": [
        "2df7c15aa0e8f5afc804fd20250316f9e50fdb59",
        "7d562ec393d54dd9ef387c49d1283243bfdbd2b1"
      ],
      "author": {
        "name": "Christopher Tate",
        "email": "ctate@google.com",
        "time": "Thu Jun 25 18:13:19 2009 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Thu Jun 25 18:13:19 2009 -0700"
      },
      "message": "am 7d562ec3: Add a new IRestoreObserver callback class to the restore process\n\nMerge commit \u00277d562ec393d54dd9ef387c49d1283243bfdbd2b1\u0027\n\n* commit \u00277d562ec393d54dd9ef387c49d1283243bfdbd2b1\u0027:\n  Add a new IRestoreObserver callback class to the restore process\n"
    },
    {
      "commit": "7d562ec393d54dd9ef387c49d1283243bfdbd2b1",
      "tree": "ac2590ef8df168167789764153a1869c80363748",
      "parents": [
        "b505ae4195d9b8a93c71b1f9da6d7d8c3aaa3c08"
      ],
      "author": {
        "name": "Christopher Tate",
        "email": "ctate@google.com",
        "time": "Thu Jun 25 18:03:43 2009 -0700"
      },
      "committer": {
        "name": "Christopher Tate",
        "email": "ctate@google.com",
        "time": "Thu Jun 25 18:09:28 2009 -0700"
      },
      "message": "Add a new IRestoreObserver callback class to the restore process\n\nThe observer is told when restore begins how many packages are being restored.\nIt then gets an onUpdate() call telling it that the Nth package is now\nundergoing restore.  Ultimately, its restoreFinished() callback is invoked,\npassing a simple success/fail error code, to let it know that the restore\noperation has concluded.\n"
    },
    {
      "commit": "e1fae30e20b1515eeb036a7c103e1e70de130bdd",
      "tree": "7cafbd21f0df7606d64ea19e07c622efe4dbc6b4",
      "parents": [
        "253e8e34b323f05bb7d5fdc8591bdaadbab55dd6",
        "0781df943e5a7a72ac82394874b6200d14ddd02c"
      ],
      "author": {
        "name": "Suchi Amalapurapu",
        "email": "asuchitra@google.com",
        "time": "Wed Jun 17 18:24:44 2009 -0700"
      },
      "committer": {
        "name": "Suchi Amalapurapu",
        "email": "asuchitra@google.com",
        "time": "Wed Jun 17 18:24:44 2009 -0700"
      },
      "message": "Merge commit \u00270781df94\u0027 into manualmerge\n\nConflicts:\n\tAndroid.mk\n\tapi/current.xml\n"
    },
    {
      "commit": "1ccac75e1f1b97eccb916a8de04fc1012b30f6e5",
      "tree": "181c91a427de2ea609eff1f42c3970a441225b45",
      "parents": [
        "ef29f6afb4746eae8263ab901a5d3677bc04574b"
      ],
      "author": {
        "name": "Suchi Amalapurapu",
        "email": "asuchitra@google.com",
        "time": "Fri Jun 12 10:09:58 2009 -0700"
      },
      "committer": {
        "name": "Suchi Amalapurapu",
        "email": "asuchitra@google.com",
        "time": "Wed Jun 17 11:31:26 2009 -0700"
      },
      "message": "Remove circular dependency in PackageManager. api freeStorage uses PendingIntent from android.app\nCreate a new public IntentSender class that can be used by PackageManager instead.\nThis new class uses IIntentSender internally and can only be created by PendingIntent for now.\nProvide a new getIntentSender api in PendingIntent to create an instance of this class.\nMove IIntentSender and IIntentReceiver from android.app to android.content\nChange imports of IIntentSender and IIntentReceiver to reflect the new package name\nThe PackageManager api has been named as freeStorageWithIntent and will be renamed as freeStorage\nonce the older api(which has been deprecated) will be removed shortly.\n"
    },
    {
      "commit": "a28547d03f09b8b78ce28404ecf7013130adca80",
      "tree": "3967f8129c3455a85c08108c4fcea72e7aa119f3",
      "parents": [
        "4522c7dc40924dc8a82c30393531b0f2aa0d0907",
        "0fb466836bb654524683152371ecc32142cdf5de"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jun 15 02:09:25 2009 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Mon Jun 15 02:09:25 2009 -0700"
      },
      "message": "am 0fb46683: Merge change 3880 into donut\n\nMerge commit \u00270fb466836bb654524683152371ecc32142cdf5de\u0027\n\n* commit \u00270fb466836bb654524683152371ecc32142cdf5de\u0027:\n  Run search dialog in the system process.\n"
    },
    {
      "commit": "8d17f3f24bbda9a9cd7ea08c5925508dc2c011be",
      "tree": "cf7e5ebb721354bfffc41d2ab4932cb70ea3c033",
      "parents": [
        "3d59ee7aa66a5b1e80f5042f8d872dd9819b5f40"
      ],
      "author": {
        "name": "Bjorn Bringert",
        "email": "bringert@android.com",
        "time": "Fri Jun 05 13:22:28 2009 +0100"
      },
      "committer": {
        "name": "Bjorn Bringert",
        "email": "bringert@android.com",
        "time": "Mon Jun 15 09:05:26 2009 +0100"
      },
      "message": "Run search dialog in the system process.\n\nFixes http://b/issue?id\u003d1905863\n\nThis is needed to address two security issues with global search:\nhttp://b/issue?id\u003d1871088 (Apps can read content providers through GlobalSearch)\nhttp://b/issue?id\u003d1819627 (Apps can use GlobalSearch to launch arbirtrary intents)\n\nThis also fixes http://b/issue?id\u003d1693153 (SearchManager.OnDismissListener\nnever gets called)\n\nTo fix the security issues, GlobalSearch also needs to require\na non-app permission to access its content provider and launch intents.\n"
    },
    {
      "commit": "e69ec574e6e15114e346b45157cb90d1dfe8ae42",
      "tree": "b8e0f78d0daf4dd02e7787802f89a898bf118ed2",
      "parents": [
        "b61498d1ac8e25f0024dcde46b41bcf0d8336d89",
        "732912a103e985520dba9c022a40bc21b4c4ced5"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jun 10 16:31:23 2009 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Wed Jun 10 16:31:23 2009 -0700"
      },
      "message": "am 732912a1: Merge change 3730 into donut\n\nMerge commit \u0027732912a103e985520dba9c022a40bc21b4c4ced5\u0027\n\n* commit \u0027732912a103e985520dba9c022a40bc21b4c4ced5\u0027:\n  Restructuring the TTS files so that it works as a Service\n"
    },
    {
      "commit": "f85aa5a4d4e6f1ef7e07638568e27d709b8085c6",
      "tree": "9e553efa92802cb6370c42509f91ec6a5df1733a",
      "parents": [
        "295e7248b11557cf80ee9b7a12009d9cec5bd8b0"
      ],
      "author": {
        "name": "Charles Chen",
        "email": "clchen@google.com",
        "time": "Wed Jun 10 10:39:55 2009 -0700"
      },
      "committer": {
        "name": "Charles Chen",
        "email": "clchen@google.com",
        "time": "Wed Jun 10 13:31:09 2009 -0700"
      },
      "message": "Restructuring the TTS files so that it works as a Service\n"
    },
    {
      "commit": "d5ac1ae36b4e096eb97984334f86d0c68abea2f7",
      "tree": "0e9c8b664eee7bce22f49a17dab4993292c17e1d",
      "parents": [
        "b099c4699b8d32295caa7b59637657d47a7c7486"
      ],
      "author": {
        "name": "Jaikumar Ganesh",
        "email": "jaikumar@google.com",
        "time": "Tue May 05 22:26:12 2009 -0700"
      },
      "committer": {
        "name": "Jaikumar Ganesh",
        "email": "jaikumar@google.com",
        "time": "Tue Jun 09 17:21:08 2009 -0700"
      },
      "message": "Framework changes for bluez4.\n\nChanges in the Bluetooth JNI calls and framework functions\nfor Bluez4.\n"
    },
    {
      "commit": "dc3c0627d57939e114baf9232c07cb41340fbdca",
      "tree": "76edb25b44c4fb58da75015167cc24211f0c60e2",
      "parents": [
        "7989971197f2c08c9398fef3e229426cdeb21545",
        "d8b51a2ba8ee82be81414c0e80158e82b2c361d9"
      ],
      "author": {
        "name": "Raphael",
        "email": "raphael@google.com",
        "time": "Mon Jun 08 22:10:01 2009 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Mon Jun 08 22:10:01 2009 -0700"
      },
      "message": "am d8b51a2b: Fix broken makefile. Again. His twin brother was hiding.\n\nMerge commit \u0027d8b51a2ba8ee82be81414c0e80158e82b2c361d9\u0027\n\n* commit \u0027d8b51a2ba8ee82be81414c0e80158e82b2c361d9\u0027:\n  Fix broken makefile. Again. His twin brother was hiding.\n"
    },
    {
      "commit": "d8b51a2ba8ee82be81414c0e80158e82b2c361d9",
      "tree": "626b485bb1f17acce0bbb746a412eff81fc637b1",
      "parents": [
        "9207b1e7c8ad4bbef3530d2b047bf6587f2988c4"
      ],
      "author": {
        "name": "Raphael",
        "email": "raphael@google.com",
        "time": "Mon Jun 08 22:05:22 2009 -0700"
      },
      "committer": {
        "name": "Raphael",
        "email": "raphael@google.com",
        "time": "Mon Jun 08 22:06:02 2009 -0700"
      },
      "message": "Fix broken makefile. Again. His twin brother was hiding.\n"
    },
    {
      "commit": "7989971197f2c08c9398fef3e229426cdeb21545",
      "tree": "0181a8b22aa75c34f5cb77813da60c60e3ca05af",
      "parents": [
        "d0e9ae0a3eb4e202b275bd19e4b1545aa417738a",
        "9207b1e7c8ad4bbef3530d2b047bf6587f2988c4"
      ],
      "author": {
        "name": "Raphael",
        "email": "raphael@google.com",
        "time": "Mon Jun 08 22:03:42 2009 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Mon Jun 08 22:03:42 2009 -0700"
      },
      "message": "am 9207b1e7: Fix the broken makefile.\n\nMerge commit \u00279207b1e7c8ad4bbef3530d2b047bf6587f2988c4\u0027\n\n* commit \u00279207b1e7c8ad4bbef3530d2b047bf6587f2988c4\u0027:\n  Fix the broken makefile.\n"
    },
    {
      "commit": "9207b1e7c8ad4bbef3530d2b047bf6587f2988c4",
      "tree": "bf1fcd3d817bc19f1e7e5b94f1b220b72b4304f3",
      "parents": [
        "55567efca99de7242b118cf7bf13cc773b01941c"
      ],
      "author": {
        "name": "Raphael",
        "email": "raphael@google.com",
        "time": "Mon Jun 08 21:57:16 2009 -0700"
      },
      "committer": {
        "name": "Raphael",
        "email": "raphael@google.com",
        "time": "Mon Jun 08 21:58:06 2009 -0700"
      },
      "message": "Fix the broken makefile.\n"
    },
    {
      "commit": "d0e9ae0a3eb4e202b275bd19e4b1545aa417738a",
      "tree": "5c9a69e9977c465100be61746523ed34f12a6cea",
      "parents": [
        "5999cd7313891b3ab21e6a954c1be54f51035139",
        "55567efca99de7242b118cf7bf13cc773b01941c"
      ],
      "author": {
        "name": "Hung-ying Tyan",
        "email": "tyanh@google.com",
        "time": "Mon Jun 08 20:44:23 2009 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Mon Jun 08 20:44:23 2009 -0700"
      },
      "message": "am 55567efc: First-time check-in of the VPN APIs.\n\nMerge commit \u002755567efca99de7242b118cf7bf13cc773b01941c\u0027\n\n* commit \u002755567efca99de7242b118cf7bf13cc773b01941c\u0027:\n  First-time check-in of the VPN APIs.\n"
    },
    {
      "commit": "55567efca99de7242b118cf7bf13cc773b01941c",
      "tree": "39c6d8019008d0b98f7d2b546ae5185ea7015262",
      "parents": [
        "bac43254b219c827f3d1fd286f4a7f19e9ee2f05"
      ],
      "author": {
        "name": "Hung-ying Tyan",
        "email": "tyanh@google.com",
        "time": "Wed Jun 03 23:56:34 2009 +0800"
      },
      "committer": {
        "name": "Hung-ying Tyan",
        "email": "tyanh@google.com",
        "time": "Tue Jun 09 11:28:38 2009 +0800"
      },
      "message": "First-time check-in of the VPN APIs.\n\nPatch Set 2:\n- Fixed style issues raised by cywang.\nPatch Set 3:\n- Hide everything\n- Make VpnProfile parcelable\nPatch Set 4:\n- Add license notice\n"
    },
    {
      "commit": "bd235f10a9873c1f94cd44519c1e0cd118c5a8ab",
      "tree": "58effaddf2328efa70aa42112d8ec2f0987b34ec",
      "parents": [
        "53c31ed1ff2880e6b9b387a291a3f3e938fc9295",
        "8c850b792f2d371fd8a4aff146d9d757ee982539"
      ],
      "author": {
        "name": "Christopher Tate",
        "email": "ctate@google.com",
        "time": "Sun Jun 07 21:04:39 2009 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Sun Jun 07 21:04:39 2009 -0700"
      },
      "message": "am 8c850b79: Add IRestoreSession interface for the restore flow\n\nMerge commit \u00278c850b792f2d371fd8a4aff146d9d757ee982539\u0027\n\n* commit \u00278c850b792f2d371fd8a4aff146d9d757ee982539\u0027:\n  Add IRestoreSession interface for the restore flow\n"
    },
    {
      "commit": "8c850b792f2d371fd8a4aff146d9d757ee982539",
      "tree": "3ab4ec581b85ed59078692c573725db69a109e8d",
      "parents": [
        "b4a6188a74273611abcae05f3a3b1f0547548301"
      ],
      "author": {
        "name": "Christopher Tate",
        "email": "ctate@google.com",
        "time": "Sun Jun 07 19:33:20 2009 -0700"
      },
      "committer": {
        "name": "Christopher Tate",
        "email": "ctate@google.com",
        "time": "Sun Jun 07 19:33:20 2009 -0700"
      },
      "message": "Add IRestoreSession interface for the restore flow\n\nRestore is a fairly complicated, somewhat stateful process, so we introduce\na new interface to encapsulate the various bits and pieces into a nicely\nseparable component.  In particular, this will make it much cleaner to\nopen and interrogate an expensive-to-construct transport and then reuse it\nfor the actual restore process itself.\n"
    },
    {
      "commit": "ad6042aa2342d0a869f84772774b47ae87346ccf",
      "tree": "f227b82e09bffaf9e4f401352c331d010f45752a",
      "parents": [
        "c29c7158c79c04671e6cab379ef371ac20045454",
        "181fafaf48208978b8ba2022683ffa78aaeddde1"
      ],
      "author": {
        "name": "Christopher Tate",
        "email": "ctate@google.com",
        "time": "Sun May 31 19:44:35 2009 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Sun May 31 19:44:35 2009 -0700"
      },
      "message": "am 181fafaf: Retool the backup process to use a new \\\u0027BackupAgent\\\u0027 class\n\nMerge commit \u0027181fafaf48208978b8ba2022683ffa78aaeddde1\u0027\n\n* commit \u0027181fafaf48208978b8ba2022683ffa78aaeddde1\u0027:\n  Retool the backup process to use a new \u0027BackupAgent\u0027 class\n"
    },
    {
      "commit": "181fafaf48208978b8ba2022683ffa78aaeddde1",
      "tree": "7c062847d418415e28813e70aac53c8c47e4ff69",
      "parents": [
        "c01159bb00f7273f9b051dfbbe6bc10d54d3a846"
      ],
      "author": {
        "name": "Christopher Tate",
        "email": "ctate@google.com",
        "time": "Thu May 14 11:12:14 2009 -0700"
      },
      "committer": {
        "name": "Christopher Tate",
        "email": "ctate@google.com",
        "time": "Sun May 31 13:10:03 2009 -0700"
      },
      "message": "Retool the backup process to use a new \u0027BackupAgent\u0027 class\n\nBackups will be handled by launching the application in a special\nmode under which no activities or services will be started, only\nthe BackupAgent subclass named in the app\u0027s android:backupAgent\nmanifest property.  This takes the place of the BackupService class\nused earlier during development.\n\nIn the cases of *full* backup or restore, an application that does\nnot supply its own BackupAgent will be launched in a restricted\nmanner; in particular, it will be using the default Application\nclass rather than any manifest-declared one.  This ensures that the\napp is not running any code that may try to manipulate its data\nwhile the backup system reads/writes its data set.\n"
    },
    {
      "commit": "22075a3b7430958ea81cb75eb305ccd254c0e38f",
      "tree": "01e6b00422889cc0b1c831e8f4e8e3abb557568d",
      "parents": [
        "2ee6c4c3ab98e198260e5c7dbd2922c0ef370a06",
        "5b6a5cee4c48fd2ffc35f07ebe9f24eb53086b9a"
      ],
      "author": {
        "name": "Dirk Dougherty",
        "email": "nobody@android.com",
        "time": "Fri May 22 16:08:05 2009 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Fri May 22 16:08:05 2009 -0700"
      },
      "message": "am 5b6a5cee: am 3f9de8b6: AI 149211: Doc updates for Android 1.5 SDK, r2.   BUG\u003d1790234\n\nMerge commit \u00275b6a5cee4c48fd2ffc35f07ebe9f24eb53086b9a\u0027\n\n* commit \u00275b6a5cee4c48fd2ffc35f07ebe9f24eb53086b9a\u0027:\n  AI 149211: Doc updates for Android 1.5 SDK, r2.\n"
    },
    {
      "commit": "5b6a5cee4c48fd2ffc35f07ebe9f24eb53086b9a",
      "tree": "58d1bc26219529d3602b1c8ed0ca22ddf52ab810",
      "parents": [
        "17af14d8133f99b5e886d830e92e38ba1da7cc2d",
        "3f9de8b6caa3fe9119b363c64e79d13bb72aec76"
      ],
      "author": {
        "name": "Dirk Dougherty",
        "email": "nobody@android.com",
        "time": "Fri May 22 16:05:59 2009 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Fri May 22 16:05:59 2009 -0700"
      },
      "message": "am 3f9de8b6: AI 149211: Doc updates for Android 1.5 SDK, r2.   BUG\u003d1790234\n\nMerge commit \u00273f9de8b6caa3fe9119b363c64e79d13bb72aec76\u0027 into donut\n\n* commit \u00273f9de8b6caa3fe9119b363c64e79d13bb72aec76\u0027:\n  AI 149211: Doc updates for Android 1.5 SDK, r2.\n"
    },
    {
      "commit": "3f9de8b6caa3fe9119b363c64e79d13bb72aec76",
      "tree": "a8f10b4cdd2945faa237c82bb5bc2a5287ccd471",
      "parents": [
        "226299446197689499bc3c7dc44d0026745da677"
      ],
      "author": {
        "name": "Dirk Dougherty",
        "email": "nobody@android.com",
        "time": "Fri May 22 16:04:18 2009 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Fri May 22 16:04:18 2009 -0700"
      },
      "message": "AI 149211: Doc updates for Android 1.5 SDK, r2.\n  BUG\u003d1790234\n\nAutomated import of CL 149211\n"
    },
    {
      "commit": "2ee6c4c3ab98e198260e5c7dbd2922c0ef370a06",
      "tree": "fa7a34269436e7bb4a703c1ce5bc0334c35e6de0",
      "parents": [
        "15ad3a2d58445600a71c00223810fe6c557ea2d4",
        "17af14d8133f99b5e886d830e92e38ba1da7cc2d"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri May 22 16:01:24 2009 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Fri May 22 16:01:24 2009 -0700"
      },
      "message": "am 17af14d8: Merge change 2289 into donut\n\nMerge commit \u002717af14d8133f99b5e886d830e92e38ba1da7cc2d\u0027\n\n* commit \u002717af14d8133f99b5e886d830e92e38ba1da7cc2d\u0027:\n  Add AIDL files for the TTS service and the associated callback service (to signal synthesis completion).\n"
    },
    {
      "commit": "2c0c2af2ea518cd754318cdbe0ee93997a26c4cc",
      "tree": "813fbc1e3f199e4147292f610c12df1a7ff38832",
      "parents": [
        "cfcc0df2658d0ce7dc753511bb44ab8ae7a636f7"
      ],
      "author": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Thu May 21 18:46:10 2009 -0700"
      },
      "committer": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Fri May 22 11:45:26 2009 -0700"
      },
      "message": "Add AIDL files for the TTS service and the associated callback service (to signal synthesis completion).\n"
    },
    {
      "commit": "9b1e1400df4c6c4b69985f164097f0c842dd796f",
      "tree": "cae61f8f495e8a93dcc0ffdc887e7445c46fae70",
      "parents": [
        "a59fa9b6cba9cae0f7d02e240dbd10603cc127a5",
        "8c690ea9976d644db3c96eddbbbd2d50eac56913"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu May 21 09:42:38 2009 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Thu May 21 09:42:38 2009 -0700"
      },
      "message": "am 8c690ea9: Merge change 2182 into donut\n\nMerge commit \u00278c690ea9976d644db3c96eddbbbd2d50eac56913\u0027\n\n* commit \u00278c690ea9976d644db3c96eddbbbd2d50eac56913\u0027:\n  location: Replace ILocationCollector interface with new ILocationProvider method\n"
    },
    {
      "commit": "fd6e5f0dda50e113db4ccc55338b6c4f09da37a4",
      "tree": "faf8e2c6510d2a0c4439cdcdfe74d97100dc9020",
      "parents": [
        "bb7b7b316a6a15f4df6af3c62a293920c68c7b00"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Thu May 21 11:28:20 2009 -0400"
      },
      "committer": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Thu May 21 11:28:20 2009 -0400"
      },
      "message": "location: Replace ILocationCollector interface with new ILocationProvider method\n\nThis change replaces ILocationCollector with a more general mechanism that\npasses locations received from a provider to all other providers.\nThe network location provider now uses this to implement the location collector.\nIn the future, this could be used to inject network locations to the GPS\nas aiding data.\n\nThis change also removes the now obsolete permission INSTALL_LOCATION_COLLECTOR.\n\nSigned-off-by: Mike Lockwood \u003clockwood@android.com\u003e\n"
    },
    {
      "commit": "76879bc2343779d4d2a870b7bd46b0544c0cc46c",
      "tree": "9594c4c482eb8249e5406f0578013db22cf1ebab",
      "parents": [
        "e52a5a5fca18348728dfc5609b42b88e9cc7ef98",
        "75986cf9bc57ef11ad70f36fb77fbbf5d63af6ec"
      ],
      "author": {
        "name": "svetoslavganov",
        "email": "svetoslavganov@google.com",
        "time": "Fri May 15 00:44:45 2009 -0700"
      },
      "committer": {
        "name": "svetoslavganov",
        "email": "svetoslavganov@google.com",
        "time": "Fri May 15 00:44:45 2009 -0700"
      },
      "message": "resolved conflicts w/ 75986cf9bc57ef11ad70f36fb77fbbf5d63af6ec merge....\n"
    },
    {
      "commit": "75986cf9bc57ef11ad70f36fb77fbbf5d63af6ec",
      "tree": "84e1843368037d24f83749d152f818d537267bfa",
      "parents": [
        "669ec3a6e47248fee0a3a0f4877b46875eb42140"
      ],
      "author": {
        "name": "svetoslavganov",
        "email": "svetoslavganov@google.com",
        "time": "Thu May 14 22:28:01 2009 -0700"
      },
      "committer": {
        "name": "svetoslavganov",
        "email": "svetoslavganov@google.com",
        "time": "Thu May 14 23:47:05 2009 -0700"
      },
      "message": "Accessibility feature - framework changes (replacing 698, 699, 700, 701 and merging with the latest Donut)\n"
    },
    {
      "commit": "7a1355950172b7a549820e9a2cd4a9b2099ec32f",
      "tree": "dc8940cdf38bae09e3427e44ebf1328861abc20b",
      "parents": [
        "39a8bb26326ceeaad5b46d29bf485329c67ced2f",
        "231cc608d06ffc31c24bf8aa8c8275bdd2636581"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Wed May 06 00:28:37 2009 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Wed May 06 00:28:37 2009 -0700"
      },
      "message": "merged 231cc608d06ffc31c24bf8aa8c8275bdd2636581\n"
    },
    {
      "commit": "231cc608d06ffc31c24bf8aa8c8275bdd2636581",
      "tree": "9b435c670f0f16751a21ae4678bfbed7d8e159b4",
      "parents": [
        "06d96020c35dac2bf1651cb8bd4cfced911f1142"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Mon Apr 27 17:10:36 2009 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Tue May 05 15:40:53 2009 -0700"
      },
      "message": "Rewrite SyncStorageEngine to use flat files and in-memory data structures.\n\nThe previous implementation used a database for storing all of its state, which could cause\na significant amount of IO activity as its tables were updated through the stages of a sync.\nThis new implementation replaces that in-memory data structures, with hand-written code\nfor writing them to persistent storage.\n\nThere are now 4 files associated with this class, holding various pieces of its state that\nshould be consistent.  These are everything from a main XML file of account information that\nmust always be retained, to a binary file of per-day statistics that can be thrown away at\nany time.  Writes of these files as scheduled at various times based on their importance of\nthe frequency at which they change.\n\nBecause the database no longer exists, there needs to be a new explicit interface for\ninteracting with the sync manager database.  This is provided by new APIs on IContentService,\nwith a hidden method on ContentResolver to retrieve the IContentService so that various\nsystem entities can use it.  Other changes in other projects are required to update to the\nnew API.\n\nThe goal here is to have as little an impact on the code and functionality outside of\nSyncStorageEngine, though due to the necessary change in API it is still somewhat extensive.\n"
    },
    {
      "commit": "0477090ca3cc1f4e4d522f15760f0e69058aafa8",
      "tree": "6a9fc003573d88c2fdeac9b51f65b02f59fa1abf",
      "parents": [
        "3ee2f8189f145e2cd0173a20d156dec47274bd13",
        "7db486058cf4fce4be04e13d1ec6b7cf404d3e38"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri May 01 23:25:28 2009 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Fri May 01 23:25:28 2009 -0700"
      },
      "message": "am 7db4860: Merge change 845 into donut\n\nMerge commit \u00277db486058cf4fce4be04e13d1ec6b7cf404d3e38\u0027\n\n* commit \u00277db486058cf4fce4be04e13d1ec6b7cf404d3e38\u0027:\n  Config: Add ConfigBuildFlags, and change it based on TARGET_BUILD_TYPE\n"
    },
    {
      "commit": "a833cbbed087bf6869905a43166757a6436ad34f",
      "tree": "864cfc1484b56e6e0374bc088d8f9def375e3baf",
      "parents": [
        "75e44a1c72c5e6ebf68601bbb903fa3e375bd7d5"
      ],
      "author": {
        "name": "Dave Bort",
        "email": "dbort@android.com",
        "time": "Wed Apr 22 17:33:12 2009 -0700"
      },
      "committer": {
        "name": "Dave Bort",
        "email": "dbort@android.com",
        "time": "Fri May 01 17:47:08 2009 -0700"
      },
      "message": "Config: Add ConfigBuildFlags, and change it based on TARGET_BUILD_TYPE\n\nThis will be used to revive android.util.Config.DEBUG.\n\nSigned-off-by: Dave Bort \u003cdbort@android.com\u003e\n"
    },
    {
      "commit": "ac7a3de471da65ae3111560a1404c12985c8741f",
      "tree": "59db348eb9851925405b50a304ddc2c8081b6d5d",
      "parents": [
        "da7b5e2dacb5a6010c23c4c9651389da58347a45",
        "15e3d0f082d551f8819fbe4b0d502cc108627876"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Fri May 01 05:26:44 2009 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Fri May 01 05:26:44 2009 -0700"
      },
      "message": "am 15e3d0f: location: Use ILocationProvider Binder interface for all loc\n\nMerge commit \u002715e3d0f082d551f8819fbe4b0d502cc108627876\u0027\n\n* commit \u002715e3d0f082d551f8819fbe4b0d502cc108627876\u0027:\n  location: Use ILocationProvider Binder interface for all location providers.\n"
    },
    {
      "commit": "15e3d0f082d551f8819fbe4b0d502cc108627876",
      "tree": "ee0b12d89c14986b5447e7a000fd2a3f91fb6c13",
      "parents": [
        "a56b318cf2d4c3700899f9de394c5635761dda66"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Fri May 01 07:53:28 2009 -0400"
      },
      "committer": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Fri May 01 08:24:47 2009 -0400"
      },
      "message": "location: Use ILocationProvider Binder interface for all location providers.\n\nThis change eliminates the LocationProviderImpl class which had been used\nfor location providers running in the system process.\nNow the LocationProvider base class is only used to implement the\nLocationManager.createProvider() method for retrieving provider information.\nAdded a new IGpsStatusProvider interface for providers that serve GPS status.\n\nSigned-off-by: Mike Lockwood \u003clockwood@android.com\u003e\n"
    },
    {
      "commit": "f8997690da3790a1ff87f1f96a6e68fbb79b5ddc",
      "tree": "620dc745ffd15f960b350675f44fe85886f96ef4",
      "parents": [
        "55a664f87bc073c775e3d1b36beaf4783697b277",
        "487529a70cd1479ae8d6bbfb356be7e72542c185"
      ],
      "author": {
        "name": "Christopher Tate",
        "email": "ctate@google.com",
        "time": "Wed Apr 29 15:16:57 2009 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Wed Apr 29 15:16:57 2009 -0700"
      },
      "message": "am 487529a: First baby steps towards settings backup\n\nMerge commit \u0027487529a70cd1479ae8d6bbfb356be7e72542c185\u0027\n\n* commit \u0027487529a70cd1479ae8d6bbfb356be7e72542c185\u0027:\n  First baby steps towards settings backup\n"
    },
    {
      "commit": "487529a70cd1479ae8d6bbfb356be7e72542c185",
      "tree": "ca19a948a28e9d4eb7b4c9890b006e43b89d7a6d",
      "parents": [
        "dc67739af90aa31a0b546c14bf1e68e6acbb8375"
      ],
      "author": {
        "name": "Christopher Tate",
        "email": "ctate@google.com",
        "time": "Wed Apr 29 14:03:25 2009 -0700"
      },
      "committer": {
        "name": "Christopher Tate",
        "email": "ctate@google.com",
        "time": "Wed Apr 29 14:49:30 2009 -0700"
      },
      "message": "First baby steps towards settings backup\n\nThis change adds a sketched outline of the backup system architecture, with\nall of the major pieces represented other than client-side helpers for\nspecific types of data.  IBackupManager and BackupService are public so that\nwe can write test apps against SDK-domain symbols from the outset.\n\nWhat code exists in this change hasn\u0027t been tested and may crash.  It\u0027s the\nbeginnings of the real implementation but of course is barely begun.\n"
    },
    {
      "commit": "74008f608af0c567456d37e63d48643689388c74",
      "tree": "02354593bed51d5c4bb0ac5f9b44032034cbbaaf",
      "parents": [
        "6fc52c4928ec8a658d7eb0b7881fcbc879aeb18c",
        "644cf62660c87a9b8d5bcb22412cc2ad2aeea291"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Wed Apr 22 17:12:34 2009 -0700"
      },
      "committer": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Wed Apr 22 17:12:34 2009 -0700"
      },
      "message": "Merge donut into master\n"
    },
    {
      "commit": "abdc514bf3d3da3db34e42ce3209c9fef6da8eeb",
      "tree": "bfff04f14a53fba552f9775bc0a4e7d7ff554334",
      "parents": [
        "a0c9e8526b094e3b4f2c2747622059215d00516f",
        "e90232b1daed8f0a5167bc0b4843a2be2386ef81"
      ],
      "author": {
        "name": "Dirk Dougherty",
        "email": "",
        "time": "Tue Apr 21 01:01:28 2009 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Tue Apr 21 01:01:28 2009 -0700"
      },
      "message": "Merge branch \u0027readonly-p4-donut\u0027 into donut\n"
    },
    {
      "commit": "e90232b1daed8f0a5167bc0b4843a2be2386ef81",
      "tree": "4eb351ae8e527dd556042f448c13b3332e65acc8",
      "parents": [
        "6fb5a1d0ee18b2d94340f3b35f86ad7319f3a11c"
      ],
      "author": {
        "name": "Dirk Dougherty",
        "email": "",
        "time": "Tue Apr 21 01:00:12 2009 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Tue Apr 21 01:00:12 2009 -0700"
      },
      "message": "AI 147054: am: CL 147053 Add -hdf primer vars for the platform and release ID associated with the current (most recent) SDK.\n  Currently, the docs that are specific to each SDK release -- downloading, installing, upgrading, requirements -- are stored in a directory with release-derived name, such as \"1.1_r1\". This change lets documents use generic links to point into the most recent version specific docs, eg href\u003d\"{@docRoot}sdk/{sdkCurrent}/installing.html\" instead of href\u003d\"{@docRoot}sdk/1.1_r1/installing.html\".\n  Original author: ddougherty\n  Merged from: //branches/cupcake/...\n\nAutomated import of CL 147054\n"
    },
    {
      "commit": "2e2c9104b78c4e817db992cb121742ae2e52ba26",
      "tree": "8df349ad63c0e97443991c9bd1f8a7b16ff6ad42",
      "parents": [
        "f3af6a0267dff0acacdeebf646f2b8647b1f7199"
      ],
      "author": {
        "name": "Dirk Dougherty",
        "email": "",
        "time": "Mon Apr 20 17:56:34 2009 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Mon Apr 20 17:56:34 2009 -0700"
      },
      "message": "AI 147058: am: CL 147054 am: CL 147053 Add -hdf primer vars for the platform and release ID associated with the current (most recent) SDK.\n  Currently, the docs that are specific to each SDK release -- downloading, installing, upgrading, requirements -- are stored in a directory with release-derived name, such as \"1.1_r1\". This change lets documents use generic links to point into the most recent version specific docs, eg href\u003d\"{@docRoot}sdk/{sdkCurrent}/installing.html\" instead of href\u003d\"{@docRoot}sdk/1.1_r1/installing.html\".\n  Original author: ddougherty\n  Merged from: //branches/cupcake/...\n  Original author: android-build\n\nAutomated import of CL 147058\n"
    },
    {
      "commit": "b5a4c5a473f37700a654a3323afb9682e524c66c",
      "tree": "0ae3472a79123c09ebd6a627482880eb8a540f79",
      "parents": [
        "26dea0f211c433f2d3a12dcc85bb069664112a03"
      ],
      "author": {
        "name": "Dirk Dougherty",
        "email": "",
        "time": "Mon Apr 20 17:54:52 2009 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Mon Apr 20 17:54:52 2009 -0700"
      },
      "message": "AI 147053: Add -hdf primer vars for the platform and release ID associated with the current (most recent) SDK.\n  Currently, the docs that are specific to each SDK release -- downloading, installing, upgrading, requirements -- are stored in a directory with release-derived name, such as \"1.1_r1\". This change lets documents use generic links to point into the most recent version specific docs, eg href\u003d\"{@docRoot}sdk/{sdkCurrent}/installing.html\" instead of href\u003d\"{@docRoot}sdk/1.1_r1/installing.html\".\n  BUG\u003d1790234\n\nAutomated import of CL 147053\n"
    },
    {
      "commit": "f1bb004cda115fff322e7f5126797343236b5c0e",
      "tree": "8e8f577fcd683ede1f2db4c1633c76e5e5ae56ee",
      "parents": [
        "9c3209db78bf171f5055baae376f7bdfdfba4a9f"
      ],
      "author": {
        "name": "Brandon Ballinger",
        "email": "",
        "time": "Sat Apr 18 22:04:01 2009 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Sat Apr 18 22:04:01 2009 -0700"
      },
      "message": "AI 146615: am: CL 146613 Move Recognition service declarations to frameworks/base/core/java/android/speech. Hide them from public API by default (no changes to current.xml).\n  Original author: brandonb\n\nAutomated import of CL 146615\n"
    },
    {
      "commit": "3385e728d83e1dc246919a5c6b7859b4427c40f8",
      "tree": "ec5e9a9f82d179f640416850400a485284409436",
      "parents": [
        "131e27a00c56482a758e98c15ef34879c48c4399",
        "181a44dd81eed5587252ef740663a42fe4d2a9a9"
      ],
      "author": {
        "name": "Brandon Ballinger",
        "email": "",
        "time": "Thu Apr 16 14:33:04 2009 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Thu Apr 16 14:33:04 2009 -0700"
      },
      "message": "Merge branch \u0027readonly-p4-donut\u0027 into donut\n"
    },
    {
      "commit": "181a44dd81eed5587252ef740663a42fe4d2a9a9",
      "tree": "3343794c7b42dc250aa77df7ee2e4cbcd28dec48",
      "parents": [
        "dc52312ce3f9c7bd306c58264f82d6eb7ccd661a"
      ],
      "author": {
        "name": "Brandon Ballinger",
        "email": "",
        "time": "Thu Apr 16 14:31:48 2009 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Thu Apr 16 14:31:48 2009 -0700"
      },
      "message": "AI 146613: Move Recognition service declarations to frameworks/base/core/java/android/speech. Hide them from public API by default (no changes to current.xml).\n\nAutomated import of CL 146613\n"
    },
    {
      "commit": "a55c321329ae52a2db7a4f2bd36673a20b8f271d",
      "tree": "97ee2b13cf6c464305930be581bcf14c072e7a55",
      "parents": [
        "967f7c169c0ff8723a72fce7073f591dcfab018d"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Wed Apr 15 11:10:11 2009 -0400"
      },
      "committer": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Wed Apr 15 11:17:37 2009 -0400"
      },
      "message": "location: Move geocoding support from ILocationProvider to a new interface.\n\nSigned-off-by: Mike Lockwood \u003clockwood@android.com\u003e\n"
    },
    {
      "commit": "c1e8aa4c448807fc3ee9d21e8b67bb886fa065aa",
      "tree": "6d6a23ffa2de7abdfc742ca0f0dafb77e49b01d3",
      "parents": [
        "45dee41f5c55cd18c7f3716fbac765016132a214"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "",
        "time": "Mon Apr 06 10:52:24 2009 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Mon Apr 06 10:52:24 2009 -0700"
      },
      "message": "AI 144664: am: CL 144663 Use Binder interfaces between NetworkLocationManager and LocationManagerService.\n  This fixes a hack that was added when NetworkLocationManager was moved out of the framework.\n  This also lays the groundwork for supporting location providers outside of the system process.\n  BUG\u003d1729031\n  Original author: lockwood\n\nAutomated import of CL 144664\n"
    },
    {
      "commit": "e932f7f2a47b770c636443d411436bd29cc4bb43",
      "tree": "75a53e7d58fd8b9524aa22e370854e4c65bba17e",
      "parents": [
        "53566b140ffa7b1e2f522ab1cdec13c74f8779e7"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "",
        "time": "Mon Apr 06 10:51:26 2009 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Mon Apr 06 10:51:26 2009 -0700"
      },
      "message": "AI 144663: Use Binder interfaces between NetworkLocationManager and LocationManagerService.\n  This fixes a hack that was added when NetworkLocationManager was moved out of the framework.\n  This also lays the groundwork for supporting location providers outside of the system process.\n  BUG\u003d1729031\n\nAutomated import of CL 144663\n"
    },
    {
      "commit": "04e71b3db84fd5f7fc4eefb49a33154ea91ec9fc",
      "tree": "1e96e55835f059a7b4b7b89a62ca0a9d7f0a5c17",
      "parents": [
        "3afdd56470d6d4dcb20fe0f68ec9e54a167a9d74"
      ],
      "author": {
        "name": "Wink Saville",
        "email": "",
        "time": "Thu Apr 02 11:00:54 2009 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Thu Apr 02 11:00:54 2009 -0700"
      },
      "message": "AI 144245: Fix merge conflict for megering in the CDMA changes in to master from donutburger.\n\nAutomated import of CL 144245\n"
    },
    {
      "commit": "767a662ecde33c3979bf02b793d392aca0403162",
      "tree": "f55548c33a8267c39acc60f72051f9856e95e672",
      "parents": [
        "e9c08056fafab720856ab8516ea0e623a5c0e360"
      ],
      "author": {
        "name": "Wink Saville",
        "email": "",
        "time": "Thu Apr 02 01:37:02 2009 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Thu Apr 02 01:37:02 2009 -0700"
      },
      "message": "AI 144185: Integrate cdma into the main code base.\n\nAutomated import of CL 144185\n"
    },
    {
      "commit": "e91bc680b731a5d97f066b2e6c9c99b3c7dd5c58",
      "tree": "e18a31d1605a9d00991245eb49e7d16b54ff5b62",
      "parents": [
        "63e45f2854c86a9edf71e4159c9d93ad9a1e8f0d"
      ],
      "author": {
        "name": "John Wang",
        "email": "",
        "time": "Fri Mar 27 18:24:06 2009 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Fri Mar 27 18:24:06 2009 -0700"
      },
      "message": "AI 143331: am: CL 143181 am: CL 142924 Support DCM specific MMI network service.\n  IExtendedNetworkService has 4 MMI service interface used by PhoneUtils to put DCM related nw service.\n  void setMmiString(String number);\n  CharSequence getMmiRunningText();\n  CharSequence getUserMessage(CharSequence text);\n  void clearMmiString();\n  And the service is bind via \"com.android.ussd.IExtendedNetworkService\".\n  Original author: johnwang\n  Merged from: //branches/cupcake/...\n  Original author: android-build\n  Merged from: //branches/donutburger/...\n\nAutomated import of CL 143331\n"
    },
    {
      "commit": "38e260a62020af0e6ca45d5a9cc3f8e8c9a2842c",
      "tree": "0091f09f1d54af769aad37ccbb6e18d4e4bb13cd",
      "parents": [
        "a7f1e5c540ff7b94c212facdcd89459cba3e4edc"
      ],
      "author": {
        "name": "John Wang",
        "email": "",
        "time": "Fri Mar 27 16:38:58 2009 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Fri Mar 27 16:38:58 2009 -0700"
      },
      "message": "AI 143181: am: CL 142924 Support DCM specific MMI network service.\n  IExtendedNetworkService has 4 MMI service interface used by PhoneUtils to put DCM related nw service.\n  void setMmiString(String number);\n  CharSequence getMmiRunningText();\n  CharSequence getUserMessage(CharSequence text);\n  void clearMmiString();\n  And the service is bind via \"com.android.ussd.IExtendedNetworkService\".\n  Original author: johnwang\n  Merged from: //branches/cupcake/...\n\nAutomated import of CL 143181\n"
    },
    {
      "commit": "2fe6fe1f5f0cdd1ed622e657aa2cc0211a1702d5",
      "tree": "55d5150ec362814dcc574ff8b8f6c4f3d9b58b1a",
      "parents": [
        "eeea9222132fe5979e40dcc85f5eba300157dfbc"
      ],
      "author": {
        "name": "John Wang",
        "email": "",
        "time": "Thu Mar 26 09:27:16 2009 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Thu Mar 26 09:27:16 2009 -0700"
      },
      "message": "Automated import from //branches/cupcake/...@142924,142924\n"
    },
    {
      "commit": "603073430bbcb1bd29db7afb9b14e2732ad589fb",
      "tree": "404a611fc32d7a415977091c0b5e594461d2575f",
      "parents": [
        "d86c7821270a0d4e4710f8eef6ee111e80bd5125"
      ],
      "author": {
        "name": "Fred Quintana",
        "email": "",
        "time": "Tue Mar 24 22:48:12 2009 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Tue Mar 24 22:48:12 2009 -0700"
      },
      "message": "Automated import from //branches/master/...@142414,142414\n"
    },
    {
      "commit": "c39a6e0c51e182338deb8b63d07933b585134929",
      "tree": "e55fc5bd38b1eb8fb4851a0fe1cc264a7fe2f245",
      "parents": [
        "b2a3dd88a53cc8c6d19f6dc8ec4f3d6c4abd9b54"
      ],
      "author": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Wed Mar 11 12:11:56 2009 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Wed Mar 11 12:11:56 2009 -0700"
      },
      "message": "auto import from //branches/cupcake/...@137873\n"
    },
    {
      "commit": "4df2423a947bcd3f024cc3d3a1a315a8dc428598",
      "tree": "e7dac2c5a367b169e7f05a36058cf470e93f003b",
      "parents": [
        "c474dec3ffa1c0fe37edb3e701684188f7e8e7bc"
      ],
      "author": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Thu Mar 05 14:34:35 2009 -0800"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Thu Mar 05 14:34:35 2009 -0800"
      },
      "message": "auto import from //depot/cupcake/@136594\n"
    },
    {
      "commit": "9066cfe9886ac131c34d59ed0e2d287b0e3c0087",
      "tree": "d88beb88001f2482911e3d28e43833b50e4b4e97",
      "parents": [
        "d83a98f4ce9cfa908f5c54bbd70f03eec07e7553"
      ],
      "author": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Tue Mar 03 19:31:44 2009 -0800"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Tue Mar 03 19:31:44 2009 -0800"
      },
      "message": "auto import from //depot/cupcake/@135843\n"
    },
    {
      "commit": "d83a98f4ce9cfa908f5c54bbd70f03eec07e7553",
      "tree": "4b825dc642cb6eb9a060e54bf8d69288fbee4904",
      "parents": [
        "076357b8567458d4b6dfdcf839ef751634cd2bfb"
      ],
      "author": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Tue Mar 03 18:28:45 2009 -0800"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Tue Mar 03 18:28:45 2009 -0800"
      },
      "message": "auto import from //depot/cupcake/@135843\n"
    },
    {
      "commit": "da996f390e17e16f2dfa60e972e7ebc4f868f37e",
      "tree": "00a0f15270d4c7b619fd34d8383257e1761082f4",
      "parents": [
        "d24b8183b93e781080b2c16c487e60d51c12da31"
      ],
      "author": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Fri Feb 13 12:57:50 2009 -0800"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Fri Feb 13 12:57:50 2009 -0800"
      },
      "message": "auto import from //branches/cupcake/...@131421\n"
    },
    {
      "commit": "d24b8183b93e781080b2c16c487e60d51c12da31",
      "tree": "fbb89154858984eb8e41556da7e9433040d55cd4",
      "parents": [
        "f1e484acb594a726fb57ad0ae4cfe902c7f35858"
      ],
      "author": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Tue Feb 10 15:44:00 2009 -0800"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Tue Feb 10 15:44:00 2009 -0800"
      },
      "message": "auto import from //branches/cupcake/...@130745\n"
    },
    {
      "commit": "22f7dfd23490a3de2f21ff96949ba47003aac8f8",
      "tree": "41bc290bb2f1f08a0e37cfda4955742a85d42ecf",
      "parents": [
        "9266c558bf1d21ff647525ff99f7dadbca417309"
      ],
      "author": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Tue Jan 20 14:03:58 2009 -0800"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Tue Jan 20 14:03:58 2009 -0800"
      },
      "message": "auto import from //branches/cupcake/...@127101\n"
    },
    {
      "commit": "f013e1afd1e68af5e3b868c26a653bbfb39538f8",
      "tree": "7ad6c8fd9c7b55f4b4017171dec1cb760bbd26bf",
      "parents": [
        "e70cfafe580c6f2994c4827cd8a534aabf3eb05c"
      ],
      "author": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Wed Dec 17 18:05:43 2008 -0800"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Wed Dec 17 18:05:43 2008 -0800"
      },
      "message": "Code drop from //branches/cupcake/...@124589\n"
    },
    {
      "commit": "54b6cfa9a9e5b861a9930af873580d6dc20f773c",
      "tree": "35051494d2af230dce54d6b31c6af8fc24091316",
      "parents": [],
      "author": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Tue Oct 21 07:00:00 2008 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Tue Oct 21 07:00:00 2008 -0700"
      },
      "message": "Initial Contribution\n"
    }
  ]
}
