)]}'
{
  "log": [
    {
      "commit": "2c4eabced0971d3b6b5e76dd925afcb0a7f59f1c",
      "tree": "71c650f965bf715a5d9b0819fba84d8957606958",
      "parents": [
        "8d5986549cc99431c091a77d659125ab2d3b1d8b",
        "b934db7e3e6d4c3963d2a4a5c00cfb0c3ffbfce4"
      ],
      "author": {
        "name": "Fabrice Di Meglio",
        "email": "fdimeglio@google.com",
        "time": "Fri Mar 23 11:12:29 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Mar 23 11:12:29 2012 -0700"
      },
      "message": "Merge \"Reduce memory footprint for View (part 2)\""
    },
    {
      "commit": "b934db7e3e6d4c3963d2a4a5c00cfb0c3ffbfce4",
      "tree": "99846b05ca1e6ebeacab54c4e2c2186069838d4a",
      "parents": [
        "edc1e59b34c7f813ad197545b1d846e3a99a6831"
      ],
      "author": {
        "name": "Fabrice Di Meglio",
        "email": "fdimeglio@google.com",
        "time": "Tue Mar 20 14:33:01 2012 -0700"
      },
      "committer": {
        "name": "Fabrice Di Meglio",
        "email": "fdimeglio@google.com",
        "time": "Thu Mar 22 13:40:29 2012 -0700"
      },
      "message": "Reduce memory footprint for View (part 2)\n\n- make textDirection use private bits field\n- update layoutDirection usage of private bits\n\nChange-Id: Ib9f4da58dbb74f410fb9d3be3c26ef02579aaf1d\n"
    },
    {
      "commit": "a0a938cd5f6eaed449678a00420916cde711de63",
      "tree": "e173cf197ef0ae83fe3f4639015b922659f08b70",
      "parents": [
        "2d0087246732bbac41573ee0204ad61b1127074b"
      ],
      "author": {
        "name": "Daniel Sandler",
        "email": "dsandler@android.com",
        "time": "Thu Mar 15 08:42:37 2012 -0400"
      },
      "committer": {
        "name": "Daniel Sandler",
        "email": "dsandler@android.com",
        "time": "Wed Mar 21 22:13:30 2012 -0400"
      },
      "message": "Notification actions API.\n\nActions will be attached to the Notification object and also\nused to inject additional tap targets in the default\ntemplate used by Builder.\n\nChange-Id: Idd58686b9c44b2ca7bb9ec5aa8337f3bdce5b878\n"
    },
    {
      "commit": "2d0087246732bbac41573ee0204ad61b1127074b",
      "tree": "ee8b5c1cc580bc6045d08523b8016f11592b6306",
      "parents": [
        "3004cc50f22e724efb791aa80e9d6c566d2ddb5d",
        "e67ca420e4eb6ddf8ceefeb0d9dcc47d9ca189fc"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Wed Mar 21 18:30:50 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Mar 21 18:30:50 2012 -0700"
      },
      "message": "Merge \"Throw if WAL enabled/disabled when connections are in use.\""
    },
    {
      "commit": "e67ca420e4eb6ddf8ceefeb0d9dcc47d9ca189fc",
      "tree": "d8d0206806fc245148ac7cf12ad3c8f7312f1d09",
      "parents": [
        "3e6792232aa0ce3e650eaa03529c9eb2fe023ca9"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Wed Mar 21 17:24:05 2012 -0700"
      },
      "committer": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Wed Mar 21 18:08:09 2012 -0700"
      },
      "message": "Throw if WAL enabled/disabled when connections are in use.\n\nChanging WAL mode requires obtaining an exclusive lock on the\ndatabase and can only be done when there are NO other active\ndatabase connections.\n\nCheck that this is really the case, and bail with a useful\nerror message if an application attempts to change WAL mode while\ntransactions are in progress.\n\nExpose disableWriteAheadLogging() in the API.\n\nChange-Id: I87599de3b88c53dcd75677aefd72e40de216c2c1\n"
    },
    {
      "commit": "3004cc50f22e724efb791aa80e9d6c566d2ddb5d",
      "tree": "311b234a53e48edc9e87ed7475da6bfceaeee6a6",
      "parents": [
        "ef08c1cd919ada0b4cd0c6ef0ade509d32f100b0"
      ],
      "author": {
        "name": "Adam Powell",
        "email": "adamp@google.com",
        "time": "Wed Mar 21 17:50:51 2012 -0700"
      },
      "committer": {
        "name": "Adam Powell",
        "email": "adamp@google.com",
        "time": "Wed Mar 21 17:51:30 2012 -0700"
      },
      "message": "Add SeekBar property accessors to match available style attributes\n\nBug 6103624\n\nChange-Id: I7bc863250f3b156cf6663e484baab2c35a949db5\n"
    },
    {
      "commit": "0b7413d5d6239b7bc43816bea5187b323a633b11",
      "tree": "9abeaff9af48b451d9124979b6871485ddeabca6",
      "parents": [
        "63b9e973e53476db36eb9cb9f14f0e5c0805d0bd"
      ],
      "author": {
        "name": "Adam Powell",
        "email": "adamp@google.com",
        "time": "Wed Mar 21 14:51:41 2012 -0700"
      },
      "committer": {
        "name": "Adam Powell",
        "email": "adamp@google.com",
        "time": "Wed Mar 21 15:35:39 2012 -0700"
      },
      "message": "GridView attribute updates\n\nBring GridView\u0027s API in sync with its supported style attributes.\n\nBug 6103758\n\nChange-Id: Ib2c4d4d48061d23a7d886364965f0cb50c239e5d\n"
    },
    {
      "commit": "eb0b1da78ff44a9b38f93fad06af2d397e68c756",
      "tree": "b275902fadf0ee5068162a4cb59f5e055873fbf5",
      "parents": [
        "6077fc9b7f22e2eb7199167e26bccc8f97957f60",
        "d11e6151fe88314505fa7adca6278de2e772b11c"
      ],
      "author": {
        "name": "Svetoslav Ganov",
        "email": "svetoslavganov@google.com",
        "time": "Tue Mar 20 12:14:37 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Mar 20 12:14:37 2012 -0700"
      },
      "message": "Merge \"Revamp of the NumberPicker widget.\""
    },
    {
      "commit": "d11e6151fe88314505fa7adca6278de2e772b11c",
      "tree": "50945111fae50395bf43905c78abac02751b10c5",
      "parents": [
        "80a6b33be276eb6c808fce13debb4bb7a489cdad"
      ],
      "author": {
        "name": "Svetoslav Ganov",
        "email": "svetoslavganov@google.com",
        "time": "Tue Mar 20 12:13:02 2012 -0700"
      },
      "committer": {
        "name": "Svetoslav Ganov",
        "email": "svetoslavganov@google.com",
        "time": "Tue Mar 20 12:13:06 2012 -0700"
      },
      "message": "Revamp of the NumberPicker widget.\n\n1. The number picker no longer shows up and down arrows, it\n   has only three touch targets which are the currently selected number\n   in the middle with a lesser one above and greater below, now what\n   you touch is what you get, flingability and long press are still\n   supported.\n\n2. Removed the restriction for a View with an AccessibilityNodeProvider\n   to not have any concrete children. If the View has a provider, then\n   this provider is responsible for creating the AccessibilityNodeInfos\n   for all its descendants, concrete and virtual. The number picker is\n   a good example for such a case - it has a concrete input view and\n   two virtual buttons as its children. This is a safe change since\n   this behavior has not been released.\n\n3. This patch also fixes bug where the number picker is stretched too\n   much in the Theme theme.\n\nbug:6177794\nbug:5728294\n\nChange-Id: I5fb370fe0b864a156f5f2aaf2de5f55f6b6d4e84\n"
    },
    {
      "commit": "6077fc9b7f22e2eb7199167e26bccc8f97957f60",
      "tree": "ce619034e28fae3ec2d9d6983c943e4a459d9c11",
      "parents": [
        "8fca15f1f2273fa429e58f783d0970251d0942e5",
        "edc1e59b34c7f813ad197545b1d846e3a99a6831"
      ],
      "author": {
        "name": "Fabrice Di Meglio",
        "email": "fdimeglio@google.com",
        "time": "Tue Mar 20 11:48:50 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Mar 20 11:48:50 2012 -0700"
      },
      "message": "Merge \"Reduce memory footprint for View\""
    },
    {
      "commit": "edc1e59b34c7f813ad197545b1d846e3a99a6831",
      "tree": "60f6495ea0f36fe040966ac8c2077530aed21f3b",
      "parents": [
        "05f692e8050c3650ec123b2361143a121e2e7d4b"
      ],
      "author": {
        "name": "Fabrice Di Meglio",
        "email": "fdimeglio@google.com",
        "time": "Thu Mar 15 17:28:47 2012 -0700"
      },
      "committer": {
        "name": "Fabrice Di Meglio",
        "email": "fdimeglio@google.com",
        "time": "Tue Mar 20 11:45:36 2012 -0700"
      },
      "message": "Reduce memory footprint for View\n\n- make layout direction use private bit fields\n- fix also some Javadoc issues\n\nChange-Id: I977a328d671b91aa82cb275767e3575f78695508\n"
    },
    {
      "commit": "52c10554628079e38cde2e9b13bde5099deeca35",
      "tree": "1abc4e4e799460feb870299867ce4197c9242eb6",
      "parents": [
        "485932f6afa1541caa9429835ef44a928e7ddfb1",
        "efd1c6777929e5a81a030fc51145cd3064d3e979"
      ],
      "author": {
        "name": "Svetoslav Ganov",
        "email": "svetoslavganov@google.com",
        "time": "Mon Mar 19 20:03:45 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Mar 19 20:03:45 2012 -0700"
      },
      "message": "Merge \"Revert \"Revamp of the NumberPicker widget.\"\""
    },
    {
      "commit": "efd1c6777929e5a81a030fc51145cd3064d3e979",
      "tree": "6fc7aa4b28787af90f653ee7132abe7c89726b77",
      "parents": [
        "912ab8506ae6409ee7fa0323b217fefaf0bd9771"
      ],
      "author": {
        "name": "Svetoslav Ganov",
        "email": "svetoslavganov@google.com",
        "time": "Mon Mar 19 20:03:29 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Mar 19 20:03:29 2012 -0700"
      },
      "message": "Revert \"Revamp of the NumberPicker widget.\"\n\nThis reverts commit 912ab8506ae6409ee7fa0323b217fefaf0bd9771"
    },
    {
      "commit": "ca07bc1d35aa448819bc99675e57793d37047c55",
      "tree": "a45e51f76586aa268e7f64de99f1bb2964f78f69",
      "parents": [
        "00843227504528584596da305e6587450c0c5223",
        "912ab8506ae6409ee7fa0323b217fefaf0bd9771"
      ],
      "author": {
        "name": "Svetoslav Ganov",
        "email": "svetoslavganov@google.com",
        "time": "Mon Mar 19 18:56:51 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Mar 19 18:56:51 2012 -0700"
      },
      "message": "Merge \"Revamp of the NumberPicker widget.\""
    },
    {
      "commit": "7a2195cdd33f27c79eda343defc1f7ccf59cc8ac",
      "tree": "a0964fae7ec6d7e39f3ed6a50d4092a1a3028f05",
      "parents": [
        "f6b8f7b34f5fe94cd1d8753ec356b967293f1f9c"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Mon Mar 19 17:38:00 2012 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Mon Mar 19 17:41:10 2012 -0700"
      },
      "message": "Start using the new activity options argument.\n\nNew class lets you make an options bundle defining a custom animation,\nas an alternative to Activity.overridePendingTransition().\n\nChange-Id: I8e209bf52398a98ab9f1bcafa1ec0a580dae57c0\n"
    },
    {
      "commit": "912ab8506ae6409ee7fa0323b217fefaf0bd9771",
      "tree": "aa1e3bc0e7bfc94e715cf67a1397ff5607b1e8d1",
      "parents": [
        "958ec9d0b2f2063a03d3ea2b9bb86897125401b0"
      ],
      "author": {
        "name": "Svetoslav Ganov",
        "email": "svetoslavganov@google.com",
        "time": "Wed Nov 09 14:08:41 2011 -0800"
      },
      "committer": {
        "name": "Svetoslav Ganov",
        "email": "svetoslavganov@google.com",
        "time": "Mon Mar 19 13:02:22 2012 -0700"
      },
      "message": "Revamp of the NumberPicker widget.\n\n1. The number picker no longer shows up and down arrows, it\n   has only three touch targets which are the currently selected number\n   in the middle with a lesser one above and greater below, now what\n   you touch is what you get, flingability and long press are still\n   supported.\n\n2. Removed the restriction for a View with an AccessibilityNodeProvider\n   to not have any concrete children. If the View has a provider, then\n   this provider is responsible for creating the AccessibilityNodeInfos\n   for all its descendants, concrete and virtual. The number picker is\n   a good example for such a case - it has a concrete input view and\n   two virtual buttons as its children. This is a safe change since\n   this behavior has not been released.\n\n3. This patch also fixes bug where the number picker is stretched too\n   much in the Theme theme.\n\nbug:6177794\nbug:5728294\n\nChange-Id: Id8c0b3549174b9599f971d6e3086ca427cfbaa39\n"
    },
    {
      "commit": "c0102b7a7daa4f32f8775b243448d2ea2fd21096",
      "tree": "9b73a2494315fce15c6cb150f66549a62b5320b1",
      "parents": [
        "bb236c89b153153e1828dec557d1ffd3d3c62fb2",
        "1d9f742e001ed8280fa93fd9ba0b1125ce6d00ae"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Thu Mar 15 16:07:08 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Mar 15 16:07:08 2012 -0700"
      },
      "message": "Merge \"Port the SQLite locale setting code to Java.\""
    },
    {
      "commit": "1d9f742e001ed8280fa93fd9ba0b1125ce6d00ae",
      "tree": "a6e96a60b39568bdda7ae284f1b8f013ce15a833",
      "parents": [
        "5571ffdd9d419e3b1e050501e6f8dbfb04159b5d"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Thu Mar 15 14:32:32 2012 -0700"
      },
      "committer": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Thu Mar 15 16:02:58 2012 -0700"
      },
      "message": "Port the SQLite locale setting code to Java.\n\nMake the database opening code more robust in the case of\nread-only database connections.\n\nCheck whether a PRAGMA needs to be issues before doing it.\nMostly it\u0027s harmless but it can grab a transaction on the\ndatabase unnecessarily.\n\nChange-Id: Iab2cdc96c785e767f82966b00597e19337163f2f\n"
    },
    {
      "commit": "1cedb47e18a3acb322914e1963285882dc77d9ba",
      "tree": "28e75fe0ca8c2601f896e05e50051d450f6b851a",
      "parents": [
        "a1d2bd829d4804b7841d7c39c8d2ae438b634efb",
        "e57319ff880c43b44aaab4905dc8997d97827520"
      ],
      "author": {
        "name": "Selim Gurun",
        "email": "sgurun@google.com",
        "time": "Thu Mar 15 14:55:15 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Mar 15 14:55:15 2012 -0700"
      },
      "message": "Merge \"Make the credential storage change action public.\""
    },
    {
      "commit": "a8bfeaf4f49fa33e96f37302f9c9b99c94aa1581",
      "tree": "8a75ec453988153c1a819455b5c753005493263b",
      "parents": [
        "d5bceea4bd7e71a02ec0f47337b923a8ed60682d"
      ],
      "author": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Thu Mar 15 13:14:14 2012 -0700"
      },
      "committer": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Thu Mar 15 13:14:14 2012 -0700"
      },
      "message": "Cleanup ListView glow\u0027s optimized invalidates\n\nChange-Id: Ie9759fd95366866512ec55072aa482f972650d15\n"
    },
    {
      "commit": "06298b0e2d55f7a87153001e30654a22a3587493",
      "tree": "9c303313c34cb5864bf2faef9ff5aeb7a7010c80",
      "parents": [
        "c3da1b44e6c50c5e1714ae53fe35fa97f7e3a5a8"
      ],
      "author": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Wed Mar 14 17:37:40 2012 -0700"
      },
      "committer": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Wed Mar 14 17:37:40 2012 -0700"
      },
      "message": "Fix the build\n\nChange-Id: Ic3694c295e578f7c089e698dbcebdff685a7968f\n"
    },
    {
      "commit": "467ec7eda8ad754d6a92d32040738b797ba5e994",
      "tree": "a27bc622407ebc06b6fd6cfb0db91f2a11ac0066",
      "parents": [
        "9d4136163479a3301f9db67c733c21ccee8da97b"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Wed Mar 14 14:49:02 2012 -0700"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Wed Mar 14 14:49:02 2012 -0700"
      },
      "message": "Unhide MediaPlayer.setNextMediaPlayer\n\nThe Music apps are unbundled, so this needs to be unhidden for them to use it.\n\nChange-Id: I24330a2d6cfa2f5fb5f9c282d28f5431b6165095\n"
    },
    {
      "commit": "a4972e951bf2bdb7afdafee95b3ab0c15b8bacae",
      "tree": "9800a9dcd62d945a8ad71549ebcef70393ef5442",
      "parents": [
        "89ea4ca9c26f3c7e365525a0b83500e85517a457"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Wed Mar 14 10:38:05 2012 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Wed Mar 14 12:57:14 2012 -0700"
      },
      "message": "Add new \"options\" argument to all startActivity APIs.\n\nThis will be used to allow new features to be requested...  such as,\nsay, a special kind of animation.  Right now there are no options\ndefined.\n\nChange-Id: I4eb6f27275cdd4bf186f6da316ab93a2372ad4b7\n"
    },
    {
      "commit": "b001475fc58181f809316649776225e9fd8e4226",
      "tree": "7089519fb5d176a24cafb7f32cf3a04d4a1cedc1",
      "parents": [
        "9dc348d75688faba645c03ecd6e72de7cecc87ba",
        "1018fb42cb4958511a141787705aa429c5ec9bd3"
      ],
      "author": {
        "name": "Philip Milne",
        "email": "pmilne@google.com",
        "time": "Tue Mar 13 15:32:20 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Mar 13 15:32:20 2012 -0700"
      },
      "message": "Merge \"Fixes for bugs: #6103660, #6103957, #6104457 and #6104322.\""
    },
    {
      "commit": "1018fb42cb4958511a141787705aa429c5ec9bd3",
      "tree": "2ef291de5c2bfae90921e36354db1d56567a20fd",
      "parents": [
        "065781397099719805a0a42023581b2622984dd4"
      ],
      "author": {
        "name": "Philip Milne",
        "email": "pmilne@google.com",
        "time": "Tue Mar 13 12:00:04 2012 -0700"
      },
      "committer": {
        "name": "Philip Milne",
        "email": "pmilne@google.com",
        "time": "Tue Mar 13 15:22:07 2012 -0700"
      },
      "message": "Fixes for bugs: #6103660, #6103957, #6104457 and #6104322.\n\nAdd getters and setters to the layout widgets so as to mirror their XML apis.\n\nChange-Id: Ie2237fd55e1c3e4ec0d08b4f8154ea7e122c1e79\n"
    },
    {
      "commit": "53567a756e34706edbeae7217ad4205c55bb76b6",
      "tree": "2e568f3269ae10d2801e5c116c132c091de571ef",
      "parents": [
        "278836e22c14299669aabafc636faab534faeba9",
        "f06d9497afe01896b52e0cb5e5ff38fd49ef6eef"
      ],
      "author": {
        "name": "Daniel Lehmann",
        "email": "lehmannd@google.com",
        "time": "Tue Mar 13 12:17:45 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Mar 13 12:17:45 2012 -0700"
      },
      "message": "Merge \"Introduce READ_CALL_LOG and WRITE_CALL_LOG\""
    },
    {
      "commit": "7d9ec65da08934923def65006a51a9367df2fb58",
      "tree": "c97b5758d5e1053d8e1662a13f532033fa9a059f",
      "parents": [
        "3d441a1c4f2983edfb8afe5f0cb11a17d6bdbc53",
        "8cbc26f0aab6340162a2b05cde189495dbd1d56b"
      ],
      "author": {
        "name": "Fabrice Di Meglio",
        "email": "fdimeglio@google.com",
        "time": "Mon Mar 12 16:44:39 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Mar 12 16:44:39 2012 -0700"
      },
      "message": "Merge \"Fix the build\""
    },
    {
      "commit": "8cbc26f0aab6340162a2b05cde189495dbd1d56b",
      "tree": "b0c017447546d01bdc2ec80cde8cc33d2a26d8e5",
      "parents": [
        "25ba197fa7f29aed574f7d5e38975c5fda25e2ae"
      ],
      "author": {
        "name": "Fabrice Di Meglio",
        "email": "fdimeglio@google.com",
        "time": "Mon Mar 12 16:42:37 2012 -0700"
      },
      "committer": {
        "name": "Fabrice Di Meglio",
        "email": "fdimeglio@google.com",
        "time": "Mon Mar 12 16:42:37 2012 -0700"
      },
      "message": "Fix the build\n\n- was missing the update to current.txt\n\nChange-Id: I7bbd363f989c3deae071dce60af75a76c9477695\n"
    },
    {
      "commit": "81a0647c302edb4ed74d6d80d8f85c85a6c3fec4",
      "tree": "da6a3f7ce1cebe1c613f110d2f0421ca0d780ee3",
      "parents": [
        "035c20f5b4f31a2a4b592ff5004fe67fef0106d2",
        "a1cff5043d0fbd78fcf9c48e7658e56a5b0c2de3"
      ],
      "author": {
        "name": "Chet Haase",
        "email": "chet@google.com",
        "time": "Mon Mar 12 15:48:32 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Mar 12 15:48:32 2012 -0700"
      },
      "message": "Merge \"Handle view properties at the native level\""
    },
    {
      "commit": "a1cff5043d0fbd78fcf9c48e7658e56a5b0c2de3",
      "tree": "01a809b1ae5a50b8721f05c540a76570794d828c",
      "parents": [
        "bdc5afeee57a943adac3896297fab74b96b307c1"
      ],
      "author": {
        "name": "Chet Haase",
        "email": "chet@google.com",
        "time": "Tue Feb 21 13:43:44 2012 -0800"
      },
      "committer": {
        "name": "Chet Haase",
        "email": "chet@google.com",
        "time": "Mon Mar 12 15:41:48 2012 -0700"
      },
      "message": "Handle view properties at the native level\n\nBasic functionality of handling View properties (transforms,\nleft/right/top/bottom, and alpha) at the native DisplayList level.\nThis logic is disabled for now (via compile-time flags in View.java and\nDisplayListRenderer.h) as we continue work on it (there is no advantage\nto the new approach until we optimize invalidation and rendering paths\nto use the new code path).\n\nChange-Id: I370c8d21fbd291be415f55515ab8dced6f6d51a3\n"
    },
    {
      "commit": "035c20f5b4f31a2a4b592ff5004fe67fef0106d2",
      "tree": "ff95dfdf573554288125057cf8494b5226e3a234",
      "parents": [
        "bdc5afeee57a943adac3896297fab74b96b307c1",
        "7924512aa12c6af37d90e8ccfcdf04eb78a294a3"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Mon Mar 12 15:26:46 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Mar 12 15:26:46 2012 -0700"
      },
      "message": "Merge \"Add new READ_EXTERNAL_STORAGE permission.\""
    },
    {
      "commit": "7924512aa12c6af37d90e8ccfcdf04eb78a294a3",
      "tree": "d0b539a6b6ea5d810458196dcff5f377428d3311",
      "parents": [
        "05f692e8050c3650ec123b2361143a121e2e7d4b"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Mon Mar 12 10:51:26 2012 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Mon Mar 12 15:07:31 2012 -0700"
      },
      "message": "Add new READ_EXTERNAL_STORAGE permission.\n\nAlso adds some initial compatibility code for dealing with it.\n\nChange-Id: I104bff11798349e4aaa6da9b7be787b257daa1bb\n"
    },
    {
      "commit": "f06d9497afe01896b52e0cb5e5ff38fd49ef6eef",
      "tree": "9184ef3fe1d82abedeff1adea815d5d980fa016c",
      "parents": [
        "a8c67eb904b7b78856ef58ef6a4ec10e6dccccb2"
      ],
      "author": {
        "name": "Daniel Lehmann",
        "email": "lehmannd@google.com",
        "time": "Mon Mar 12 13:45:19 2012 -0700"
      },
      "committer": {
        "name": "Daniel Lehmann",
        "email": "lehmannd@google.com",
        "time": "Mon Mar 12 13:45:19 2012 -0700"
      },
      "message": "Introduce READ_CALL_LOG and WRITE_CALL_LOG\n\nBug:6141864\n\nChange-Id: I66fcab2a35b8c1c73bac7cfffb9f008c82ed51e8\n"
    },
    {
      "commit": "029d7e15f38cdd3c1941a16186c5941edc85bc3d",
      "tree": "4eb1b379aa831cff2ca197780ac2767a7f3313be",
      "parents": [
        "c79b293435d9572e29f832d84dbb3a1791f48fd9"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Mon Mar 12 10:40:24 2012 -0700"
      },
      "committer": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Mon Mar 12 12:33:10 2012 -0700"
      },
      "message": "Hide deprecated MediaRecorder.java APIs\n\no related-to-bug: 6085208\n\nChange-Id: I6d4d2c20756b317661c94ebe35752a040ece8283\n"
    },
    {
      "commit": "05f692e8050c3650ec123b2361143a121e2e7d4b",
      "tree": "dfdbb1f35639dc0b1e3d6fa86f6d94ee216a9a8e",
      "parents": [
        "1a22cbd113512f03d7db40e4be25a02047cb6c88",
        "e8dc07dcdb983d5d3999b16c2a49ddee4bdb942c"
      ],
      "author": {
        "name": "Fabrice Di Meglio",
        "email": "fdimeglio@google.com",
        "time": "Mon Mar 12 10:54:42 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Mar 12 10:54:42 2012 -0700"
      },
      "message": "Merge \"Make Gravity RTL APIs public\""
    },
    {
      "commit": "e8dc07dcdb983d5d3999b16c2a49ddee4bdb942c",
      "tree": "fa3501d60b3caee9b10a511ffa4d88c6ba57e720",
      "parents": [
        "3bef5e9f3aa90465ee3ab66ef33d7a88d1b0c5c1"
      ],
      "author": {
        "name": "Fabrice Di Meglio",
        "email": "fdimeglio@google.com",
        "time": "Fri Mar 09 17:10:19 2012 -0800"
      },
      "committer": {
        "name": "Fabrice Di Meglio",
        "email": "fdimeglio@google.com",
        "time": "Fri Mar 09 17:32:16 2012 -0800"
      },
      "message": "Make Gravity RTL APIs public\n\n- also move unit tests to CTS\n- also small improvement for View Javadoc\n\nChange-Id: I166d5a10f4a00f1b46c90468c8b11906b438e1ea\n"
    },
    {
      "commit": "73ba0df14fedefe144808a2a43308811567875be",
      "tree": "27de8dbb0b8f481a5d2d4c299970f424041ff11b",
      "parents": [
        "5a5dc1c63476dc891b73ea10267511c260d8fd78",
        "06e1ec6462763a2f12ba5fb1c1c826bf393bfacd"
      ],
      "author": {
        "name": "Fabrice Di Meglio",
        "email": "fdimeglio@google.com",
        "time": "Fri Mar 09 17:02:56 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Mar 09 17:02:56 2012 -0800"
      },
      "message": "Merge \"Make Drawable RTL APIs public\""
    },
    {
      "commit": "06e1ec6462763a2f12ba5fb1c1c826bf393bfacd",
      "tree": "bd87707fe1b80c06214f3314cb8a70e2997feee8",
      "parents": [
        "3bef5e9f3aa90465ee3ab66ef33d7a88d1b0c5c1"
      ],
      "author": {
        "name": "Fabrice Di Meglio",
        "email": "fdimeglio@google.com",
        "time": "Fri Mar 09 16:37:45 2012 -0800"
      },
      "committer": {
        "name": "Fabrice Di Meglio",
        "email": "fdimeglio@google.com",
        "time": "Fri Mar 09 16:37:45 2012 -0800"
      },
      "message": "Make Drawable RTL APIs public\n\n- also optimize imports\n\nChange-Id: I2649a539a5784293d09179981a5d57e900219246\n"
    },
    {
      "commit": "2bff6407793917d69653542a73525a72a53dd6cc",
      "tree": "fbf16f4bafdd4fe574e9e0780d9cb7940ffd1568",
      "parents": [
        "c68bbe6a86ae27f871b9ba835cdb859faf67ebf9",
        "51ab90cab1609cf0ddd2dfe5a660f020d823d4d5"
      ],
      "author": {
        "name": "Svetoslav Ganov",
        "email": "svetoslavganov@google.com",
        "time": "Fri Mar 09 12:00:13 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Mar 09 12:00:13 2012 -0800"
      },
      "message": "Merge \"Adding an announcement type accessibility event and a method on View to announce.\""
    },
    {
      "commit": "51ab90cab1609cf0ddd2dfe5a660f020d823d4d5",
      "tree": "7e12773923ee63d0c081d08e6eadd5f45a7319c4",
      "parents": [
        "4b97257979034a8031040b84d8f016d8f3175313"
      ],
      "author": {
        "name": "Svetoslav Ganov",
        "email": "svetoslavganov@google.com",
        "time": "Fri Mar 09 10:54:49 2012 -0800"
      },
      "committer": {
        "name": "Svetoslav Ganov",
        "email": "svetoslavganov@google.com",
        "time": "Fri Mar 09 11:47:17 2012 -0800"
      },
      "message": "Adding an announcement type accessibility event and a method on View to announce.\n\n1. The need for sending an accessibility event to announce a context change\n   which does not cleanly fit into the existing UI transition UI events has\n   come quite a few time in application development. To avoid retrofitting\n   accessibility event types that do not semantically match the intent to\n   just announce a short message this patch is adding specialized event type.\n   Also a helper method on View is added to sheild developers from knowing\n   how to construct and send such an event.\n\nbug:5977979\n\nChange-Id: Iaf5f620426f8616be67fbf243a02ad5b606c949b\n"
    },
    {
      "commit": "d9c7be6cc7d18f11731e6d7a1037cc294fde3a4b",
      "tree": "26bbcf805df91ca3787e6978de5551f24c93d923",
      "parents": [
        "787f2699f1f526517c23cf1017ca1a50e88ab8fb"
      ],
      "author": {
        "name": "Adam Powell",
        "email": "adamp@google.com",
        "time": "Thu Mar 08 19:43:43 2012 -0800"
      },
      "committer": {
        "name": "Adam Powell",
        "email": "adamp@google.com",
        "time": "Thu Mar 08 19:49:39 2012 -0800"
      },
      "message": "Public API for android.widget.Spinner properties\n\nBug 6104467\n\nAdd properties that can be set/retrieved programmatically to match the\nXML attributes available.\n\nAlso add resource ID versions of Drawable setters for Switch.\n\nChange-Id: I198cfd9701189ab200c3190f61d18c459b7e4591\n"
    },
    {
      "commit": "787f2699f1f526517c23cf1017ca1a50e88ab8fb",
      "tree": "7caca69e945e1877f5943e522ce392a6544e1ae7",
      "parents": [
        "34264670da2589300aac661e038d54c393e17471",
        "6c86e1ba41b56ccb3668dbb044fa348cd4b47d55"
      ],
      "author": {
        "name": "Adam Powell",
        "email": "adamp@google.com",
        "time": "Thu Mar 08 17:18:10 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Mar 08 17:18:10 2012 -0800"
      },
      "message": "Merge \"Public API for android.widget.Switch properties\""
    },
    {
      "commit": "754682e513772940f23a5b167f1311f34f202d18",
      "tree": "4146ce6431e8129d6935fd1cacda47f42c0d3acf",
      "parents": [
        "583fcb9175cd0c614f096db633d9e784ab7e1f54",
        "43e8eb1e21106d933518056774d596571ad982d2"
      ],
      "author": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Thu Mar 08 15:41:29 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Mar 08 15:41:29 2012 -0800"
      },
      "message": "Merge \"Fix the build.\""
    },
    {
      "commit": "43e8eb1e21106d933518056774d596571ad982d2",
      "tree": "64a17064eaf2c14975897a45cd60ba39d0744b8a",
      "parents": [
        "bb9908b828a8cfd5965553be66faa6af89973697"
      ],
      "author": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Thu Mar 08 15:40:14 2012 -0800"
      },
      "committer": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Thu Mar 08 15:40:14 2012 -0800"
      },
      "message": "Fix the build.\n\nThat\u0027s twice today. I am ashamed.\n\nChange-Id: I0ec7ab2b742e8054980a1ab7790c4896da9e2729\n"
    },
    {
      "commit": "6c86e1ba41b56ccb3668dbb044fa348cd4b47d55",
      "tree": "fc6588b447fe0504bd7c96eab8a591110b684841",
      "parents": [
        "7ec22d33ac7cf7d297aaef62d0a81359166781c0"
      ],
      "author": {
        "name": "Adam Powell",
        "email": "adamp@google.com",
        "time": "Thu Mar 08 15:11:46 2012 -0800"
      },
      "committer": {
        "name": "Adam Powell",
        "email": "adamp@google.com",
        "time": "Thu Mar 08 15:12:48 2012 -0800"
      },
      "message": "Public API for android.widget.Switch properties\n\nBug 6104562\n\nAdd properties that can be set/retrieved programmatically to match the\nXML attributes available.\n\nChange-Id: Ief28e5cad9ec3e6c2d12dd11ff9fa24f22eecec3\n"
    },
    {
      "commit": "583fcb9175cd0c614f096db633d9e784ab7e1f54",
      "tree": "a75573a0bc37dd1df88b127068a4e3c7f47e95ed",
      "parents": [
        "a0b29f556519653c9749cebff4af43e68b4d59ce",
        "bb9908b828a8cfd5965553be66faa6af89973697"
      ],
      "author": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Thu Mar 08 15:06:50 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Mar 08 15:06:50 2012 -0800"
      },
      "message": "Merge \"Dispatch screen state change events to Views Bug #6120957\""
    },
    {
      "commit": "bb9908b828a8cfd5965553be66faa6af89973697",
      "tree": "33ab74a9cb8ad69058cece5ae83d4b82f7b51633",
      "parents": [
        "3bef5e9f3aa90465ee3ab66ef33d7a88d1b0c5c1"
      ],
      "author": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Thu Mar 08 11:14:07 2012 -0800"
      },
      "committer": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Thu Mar 08 15:05:12 2012 -0800"
      },
      "message": "Dispatch screen state change events to Views\nBug #6120957\n\nUsing this new callback, views can interrupt and resume their\nanimations or other periodic tasks based on the current state\nof the display.\n\nChange-Id: I398f4abd421e9c5f207107bf1009a7b92cf45daa\n"
    },
    {
      "commit": "21c241e061de29a538008ca42df9c878184bcfb8",
      "tree": "2ab9065ae16bbe9fc5b599e1c591a020ac5c7ce1",
      "parents": [
        "c8462e322bcf5a07d9ef677ed099e007ef268932"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu Mar 08 13:57:23 2012 -0800"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu Mar 08 14:34:03 2012 -0800"
      },
      "message": "Add new Intent API for associating a ClipData with an Intent.\n\nAllows applications to propagate multiple URI grants through an\nIntent.\n\nLater on, we should probably redefine the share actions to be\nbased on this ClipData with the old extras-based approach only\nthere for compatibility.  Even if we don\u0027t do that, though, this\nallows you to do a multi-select share that grants multiple URI\npermissions by stuffing the URIs in a ClipData.\n\nAlso add some documentation in various places telling people how\nthey can grant URI permissions.\n\nChange-Id: Id4ba8e72c11caf7e1f1f438cb7af058d1586a37c\n"
    },
    {
      "commit": "0c245fb201aa28776586dc1ce4fc4fc281f894a7",
      "tree": "d3d951edc605615f0a383b7bfc9eed702682b763",
      "parents": [
        "731f018928ea122e5367eb23bc6c94cde0e53b2d",
        "d159109bd88e290ffacce30aaff42b0a0c790709"
      ],
      "author": {
        "name": "Fabrice Di Meglio",
        "email": "fdimeglio@google.com",
        "time": "Thu Mar 08 11:13:27 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Mar 08 11:13:27 2012 -0800"
      },
      "message": "Merge \"Make more TextView RTL APIs public\""
    },
    {
      "commit": "d159109bd88e290ffacce30aaff42b0a0c790709",
      "tree": "98e336b967c837aefb0b807e538917ed9c7b0472",
      "parents": [
        "7d3c690e723e3fb82775baad5942234cd30f8d2d"
      ],
      "author": {
        "name": "Fabrice Di Meglio",
        "email": "fdimeglio@google.com",
        "time": "Wed Mar 07 15:34:38 2012 -0800"
      },
      "committer": {
        "name": "Fabrice Di Meglio",
        "email": "fdimeglio@google.com",
        "time": "Wed Mar 07 15:34:38 2012 -0800"
      },
      "message": "Make more TextView RTL APIs public\n\n- padding related APIs\n- drawable related APIs\n\nChange-Id: If926ba1658431f826153128553f1ff429275f948\n"
    },
    {
      "commit": "d5f07990822db3531c84755f406c1e12083aee37",
      "tree": "9e36c628a9f7b76d367158164475ca055632e5a4",
      "parents": [
        "7072dce01115dd310dcd381002cb21b652571e6b",
        "e69095869c1b324aa20991ed1805c492c3f731e8"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Wed Mar 07 13:54:43 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Mar 07 13:54:43 2012 -0800"
      },
      "message": "Merge \"NEW_API: Rework CameraSound into MediaActionSound, and unhide it.\""
    },
    {
      "commit": "5eb37241fee7e656cf9787bf00a160e94b4894fc",
      "tree": "4f6291fcc4462247152ee9927a1ebb90a331266c",
      "parents": [
        "afeecb0740938d295083335950ea901d832a794c",
        "27ff913d56de8400083a13fc572e2812b32c890c"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Tue Mar 06 19:06:25 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Mar 06 19:06:25 2012 -0800"
      },
      "message": "Merge \"Work on more low memory reporting to apps.\""
    },
    {
      "commit": "27ff913d56de8400083a13fc572e2812b32c890c",
      "tree": "f30ec6efb44658b448c5e049bf0c1c3e40f0f06c",
      "parents": [
        "4f03d35f9c040222e6a46dde807fe2ff7852beb8"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Tue Mar 06 14:57:58 2012 -0800"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Tue Mar 06 18:46:32 2012 -0800"
      },
      "message": "Work on more low memory reporting to apps.\n\nThere are now some new trim memory levels that are sent to\nnon-background applications as RAM becomes low.\n\nThere is a new API for an application to retrieve information\nabout memory trimming and such on demand.\n\nFixed various checks against the memory trim level to be\nrobust (not compare against exact values).\n\nChange-Id: Ifd1c6151124350168aef20a94e517166fd2e03eb\n"
    },
    {
      "commit": "03bd302aebbb77f4f95789a269c8a5463ac5a840",
      "tree": "abd49f5d5e379f75c9cab050b7426e492884e542",
      "parents": [
        "b4827c089fc0aec49a73cc32cd18d2ce4d627c5a"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Tue Mar 06 13:48:56 2012 -0800"
      },
      "committer": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Tue Mar 06 16:42:56 2012 -0800"
      },
      "message": "Don\u0027t close the database until all references released.\n\nSQLiteDatabase.close() should call releaseReference() rather than\nclosing the database immediately.  SQLiteDatabase should also hold\na reference to itself while performing certain operations to\nensure that they complete normally even if another thread closes\nthe database at the same time.\n\nFixed a couple of missing or redundant uses of acquireReference()\nrelated to CursorWindows.\n\nTo be honest, the reference counting performed by SQLiteClosable should\nnot be needed, but we\u0027re stuck with it in the API.\n\nBug: 6104842\nChange-Id: I3444a697409905d4a36b56418dc7766f5ba76b59\n"
    },
    {
      "commit": "e69095869c1b324aa20991ed1805c492c3f731e8",
      "tree": "0a1a11391b8ac593b66fbf37e8f57b6b1a00ab7b",
      "parents": [
        "fd400f5f483d76a38a28155a7328a953ed3ec36f"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Thu Mar 01 11:01:38 2012 -0800"
      },
      "committer": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Tue Mar 06 16:33:50 2012 -0800"
      },
      "message": "NEW_API: Rework CameraSound into MediaActionSound, and unhide it.\n\nMediaActionSound is a helper class for applications that use the\ncamera, or include camera-like behavior such as taking\nscreenshots. This class helps applications match the sound-playing\nbehavior of the Camera.takePicture, MediaRecorder.start, and\nMediaRecorder.stop methods.\n\nThis is useful for applications that don\u0027t use the above methods, but\nstill logically capture images or video, such as the panorama capture\nfeature and the video effects in the platform camera application.\n\nBug: 5029099\nChange-Id: I829f6e2941f167f91f9cb506215b7232cb054958\n"
    },
    {
      "commit": "faeac2737de098269a69011f4980a412559b55a9",
      "tree": "929a9132a4e508b3463421be3486bb5202b53c0f",
      "parents": [
        "f89ed895235958758db7bed24495c3f6a32dcfe0",
        "6cb7b46c56449e84434b11eb12f9b8977fcd0398"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Mon Mar 05 15:38:47 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Mar 05 15:38:47 2012 -0800"
      },
      "message": "Merge \"Change widgets to post invalidate to the animation timer.\""
    },
    {
      "commit": "6cb7b46c56449e84434b11eb12f9b8977fcd0398",
      "tree": "a4a418cc979ca408702211b6083e50c937d578a2",
      "parents": [
        "baefdfad6e77e772deb6474380dd85ac776293e8"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Mon Mar 05 13:21:17 2012 -0800"
      },
      "committer": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Mon Mar 05 15:19:31 2012 -0800"
      },
      "message": "Change widgets to post invalidate to the animation timer.\n\nChange-Id: I8377e924529fb9d8afd8a834003a17de616e8e87\n"
    },
    {
      "commit": "7bcbeb789d8886ade27e859cd0615f30cc2c4898",
      "tree": "b8b919b0f4979cb32f2621aa463125164ed7e642",
      "parents": [
        "ef6f68b8c825e4dd150926da61401a103d88f0e9",
        "baefdfad6e77e772deb6474380dd85ac776293e8"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Mon Mar 05 13:38:59 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Mar 05 13:38:59 2012 -0800"
      },
      "message": "Merge \"Make SQLiteDatabase final.\""
    },
    {
      "commit": "baefdfad6e77e772deb6474380dd85ac776293e8",
      "tree": "d5c7370bd48fea6c5e344f977585c3dc88e3d74d",
      "parents": [
        "08cbdad565b3d2a01b005ceea5667f261ba89353"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Mon Mar 05 10:33:13 2012 -0800"
      },
      "committer": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Mon Mar 05 13:24:02 2012 -0800"
      },
      "message": "Make SQLiteDatabase final.\n\nThe SQLiteDatabase constructor is inaccessible so it is not\npossible for applications to subclass it.  To remove all possible\nremaining temptation to do so, make the class final.\n\nChange-Id: I4148e9b06f0661ec22aab8e45afde38498d2375a\n"
    },
    {
      "commit": "09c8f48c105c4ed299617aaa892c7f0cd891b144",
      "tree": "5c8dbcb182a5689aaa8fa43d7b7f4af823ea1e42",
      "parents": [
        "681abe6e60e1397c5b80558f5ad2144d0cd12dd6",
        "d7026f1612a7c1e8cc9b484038fa99b7fc29cfd7"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Mon Mar 05 10:49:11 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Mar 05 10:49:11 2012 -0800"
      },
      "message": "Merge \"Report leaked Context registrations to StrictMode.\""
    },
    {
      "commit": "eb00769e8983a02397db26a5413147a975b47c1f",
      "tree": "92f5dd6a4c9929e8d2fb0f67c0479f8b4cbc7f84",
      "parents": [
        "1359adbc1d2c2f1a1ff84cb82b40b6d1556df23a",
        "e861b423790e5bf2d5a55b096065c6ad0541d5bb"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Fri Mar 02 18:07:35 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Mar 02 18:07:35 2012 -0800"
      },
      "message": "Merge \"Allow disk I/O while performing dump().\""
    },
    {
      "commit": "3ee7ce2be31431a940c635f5c2ca52ebbddb94ed",
      "tree": "8a544b32d5102515002036d2c6ac8576ef7836e6",
      "parents": [
        "b3ef538fe645a7888c873eaa633fa8c50de6193d",
        "4b3cdbb2cfac6a39296d1af5a48c9b07159ae09b"
      ],
      "author": {
        "name": "Svetoslav Ganov",
        "email": "svetoslavganov@google.com",
        "time": "Fri Mar 02 14:57:42 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Mar 02 14:57:42 2012 -0800"
      },
      "message": "Merge \"Fixing the build for real.\""
    },
    {
      "commit": "4b3cdbb2cfac6a39296d1af5a48c9b07159ae09b",
      "tree": "b440bfc888473304fa3f3c3362b3bb0d676f2fbf",
      "parents": [
        "56232eb14a018ecf9036c20be277d5e200e9df46"
      ],
      "author": {
        "name": "Svetoslav Ganov",
        "email": "svetoslavganov@google.com",
        "time": "Fri Mar 02 14:56:27 2012 -0800"
      },
      "committer": {
        "name": "Svetoslav Ganov",
        "email": "svetoslavganov@google.com",
        "time": "Fri Mar 02 14:56:27 2012 -0800"
      },
      "message": "Fixing the build for real.\n\nChange-Id: I6400e599cdf0d2e94d3ac024b9b32de55b1e3760\n"
    },
    {
      "commit": "45e96fd28a6f0b6a6526c9af62b083be73385c95",
      "tree": "b93db30fbc2b0e86227c46500178644ff83a28a6",
      "parents": [
        "49537043da94176f1bb2b0153ed672c6c894d98d",
        "ff37505cb13f96ddec09594517ad6f4fa2fd1def"
      ],
      "author": {
        "name": "Svetoslav Ganov",
        "email": "svetoslavganov@google.com",
        "time": "Fri Mar 02 13:12:22 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Mar 02 13:12:22 2012 -0800"
      },
      "message": "Merge \"Adding getter/setter for all public attributes in CalendarView.\""
    },
    {
      "commit": "e861b423790e5bf2d5a55b096065c6ad0541d5bb",
      "tree": "0787b3cac04d166884e8f24ef6743fd9e735e8c8",
      "parents": [
        "c81ec3637b8e3c177ec041aeb3863e123924505b"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Thu Mar 01 20:59:22 2012 -0800"
      },
      "committer": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Fri Mar 02 12:31:27 2012 -0800"
      },
      "message": "Allow disk I/O while performing dump().\n\nAdd Closeable to ParcelFileDescriptor, and always close any incoming\nPFDs when dumping.\n\nBug: 6106309\nChange-Id: I25b465692d5e1da0a5980a307cb48a058bc2bca7\n"
    },
    {
      "commit": "e6e47f0517b98055625abc21a85eaa702374495a",
      "tree": "7b2d5c381285db0f07177c4899d1755cb3a70ccd",
      "parents": [
        "8dc3cc2e13b500e368f5ba1aacfaf0eddbce668c",
        "dc927307ec69dcda57a05b51bcab78cb994f350b"
      ],
      "author": {
        "name": "Alon Albert",
        "email": "aalbert@google.com",
        "time": "Fri Mar 02 11:25:54 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Mar 02 11:25:54 2012 -0800"
      },
      "message": "Merge \"Add a displayColor column to view_events\""
    },
    {
      "commit": "d2cca91e92d9988898a7579e418c00b65d429d46",
      "tree": "5be2aec0058d11b2701ab6e205d403dc72c0f7af",
      "parents": [
        "db3c6b8c0d3cde8323f962bb285d7735f698a363",
        "79087e4b967d8af26c488c41b8c1a087a12da84d"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Fri Mar 02 11:15:41 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Mar 02 11:15:41 2012 -0800"
      },
      "message": "Merge \"Add an API for deleting databases.\""
    },
    {
      "commit": "1a7dd039f189036709bc2253ba50955913f59d7a",
      "tree": "40a528c88e21f92ac0637f2a6d758f34fe8acf1c",
      "parents": [
        "c13accb265f498a3e4fa7bd258628bc605ee534c"
      ],
      "author": {
        "name": "Adam Powell",
        "email": "adamp@google.com",
        "time": "Thu Mar 01 10:50:09 2012 -0800"
      },
      "committer": {
        "name": "Adam Powell",
        "email": "adamp@google.com",
        "time": "Fri Mar 02 10:44:36 2012 -0800"
      },
      "message": "Unhide transient state APIs on View\n\nChange-Id: I0f14728c94cd3461431352e6f01311934aec9858\n"
    },
    {
      "commit": "dc927307ec69dcda57a05b51bcab78cb994f350b",
      "tree": "0203d886aa89b5adf12aa11101aa982bad002d17",
      "parents": [
        "3c90952036a5ff7ddb2946c643f1a0bf1c31d53a"
      ],
      "author": {
        "name": "Alon Albert",
        "email": "aalbert@google.com",
        "time": "Thu Mar 01 16:05:55 2012 -0800"
      },
      "committer": {
        "name": "Alon Albert",
        "email": "aalbert@google.com",
        "time": "Fri Mar 02 09:43:17 2012 -0800"
      },
      "message": "Add a displayColor column to view_events\n\nChange-Id: I0f73685ec75e56929553b01d6ede0ad11fba55f4\n"
    },
    {
      "commit": "ff37505cb13f96ddec09594517ad6f4fa2fd1def",
      "tree": "a89c2fcf878c15e900c97e5fc9947b75e761a4b7",
      "parents": [
        "d0f4e09cba152a2c6cdb14e6a5ff36e864cb5adf"
      ],
      "author": {
        "name": "Svetoslav Ganov",
        "email": "svetoslavganov@google.com",
        "time": "Thu Mar 01 15:57:22 2012 -0800"
      },
      "committer": {
        "name": "Svetoslav Ganov",
        "email": "svetoslavganov@google.com",
        "time": "Thu Mar 01 21:31:34 2012 -0800"
      },
      "message": "Adding getter/setter for all public attributes in CalendarView.\n\nbug:6094713\n\nChange-Id: Iff4a1d903d597ae8a3d74a4e4734376acca417f3\n"
    },
    {
      "commit": "d7026f1612a7c1e8cc9b484038fa99b7fc29cfd7",
      "tree": "2ba3ba651643d5b3fb1a1dec88445d26538fead3",
      "parents": [
        "c81ec3637b8e3c177ec041aeb3863e123924505b"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Thu Mar 01 20:50:32 2012 -0800"
      },
      "committer": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Thu Mar 01 21:10:05 2012 -0800"
      },
      "message": "Report leaked Context registrations to StrictMode.\n\nWhen tearing down any leaked BroadcastReceiver or ServiceConnection\nContext registrations, report through StrictMode.\n\nBug: 6084353\nChange-Id: I5e78039299e2c9c1440cd1fd09317da78ffee82a\n"
    },
    {
      "commit": "79087e4b967d8af26c488c41b8c1a087a12da84d",
      "tree": "5372d32650c0da205f6c3583de0ec3c83fdeb037",
      "parents": [
        "b7f2736e789bb6f3a09970bf924c56b5bc44b69a"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Thu Mar 01 19:52:44 2012 -0800"
      },
      "committer": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Thu Mar 01 19:56:53 2012 -0800"
      },
      "message": "Add an API for deleting databases.\n\nAdd SQLiteDatabase.deleteDatabase to delete a database and all\nof its auxiliary files.\n\nThis method is also used by Context.deleteDatabase and resolves issues\nwhere auxiliary files would get left behind.\n\nBug: 5972489\nChange-Id: I3633b9b4978972a1d240ac0a9861420ecf989149\n"
    },
    {
      "commit": "dd3ef2c573396271c7c3b71e30fbd10cf66d3bc0",
      "tree": "00b2a85f32de432e7fc52472d6f6d5275781e664",
      "parents": [
        "f64a6d53468fd7aabe19d4c74ce205c55f19e870"
      ],
      "author": {
        "name": "Fabrice Di Meglio",
        "email": "fdimeglio@google.com",
        "time": "Thu Mar 01 16:37:17 2012 -0800"
      },
      "committer": {
        "name": "Fabrice Di Meglio",
        "email": "fdimeglio@google.com",
        "time": "Thu Mar 01 17:34:56 2012 -0800"
      },
      "message": "Improve RTL APIs\n\n- follow changed / reset pattern\n\nChange-Id: I1c5e9b39196029bd78add2ab13b984da124822ca\n"
    },
    {
      "commit": "ac5a3a1c123ba58ed75ed7ddaf3f82eec37606c7",
      "tree": "644fa25cbf81621cb1b20dd35f5a22f3ca63d3a6",
      "parents": [
        "fc46475f7f017032715973bcb55cb171880e4602",
        "98aec1c7efa639ac902d1200a3ac5a4a7a140129"
      ],
      "author": {
        "name": "Fabrice Di Meglio",
        "email": "fdimeglio@google.com",
        "time": "Thu Mar 01 16:23:29 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Mar 01 16:23:29 2012 -0800"
      },
      "message": "Merge \"Make layoutDirection API public\""
    },
    {
      "commit": "98aec1c7efa639ac902d1200a3ac5a4a7a140129",
      "tree": "689046f0d7e15661aef04d27d99661ba0a44df98",
      "parents": [
        "62f24df57a6240135cfd27c86430e1dda6c81916"
      ],
      "author": {
        "name": "Fabrice Di Meglio",
        "email": "fdimeglio@google.com",
        "time": "Mon Feb 13 16:54:05 2012 -0800"
      },
      "committer": {
        "name": "Fabrice Di Meglio",
        "email": "fdimeglio@google.com",
        "time": "Thu Mar 01 16:21:55 2012 -0800"
      },
      "message": "Make layoutDirection API public\n\nChange-Id: Ie125513e4ea72b33b42355dbc43f9b9b6d46d7eb\n"
    },
    {
      "commit": "7edb9a94908f41b9dc3aa13d2089efa304f12c22",
      "tree": "d1fbba11323401994e4476f912ae37ec5a1ae245",
      "parents": [
        "b08dee9d38fb73715f17183dbc57b7130796b935",
        "f73222a39e0fa294d9105fd7464943aed6e77cd7"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Thu Mar 01 15:35:39 2012 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Mar 01 15:35:39 2012 -0800"
      },
      "message": "am f73222a3: am 964955e0: am 8a9b14d8: am 5aeb8587: Merge \"DRM framwork bug fix: add an API to release resources\"\n\n* commit \u0027f73222a39e0fa294d9105fd7464943aed6e77cd7\u0027:\n  DRM framwork bug fix: add an API to release resources\n"
    },
    {
      "commit": "43d8a95fa8dfd26ba8c56ac7489a8bc77c77034c",
      "tree": "8aed3c6b7190073512833b461e4e28aa2a9fe657",
      "parents": [
        "7084e75282d6c800a1b889eff66794a8cd62e0c5",
        "07573b32494acbabd21979d8b9584c1ed3f7a6ad"
      ],
      "author": {
        "name": "Irfan Sheriff",
        "email": "isheriff@google.com",
        "time": "Wed Feb 29 19:33:06 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Feb 29 19:33:06 2012 -0800"
      },
      "message": "Merge \"Improve Wi-Fi hand-off\""
    },
    {
      "commit": "07573b32494acbabd21979d8b9584c1ed3f7a6ad",
      "tree": "ad3a4a15c889b4b175717cd38a28a92601ed82ae",
      "parents": [
        "6b48f088b1e0bed242118422c88fea8d714307e0"
      ],
      "author": {
        "name": "Irfan Sheriff",
        "email": "isheriff@google.com",
        "time": "Fri Jan 27 21:00:19 2012 -0800"
      },
      "committer": {
        "name": "Irfan Sheriff",
        "email": "isheriff@google.com",
        "time": "Wed Feb 29 17:33:36 2012 -0800"
      },
      "message": "Improve Wi-Fi hand-off\n\nWhen Wi-fi connects at L2 layer, the beacons reach and the device\ncan maintain a connection to the access point, but the application\nconnectivity can be flaky (due to bigger packet size exchange).\n\nWe now use Watchdog to monitor the quality of the last hop on\nWi-Fi using signal strength and ARP connectivity as indicators\nto decide if the link is good enough to switch to Wi-Fi as the uplink.\n\nARP pings are useful for link validation but can still get through\nwhen the application traffic fails to go through and thus not best indicator\nreal packet loss since they are tiny packets (28 bytes) and have\nmuch low chance of packet corruption than the regular data\npackets.\n\nSignal strength and ARP used together ends up working well in tests.\nThe goal is to switch to Wi-Fi after validating ARP transfer\nand RSSI and then switching out of Wi-Fi when we hit a low\nsignal strength threshold and waiting until the signal strength\nimproves and validating ARP transfer.\n\nChange-Id: Ica593291ec7772da892f03cf45b649635b730c47\n"
    },
    {
      "commit": "8a9b14d80530eccf801fa794bacf287813b5978f",
      "tree": "ce2ad7eb730de761e7d45c9f699b4f56d9d5bac0",
      "parents": [
        "a66be970999c5eec1c8efb46e196f19ae563fc9b",
        "5aeb85877a95cc12c0784757a9842983b04e8600"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Wed Feb 29 15:44:41 2012 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Feb 29 15:44:41 2012 -0800"
      },
      "message": "am 5aeb8587: Merge \"DRM framwork bug fix: add an API to release resources\"\n\n* commit \u00275aeb85877a95cc12c0784757a9842983b04e8600\u0027:\n  DRM framwork bug fix: add an API to release resources\n"
    },
    {
      "commit": "8662cab5c6a01ea5c426512e6f6d2cf3e158aea0",
      "tree": "3b59cda27e624d46603427888e906e3686c00379",
      "parents": [
        "c021a119a2b2b274e3a0bc06003e389a00de9112"
      ],
      "author": {
        "name": "Christopher Tate",
        "email": "ctate@google.com",
        "time": "Thu Feb 23 14:59:36 2012 -0800"
      },
      "committer": {
        "name": "Christopher Tate",
        "email": "ctate@google.com",
        "time": "Wed Feb 29 14:05:24 2012 -0800"
      },
      "message": "Merge: Introduce UpdateLocks\n\nAn \"UpdateLock\" works similarly to a wake lock in API: the caller is\nproviding a hint to the OS that now is not a good time to interrupt\nthe user/device in order to do intrusive work like applying OTAs.\nThis is particularly important for headless or kiosk-like products\nwhere ordinarily the update process will be automatically scheduled\nand proceed without user or administrator intervention.\n\nUpdateLocks require that the caller hold the new signatureOrSystem\npermission android.permission.UPDATE_LOCK.  acquire() and release()\nwill throw security exceptions if this is not the case.\n\nThe \"is now convenient?\" state is expressed to interested parties\nby way of a sticky broadcast sent only to registered listeners.  The\nbroadcast is protected; only the system can send it, so listeners\ncan trust it to be accurate.  The broadcast intent also includes a\ntimestamp (System.currentTimeMillis()) to help inform listeners that\nwish to implement scheduling policies based on when the device became\nidle.\n\nThe API change here is a tiny one: a dump(PrintWriter) method has been\nadded to the TokenWatcher class to facilitate getting information out\nof it for dumpsys purposes.  UpdateLock itself is still @hide.\n\nBug 5543442\n\nChange-Id: I3709c831fc1883d7cb753cd2d3ee8e10a61e7e48\n"
    },
    {
      "commit": "6225df010365d00b1d0f3b1ca13f18cea537c8e3",
      "tree": "f8ec6b625745c57b4a0dbe6aab02072cf10be8d4",
      "parents": [
        "d7fa7deef9bc0cf22bf450fdb062327697c087c4"
      ],
      "author": {
        "name": "Kei Takahashi",
        "email": "KeiA.Takahashi@jp.sony.com",
        "time": "Tue Jan 31 13:18:45 2012 +0900"
      },
      "committer": {
        "name": "Kei Takahashi",
        "email": "KeiA.Takahashi@jp.sony.com",
        "time": "Wed Feb 29 12:59:53 2012 +0900"
      },
      "message": "DRM framwork bug fix: add an API to release resources\n\nWhen DrmManagerClient object is created and released many times,\nthe process suddenly crashes.\nThe case can happen when we make many thumbnails of\nDRM-encrypted contents.\n\nThe problem is caused by shortage of file descriptors.\nDrmManagerClient releases references of file descriptors\nonly when GC runs. So file descriptors are kept long time\neven after the reference of DrmManagerClient are released.\n\nBy introducing DrmManagerClient#release() API,\nthe problem is solved. An application call this API\nwhen we no longer need to use DrmManagerClient object.\n\nChanges are made by SEMC and Sony.\n\nChange-Id: Ie0bbc29cc33872449824285a8d67b1c3cdd8082b\n"
    },
    {
      "commit": "8279570b222d46def4e541d71ef29dbfd9fbe3d7",
      "tree": "0c64808a15062ea0942f20fdd6e4c4e06e71596b",
      "parents": [
        "c1a1a4954071af55c772bd6b0b0de52edd9bf1e9"
      ],
      "author": {
        "name": "Gilles Debunne",
        "email": "debunne@google.com",
        "time": "Tue Feb 28 16:36:45 2012 -0800"
      },
      "committer": {
        "name": "Gilles Debunne",
        "email": "debunne@google.com",
        "time": "Tue Feb 28 16:36:45 2012 -0800"
      },
      "message": "Fix for broken build part 2. Update 16.txt too\n\nChange-Id: I8609dd818a6e4059f9b149a8089d681ac2972d66\n"
    },
    {
      "commit": "c1a1a4954071af55c772bd6b0b0de52edd9bf1e9",
      "tree": "549842c7214172485023774f9ba2827c06e42a52",
      "parents": [
        "c02859f6eb7ea5c3ea1719b68535f6b8ea2a4b0c"
      ],
      "author": {
        "name": "Gilles Debunne",
        "email": "debunne@google.com",
        "time": "Tue Feb 28 16:31:38 2012 -0800"
      },
      "committer": {
        "name": "Gilles Debunne",
        "email": "debunne@google.com",
        "time": "Tue Feb 28 16:31:38 2012 -0800"
      },
      "message": "Fix for broken build. update-api step missing.\n\nChange-Id: Ia8d3c92825cfdca8b8eef1c1badd1b514ceef18e\n"
    },
    {
      "commit": "e512ad5089eef76d080fc6fdd17dfb88ad8b72e9",
      "tree": "a5ab41eb26de07c303f77a31fcb221c98884b059",
      "parents": [
        "6fa13b5a02464281df56919009fa3af5a3f9026b",
        "060526f9856e52964eaf13df8db74f5fbdcb83b1"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Tue Feb 28 14:33:19 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Feb 28 14:33:19 2012 -0800"
      },
      "message": "Merge \"Deprecate default constructor for classes that should have been meant to be interfaces\""
    },
    {
      "commit": "8fe9260bbba4a2987164323d93537a61c65d5ac2",
      "tree": "6c42860d90e4c47912e9ba7556ee22a6caf1f069",
      "parents": [
        "af2abf5adae93b263381ea70d3a0c1a6f03f795f",
        "c4a9976aa15929a73ab7c0979d8b2e1e9eeadcc7"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Tue Feb 28 11:23:26 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Feb 28 11:23:26 2012 -0800"
      },
      "message": "Merge \"Deprecated a mis-spelled method and replaced it with a new method\""
    },
    {
      "commit": "c4a9976aa15929a73ab7c0979d8b2e1e9eeadcc7",
      "tree": "7b080af1f029f3d515f0a398baaf80849d4b2755",
      "parents": [
        "fd400f5f483d76a38a28155a7328a953ed3ec36f"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Mon Feb 27 18:13:37 2012 -0800"
      },
      "committer": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Mon Feb 27 18:25:31 2012 -0800"
      },
      "message": "Deprecated a mis-spelled method and replaced it with a new method\n\nChange-Id: Id049a4effab120c3f837cde60a87efcd89a64ec6\n"
    },
    {
      "commit": "060526f9856e52964eaf13df8db74f5fbdcb83b1",
      "tree": "830d8f468d530b01ac950b83484eb789959f0f67",
      "parents": [
        "fd400f5f483d76a38a28155a7328a953ed3ec36f"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Mon Feb 27 16:41:22 2012 -0800"
      },
      "committer": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Mon Feb 27 18:00:12 2012 -0800"
      },
      "message": "Deprecate default constructor for classes that should have been meant to be interfaces\n\no We should have not exposed these default constructors in the first place.\n\nChange-Id: Ia8bcfe77e9730021ad8870ece67c6d0eed8146ad\n"
    },
    {
      "commit": "5312d0805cda5f4e6c66b6c3fa84c7cb9fc72191",
      "tree": "4964d032a6b9171c840c9b42eaa18bd567caed61",
      "parents": [
        "41c31ef3fa1acf18f5fce3fcf1b2f5c6fd344fd6",
        "bd2516165e4d38f1ee7f7f0ceb038ebf7ea1b84a"
      ],
      "author": {
        "name": "Alon Albert",
        "email": "aalbert@google.com",
        "time": "Mon Feb 27 16:29:55 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Feb 27 16:29:55 2012 -0800"
      },
      "message": "Merge \"Add new Reminder Method: Alarm\""
    },
    {
      "commit": "5265466e8a5453e738713869f61ca45482b85319",
      "tree": "f5e5b79613f7e223895cb9b66e6aa2794d1b8469",
      "parents": [
        "2abb1381524bdbbc7a09b573505abde4178be2e3",
        "e639da7baa23121e35aa06d6e182558e0e755696"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Fri Feb 24 18:40:37 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Feb 24 18:40:37 2012 -0800"
      },
      "message": "Merge \"New development permissions.\""
    },
    {
      "commit": "b98a81f86ab87f1d718f329f03256111fdabd8d1",
      "tree": "0a21f893651cdcf5ebcb60839c62919b8a9cf3c1",
      "parents": [
        "8657477721f3ab2271130c50b7a66b8593496797"
      ],
      "author": {
        "name": "Adam Powell",
        "email": "adamp@google.com",
        "time": "Fri Feb 24 11:09:07 2012 -0800"
      },
      "committer": {
        "name": "Adam Powell",
        "email": "adamp@google.com",
        "time": "Fri Feb 24 16:59:03 2012 -0800"
      },
      "message": "Add support for optional titles in action modes\n\nOptional titles will only be displayed in the CAB if they entirely fit\ninstead of ellipsizing.\n\nFixes bug 5821883\n\nChange-Id: I0cfd6d4fd34a4fa9f520499d577706da30606811\n"
    },
    {
      "commit": "7b49b4bea8090bb8e5015225eb05686d3676205c",
      "tree": "7cfe655be70ea8adc3f9aed9d567cd6da768ae6c",
      "parents": [
        "6513daef5e34082d9670c4149252703d40f8d937",
        "e9d4c71f47f74ee9a4a490f62769ad010a17d19b"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Fri Feb 24 15:09:54 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Feb 24 15:09:54 2012 -0800"
      },
      "message": "Merge \"deprecate L_8, LA_88 and RGB_332 in sdk\""
    },
    {
      "commit": "e9d4c71f47f74ee9a4a490f62769ad010a17d19b",
      "tree": "8227f4727eb45324bf96bb18e4290f206f19108f",
      "parents": [
        "2d77b5332ac4ef5b252fbd8f56a195e0fce03292"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Fri Feb 24 14:58:36 2012 -0800"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Fri Feb 24 14:58:36 2012 -0800"
      },
      "message": "deprecate L_8, LA_88 and RGB_332 in sdk\n\nre-add support for pixelformats L_8, LA_88 and RGB_332 in libui\nfor backward compatibility.\n\nThis may or may not fix 6058926\n\nBug: 6049685\nChange-Id: Ic1b8b4cc994522f7fe664da64c0ef76b98bc6d53\n"
    },
    {
      "commit": "3f0c58eb708ca520e84396fe764147800395812f",
      "tree": "550651c9789b6950c1e3cc8e1c90fe084ba3ca71",
      "parents": [
        "525ece4098a636818148dd5a660ebe4d7a2138af",
        "2561b0b10a55841a08e0e1d467e73e10b1bf256d"
      ],
      "author": {
        "name": "Daniel Sandler",
        "email": "dsandler@android.com",
        "time": "Fri Feb 24 10:53:42 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Feb 24 10:53:42 2012 -0800"
      },
      "message": "Merge \"New notification priority and related APIs.\""
    },
    {
      "commit": "2561b0b10a55841a08e0e1d467e73e10b1bf256d",
      "tree": "707a5812a2d6a711838babe41fd4947b96f13649",
      "parents": [
        "c725a3705ba8646e134091981e84da99fe4076b1"
      ],
      "author": {
        "name": "Daniel Sandler",
        "email": "dsandler@android.com",
        "time": "Mon Feb 13 21:04:12 2012 -0500"
      },
      "committer": {
        "name": "Daniel Sandler",
        "email": "dsandler@android.com",
        "time": "Fri Feb 24 13:47:00 2012 -0500"
      },
      "message": "New notification priority and related APIs.\n\nThis change introduces a few new bits of data on\nNotification that will help the Notification Manager and\nSystem UI route and display them more intelligently:\n\n -\u003e priority: an integer in a predefined range that\n    indicates the app\u0027s best guess as to the relative\n    importance (to the user, right now) of that information\n\n -\u003e kind: a tag (really, set of tags) indicating the general\n    type of notification (realtime, asynchronous, etc)\n\n -\u003e extras: a Bundle of additional key/value pairs\n    associated with this notification (currently @hidden)\n\nThe notification manager takes these data into account when\nassigning to each notification a score which is passed with\nthe notification on to the system UI, where it can be used to\naffect presentation. For example:\n\n  - Spammy apps (identified explicitly by the user or by\n    some other means) will have their notifications scored\n    very negatively by the notification manager, allowing\n    the UI to suppress them\n  - Notifications of higher score might be shown larger\n    or in a different way\n  - Very important notifications (indicated by a very high\n    score) might interrupt the user during an otherwise\n    important task (videochat, game, etc)\n\nImplementation note: This replaces/extends the old internal\nnotion of \"priority\", which was mostly used to organize\nongoings and system notifications at the top of the panel.\n\nChange-Id: Ie063dc75f198a68e2b5734a3aa0cacb5aba1ac39\n"
    },
    {
      "commit": "bd2516165e4d38f1ee7f7f0ceb038ebf7ea1b84a",
      "tree": "4ebfad1a1e2f0b32a4dfeac002bcb147b6699871",
      "parents": [
        "394906170cbee383aef01acf17dfffece3de1cae"
      ],
      "author": {
        "name": "Alon Albert",
        "email": "aalbert@google.com",
        "time": "Thu Feb 23 10:30:51 2012 -0800"
      },
      "committer": {
        "name": "Alon Albert",
        "email": "aalbert@google.com",
        "time": "Fri Feb 24 09:40:27 2012 -0800"
      },
      "message": "Add new Reminder Method: Alarm\n\nChange-Id: I7c0bc3c7eb1cc3b76900a04760ace52a5535b617\n"
    },
    {
      "commit": "e639da7baa23121e35aa06d6e182558e0e755696",
      "tree": "7d956fc301eb1988a8646ff3a62786639a843da0",
      "parents": [
        "b8678d76c3e09d0d65255f3971b6112a48e19099"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Tue Feb 21 15:11:13 2012 -0800"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu Feb 23 16:39:15 2012 -0800"
      },
      "message": "New development permissions.\n\nThese are permissions that an application can request, but won\u0027t\nnormally be granted.  To have the permission granted, the user\nmust explicitly do so through a new \"adb shell pm grant\" command.\n\nI put these permissions in the \"development tools\" permission\ngroup.  Looking at the stuff there, I think all of the permissions\nwe already had in that group should be turned to development\npermissions; I don\u0027t think any of them are protecting public APIs,\nand they are really not things normal applications should use.\n\nThe support this, the protectionLevel of a permission has been\nmodified to consist of a base protection type with additional\nflags.  The signatureOrSystem permission has thus been converted\nto a signature base type with a new \"system\" flag; you can use\n\"system\" and/or \"dangerous\" flags with signature permissions as\ndesired.\n\nThe permissions UI has been updated to understand these new types\nof permissions and know when to display them.  Along with doing\nthat, it also now shows you which permissions are new when updating\nan existing application.\n\nThis also starts laying the ground-work for \"optional\" permissions\n(which development permissions are a certain specialized form of).\nCompleting that work requires some more features in the package\nmanager to understand generic optional permissions (having a\nfacility to not apply them when installing), along with the\nappropriate UI for the app and user to manage those permissions.\n\nChange-Id: I6571785c6bb5f6b291862b7a9be584885f88f3a5\n"
    },
    {
      "commit": "88572f7a3e9d7ef85c26865a0150f3c2041561c2",
      "tree": "30627dcff98dfa4a4058054ef198301b374be82c",
      "parents": [
        "745e02ae45d97fd5672ffc22ea854f011895a4e6"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Feb 21 11:47:18 2012 -0800"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Feb 22 15:06:06 2012 -0800"
      },
      "message": "Implementation of a java media codec interface and associated tools.\n\nChange-Id: I13e54062d4de584355c5d82bb027a68aeaf2923b\n"
    },
    {
      "commit": "e57319ff880c43b44aaab4905dc8997d97827520",
      "tree": "3fb494b7f3b52b95a4350d152962967915e366d1",
      "parents": [
        "abfac6a55984fc7f0cf044371104c4e1b0b65fbf"
      ],
      "author": {
        "name": "Selim Gurun",
        "email": "sgurun@google.com",
        "time": "Fri Feb 17 14:35:18 2012 -0800"
      },
      "committer": {
        "name": "Selim Gurun",
        "email": "sgurun@google.com",
        "time": "Fri Feb 17 14:35:18 2012 -0800"
      },
      "message": "Make the credential storage change action public.\n\nBug: 6009802\n\nWhen the credential storage changes, (adding/removing certs,\nresetting the storage, enabling/disabling trusted CAs, etc), the\napplications that use the storage has to be made aware of the\nfact that the storage changed, so they can clear any cached state,\nclose connections or take any other actions. Internally, this\napplies to webview. However, applications, potentially including\n3rd party browsers, also need this information.\n\nChange-Id: I765b97a3f38f45247ee3f6e127b490388d373847\n"
    },
    {
      "commit": "6d3d5057b445069e73fd06adbc11fa412e7c48c3",
      "tree": "ed57e591ab52911b368cf340574109df4d976dc0",
      "parents": [
        "e800892c4b4e05914f0d08a7928113193b39d037"
      ],
      "author": {
        "name": "Fabrice Di Meglio",
        "email": "fdimeglio@google.com",
        "time": "Wed Feb 15 20:22:56 2012 -0800"
      },
      "committer": {
        "name": "Fabrice Di Meglio",
        "email": "fdimeglio@google.com",
        "time": "Thu Feb 16 16:42:20 2012 -0800"
      },
      "message": "Improve textDirection APIs\n\nChange-Id: I8bff30f5adb0ab4077145d83ac4a716e04f289ac\n"
    },
    {
      "commit": "ccb1562e90d955416b9096d802464e37925486ef",
      "tree": "3e5b5e9be6762aa3f325d10c387e0692ed6cd564",
      "parents": [
        "c4c0a22ae982af65a16ef93d0cd3bc72149e9bfa"
      ],
      "author": {
        "name": "Fabrice Di Meglio",
        "email": "fdimeglio@google.com",
        "time": "Wed Feb 15 15:52:19 2012 -0800"
      },
      "committer": {
        "name": "Fabrice Di Meglio",
        "email": "fdimeglio@google.com",
        "time": "Wed Feb 15 15:52:19 2012 -0800"
      },
      "message": "Add View.onResolvePadding() as a public API\n\n- following a comment from Dianne on this CL:\n\nChange-Id: Ifa11d6ac423f205d0684297d25885eac1a89f279\nhttps://android-git.corp.google.com/g/#/c/123009/1\n"
    }
  ],
  "next": "aba0336170a856133e66f9bab509221d4934614b"
}
