)]}'
{
  "log": [
    {
      "commit": "4528186e0d65fc68ef0dd1941aa2ac8aefcd55a3",
      "tree": "3f1276aef1448aad75a0d44ad1abbbd1478a4937",
      "parents": [
        "931bf89d327ecf07301231fd86b17deac535feaa"
      ],
      "author": {
        "name": "Christopher Tate",
        "email": "ctate@google.com",
        "time": "Fri Mar 05 15:46:30 2010 -0800"
      },
      "committer": {
        "name": "Christopher Tate",
        "email": "ctate@google.com",
        "time": "Fri Mar 05 16:27:15 2010 -0800"
      },
      "message": "Refactor android.backup \u003d\u003e android.app.backup\n\nChange-Id: I0b21316ff890d7f3c7d4b82837bb60670724c2e8\n"
    },
    {
      "commit": "d5176cfe6eae954e9cef1e2ec17859a5089e1330",
      "tree": "f1266d2fc2eef8d9114e3c7af403a65c43da8b24",
      "parents": [
        "07863ab6bc6f5ecf9a8454357667af6862588fc2"
      ],
      "author": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Thu Jan 28 11:56:42 2010 -0800"
      },
      "committer": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Tue Mar 02 08:39:26 2010 -0800"
      },
      "message": "First implementation of the audio focus management as an extension\nof AudioManager and AudioService.\n"
    },
    {
      "commit": "87bba1ee14279bb14a28d42e27c4ef66d9967bf8",
      "tree": "915eb0be9f5fac21d24bacf76438cafb9f14bae0",
      "parents": [
        "8c49df4f36bee2878ab0ff7dc99dff60dc7354fb"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Fri Feb 26 17:25:54 2010 -0800"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Fri Feb 26 23:32:48 2010 -0800"
      },
      "message": "Move DeviceAdmin APIs to android.app.admin.\n\nAlso add ability for admins to hide themselves when not in use,\na facility for admins to not allow other admins to reset\ntheir password, and debug dumping.\n"
    },
    {
      "commit": "e70f61b1160e953e5e4d18d30a463fa9ba821779",
      "tree": "763d50921749fb256c7e2b656db045ee21277b06",
      "parents": [
        "fda25347b8aaa860e0fdbc972c0f4411c85f8fa3"
      ],
      "author": {
        "name": "Brett Chabot",
        "email": "brettchabot@android.com",
        "time": "Fri Feb 19 10:49:27 2010 -0800"
      },
      "committer": {
        "name": "Brett Chabot",
        "email": "brettchabot@android.com",
        "time": "Sat Feb 20 17:29:05 2010 -0800"
      },
      "message": "Retry test-runner tests move.\n\nThis time change the frameworks makefile so it only includes test-runner/src\nin the public API.\n"
    },
    {
      "commit": "8946dd3355fc1dcbad872c0546e356474d4cc5de",
      "tree": "8b614c938152df8ad809fd9bf03c6876c8a7a58e",
      "parents": [
        "eac461cf7c246df737d2b0e7bd30be176a34c36e"
      ],
      "author": {
        "name": "Suchi Amalapurapu",
        "email": "asuchitra@google.com",
        "time": "Fri Feb 19 09:19:34 2010 -0800"
      },
      "committer": {
        "name": "Suchi Amalapurapu",
        "email": "asuchitra@google.com",
        "time": "Fri Feb 19 14:20:54 2010 -0800"
      },
      "message": "Move package from internal to external and vice versa.\n"
    },
    {
      "commit": "1c9131c91f27c8258dfad0a92cee105275f5422a",
      "tree": "753fab99f2f62b45d1ba5f055da1cb2068243e11",
      "parents": [
        "5b31fdae6004c48e4915afb084c3f7944ac0f9aa"
      ],
      "author": {
        "name": "Dan Egnor",
        "email": "egnor@google.com",
        "time": "Sat Feb 13 10:38:55 2010 -0800"
      },
      "committer": {
        "name": "Dan Egnor",
        "email": "egnor@google.com",
        "time": "Sat Feb 13 12:40:12 2010 -0800"
      },
      "message": "Remove all traces of the old checkin service (and its associated parental\ncontrol interfaces) from the framework.\n"
    },
    {
      "commit": "9c57aca188665916cc1dafbbe23dbe8cfd98883d",
      "tree": "266ea4015d2da91c58891e60aec2138d3962408a",
      "parents": [
        "2f853ea47a194680657ddc2cc54336a14f38b8ba"
      ],
      "author": {
        "name": "Mike LeBeau",
        "email": "mlebeau@android.com",
        "time": "Fri Feb 12 14:09:55 2010 -0800"
      },
      "committer": {
        "name": "Mike LeBeau",
        "email": "mlebeau@android.com",
        "time": "Fri Feb 12 14:09:55 2010 -0800"
      },
      "message": "Make the corresponding frameworks change to add VoiceRecognitionService to\nthe list of SDK sample apps.\n"
    },
    {
      "commit": "27b28b3f62bd3b54fa13acd5d035940b9be464f3",
      "tree": "d1f44096f7071bbc53e5bc979117be8e0f4aa55c",
      "parents": [
        "d5663a108760de672b130ffabd4f6632982f75e5"
      ],
      "author": {
        "name": "Tobias Haamel",
        "email": "haamel@google.com",
        "time": "Tue Feb 09 23:09:17 2010 +0100"
      },
      "committer": {
        "name": "Tobias Haamel",
        "email": "haamel@google.com",
        "time": "Thu Feb 11 21:25:58 2010 +0100"
      },
      "message": "Introduce special UI modes for night and car usage.\n\nThe device mode is now called ui mode. Furthermore is the order of\nprecedence for the resources now in such a way that the ui mode needs\nto be specified after the orientation and before the density.\n\nThe ui mode can be set, like it is done for the locale, as follows:\n\nIActivityManager am \u003d ActivityManagerNative.getDefault();\nConfiguration config \u003d am.getConfiguration();\nconfig.uiMode \u003d Configuration.UI_MODE_TYPE_CAR | Configuration.UI_MODE_NIGHT_ANY;\nam.updateConfiguration(config);\n\nTo allow users to disable the car mode and set the night mode the IUiModeManager\ninterface is used.\n\nThe automatic night mode switching will be added in a separate change.\n"
    },
    {
      "commit": "18e939623556928f73fcc7511c85a537929a4a7e",
      "tree": "e1e85e2634f45742a4f358ad640f5a0ed76066c0",
      "parents": [
        "4e208bd8722ad48c342c0128313ef40971234121"
      ],
      "author": {
        "name": "Dan Egnor",
        "email": "egnor@google.com",
        "time": "Wed Feb 10 19:27:58 2010 -0800"
      },
      "committer": {
        "name": "Dan Egnor",
        "email": "egnor@google.com",
        "time": "Thu Feb 11 10:22:09 2010 -0800"
      },
      "message": "Eliminate dependencies on Checkin, replacing checkin events with EventLog\nevents (and in one case, a DropBox entry).\n\nAdd a simple intent that triggers master-clear (and toggle EFS), given the\nright permissions.\n\nBug: 2264596\nBug: 2350452\nBug: 2264596\n"
    },
    {
      "commit": "f3449ee8536fb579da0022247ae78cd82d6fbbdc",
      "tree": "593156d87198214d9b75a630a0c2f5ba2dac3d33",
      "parents": [
        "a63730d1f103f78589faef461d2af7351fc49f42",
        "e524ff534e1aabc45819e978c26bf61d9b71f444"
      ],
      "author": {
        "name": "Dirk Dougherty",
        "email": "ddougherty@google.com",
        "time": "Tue Feb 09 18:48:59 2010 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Feb 09 18:48:59 2010 -0800"
      },
      "message": "am e524ff53: am 859f4556: Merge \"Add generated html docs for SampleSyncAdapter and CubeLiveWallpaper. Add article for live wallpaper.\" into eclair\n\nMerge commit \u0027e524ff534e1aabc45819e978c26bf61d9b71f444\u0027\n\n* commit \u0027e524ff534e1aabc45819e978c26bf61d9b71f444\u0027:\n  Add generated html docs for SampleSyncAdapter and CubeLiveWallpaper. Add article for live wallpaper.\n"
    },
    {
      "commit": "d323b4c338106ccedf6dd974e201947eeb2b2d73",
      "tree": "d878577190fbe3755a14f400db341bcc2bb7d396",
      "parents": [
        "31bfdf695ef741f64066ef605bd6a7e23df88714"
      ],
      "author": {
        "name": "Dirk Dougherty",
        "email": "ddougherty@google.com",
        "time": "Mon Feb 08 10:53:12 2010 -0800"
      },
      "committer": {
        "name": "Dirk Dougherty",
        "email": "ddougherty@google.com",
        "time": "Tue Feb 09 18:38:30 2010 -0800"
      },
      "message": "Add generated html docs for SampleSyncAdapter and CubeLiveWallpaper. Add article for live wallpaper.\n\nChange-Id: Idbeda9a677c9772a8348146fe028083d9887a9d2\n"
    },
    {
      "commit": "a63730d1f103f78589faef461d2af7351fc49f42",
      "tree": "c68abd5a73daea5b3aab93b713031ae6df95e846",
      "parents": [
        "e1d683074b9a5cfa12c39e2e3d5a538599a9da75"
      ],
      "author": {
        "name": "Brad Fitzpatrick",
        "email": "bradfitz@android.com",
        "time": "Sun Feb 07 22:25:34 2010 -0800"
      },
      "committer": {
        "name": "Brad Fitzpatrick",
        "email": "bradfitz@android.com",
        "time": "Tue Feb 09 17:49:43 2010 -0800"
      },
      "message": "Log ContentProvider operations to the EventLog.\n\nJust like with db_operation, operations over 100ms are always logged,\nwhile operations under that are subsampled.\n\nThis will help with performance analysis, getting real-world\nperformance numbers from dogfooders.\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": "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": "4270e1ea74c57f1c65620e9f5ecaa8c2a5daf0e1",
      "tree": "151ed15644268731334b27a1e179ed556c1cd407",
      "parents": [
        "78071b73479b9bea536dd1d5260ea78dd176640b"
      ],
      "author": {
        "name": "San Mehat",
        "email": "san@google.com",
        "time": "Fri Jan 29 05:32:19 2010 -0800"
      },
      "committer": {
        "name": "San Mehat",
        "email": "san@google.com",
        "time": "Tue Feb 02 11:17:46 2010 -0800"
      },
      "message": "MountService: Massive bloat reduction and rewrite\n\n- Most API calls now return an int as a result code (see MountServiceResultCode.java)\n- All notification code has been removed\n- All settings code has been removed\n- Removed UMS centric API calls in favor of more generic \u0027shares\u0027\n- Mount error reporting is no longer done via an event, but is done as part of the\n  actual mount process\n- Rework vold IPC commands to be more sane\n\nUpdated:\n    MountService: Rename MountServiceObserver -\u003e MountServiceListener\n    MountService: Add support for Async callbacks\n\nUpdated:\n    MountService: Add BinderDeath handling\n\nUpdated:\n    MountService: Remove notifys since we dont listen anyways\n\nUpdated:\n    MountService: Fix bad cast\n\nSigned-off-by: San Mehat \u003csan@google.com\u003e\n"
    },
    {
      "commit": "e599a9d24b416d693ce60c97339f18c927aef5db",
      "tree": "6123dcabfc901c890deb86a30aff0064a8e6b0d7",
      "parents": [
        "5fdff9e6c50faa6196349e8aecc08d0b9bc5467d"
      ],
      "author": {
        "name": "Dirk Balfanz",
        "email": "balfanz@google.com",
        "time": "Mon Feb 01 17:47:48 2010 -0800"
      },
      "committer": {
        "name": "Dirk Balfanz",
        "email": "balfanz@google.com",
        "time": "Mon Feb 01 17:47:48 2010 -0800"
      },
      "message": "Revert \"adding OAuth library\"\n\nThis reverts commit cc1aa994af5957815e47ec102a0eab3b98111eb1.\n"
    },
    {
      "commit": "cc1aa994af5957815e47ec102a0eab3b98111eb1",
      "tree": "cdfb2e505e4667a8172b68b24f7f29173e71e1f1",
      "parents": [
        "239d5b3638ae486f715f44a8c1a71420f486049c"
      ],
      "author": {
        "name": "Dirk Balfanz",
        "email": "balfanz@google.com",
        "time": "Tue Jan 19 17:39:26 2010 -0800"
      },
      "committer": {
        "name": "Dirk Balfanz",
        "email": "balfanz@google.com",
        "time": "Fri Jan 29 15:45:19 2010 -0800"
      },
      "message": "adding OAuth library\n"
    },
    {
      "commit": "604b8714024e1234821952d091be48cc6a86b794",
      "tree": "d0b399a9cf8ab18891493aa7f280379f4105154e",
      "parents": [
        "6580a1449f1f3f1038ffc40d5d26f03bd60e8b7a",
        "aa86da9d14d08ee39ca3e3fcabba01560c64f37d"
      ],
      "author": {
        "name": "Dirk Dougherty",
        "email": "ddougherty@google.com",
        "time": "Fri Jan 29 13:52:20 2010 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Jan 29 13:52:20 2010 -0800"
      },
      "message": "am aa86da9d: am 196ec566: Merge \"SDK doc change: Increment the platform version var used in doc footer and elsewhere.\" into eclair\n\nMerge commit \u0027aa86da9d14d08ee39ca3e3fcabba01560c64f37d\u0027\n\n* commit \u0027aa86da9d14d08ee39ca3e3fcabba01560c64f37d\u0027:\n  SDK doc change: Increment the platform version var used in doc footer and elsewhere.\n"
    },
    {
      "commit": "b4a162e50a96d2eef5fa3ed686e1418c4fbc8ded",
      "tree": "d1b006dd2707c6de51b0ba1ee64c087580ebe7a4",
      "parents": [
        "77c292d83e70793dcb23677ab60a6c707fc613dd"
      ],
      "author": {
        "name": "San Mehat",
        "email": "san@google.com",
        "time": "Thu Jan 28 08:03:44 2010 -0800"
      },
      "committer": {
        "name": "San Mehat",
        "email": "san@google.com",
        "time": "Fri Jan 29 06:30:03 2010 -0800"
      },
      "message": "framework: os: Introduce IMountServiceObserver\n\nSigned-off-by: San Mehat \u003csan@google.com\u003e\n"
    },
    {
      "commit": "ab2c0a4fab5ce082c16cdb11308da410228cc9f0",
      "tree": "cb151136f70108d2c26d4984bec22934025d5443",
      "parents": [
        "965f4a6b4b5f3dd71e70f427af0c8a902e5880ef"
      ],
      "author": {
        "name": "Dirk Dougherty",
        "email": "ddougherty@google.com",
        "time": "Thu Jan 28 17:50:10 2010 -0800"
      },
      "committer": {
        "name": "Dirk Dougherty",
        "email": "ddougherty@google.com",
        "time": "Thu Jan 28 17:50:10 2010 -0800"
      },
      "message": "SDK doc change: Increment the platform version var used in doc footer and elsewhere.\n\nBug: 2160782\nChange-Id: I6e7721bca95cdc6565f3200d7609a4ea9b45cf9b\n"
    },
    {
      "commit": "45948fd407da525e6c8721ba75cfc8b356fc7e0f",
      "tree": "d19548f799589917419eca873adf6fefbeb6e712",
      "parents": [
        "8ea25cc1a104bfc95d5742a8c0ab582c7812ee74"
      ],
      "author": {
        "name": "Patrick Scott",
        "email": "phanna@android.com",
        "time": "Thu Jan 14 15:11:42 2010 -0500"
      },
      "committer": {
        "name": "Patrick Scott",
        "email": "phanna@android.com",
        "time": "Thu Jan 28 08:27:42 2010 -0500"
      },
      "message": "First pass at the url rendering service.\n\nThe service renders a list of urls at the given dimension and invokes the\ncallback interface for each result. A ParcelFileDescriptor is used to transfer\nthe large image data to the client. The client must close the file descriptor\nis order free the underlying resources.\n\nA more robust api will use UrlRendererRequest and UrlRendererResponse objects\nto transfer data.\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": "c028be4f3b8c7476b46859f66c3f33d528adf181",
      "tree": "8a740e6207e958572706a636fcb92425dbf13a6e",
      "parents": [
        "aeb4126736c1b93abe5252e1723c568a13da7c81"
      ],
      "author": {
        "name": "Suchi Amalapurapu",
        "email": "asuchitra@google.com",
        "time": "Mon Jan 25 12:19:12 2010 -0800"
      },
      "committer": {
        "name": "Suchi Amalapurapu",
        "email": "asuchitra@google.com",
        "time": "Wed Jan 27 10:26:43 2010 -0800"
      },
      "message": "AppsOnSd feature - Add default container\n\nAdd new remote interface to do temporary copies. The new\nremote stub handling is done on mHandler thread and doesn\u0027t need locking\nfor now.\nAdd new InstallArgs class and subclasses to isolate cases for installation.\nMove resource deletion for failed installs/upgrades to later on in installation\ncycle.\nFix code path for forward locked apps when using scanPackageLI\n\nTODO\u0027s\nFix installation paths to completely use InstallArgs based design later on.\nGet rid of using flags in various install/uninstall code paths.\nIdeally InstallArgs should be created using these flags and used in the\nrest of the code.\nFunction renames.\nRevisit mount api\u0027s.\n"
    },
    {
      "commit": "4d02d001ef6e06583e858e63e48d1aebf54ba28d",
      "tree": "62bc259feafbea7df30d695e0e00cff9dc0623de",
      "parents": [
        "55434a7999222d89205f32efb03da7e70dd74073"
      ],
      "author": {
        "name": "San Mehat",
        "email": "san@google.com",
        "time": "Fri Jan 22 16:07:46 2010 -0800"
      },
      "committer": {
        "name": "San Mehat",
        "email": "san@google.com",
        "time": "Fri Jan 22 16:10:29 2010 -0800"
      },
      "message": "NetworkManagementService: Introduce INetworkManagementEventObserver\n\n  Introduce a callback event observer which can be registered on the\nINetworkManagementService instance to receive events from the service.\n\nSigned-off-by: San Mehat \u003csan@google.com\u003e\n"
    },
    {
      "commit": "873f2145941cc28f6931dc18b5e9987bd22e2e19",
      "tree": "4793e2bca832a46a0d77eb3ce8072502f4c02661",
      "parents": [
        "97d1195832829905b07b7680b73bed8af959f430"
      ],
      "author": {
        "name": "San Mehat",
        "email": "san@google.com",
        "time": "Thu Jan 14 10:25:07 2010 -0800"
      },
      "committer": {
        "name": "San Mehat",
        "email": "san@google.com",
        "time": "Tue Jan 19 10:47:52 2010 -0800"
      },
      "message": "framework: Introduce INetworkManagementService for communicating with netd\n\nThis is the framework-exposed interface for the (future) management of\nall Android network management functions. Initial support is for providing\ntethering.\n\nUpdated: Integrate feedback from review; clean up naming\n\nUpdated: Switch from add/remove/list to get/set for DNS forwarders\n         - allows prioritization / ordering of DNS servers\n\nUpdated: Refactor NAT api\n\nUpdated: Refactor NAT api (last time sorry)\n\nSigned-off-by: San Mehat \u003csan@google.com\u003e\n"
    },
    {
      "commit": "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": "9cebb377c57f3231dbdf278678596871abcef2b8",
      "tree": "80897795e03517c0c970320d2d9c99eabd2e21b7",
      "parents": [
        "44641d3db3b5fd5c7616c8a646ec8b6af20baa18",
        "18dedf2cdfd2c78d93061f20c4269f00449a8e6a"
      ],
      "author": {
        "name": "Trevor Johns",
        "email": "trevorjohns@google.com",
        "time": "Mon Jan 11 14:08:15 2010 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Jan 11 14:08:15 2010 -0800"
      },
      "message": "am 18dedf2c: am 50a3977c: Merge \"Adding BusinessCard sample to Android.mk and to the Resources TOC on developer.android.com.\" into eclair\n\nMerge commit \u002718dedf2cdfd2c78d93061f20c4269f00449a8e6a\u0027\n\n* commit \u002718dedf2cdfd2c78d93061f20c4269f00449a8e6a\u0027:\n  Adding BusinessCard sample to Android.mk and to the Resources TOC on developer.android.com.\n"
    },
    {
      "commit": "44641d3db3b5fd5c7616c8a646ec8b6af20baa18",
      "tree": "9fce984ff8e1b73f149cccb92ba57932c2241ba2",
      "parents": [
        "88098683b0a958d205d1c3c6252eeebc144fad62"
      ],
      "author": {
        "name": "Paul Westbrook",
        "email": "pwestbro@google.com",
        "time": "Fri Jan 08 16:10:58 2010 -0800"
      },
      "committer": {
        "name": "Paul Westbrook",
        "email": "pwestbro@google.com",
        "time": "Mon Jan 11 14:00:35 2010 -0800"
      },
      "message": "Bug 2321983\n\nMove SYNC_DETAILS from framework/base to the gsf clientlib\n"
    },
    {
      "commit": "2187e240c0875c724de30407dfa1e32abd2c6bb1",
      "tree": "497b79f3606649708b3906e3e181c470fcc92e0b",
      "parents": [
        "063d03ed0882582840c7db610635aa89c1a01eec"
      ],
      "author": {
        "name": "Trevor Johns",
        "email": "trevorjohns@google.com",
        "time": "Thu Jan 07 16:26:39 2010 -0800"
      },
      "committer": {
        "name": "Trevor Johns",
        "email": "trevorjohns@google.com",
        "time": "Mon Jan 11 11:56:27 2010 -0800"
      },
      "message": "Adding BusinessCard sample to Android.mk and to the Resources TOC on developer.android.com.\n"
    },
    {
      "commit": "3ea664640d0dd08cf89fd38f7aa00756651f4830",
      "tree": "4804ba69c45b9293ce9104e1cb0dea5c1917e42b",
      "parents": [
        "45ad2a07509b6372b7337c3ef160cd6c4bb617e8",
        "aaab0b64e53db6e174236b022526a5f207b28570"
      ],
      "author": {
        "name": "Scott Main",
        "email": "smain@google.com",
        "time": "Wed Dec 16 21:53:28 2009 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Dec 16 21:53:28 2009 -0800"
      },
      "message": "am aaab0b64: am f0cdfa99: add -since flag to droiddoc options for 7.xml, to apply api filtering to the reference\n\nMerge commit \u0027aaab0b64e53db6e174236b022526a5f207b28570\u0027\n\n* commit \u0027aaab0b64e53db6e174236b022526a5f207b28570\u0027:\n  add -since flag to droiddoc options for 7.xml,\n"
    },
    {
      "commit": "f0cdfa9955725c99cd4df6b933e4cb732847ebd1",
      "tree": "7670bd264ed922b384277ad93f26e2706f162b62",
      "parents": [
        "26099cd9ce44ef26ab3c9b342ec1a305c61b7a7c"
      ],
      "author": {
        "name": "Scott Main",
        "email": "smain@google.com",
        "time": "Wed Dec 16 21:41:10 2009 -0800"
      },
      "committer": {
        "name": "Scott Main",
        "email": "smain@google.com",
        "time": "Wed Dec 16 21:41:10 2009 -0800"
      },
      "message": "add -since flag to droiddoc options for 7.xml,\nto apply api filtering to the reference\n"
    },
    {
      "commit": "692bf86e67ef3bef98a64c1ad1c6f54b9f2020ae",
      "tree": "31c7dc2763581b69384912daec24c7e7c6a15f44",
      "parents": [
        "01dde47ea9dda6f869557931db5f64573b9ce73d",
        "479a49f74f77855825ba69b105c065422c24246a"
      ],
      "author": {
        "name": "Dirk Dougherty",
        "email": "ddougherty@google.com",
        "time": "Tue Dec 15 15:04:00 2009 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Dec 15 15:04:00 2009 -0800"
      },
      "message": "am 479a49f7: am 7585586c: Merge change Ib1eb2e9e into eclair\n\nMerge commit \u0027479a49f74f77855825ba69b105c065422c24246a\u0027\n\n* commit \u0027479a49f74f77855825ba69b105c065422c24246a\u0027:\n  sdk doc change for esr: Add \"resources\" tab content. Fix links pointing to the old locations. Change Android.mk to output samples files to resources/samples. Misc other fixes.\n"
    },
    {
      "commit": "22558d0be8210aee1a2ab64b374bb357d4123acd",
      "tree": "68e6a9df29fa6c86447366cdcd4e537dc0ba1389",
      "parents": [
        "54bb575e85d1e40efbfbb868f37553cdd8ed318f"
      ],
      "author": {
        "name": "Dirk Dougherty",
        "email": "ddougherty@google.com",
        "time": "Thu Dec 10 16:25:06 2009 -0800"
      },
      "committer": {
        "name": "Dirk Dougherty",
        "email": "ddougherty@google.com",
        "time": "Mon Dec 14 11:40:02 2009 -0800"
      },
      "message": "sdk doc change for esr: Add \"resources\" tab content. Fix links pointing to the old locations. Change Android.mk to output samples files to resources/samples. Misc other fixes.\n\nBug: 2160782\nChange-Id: Ib1eb2e9e3fe3a7b2ad16387dbf888646a1195221\n"
    },
    {
      "commit": "e7c1b11ec892fbb1eb053f9aa4f6839031b19c1c",
      "tree": "61acad8ad31b89a8f1396ddcf6b8d665ddfa6987",
      "parents": [
        "8091424ea332f754e6f1c712a9e28bfa7d02741e",
        "54bb575e85d1e40efbfbb868f37553cdd8ed318f"
      ],
      "author": {
        "name": "Ying Wang",
        "email": "wangying@google.com",
        "time": "Sun Dec 13 12:26:11 2009 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Sun Dec 13 12:26:11 2009 -0800"
      },
      "message": "am 54bb575e: am 6f95f461: Fix the dependencies to make online-sdk-docs.\n\nMerge commit \u002754bb575e85d1e40efbfbb868f37553cdd8ed318f\u0027 into eclair-mr2\n\n* commit \u002754bb575e85d1e40efbfbb868f37553cdd8ed318f\u0027:\n  Fix the dependencies to make online-sdk-docs.\n"
    },
    {
      "commit": "54bb575e85d1e40efbfbb868f37553cdd8ed318f",
      "tree": "3136d15e04c21ae6a3fb18aee9c1808dd6e79afb",
      "parents": [
        "9b52a2184e99565bcd7f77effb321c95a2a4837e",
        "6f95f461098d5b9e93212cf9cc7c7a6498eecf3a"
      ],
      "author": {
        "name": "Ying Wang",
        "email": "wangying@google.com",
        "time": "Sat Dec 12 15:38:29 2009 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Sat Dec 12 15:38:29 2009 -0800"
      },
      "message": "am 6f95f461: Fix the dependencies to make online-sdk-docs.\n\nMerge commit \u00276f95f461098d5b9e93212cf9cc7c7a6498eecf3a\u0027 into eclair\n\n* commit \u00276f95f461098d5b9e93212cf9cc7c7a6498eecf3a\u0027:\n  Fix the dependencies to make online-sdk-docs.\n"
    },
    {
      "commit": "05bbeb356286bfb6ddc26ac546cce03334e346dd",
      "tree": "467fac43439cb51a094df2ebcac20a6b53d99752",
      "parents": [
        "024726391ad1536c5fa4af3f786141e200efed54",
        "7eb6ec1f44ade4c7bf3d23cbcfe29a17bbd940b1"
      ],
      "author": {
        "name": "Roman Nurik",
        "email": "romannurik@google.com",
        "time": "Thu Dec 10 19:48:47 2009 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Dec 10 19:48:47 2009 -0800"
      },
      "message": "am 7eb6ec1f: Merge change I18305fec into eclair\n\nMerge commit \u00277eb6ec1f44ade4c7bf3d23cbcfe29a17bbd940b1\u0027 into eclair-mr2\n\n* commit \u00277eb6ec1f44ade4c7bf3d23cbcfe29a17bbd940b1\u0027:\n  Add ContactManager, MultiResolution, Wiktionary, and WiktionarySimple to samples index. Also add latest samples zip file.\n"
    },
    {
      "commit": "6f95f461098d5b9e93212cf9cc7c7a6498eecf3a",
      "tree": "f2cec9021ae7225294b98d137f6f9e405738d0d0",
      "parents": [
        "5e7f1fbe161d7015dde6e893351238749f906c8a"
      ],
      "author": {
        "name": "Ying Wang",
        "email": "wangying@google.com",
        "time": "Thu Dec 10 17:08:14 2009 -0800"
      },
      "committer": {
        "name": "Ying Wang",
        "email": "wangying@google.com",
        "time": "Thu Dec 10 17:08:14 2009 -0800"
      },
      "message": "Fix the dependencies to make online-sdk-docs.\n\nWithout the framework library, \u0027make online-sdk-docs\u0027 can not find symbols\n in the framework library.\n"
    },
    {
      "commit": "0e71bdc6acd581d653062dd15a9b772eaee10231",
      "tree": "a5949e2fa0e5d0c829352b43ae192432d954596d",
      "parents": [
        "b9b45a5e26ed020a39a507a173d9f29e336cf989"
      ],
      "author": {
        "name": "Roman Nurik",
        "email": "romannurik@google.com",
        "time": "Thu Dec 10 09:42:51 2009 -0800"
      },
      "committer": {
        "name": "Roman Nurik",
        "email": "romannurik@google.com",
        "time": "Thu Dec 10 11:45:33 2009 -0800"
      },
      "message": "Add ContactManager, MultiResolution, Wiktionary, and WiktionarySimple to samples index. Also add latest samples zip file.\n"
    },
    {
      "commit": "45e6dbf90b24543c90f8c6b0426e9b70c934838d",
      "tree": "645dece47051095766ea132e60eb4926974bfa77",
      "parents": [
        "c7f7c94034ea0708161af9f718678c70b13c9a8d"
      ],
      "author": {
        "name": "Doug Zongker",
        "email": "dougz@android.com",
        "time": "Tue Dec 08 12:47:12 2009 -0800"
      },
      "committer": {
        "name": "Doug Zongker",
        "email": "dougz@android.com",
        "time": "Wed Dec 09 13:30:07 2009 -0800"
      },
      "message": "move event log tags used by SyncAdapter into a local .logtags file\n"
    },
    {
      "commit": "e08361d7fda2234f447f4ffb7f480d045f8c5f78",
      "tree": "856edc394c1f01dda2a5c4407684745e778a8ea1",
      "parents": [
        "8d670d345893fb9b9566f6b8c20202b77d4d211a",
        "5d0806c9c3e0e6c8673ac4238f8ec2e0f82ad7e6"
      ],
      "author": {
        "name": "Scott Main",
        "email": "smain@google.com",
        "time": "Thu Dec 03 16:13:19 2009 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Dec 03 16:13:19 2009 -0800"
      },
      "message": "am 5d0806c9: Merge change Ia70bd8c4 into eclair\n\nMerge commit \u00275d0806c9c3e0e6c8673ac4238f8ec2e0f82ad7e6\u0027 into eclair-mr2\n\n* commit \u00275d0806c9c3e0e6c8673ac4238f8ec2e0f82ad7e6\u0027:\n  add BluetoothChat sample app to the dev guide\n"
    },
    {
      "commit": "14a704295ffd4a530364ad37976bebd4f287cadf",
      "tree": "37a84b862405a3a277c7150f211b15afc92d809c",
      "parents": [
        "9fb53a9cb91ffd807ac0f4ca145b3e508ac66111"
      ],
      "author": {
        "name": "Scott Main",
        "email": "smain@google.com",
        "time": "Wed Dec 02 15:42:30 2009 -0800"
      },
      "committer": {
        "name": "Scott Main",
        "email": "smain@google.com",
        "time": "Thu Dec 03 15:42:50 2009 -0800"
      },
      "message": "add BluetoothChat sample app to the dev guide\n"
    },
    {
      "commit": "3a32213c4029a03fe39486f3d6ebd0ea18928ee1",
      "tree": "261ab976911438a818b190771e49cd649d72de2f",
      "parents": [
        "f90b1261a53bc0bfc772337551eb4c540022cd22"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Tue Nov 24 00:30:52 2009 -0500"
      },
      "committer": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Wed Nov 25 12:54:58 2009 -0500"
      },
      "message": "Remove HardwareService and move vibrator support to VibratorService.\n\nThe lights support is only needed by PowerManagerService and NotificationManagerService, so we do not need a Binder API for it.\nMove backlight and notification light support to new LightsService class.\nThe camera flash is now handled directly by the camera HAL, so the flash Hardware service flash support is obsolete.\n\nChange-Id: I086d681f54668e7f7de3e8b90df3de19d59833c5\nSigned-off-by: Mike Lockwood \u003clockwood@android.com\u003e\n"
    },
    {
      "commit": "2464acc6da6393f0163894094468f68b8e496cea",
      "tree": "c20762f1c00066b974b719c8361cce85f17a81c7",
      "parents": [
        "82d4b5ccaf5518ed9286d89e60ac9a595239ac35"
      ],
      "author": {
        "name": "Fred Quintana",
        "email": "fredq@google.com",
        "time": "Tue Nov 24 09:47:01 2009 -0800"
      },
      "committer": {
        "name": "Fred Quintana",
        "email": "fredq@google.com",
        "time": "Tue Nov 24 10:42:00 2009 -0800"
      },
      "message": "moved the gdata library to vendor/google\n"
    },
    {
      "commit": "e0030418fd4b9a9a2d0422a5538a76ca6b40710c",
      "tree": "dd8d08001d1e06896ff3ee1b25a2200c226a0578",
      "parents": [
        "b2796da2ed4d0ef3bd94e187156c3d21e7e2a07f",
        "bca9f1bbb31cf05ba17af049a5ea37f57981f00e"
      ],
      "author": {
        "name": "Dirk Dougherty",
        "email": "ddougherty@google.com",
        "time": "Mon Nov 23 13:55:50 2009 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Nov 23 13:55:50 2009 -0800"
      },
      "message": "am bca9f1bb: sdk doc change for esr: updates for android 1.6 r2, tools r4, api levels.\n\nMerge commit \u0027bca9f1bbb31cf05ba17af049a5ea37f57981f00e\u0027 into eclair-mr2\n\n* commit \u0027bca9f1bbb31cf05ba17af049a5ea37f57981f00e\u0027:\n  sdk doc change for esr: updates for android 1.6 r2, tools r4, api levels.\n"
    },
    {
      "commit": "bca9f1bbb31cf05ba17af049a5ea37f57981f00e",
      "tree": "fb6ee0185759c2290e02862d4eb2250b531d7dc7",
      "parents": [
        "0d631b9b58db54bee58da717b38b8020bc3d0437"
      ],
      "author": {
        "name": "Dirk Dougherty",
        "email": "ddougherty@google.com",
        "time": "Wed Nov 18 23:06:16 2009 -0800"
      },
      "committer": {
        "name": "Dirk Dougherty",
        "email": "ddougherty@google.com",
        "time": "Mon Nov 23 13:23:46 2009 -0800"
      },
      "message": "sdk doc change for esr: updates for android 1.6 r2, tools r4, api levels.\n\nBug: 2160782\nChange-Id: Ia576dc9b2312d89bbe194d94640c3cc79216067b\n"
    },
    {
      "commit": "98c11248becafa61d29aea8a7e10adf418a6c197",
      "tree": "1218affe09d77495e5f67d649e53746e1148f4fa",
      "parents": [
        "e5683369d2f3cbda3e6c09c66b4d6df77c9b3c0a",
        "3fa1cb059e76d8b83634a4117a7b2ceca438ae7e"
      ],
      "author": {
        "name": "Scott Main",
        "email": "smain@google.com",
        "time": "Mon Nov 23 13:09:17 2009 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Nov 23 13:09:17 2009 -0800"
      },
      "message": "am 3fa1cb05: am 5e7f1fbe: Merge change Id2ee762d into eclair-sdk\n\nMerge commit \u00273fa1cb059e76d8b83634a4117a7b2ceca438ae7e\u0027 into eclair-mr2\n\n* commit \u00273fa1cb059e76d8b83634a4117a7b2ceca438ae7e\u0027:\n  droiddoc change: add flag to offline docs build to signal\n"
    },
    {
      "commit": "3fa1cb059e76d8b83634a4117a7b2ceca438ae7e",
      "tree": "51ae771553f35c9ce951e61d299d1cd763ef54f2",
      "parents": [
        "9854deae10aaf39999a95e440ee3dec939d47179",
        "5e7f1fbe161d7015dde6e893351238749f906c8a"
      ],
      "author": {
        "name": "Scott Main",
        "email": "smain@google.com",
        "time": "Mon Nov 23 13:04:27 2009 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Nov 23 13:04:27 2009 -0800"
      },
      "message": "am 5e7f1fbe: Merge change Id2ee762d into eclair-sdk\n\nMerge commit \u00275e7f1fbe161d7015dde6e893351238749f906c8a\u0027 into eclair\n\n* commit \u00275e7f1fbe161d7015dde6e893351238749f906c8a\u0027:\n  droiddoc change: add flag to offline docs build to signal\n"
    },
    {
      "commit": "021694657b1d9c77ced7f41ebef7af77d829fcbb",
      "tree": "88c796e3c9eee4a85d1d4f8030ad573ef55d11af",
      "parents": [
        "820a4e7dd6adeff162a92ca40ebe2f109561036b"
      ],
      "author": {
        "name": "Scott Main",
        "email": "smain@google.com",
        "time": "Fri Nov 20 10:44:21 2009 -0800"
      },
      "committer": {
        "name": "Scott Main",
        "email": "smain@google.com",
        "time": "Fri Nov 20 10:44:21 2009 -0800"
      },
      "message": "droiddoc change: add flag to offline docs build to signal\nthat we\u0027re building offline docs so that we do not generate\nall of the web pages for the sample apps source code.\n\nThis depends on change 33762 (sha I06c40454), meaning, this\nwill break the build without that.\n\nChange-Id: Id2ee762de13f23c3da15d55e763c1838b11ac31c\n"
    },
    {
      "commit": "0bbb68fe290e1c2e4b9c5722fc2dbbd29fc4e336",
      "tree": "ee9c07bc991cef868857b181223fe0ca047eee90",
      "parents": [
        "cb5966426a51aeb7d02e7f859512d20e084e03ed",
        "2a6a149fc2abfb8ef654ed36ce4524209f5e33bc"
      ],
      "author": {
        "name": "Scott Main",
        "email": "smain@google.com",
        "time": "Fri Nov 20 10:00:55 2009 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Nov 20 10:00:55 2009 -0800"
      },
      "message": "am 2a6a149f: am 820a4e7d: docs change for ESD: add samples html pages for offline docs\n\nMerge commit \u00272a6a149fc2abfb8ef654ed36ce4524209f5e33bc\u0027 into eclair-mr2\n\n* commit \u00272a6a149fc2abfb8ef654ed36ce4524209f5e33bc\u0027:\n  docs change for ESD: add samples html pages for offline docs\n"
    },
    {
      "commit": "2a6a149fc2abfb8ef654ed36ce4524209f5e33bc",
      "tree": "ee1ce3c60d37783f720a02109f9138f578f4958a",
      "parents": [
        "e16113998bb10f39ee1384bfc497aceeeb193440",
        "820a4e7dd6adeff162a92ca40ebe2f109561036b"
      ],
      "author": {
        "name": "Scott Main",
        "email": "smain@google.com",
        "time": "Fri Nov 20 09:54:52 2009 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Nov 20 09:54:52 2009 -0800"
      },
      "message": "am 820a4e7d: docs change for ESD: add samples html pages for offline docs\n\nMerge commit \u0027820a4e7dd6adeff162a92ca40ebe2f109561036b\u0027 into eclair\n\n* commit \u0027820a4e7dd6adeff162a92ca40ebe2f109561036b\u0027:\n  docs change for ESD: add samples html pages for offline docs\n"
    },
    {
      "commit": "820a4e7dd6adeff162a92ca40ebe2f109561036b",
      "tree": "ec68893b6828cb831e6aa14c7d06e636842d9acc",
      "parents": [
        "6d95fc0a2ca910212a43c4547c0ef000659b72dc"
      ],
      "author": {
        "name": "Scott Main",
        "email": "smain@google.com",
        "time": "Thu Nov 19 20:19:49 2009 -0800"
      },
      "committer": {
        "name": "Scott Main",
        "email": "smain@google.com",
        "time": "Thu Nov 19 20:31:57 2009 -0800"
      },
      "message": "docs change for ESD: add samples html pages for offline docs\n\nbug: 2160782\nChange-Id: I30fedc9e9b015ad035fa954ca0b1a19e846cca78\n"
    },
    {
      "commit": "cc342e33655dcb396f96d28732efe8f189c34253",
      "tree": "60ad57b7dd60d8d7c62e1e6d43881d810e6652ed",
      "parents": [
        "b9386ed929b72308cbfc68d2833a13aeda38f431"
      ],
      "author": {
        "name": "Dan Egnor",
        "email": "egnor@google.com",
        "time": "Wed Nov 18 14:41:14 2009 -0800"
      },
      "committer": {
        "name": "Dan Egnor",
        "email": "egnor@google.com",
        "time": "Wed Nov 18 15:08:18 2009 -0800"
      },
      "message": "Solve the mutual interdependency problem between common and framework:\nHave framework include the common source files directly when building,\nthen build common as a static library separately (depending on\nframework, like everything else).\n\nGoes with a companion change to build/core/pathmap.mk.\n"
    },
    {
      "commit": "ded0e6447ed6e0f200dbca13e43c6cf4efc16a1d",
      "tree": "a9fa405cf73e77232588e6e35b9485f6e7170d67",
      "parents": [
        "a4fa107f97933a81c42ee3cd9ca3984c08e5ab25"
      ],
      "author": {
        "name": "Dan Egnor",
        "email": "egnor@google.com",
        "time": "Wed Nov 18 11:23:45 2009 -0800"
      },
      "committer": {
        "name": "Dan Egnor",
        "email": "egnor@google.com",
        "time": "Wed Nov 18 12:05:04 2009 -0800"
      },
      "message": "Create android-common static library which gets included in frameworks.jar,\nbut can also be used by unbundled apps.  Move android.text.util.Regex there as\na starting example, renamed to a more sensible (?) com.android.common.Patterns.\nSet up a corresponding test package, and move RegexTest (to PatternsTest).\nUpdate clients.\n"
    },
    {
      "commit": "0629175f506f65d2d152eb4eb8ca58df14b6f8b1",
      "tree": "d02e48831e89c6a93709fb845ce7713d5be822c6",
      "parents": [
        "3d40df335e4c0df972720271a84277077f168f65"
      ],
      "author": {
        "name": "Dan Egnor",
        "email": "egnor@google.com",
        "time": "Tue Nov 17 21:06:45 2009 -0800"
      },
      "committer": {
        "name": "Dan Egnor",
        "email": "egnor@google.com",
        "time": "Tue Nov 17 21:06:45 2009 -0800"
      },
      "message": "Remove googleclient from the framework, and its classes from the preload list.\n"
    },
    {
      "commit": "613438086cb68a4e0f48ddd51238f3d9a054ac9d",
      "tree": "5207db36644458bf7059c00c0a7b07a10e21f15e",
      "parents": [
        "5da824210ee34f051c295c12f6bcc4b617da4a1a"
      ],
      "author": {
        "name": "Dan Egnor",
        "email": "egnor@google.com",
        "time": "Fri Nov 13 17:14:26 2009 -0800"
      },
      "committer": {
        "name": "Dan Egnor",
        "email": "egnor@google.com",
        "time": "Fri Nov 13 17:14:26 2009 -0800"
      },
      "message": "Remove external/protobuf from the build, now that it\u0027s\nbeen moved to vendor/google/libraries.\n"
    },
    {
      "commit": "f18a01c77e78209b74e34d05cfb352fa4a92db5f",
      "tree": "a4086ca63d93b972e60dbd1d17fcc00c1f181d9d",
      "parents": [
        "897a744bb7a95b2d3883004301b8e877cd5efc92"
      ],
      "author": {
        "name": "Dan Egnor",
        "email": "egnor@google.com",
        "time": "Thu Nov 12 11:32:50 2009 -0800"
      },
      "committer": {
        "name": "Dan Egnor",
        "email": "egnor@google.com",
        "time": "Thu Nov 12 13:58:27 2009 -0800"
      },
      "message": "Rename [I]DropBox[Service] to [I]DropBoxManager[Service].\n\nUn-hide the DropBoxManager interface, and update the public API accordingly.\n"
    },
    {
      "commit": "8cf6a2eacfe5c255049cbba53bbbfb01ec4a1d9d",
      "tree": "0daef2ec73313f34324243f367a2abc2a2d27de0",
      "parents": [
        "e772eb7af049b55c89241fae799569030c1f5570",
        "61b01632915181fcf725dc4933cad8c81e700115"
      ],
      "author": {
        "name": "Nick Pelly",
        "email": "npelly@google.com",
        "time": "Wed Nov 04 17:37:07 2009 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Nov 04 17:37:07 2009 -0800"
      },
      "message": "am 61b01632: Merge change I9490271c into eclair\n\nMerge commit \u002761b01632915181fcf725dc4933cad8c81e700115\u0027 into eclair-mr2\n\n* commit \u002761b01632915181fcf725dc4933cad8c81e700115\u0027:\n  Add BluetoothDevice to SDK AIDL list.\n"
    },
    {
      "commit": "459ba8639a8d1a9b0fb7ff4ada68bf1fe262eaaa",
      "tree": "e23756803026b59c4cd0bb191fae76a3f092cebb",
      "parents": [
        "7ed0ceeba54712f76e9a4f2dd4c9197d76813488"
      ],
      "author": {
        "name": "Nick Pelly",
        "email": "npelly@google.com",
        "time": "Wed Nov 04 17:23:55 2009 -0800"
      },
      "committer": {
        "name": "Nick Pelly",
        "email": "npelly@google.com",
        "time": "Wed Nov 04 17:24:46 2009 -0800"
      },
      "message": "Add BluetoothDevice to SDK AIDL list.\n\nBug: 2216702\nChange-Id: I9490271ce4be465d5b3acc5e530feaf6e2fa3f57\n"
    },
    {
      "commit": "b9cc041eb0ec10a75973025cacd9a3316090a13d",
      "tree": "51b5962b28b074991876bba249048c3d8f752cff",
      "parents": [
        "671c61d66f8d556f206d167d0f3c3bbe037ed86b"
      ],
      "author": {
        "name": "Ying Wang",
        "email": "wangying@google.com",
        "time": "Tue Oct 27 11:00:30 2009 -0700"
      },
      "committer": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Wed Nov 04 16:04:26 2009 -0800"
      },
      "message": "Explicitly specify that online-sdk depends on framework-res. (do not merge)\n\nthis is integrated from Eclair to fix the mac build breakages.\n"
    },
    {
      "commit": "102767cd3be39fd3865be02421fd1763f3ff33d5",
      "tree": "c1151063f14372fba3a8b4bf748553deae6056c1",
      "parents": [
        "0b12dc3acaa5e6b2b0ac05374faf65a7e212ae4f",
        "d85c4b346fe8e335a979b8bbfd2767eae91aca35"
      ],
      "author": {
        "name": "Ying Wang",
        "email": "wangying@google.com",
        "time": "Thu Oct 29 01:23:58 2009 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Oct 29 01:23:58 2009 -0700"
      },
      "message": "am d85c4b34: Merge change Idb328ab7 into eclair\n\nMerge commit \u0027d85c4b346fe8e335a979b8bbfd2767eae91aca35\u0027 into eclair-mr2\n\n* commit \u0027d85c4b346fe8e335a979b8bbfd2767eae91aca35\u0027:\n  Explicitly specify that online-sdk depends on framework-res.\n"
    },
    {
      "commit": "952402704a175ba27f6c89dff1ada634c5ce5626",
      "tree": "1be9899a913321a19e8b23b7c1badb35adf50be0",
      "parents": [
        "10d32a338d5400786e784a0d6f51b53acea76b44"
      ],
      "author": {
        "name": "Dan Egnor",
        "email": "egnor@google.com",
        "time": "Tue Oct 27 18:23:39 2009 -0700"
      },
      "committer": {
        "name": "Dan Egnor",
        "email": "egnor@google.com",
        "time": "Wed Oct 28 15:49:11 2009 -0700"
      },
      "message": "Instead of a raw AIDL interface, give DropBox a Java\ninterface (android.os.DropBox); move the Binder interface\nbehind the scenes.  Make DropBoxEntry into DropBox.Entry.\nMake it possible to get a dropbox from an (Application)Context\nwith the usual getSystemService(DROPBOX_SERVICE) type thing.\nUpdate the tests accordingly.\n"
    },
    {
      "commit": "db328ab7d47931a6433a778314bc7adbbfb96c8f",
      "tree": "193cdb52ee7de49ff635f5e4b951e17b5cbf17b2",
      "parents": [
        "54620b1a77e51b3fa531dbd099bd69c39d7d0029"
      ],
      "author": {
        "name": "Ying Wang",
        "email": "wangying@google.com",
        "time": "Tue Oct 27 11:00:30 2009 -0700"
      },
      "committer": {
        "name": "Ying Wang",
        "email": "wangying@google.com",
        "time": "Tue Oct 27 11:00:30 2009 -0700"
      },
      "message": "Explicitly specify that online-sdk depends on framework-res.\n"
    },
    {
      "commit": "f0d9c0000858f3e48bcd1efec75f2dff1cbc6ed5",
      "tree": "e4dd6c61a36f7b69f6e0993e4cbbf14bb5239ee2",
      "parents": [
        "f3971747506ca9055e7b5c42a809ac12f8c26ad3",
        "86dc4d312216be0b4c2847a1e79d94efaf4b9559"
      ],
      "author": {
        "name": "Dirk Dougherty",
        "email": "ddougherty@google.com",
        "time": "Thu Oct 22 18:30:17 2009 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Oct 22 18:30:17 2009 -0700"
      },
      "message": "am 86dc4d31: am 61c29c29: Merge change Ieeb0b251 into eclair-sdk\n\nMerge commit \u002786dc4d312216be0b4c2847a1e79d94efaf4b9559\u0027 into eclair-mr2\n\n* commit \u002786dc4d312216be0b4c2847a1e79d94efaf4b9559\u0027:\n  doc change: incorporate comments on SDK docs and structure.\n"
    },
    {
      "commit": "eeb0b2514a8b4f175a9ef16a319437a61aedb8f3",
      "tree": "4713456d023c8e28e3ac8e0c0c932828dcd33683",
      "parents": [
        "ee58d1bf9c54eaed623c4419e1d9db269a9c4137"
      ],
      "author": {
        "name": "Dirk Dougherty",
        "email": "ddougherty@google.com",
        "time": "Thu Oct 22 16:08:32 2009 -0700"
      },
      "committer": {
        "name": "Dirk Dougherty",
        "email": "ddougherty@google.com",
        "time": "Thu Oct 22 17:35:02 2009 -0700"
      },
      "message": "doc change: incorporate comments on SDK docs and structure.\n\nBug: 2160782\n"
    },
    {
      "commit": "96f225afad61ee701dd84348e380a40ff8900fc0",
      "tree": "961a0ce43cb480c34a9065aa8bebc4c4ba69a851",
      "parents": [
        "207fadf6e7e99004ecfa4831e71ebcac9ecaa693",
        "4f82394af6486e1725ae6b6dd3b0334dcfc52747"
      ],
      "author": {
        "name": "Dirk Dougherty",
        "email": "ddougherty@google.com",
        "time": "Thu Oct 22 13:31:25 2009 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Oct 22 13:31:25 2009 -0700"
      },
      "message": "am 4f82394a: am ee58d1bf: doc change: Add docs for SDK. Support new modular structure. In Android.mk, change @since level identifier to 5.xml, expose adt downloadable vars. Fix links that pointed to @sdkCurrent.\n\nMerge commit \u00274f82394af6486e1725ae6b6dd3b0334dcfc52747\u0027 into eclair-mr2\n\n* commit \u00274f82394af6486e1725ae6b6dd3b0334dcfc52747\u0027:\n  doc change: Add docs for SDK. Support new modular structure. In Android.mk, change @since level identifier to 5.xml, expose adt downloadable vars. Fix links that pointed to @sdkCurrent.\n"
    },
    {
      "commit": "ee58d1bf9c54eaed623c4419e1d9db269a9c4137",
      "tree": "76dd7cec7266833966dfdd9d305790a0f6f224c2",
      "parents": [
        "6797b9fa06b4c86b92da117a7f84277f7a380820"
      ],
      "author": {
        "name": "Dirk Dougherty",
        "email": "ddougherty@google.com",
        "time": "Fri Oct 16 15:25:15 2009 -0700"
      },
      "committer": {
        "name": "Dirk Dougherty",
        "email": "ddougherty@google.com",
        "time": "Thu Oct 22 00:59:47 2009 -0700"
      },
      "message": "doc change: Add docs for SDK. Support new modular structure. In Android.mk, change @since level identifier to 5.xml, expose adt downloadable vars. Fix links that pointed to @sdkCurrent.\n\nChange-Id:I368345755dd753b1056fb06ff25e4b32f3020e4d\nBug:2160782\n"
    },
    {
      "commit": "f18b9311e8a6c4b05574727ae117338a9c341a1b",
      "tree": "44198b24f5e853903cd22e8e25b4e0056ef97735",
      "parents": [
        "e54ebd8c4f589a0a4a257a8d79b288dda67f3f8c",
        "30a6657ec6051ba5a1c72a714c9dc535dff127a4"
      ],
      "author": {
        "name": "Scott Main",
        "email": "smain@google.com",
        "time": "Wed Oct 14 18:02:32 2009 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Oct 14 18:02:32 2009 -0700"
      },
      "message": "am 30a6657e: Merge change Ic9b31801 into eclair\n\nMerge commit \u002730a6657ec6051ba5a1c72a714c9dc535dff127a4\u0027 into eclair-mr2\n\n* commit \u002730a6657ec6051ba5a1c72a714c9dc535dff127a4\u0027:\n  docs: setup new SDK documentation for 2.0 and change sdk build version to 2.0...\n"
    },
    {
      "commit": "efd83af0a7f1041f22567c1ef8135e9b13bb77cb",
      "tree": "c10b6b007d96f43484d28532394734540de75cdc",
      "parents": [
        "8c471d1def1027d025528b419cc8a1cdb68a4489"
      ],
      "author": {
        "name": "Scott Main",
        "email": "smain@google.com",
        "time": "Wed Oct 14 09:11:41 2009 -0700"
      },
      "committer": {
        "name": "Scott Main",
        "email": "smain@google.com",
        "time": "Wed Oct 14 17:44:13 2009 -0700"
      },
      "message": "docs: setup new SDK documentation for 2.0 and change sdk build version to 2.0...\nmove upgrading doc into a new guide for \"updating\" with\nthe new manager tools and remove the previous updating doc\nfrom the dev guide. set up preliminary download page and guide\nfor installing the full SDK. add the requirements doc in sdk/\nfor all general purposes. revise the download \u0027thank you\u0027\nmessage.\n\nbug: 2160782\n"
    },
    {
      "commit": "4410ec8f7cec6ab05a8c24c04fe2d5ed5d1e18df",
      "tree": "a70b2976839648cd331ec50af5fd997a09623927",
      "parents": [
        "332c793432be71d40473fed803123165c57197cd"
      ],
      "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 17:36:19 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"
    }
  ],
  "next": "151dfac555c95d892fa30eb6804da21b491dac28"
}
