)]}'
{
  "log": [
    {
      "commit": "da20efd99cb474ad07aa335f08c5a933e08ec625",
      "tree": "a70bc9308068b8c7b34dff8779391dbb6fbb1428",
      "parents": [
        "b04ec6a8a7e6a684eb4b8d434c87b76bbac9c80c",
        "cbf0983ec97879026e87fa97ff0b5c8786bfc8f8"
      ],
      "author": {
        "name": "Nick Pelly",
        "email": "npelly@google.com",
        "time": "Tue Feb 01 10:10:42 2011 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Feb 01 10:10:42 2011 -0800"
      },
      "message": "am cbf0983e: Merge \"Final final final Gingerbread MR API changes.\" into gingerbread\n\n* commit \u0027cbf0983ec97879026e87fa97ff0b5c8786bfc8f8\u0027:\n  Final final final Gingerbread MR API changes.\n"
    },
    {
      "commit": "f003e26df96067b4b136f0859012cb7ec3ed930f",
      "tree": "ba9fc5774bf961c77eadcf4ac427739b26771859",
      "parents": [
        "113834c5ab30bfc554202d0f3144a662d77f2484"
      ],
      "author": {
        "name": "Nick Pelly",
        "email": "npelly@google.com",
        "time": "Mon Jan 31 23:27:37 2011 -0800"
      },
      "committer": {
        "name": "Nick Pelly",
        "email": "npelly@google.com",
        "time": "Tue Feb 01 09:20:45 2011 -0800"
      },
      "message": "Final final final Gingerbread MR API changes.\n\nThis is it. I promise.\n\nACTION_TECHNOLOGY_DISCOVERED -\u003e ACTION_TECH_DISCOVERED\n    This was missed in our technology-\u003etech rename.\n\nHide TagTechnology.reconnect()\n    This is used to reset any per-connection state in a tag, by reconnecting\n    to it. The first problem is that it belongs on Tag, not TagTechnology. The\n    second problem is that it may become redundant once we add Tag.rediscover()\n    which will also reconnect to the tag, and will also return a new Tag with\n    newly created technologies enumerated. And the third and most significant\n    problem is that you can already achieve the same result by just calling\n    close() followed by connect().\n\nHide Tag.createMockTag()\n    This API cannot be used reliably. First it requires using int[] for the\n    technology list, but those int constants are now hidden. Second it requires\n    knowledge of the extras parcel used to fill technology specific data - also\n    not public.\n\nIntroduce TagTechnology.isConnected()\n    Every child class already impelmented this, and given that connect() and\n    close() are defined on the interface, then isConnected() should be there\n    too.\n\nModify Ndef.getType to return a string (not int)\n    Allows more flexibility in adding new NDEF types. Current public strings are\n    org.nfcforum.ndef.type1\n    org.nfcforum.ndef.type2\n    org.nfcforum.ndef.type3\n    org.nfcforum.ndef.type4\n    com.nxp.ndef.mifareclassic\n\nAdd NdefFormatable.formatReadOnly()\n    This allows you to make the tag read-only at the same time as performing\n    format and write. It is important because we currently don\u0027t have any\n    public API to re-enumerate a tag technology list after making a tag\n    NDEF compatible, so you can\u0027t perform the format as a seperate step\n    without physically removing the tag from field and returning it.\n\nModify Readonly -\u003e ReadOnly\n\nMake Tag class final\n\nChange-Id: Icf306aeb37b936ca3007e4868e99b6baceac4aff\n"
    },
    {
      "commit": "f7176dfbd284f7da49e5bccc2aa886b42039ba4a",
      "tree": "59e0425caee1efe6d638dd9a115d0a18f77253da",
      "parents": [
        "e97cc7d0b266ac0cbb1be7cf41ff8bb61067025e",
        "113834c5ab30bfc554202d0f3144a662d77f2484"
      ],
      "author": {
        "name": "Jeff Hamilton",
        "email": "jham@android.com",
        "time": "Mon Jan 31 10:05:13 2011 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Jan 31 10:05:13 2011 -0800"
      },
      "message": "am 113834c5: Commit the final API for level 10.\n\n* commit \u0027113834c5ab30bfc554202d0f3144a662d77f2484\u0027:\n  Commit the final API for level 10.\n"
    },
    {
      "commit": "113834c5ab30bfc554202d0f3144a662d77f2484",
      "tree": "26cf83187c08009f221d376a012a6b3e62fc2391",
      "parents": [
        "e88fa50be8d6709ef58b7aeb01c5efa059bcac2e"
      ],
      "author": {
        "name": "Jeff Hamilton",
        "email": "jham@android.com",
        "time": "Mon Jan 31 11:46:29 2011 -0600"
      },
      "committer": {
        "name": "Jeff Hamilton",
        "email": "jham@android.com",
        "time": "Mon Jan 31 11:46:29 2011 -0600"
      },
      "message": "Commit the final API for level 10.\n\nChange-Id: I56140f79ff599c1a9d03c0f53d700df402234bf1\n"
    },
    {
      "commit": "34afc2cd83d00be344521b7154a96a84af11c46b",
      "tree": "dfdcc5936c41463d9b8b83d920f3e23ea5baffb2",
      "parents": [
        "e49e30cc4d9411326735f15d92e8d7455467072f",
        "d350dc0492fab3614749955f5dcf21ec1c522b24"
      ],
      "author": {
        "name": "Nick Pelly",
        "email": "npelly@google.com",
        "time": "Thu Jan 27 16:26:28 2011 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Jan 27 16:26:28 2011 -0800"
      },
      "message": "am d350dc04: Merge \"API: Make close() throw an IOException.\" into gingerbread\n\n* commit \u0027d350dc0492fab3614749955f5dcf21ec1c522b24\u0027:\n  API: Make close() throw an IOException.\n"
    },
    {
      "commit": "3fcedf77286a078ebd7ac8c082365bd80703dfdc",
      "tree": "b6061a2b9933e2ae120bd96b1e79b6d5d2d264f1",
      "parents": [
        "21d0a173f138563e2eaba286b0eb505f987918a9"
      ],
      "author": {
        "name": "Nick Pelly",
        "email": "npelly@google.com",
        "time": "Thu Jan 27 14:47:02 2011 -0800"
      },
      "committer": {
        "name": "Nick Pelly",
        "email": "npelly@google.com",
        "time": "Thu Jan 27 16:17:14 2011 -0800"
      },
      "message": "API: Make close() throw an IOException.\n\nIOException on close() can be useful to indicate that in-progress transactions\nwere canceled.\n\nI also audited all of our tech classes to make sure every function that needs\nto throw IOException does so.\n\nChange-Id: Iaa9c43d79d59ff85772d5c3e4b4d57a6fa8df4cf\n"
    },
    {
      "commit": "55e124c4487f99dd25c1dd96c75f02bbdde370bb",
      "tree": "2ddfaee8d44e02a6f295d6800719ae2b9f611dcd",
      "parents": [
        "b27ce984510ed287b87cb7498efb973fb651e8cb",
        "eab0e97bf0951057a0624cdde2f4bc5434ade0ac"
      ],
      "author": {
        "name": "Nick Pelly",
        "email": "npelly@google.com",
        "time": "Thu Jan 27 13:25:52 2011 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Jan 27 13:25:52 2011 -0800"
      },
      "message": "am eab0e97b: Merge \"Clean up MifareUltralight API.\" into gingerbread\n\n* commit \u0027eab0e97bf0951057a0624cdde2f4bc5434ade0ac\u0027:\n  Clean up MifareUltralight API.\n"
    },
    {
      "commit": "4a5e2532205252e0b8616ebc07ca089fd3721681",
      "tree": "5e66c1e4d3ebe49e0aed1f00103c3a556153857c",
      "parents": [
        "ba3dd32357b47ab0b55a1976bbafc225df78a59d"
      ],
      "author": {
        "name": "Nick Pelly",
        "email": "npelly@google.com",
        "time": "Thu Jan 27 10:04:04 2011 -0800"
      },
      "committer": {
        "name": "Nick Pelly",
        "email": "npelly@google.com",
        "time": "Thu Jan 27 12:22:56 2011 -0800"
      },
      "message": "Clean up MifareUltralight API.\n\no Some javadoc updates\no writeBlock -\u003e writePages  (Block means something else in NFC Forum).\no validate page offset\n\nChange-Id: Icae54db3397d57aaa451caaa86d56e8ba82507f2\n"
    },
    {
      "commit": "f0b7977f6844bec7a8f4a252bea497a3f0abbe07",
      "tree": "1dcb0af1e1a27298c9454dfe20b141fb1ac5585a",
      "parents": [
        "6af61b843511bc5b669d30b980c4a9e2682da47c",
        "c33acae9060162c5d2c28613b71c3bb1e0ef4c1c"
      ],
      "author": {
        "name": "Jeff Hamilton",
        "email": "jham@android.com",
        "time": "Tue Jan 25 16:15:58 2011 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Jan 25 16:15:58 2011 -0800"
      },
      "message": "am c33acae9: Merge \"Fix the build, proper current.xml.\" into gingerbread\n\n* commit \u0027c33acae9060162c5d2c28613b71c3bb1e0ef4c1c\u0027:\n  Fix the build, proper current.xml.\n"
    },
    {
      "commit": "978afba57c62d797a7e80b1e7018c95ccfe232ab",
      "tree": "6beb3fe660b4f4ec986a6460d33637a5361e29a1",
      "parents": [
        "f126ad3b6484ef62eed202f1f49cc4557c0a3848"
      ],
      "author": {
        "name": "Jeff Hamilton",
        "email": "jham@android.com",
        "time": "Tue Jan 25 18:10:58 2011 -0600"
      },
      "committer": {
        "name": "Jeff Hamilton",
        "email": "jham@android.com",
        "time": "Tue Jan 25 18:10:58 2011 -0600"
      },
      "message": "Fix the build, proper current.xml.\n\nChange-Id: I9b02206042c74fd5c329fe2b70ed2b6b91d41382\n"
    },
    {
      "commit": "eb645a15b95ba917ce360b135f92cbcb6df56104",
      "tree": "6495b37c79babb85800b0737367fc3d6ac5fe0c1",
      "parents": [
        "4b44026879723d924ddc306ea1e330a9e87c3a1c",
        "f126ad3b6484ef62eed202f1f49cc4557c0a3848"
      ],
      "author": {
        "name": "Jeff Hamilton",
        "email": "jham@android.com",
        "time": "Tue Jan 25 14:41:55 2011 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Jan 25 14:41:55 2011 -0800"
      },
      "message": "am f126ad3b: Merge \"Use classnames instead of ints for NFC techs.\" into gingerbread\n\n* commit \u0027f126ad3b6484ef62eed202f1f49cc4557c0a3848\u0027:\n  Use classnames instead of ints for NFC techs.\n"
    },
    {
      "commit": "d88e9aa575eb3a9d20cdb0e8918d54993e1ce1e0",
      "tree": "b18543fc387045158b4ea3ea6b2ada7f12b0b092",
      "parents": [
        "5e81a6e21e9977acd9dfafaf030bf51c8572a98f"
      ],
      "author": {
        "name": "Jeff Hamilton",
        "email": "jham@android.com",
        "time": "Mon Jan 24 14:53:00 2011 -0600"
      },
      "committer": {
        "name": "Jeff Hamilton",
        "email": "jham@android.com",
        "time": "Tue Jan 25 16:32:26 2011 -0600"
      },
      "message": "Use classnames instead of ints for NFC techs.\n\nThis makes the system more flexible and allows\nadding new technology types without having to\nupdate the API.\n\nChange-Id: Iaee6b633965e501a70e8afc3f1d54d9d94a4d05a\n"
    },
    {
      "commit": "0065f398c1bfa661f620fcf18bf203f5cbed3845",
      "tree": "88504327bca2f3860c453f2cb3f9e43e08d9871f",
      "parents": [
        "12619677b0afafa077ed92fa92374bc4d8e63884",
        "c896d85c15d8a6c98c93df57d88481b89eb878f5"
      ],
      "author": {
        "name": "Nick Pelly",
        "email": "npelly@google.com",
        "time": "Sun Jan 23 22:14:54 2011 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Sun Jan 23 22:14:54 2011 -0800"
      },
      "message": "am c896d85c: Merge \"Add operands to mifare classic increment, decrement.\" into gingerbread\n\n* commit \u0027c896d85c15d8a6c98c93df57d88481b89eb878f5\u0027:\n  Add operands to mifare classic increment, decrement.\n"
    },
    {
      "commit": "1e233af3a783d44843a6f2b895d00a5d3b0c29f0",
      "tree": "288cd1a3fe4ae9156dbc0d17ac5a499674a7da6e",
      "parents": [
        "e45083b11bef915f713379fb4106dd2ebd897d03"
      ],
      "author": {
        "name": "Nick Pelly",
        "email": "npelly@google.com",
        "time": "Sun Jan 23 22:11:35 2011 -0800"
      },
      "committer": {
        "name": "Nick Pelly",
        "email": "npelly@google.com",
        "time": "Sun Jan 23 22:11:44 2011 -0800"
      },
      "message": "Add operands to mifare classic increment, decrement.\n\nChange-Id: Ib35f615142bda48a5e33888a09ebae2880624788\n"
    },
    {
      "commit": "12619677b0afafa077ed92fa92374bc4d8e63884",
      "tree": "e1f87b23aa9df298c653baecfbbad4e42ef1cdb6",
      "parents": [
        "535ec16c78eada2d32669f5a2f8e3c227a5beecc",
        "da01b4abb817fcebdf33c27aaa6a1ac4a61beee0"
      ],
      "author": {
        "name": "Nick Pelly",
        "email": "npelly@google.com",
        "time": "Sun Jan 23 21:39:39 2011 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Sun Jan 23 21:39:39 2011 -0800"
      },
      "message": "am da01b4ab: Merge \"Make MifareClassic methods more consistent.\" into gingerbread\n\n* commit \u0027da01b4abb817fcebdf33c27aaa6a1ac4a61beee0\u0027:\n  Make MifareClassic methods more consistent.\n"
    },
    {
      "commit": "e45083b11bef915f713379fb4106dd2ebd897d03",
      "tree": "4035d2404621c0ddc9002eb59233b7c5fa5d0ead",
      "parents": [
        "dc54a8c742e96d6ea8ef3e18c0f2ee1235899599"
      ],
      "author": {
        "name": "Nick Pelly",
        "email": "npelly@google.com",
        "time": "Fri Jan 21 22:11:29 2011 -0800"
      },
      "committer": {
        "name": "Nick Pelly",
        "email": "npelly@google.com",
        "time": "Sun Jan 23 21:32:57 2011 -0800"
      },
      "message": "Make MifareClassic methods more consistent.\n\nRemove method overloading for combinations of sector+block addressing.\nInstead provide methods that more closly match the raw commands, and more\nefficient helpers to convert between blocks and sectors.\n\no fix off-by-one bug in getBlockCountInSector()\no add BLOCK_SIZE\no remove DESFIRE not operating in classic emulation (SAK 0x20)\no hide isEmulated(), there is no use case, and the info is available elsewhere\no getTotalBlockCount() -\u003e getBlockCount()\no getBlockCount(int) -\u003e getBlockCountInSector(int)\no introduce blockToSector() and sectorToBlock()\no remove authenticateBlock()\n    make it really clear that authentication is per sector, and reduce function\n    explosion. blockToSector() allows you to use authenticateSector...\no explicit authenticateSectorWithKeyA() / authenticateSectorWithKeyB()\n    get rid of magic boolean\no remove all (int sector, int block) parameters\n    always address by absolute block. this makes the API crystal clear, and\n    helps reduce function explosion\no validation of all sector and block indices\no dont \u0026 0xff when converting to byte - its redundant\no Remove TYPE_OTHER. Mifare Classic types are well-known and stable.\n\nChange-Id: I3c9f8254ff307f31b388b3d7592c862d5de6afa5\n"
    },
    {
      "commit": "446aea40eb1d22e56366c40316c2f0cf027a097d",
      "tree": "8f077e1a8f24df47374a92b6468615d0d683df93",
      "parents": [
        "15efe4cb4c7d5bd19266ff740b1a3c8a703cd3a9"
      ],
      "author": {
        "name": "Jeff Hamilton",
        "email": "jham@android.com",
        "time": "Fri Jan 21 01:13:06 2011 -0600"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Jan 21 12:33:49 2011 -0800"
      },
      "message": "API changes for NFC.\n\nBug: 3366009\nChange-Id: Ia28e03e1501421906b640b78d4c9a59a20e9c668\n"
    },
    {
      "commit": "4e21e1d21a877cce4db5ec8c5786604cc10f2d7e",
      "tree": "25cadcf38afab0b0874f35a029e8ee5604a153bc",
      "parents": [
        "11576102a9794ef964a08bc372dc09803f58997a"
      ],
      "author": {
        "name": "Jeff Hamilton",
        "email": "jham@android.com",
        "time": "Fri Jan 21 01:13:06 2011 -0600"
      },
      "committer": {
        "name": "Jeff Hamilton",
        "email": "jham@android.com",
        "time": "Fri Jan 21 13:32:58 2011 -0600"
      },
      "message": "API changes for NFC.\n\nBug: 3366009\nChange-Id: Ia28e03e1501421906b640b78d4c9a59a20e9c668\n"
    },
    {
      "commit": "19fdccfdf85148c0dde68b6ac8bb075b192193e4",
      "tree": "6991e738f15e2d170d1e36064057fc2b4e46e8fe",
      "parents": [
        "b6e89affd5d119f40e5c8a40f2d4f29ca5e534ca",
        "11576102a9794ef964a08bc372dc09803f58997a"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu Jan 20 18:18:32 2011 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Jan 20 18:18:32 2011 -0800"
      },
      "message": "am 11576102: Fix issue #3373438: Update GBMR versions\n\n* commit \u002711576102a9794ef964a08bc372dc09803f58997a\u0027:\n  Fix issue #3373438: Update GBMR versions\n"
    },
    {
      "commit": "11576102a9794ef964a08bc372dc09803f58997a",
      "tree": "b4aba0f4b804482d9e08449c75a54f7c68cac4ef",
      "parents": [
        "65d39eeb9b032e5507a01daa25afff62b29bffe4"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu Jan 20 12:16:43 2011 -0800"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu Jan 20 12:16:43 2011 -0800"
      },
      "message": "Fix issue #3373438: Update GBMR versions\n\nChange-Id: Ic4b4f1b0534fd2fbd6322eae01a4cb9d5a67cc6f\n"
    },
    {
      "commit": "e5099cd3f58808e3d636c1b0cbbf5dfed9af3b08",
      "tree": "55a5d24a75109d315ff077f39aa5e933889f9f5d",
      "parents": [
        "8216044435d066a6279d1a733b919156bdc9325f",
        "b7d6ffd76f6c47af488494f5de9560ec490e8241"
      ],
      "author": {
        "name": "Nick Pelly",
        "email": "npelly@google.com",
        "time": "Tue Jan 18 18:56:45 2011 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Jan 18 18:56:45 2011 -0800"
      },
      "message": "am b7d6ffd7: Merge \"Change signature of MifareClassic.authenticate*() to throw IOException.\" into gingerbread\n\n* commit \u0027b7d6ffd76f6c47af488494f5de9560ec490e8241\u0027:\n  Change signature of MifareClassic.authenticate*() to throw IOException.\n"
    },
    {
      "commit": "0316d4a24ff4b1ebf832f3ca9847771580eeac2f",
      "tree": "5a0f24e07c5fe43b430c1e0ef74337b3c36d8282",
      "parents": [
        "bf34061bb4af12aa9efaab653ae413f2bce4a240"
      ],
      "author": {
        "name": "Nick Pelly",
        "email": "npelly@google.com",
        "time": "Tue Jan 18 18:52:37 2011 -0800"
      },
      "committer": {
        "name": "Nick Pelly",
        "email": "npelly@google.com",
        "time": "Tue Jan 18 18:52:37 2011 -0800"
      },
      "message": "Change signature of MifareClassic.authenticate*() to throw IOException.\n\nUpdate API for this and the previous commit.\n\nChange-Id: I19275a5d00081bd0f00afea59a2b673344a32954\n"
    },
    {
      "commit": "3d06b1e0e954537254b87be55a4050e38351e527",
      "tree": "42cd83a57debffcab089633b2f3218ea3938aa16",
      "parents": [
        "4707dc73e236b7055644401b73cd30164b7ad157",
        "a701cf85a0167a6bb623343388a7dca6f2b61ac5"
      ],
      "author": {
        "name": "Martijn Coenen",
        "email": "martijn.coenen@nxp.com",
        "time": "Tue Jan 18 11:38:28 2011 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Jan 18 11:38:28 2011 -0800"
      },
      "message": "am a701cf85: Implement IsoDep timeout handling (API).\n\n* commit \u0027a701cf85a0167a6bb623343388a7dca6f2b61ac5\u0027:\n  Implement IsoDep timeout handling (API).\n"
    },
    {
      "commit": "a701cf85a0167a6bb623343388a7dca6f2b61ac5",
      "tree": "2a422735fabb4ab3c6a69131b8c563cad0580b58",
      "parents": [
        "72abf01a8b6958ac1f86d36302a8462c4f51fd9d"
      ],
      "author": {
        "name": "Martijn Coenen",
        "email": "martijn.coenen@nxp.com",
        "time": "Wed Jan 12 21:17:43 2011 +0100"
      },
      "committer": {
        "name": "Nick Pelly",
        "email": "npelly@google.com",
        "time": "Tue Jan 18 11:35:46 2011 -0800"
      },
      "message": "Implement IsoDep timeout handling (API).\n\nAdded a method for setting the timeout on IsoDep transactions.\n\nChange-Id: Ie627e7a826556e46295fefe69b9be83ebf911d93\n"
    },
    {
      "commit": "97ac293507bfa2913e115f736df3dfd91230a232",
      "tree": "84a208503b1de4a57b4a528396d951068d6b63dd",
      "parents": [
        "8c1cd157fb4fa2c54b33819a5b10a0abb6ba7f36",
        "0716ea144d94b9dfce4670e90a849db19a492da9"
      ],
      "author": {
        "name": "Jeff Hamilton",
        "email": "jham@android.com",
        "time": "Tue Jan 18 11:26:39 2011 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Jan 18 11:26:39 2011 -0800"
      },
      "message": "am 0716ea14: Merge \"Javadoc updates for NFC.\" into gingerbread\n\n* commit \u00270716ea144d94b9dfce4670e90a849db19a492da9\u0027:\n  Javadoc updates for NFC.\n"
    },
    {
      "commit": "8c1cd157fb4fa2c54b33819a5b10a0abb6ba7f36",
      "tree": "c349bacdf949f9b8309981f504a8ac0097b6ab78",
      "parents": [
        "849dc24fa6a2bb6e1e5496c4710ee60c32abdb7f",
        "3a223404e7589831a901cb16c5ce97685bc1f3f8"
      ],
      "author": {
        "name": "Jeff Hamilton",
        "email": "jham@android.com",
        "time": "Tue Jan 18 11:26:22 2011 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Jan 18 11:26:22 2011 -0800"
      },
      "message": "am 3a223404: Merge \"New APIs for NDEF Push Protocol.\" into gingerbread\n\n* commit \u00273a223404e7589831a901cb16c5ce97685bc1f3f8\u0027:\n  New APIs for NDEF Push Protocol.\n"
    },
    {
      "commit": "0716ea144d94b9dfce4670e90a849db19a492da9",
      "tree": "03644ef093ddc36b9cb42ed37f8b4440c2c47fc8",
      "parents": [
        "3a223404e7589831a901cb16c5ce97685bc1f3f8",
        "ce3224cda51f946871daa1e11e3976e25c59e6fa"
      ],
      "author": {
        "name": "Jeff Hamilton",
        "email": "jham@android.com",
        "time": "Tue Jan 18 11:01:55 2011 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jan 18 11:01:55 2011 -0800"
      },
      "message": "Merge \"Javadoc updates for NFC.\" into gingerbread"
    },
    {
      "commit": "3a223404e7589831a901cb16c5ce97685bc1f3f8",
      "tree": "1bc1fed378cea8d961efdaecfa147fefdc447670",
      "parents": [
        "524133cc793b5e372cc97c62653281605f57b5b3",
        "33ff2405581271adf14ed4e45597a3b0b80a46ab"
      ],
      "author": {
        "name": "Jeff Hamilton",
        "email": "jham@android.com",
        "time": "Tue Jan 18 11:01:05 2011 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jan 18 11:01:05 2011 -0800"
      },
      "message": "Merge \"New APIs for NDEF Push Protocol.\" into gingerbread"
    },
    {
      "commit": "ce3224cda51f946871daa1e11e3976e25c59e6fa",
      "tree": "e52c406b8de6062e15810afe96c3593da546eb76",
      "parents": [
        "33ff2405581271adf14ed4e45597a3b0b80a46ab"
      ],
      "author": {
        "name": "Jeff Hamilton",
        "email": "jham@android.com",
        "time": "Mon Jan 17 11:05:03 2011 -0800"
      },
      "committer": {
        "name": "Jeff Hamilton",
        "email": "jham@android.com",
        "time": "Tue Jan 18 10:57:30 2011 -0800"
      },
      "message": "Javadoc updates for NFC.\n\nChange-Id: Ibd91829979576297599fbcc9eb8054924af1d527\n"
    },
    {
      "commit": "849dc24fa6a2bb6e1e5496c4710ee60c32abdb7f",
      "tree": "5c565286b72233f286c94ea9404e0f5401643013",
      "parents": [
        "e26aa3f78a33af5720e141e98a1ab0c77ef0456d",
        "524133cc793b5e372cc97c62653281605f57b5b3"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Mon Jan 17 13:05:24 2011 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Jan 17 13:05:24 2011 -0800"
      },
      "message": "am 524133cc: Remove API that snuck into MockPackageManager\n\n* commit \u0027524133cc793b5e372cc97c62653281605f57b5b3\u0027:\n  Remove API that snuck into MockPackageManager\n"
    },
    {
      "commit": "524133cc793b5e372cc97c62653281605f57b5b3",
      "tree": "7d2ff33bb31ad9daa4a17ed5d79abe12626f36c2",
      "parents": [
        "34d2b41e48281d1df2c844e004740f008e699093"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Mon Jan 17 12:40:57 2011 -0800"
      },
      "committer": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Mon Jan 17 12:40:57 2011 -0800"
      },
      "message": "Remove API that snuck into MockPackageManager\n\nWe didn\u0027t release the get/setPackageObbPath API, but it snuck into\nMockPackageManager. However, it is not usable as a developer anyway.\nRemoving it so it doesn\u0027t stay in the API forever.\n\nChange-Id: Ia569754691dc3a9f2672c1f25e4e08d780db6028\n"
    },
    {
      "commit": "e26aa3f78a33af5720e141e98a1ab0c77ef0456d",
      "tree": "064acf99973b68c4db14bfcfa863d8ddee8763b2",
      "parents": [
        "3392b8e23e7eb0275071af621802ed04c829c911",
        "34d2b41e48281d1df2c844e004740f008e699093"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Mon Jan 17 12:23:43 2011 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Jan 17 12:23:43 2011 -0800"
      },
      "message": "am 34d2b41e: Revert \"Add the {get,set}PackageObbPaths calls to API\"\n\n* commit \u002734d2b41e48281d1df2c844e004740f008e699093\u0027:\n  Revert \"Add the {get,set}PackageObbPaths calls to API\"\n"
    },
    {
      "commit": "34d2b41e48281d1df2c844e004740f008e699093",
      "tree": "15bb723f523d330dd8eedb0d1ebd022637d2e1b6",
      "parents": [
        "4a2e478a5bf6b4650181d1dfa643eadcc387fcec"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Sun Jan 16 17:25:18 2011 -0800"
      },
      "committer": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Mon Jan 17 11:49:22 2011 -0800"
      },
      "message": "Revert \"Add the {get,set}PackageObbPaths calls to API\"\n\nThis reverts commit 6c4d904851772313930f800ac7c323cf90c709bb.\n\nGoing with a different tactic that doesn\u0027t dump stuff on\nPackageManagerService.\n\nBug: 3214719\nChange-Id: I0bbeccf3c21d264deda4256eb53713d2c98284f4\n"
    },
    {
      "commit": "33ff2405581271adf14ed4e45597a3b0b80a46ab",
      "tree": "63a72bace2fa58f341fc66c4a224d69f61fbdb0d",
      "parents": [
        "b73203ab7e308b747819de2b2400afe971ef3bff"
      ],
      "author": {
        "name": "Jeff Hamilton",
        "email": "jham@android.com",
        "time": "Mon Jan 17 07:59:03 2011 -0800"
      },
      "committer": {
        "name": "Jeff Hamilton",
        "email": "jham@android.com",
        "time": "Mon Jan 17 08:07:24 2011 -0800"
      },
      "message": "New APIs for NDEF Push Protocol.\n\nThe NPP is only usable by the foregorund\nactivity to prevent dispatching confusion\non the far end.\n\nChange-Id: I08475a52083fd7f81b79b7fe2faf4e126121a809\n"
    },
    {
      "commit": "9286cfe5017363d95798d85163ec4f28aeb0c675",
      "tree": "cd0907a081cd799a4dc67f00072006fd850c016a",
      "parents": [
        "ef6abd8a3e4b05cb9d94f29f4e8ffc7bb2ecec77",
        "83fdc69ea0beb715dd45f0a4285cb5d780f8018a"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Fri Jan 14 18:33:51 2011 -0800"
      },
      "committer": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Fri Jan 14 18:33:51 2011 -0800"
      },
      "message": "merge 83fdc69e from gingerbread - do not merge\n\nChange-Id: Ib1e9e12244a44f75a93d66142e71915de6386680\n"
    },
    {
      "commit": "83fdc69ea0beb715dd45f0a4285cb5d780f8018a",
      "tree": "a2cf8694c781ff994fa1eb291358a9b9f6232a65",
      "parents": [
        "a788a9430956dabbc1387e5cccc15f9f41639c95",
        "9efe47374b61afd0ce84afa64e9fa5b41dfaef22"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Fri Jan 14 16:27:48 2011 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jan 14 16:27:48 2011 -0800"
      },
      "message": "Merge \"Squash commits of the following patches, cherry-picked from other branch - do not merge.\" into gingerbread"
    },
    {
      "commit": "ef6abd8a3e4b05cb9d94f29f4e8ffc7bb2ecec77",
      "tree": "5d40eff2694b6e2b8ccecf68465ce607d0403391",
      "parents": [
        "dd4a1e3825f4f379ba36fd721f78de0101bb1833",
        "a788a9430956dabbc1387e5cccc15f9f41639c95"
      ],
      "author": {
        "name": "Jaikumar Ganesh",
        "email": "jaikumar@google.com",
        "time": "Fri Jan 14 16:15:29 2011 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Jan 14 16:15:29 2011 -0800"
      },
      "message": "am a788a943: Merge \"Do Not Merge: Expose insecure rfcomm Bluetooth API.\" into gingerbread\n\n* commit \u0027a788a9430956dabbc1387e5cccc15f9f41639c95\u0027:\n  Do Not Merge: Expose insecure rfcomm Bluetooth API.\n"
    },
    {
      "commit": "a788a9430956dabbc1387e5cccc15f9f41639c95",
      "tree": "8f071a18830930364b8b3526468eb6c44f52be31",
      "parents": [
        "29c99aaaaed00c605fb6cd64de169fafad0e40ed",
        "a3363ef2cdf27e8d652297e9b916d085c5550a28"
      ],
      "author": {
        "name": "Jaikumar Ganesh",
        "email": "jaikumar@google.com",
        "time": "Fri Jan 14 16:11:41 2011 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jan 14 16:11:41 2011 -0800"
      },
      "message": "Merge \"Do Not Merge: Expose insecure rfcomm Bluetooth API.\" into gingerbread"
    },
    {
      "commit": "a3363ef2cdf27e8d652297e9b916d085c5550a28",
      "tree": "f3229cdbb5ccb0eb81f3e902c66635047870719a",
      "parents": [
        "9aac2e2b9541c424ca02483631b08949f0e90c8c"
      ],
      "author": {
        "name": "Jaikumar Ganesh",
        "email": "jaikumar@google.com",
        "time": "Thu Jan 13 22:50:51 2011 -0800"
      },
      "committer": {
        "name": "Jaikumar Ganesh",
        "email": "jaikumar@google.com",
        "time": "Fri Jan 14 13:24:03 2011 -0800"
      },
      "message": "Do Not Merge: Expose insecure rfcomm Bluetooth API.\n\nThis complements the secure rfcomm API.\nThe link key is unauthenticated and is subject to MITM attacks.\nThe link key may be encrypted depending on the type of Bluetooth device.\nThis helps apps which don\u0027t need the extra security or\nhave their own security layer built on top of the rfcomm link.\n\nBug: 3352266\n\nChange-Id: I633fd0372e5e23288d6fec950dd1abc2896031f1\n"
    },
    {
      "commit": "06bb3aef0d05f925282dd521d673ef779a97a793",
      "tree": "669c7f4ffd7f0074fe7e3a307321cf1adfb32327",
      "parents": [
        "62cd5c9788abbd5b715ec2a6eaf64dd3945fdbaf",
        "52d3203ef69d4babbc4dd030a15c08c0b8d1d226"
      ],
      "author": {
        "name": "Jeff Hamilton",
        "email": "jham@android.com",
        "time": "Thu Jan 13 12:46:16 2011 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Jan 13 12:46:16 2011 -0800"
      },
      "message": "am 52d3203e: Add dispatching overrides for foreground apps.\n\n* commit \u002752d3203ef69d4babbc4dd030a15c08c0b8d1d226\u0027:\n  Add dispatching overrides for foreground apps.\n"
    },
    {
      "commit": "52d3203ef69d4babbc4dd030a15c08c0b8d1d226",
      "tree": "bb69787ab4b413482825c83dbd2fef2ff713ad88",
      "parents": [
        "61d9ffbfd86dfe6bacce431b8ed9eebe1cfd8178"
      ],
      "author": {
        "name": "Jeff Hamilton",
        "email": "jham@android.com",
        "time": "Sat Jan 08 15:31:26 2011 -0600"
      },
      "committer": {
        "name": "Jeff Hamilton",
        "email": "jham@android.com",
        "time": "Thu Jan 13 14:24:07 2011 -0600"
      },
      "message": "Add dispatching overrides for foreground apps.\n\nApps can register to override the default dispatching\nbut only when they\u0027re in the foreground.\n\nChange-Id: I8e9a9254d3f79f097fb3c8c677d806043574ba4d\n"
    },
    {
      "commit": "62cd5c9788abbd5b715ec2a6eaf64dd3945fdbaf",
      "tree": "e28d59367c753543283623d54d9c43f301913162",
      "parents": [
        "1dac4cdd6faba15426a0b37a7a615c04f5a35394",
        "61d9ffbfd86dfe6bacce431b8ed9eebe1cfd8178"
      ],
      "author": {
        "name": "Wei-Ta Chen",
        "email": "weita@google.com",
        "time": "Thu Jan 13 12:06:38 2011 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Jan 13 12:06:38 2011 -0800"
      },
      "message": "am 61d9ffbf: Merge \"Do not merge.\" into gingerbread\n\n* commit \u002761d9ffbfd86dfe6bacce431b8ed9eebe1cfd8178\u0027:\n  Do not merge.\n"
    },
    {
      "commit": "61d9ffbfd86dfe6bacce431b8ed9eebe1cfd8178",
      "tree": "736dddaecfefde4c3fd22c468cd889b5a72a7a2c",
      "parents": [
        "4330b1464d26fa693b61d496092e10ce0419ee3d",
        "25bce3a673afef6a7858270afae4395b4ab53de3"
      ],
      "author": {
        "name": "Wei-Ta Chen",
        "email": "weita@google.com",
        "time": "Thu Jan 13 12:02:32 2011 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jan 13 12:02:32 2011 -0800"
      },
      "message": "Merge \"Do not merge.\" into gingerbread"
    },
    {
      "commit": "9efe47374b61afd0ce84afa64e9fa5b41dfaef22",
      "tree": "4bb85e1b5ef19ce8cad358a9a52ab05f2e6077e4",
      "parents": [
        "a29bf14e1d2857debc632ce4304a1c72dded348c"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Thu Dec 02 17:42:08 2010 -0800"
      },
      "committer": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Wed Jan 12 17:12:46 2011 -0800"
      },
      "message": "Squash commits of the following patches, cherry-picked from other branch - do not merge.\n\no Prepare for publishing MediaMetadataRetriever as public API\n  step one:\n  o replaced captureFrame with getFrameAtTime\n  o removed getMode\n\no Replace MediaMetadataRetriever.captureFrame() with MediaMetadataRetriever.getFrameAtTime()\n  as part of the preparation for publishing MediaMetadataRetriever as public Java API\n\no Remove captureFrame from MediaMetadataRetriever.java class\n  It has been replaced by getFrameAtTime() method\n\no Replace extractAlbumArt() with getEmbeddedPicture() in MediaMetadataRetriever.java\n\no Publish MediaMetadataRetriever.java as public API\n  o Removed setMode() methods and related mode constants\n  o Removed some of the unused the metadata keys\n  o Updated the javadoc\n  o part of a multi-project change.\n\nbug - 3309041\n\nChange-Id: I2efb6e8b8d52897186b016cb4efda6862f5584c4\n"
    },
    {
      "commit": "470750793b6e930a323ee63cbed05c43dc435ba1",
      "tree": "3ff696f1e9022f62934bdc0e256ca123c2028bfb",
      "parents": [
        "471de1f5b3cc629739d8315ff195d6af928e7ae4",
        "e8c04db71e347396e9537ead7113ba9f46706e44"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Wed Jan 12 15:06:51 2011 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Jan 12 15:06:51 2011 -0800"
      },
      "message": "am e8c04db7: Merge \"Add the {get,set}PackageObbPaths calls to API\" into gingerbread\n\n* commit \u0027e8c04db71e347396e9537ead7113ba9f46706e44\u0027:\n  Add the {get,set}PackageObbPaths calls to API\n"
    },
    {
      "commit": "e8c04db71e347396e9537ead7113ba9f46706e44",
      "tree": "bde21a44fcdbeb43afce3df93dca73990f354436",
      "parents": [
        "c8f42fb69867f171c04013b1b1a8f7e897ae3685",
        "6c4d904851772313930f800ac7c323cf90c709bb"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Wed Jan 12 15:03:43 2011 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jan 12 15:03:43 2011 -0800"
      },
      "message": "Merge \"Add the {get,set}PackageObbPaths calls to API\" into gingerbread"
    },
    {
      "commit": "25bce3a673afef6a7858270afae4395b4ab53de3",
      "tree": "807ac2019648d15dc2bb86a10253077496b027cc",
      "parents": [
        "91c459ec7dba6d56816ff5cbd92c627e0f718915"
      ],
      "author": {
        "name": "Wei-Ta Chen",
        "email": "weita@google.com",
        "time": "Thu Dec 23 16:31:25 2010 -0800"
      },
      "committer": {
        "name": "Wei-Ta Chen",
        "email": "weita@google.com",
        "time": "Tue Jan 11 22:54:10 2011 -0800"
      },
      "message": "Do not merge.\n\nBackport changes related to BitmapRegionDecoder from HoneyComb to\nGingerbread.\n\nBug: 3309014\n\n////////////////////////////////////////////////////\nThis is a combination of 7 commits.\nRevert \"Do not merge.\"\n\nThis reverts commit f7681f84918c27f6a626681ce37ed2a236c44e82.\n\nChange-Id: I46fd710600b1649773eaea2d9abc2b21a592f9a6\n\nFix a initialization bug in BitmapRegionDecoder.\n\nChange-Id: I6c1151fd34970a84d4de52d664d9a5dc464892c5\n\nFix segfault when tring to throw IOException.\n\nChange-Id: I530cc4409ba4ca17cec933afad077c5f60ba554f\n\nFix 3122139, where previewing an attachment for the second time will\nfail.\n\nUse AutoFDSeek to mark and restore the position before we read data from\nthe descriptor.\n\nChange-Id: I3d4f012dce486e19b113bc90a98b94031cfa8195\n\nAdd inPreferQualityOverSpeed into BitmapFactory.Options.\n\nThe new field allows a developer to use a more accurate by\nslightly slower IDCT method in JPEG decode. This in turns improves the\nquality of the reconstructed image.\n\nThe field by default is not set and thus does not affect existing\napplications.\n\nBug: 3238925\nChange-Id: I93d55b7226e47a43e639325cd1a677694d6f2ee4\n\nUnhide inPreferQualityOverSpeed in BitmapFactory.Options.\n\nThe new field allows a developer to use a more accurate by\nslightly slower IDCT method in JPEG decode. This in turns improves the\nquality of the reconstructed image.\n\nThe field by default is not set and thus does not affect existing\napplications.\n\nBug: 3238925\n\nRelated changes: https://android-git.corp.google.com/g/#change,83291 and\n                 https://android-git.corp.google.com/g/#change,83294\n\nChange-Id: I969f5c413f9b2179454aeb90e18ae8222ee583b4\n\nCorrect the API comments.\n\nBitmapRegionDecoder supports PNG as well.\n"
    },
    {
      "commit": "a058f565663253077c3118d9aad00e03dcd45684",
      "tree": "343a9f46407d0bf20aee524f135a6304c48b1dfe",
      "parents": [
        "261fa99890ebd1ea15a6067859b0e931a3009859",
        "ca36d863cc1684807e93f442c5ace89f08b9b5f5"
      ],
      "author": {
        "name": "Nick Pelly",
        "email": "npelly@google.com",
        "time": "Mon Jan 10 14:19:30 2011 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Jan 10 14:19:30 2011 -0800"
      },
      "message": "am ca36d863: Update API current.xml to unbreak build.\n\n* commit \u0027ca36d863cc1684807e93f442c5ace89f08b9b5f5\u0027:\n  Update API current.xml to unbreak build.\n"
    },
    {
      "commit": "ca36d863cc1684807e93f442c5ace89f08b9b5f5",
      "tree": "606cb5526800e23baa12b19abaafd2aa3756f6c2",
      "parents": [
        "25be53652167300183282d170a00a6df576523f5"
      ],
      "author": {
        "name": "Nick Pelly",
        "email": "npelly@google.com",
        "time": "Mon Jan 10 14:16:16 2011 -0800"
      },
      "committer": {
        "name": "Nick Pelly",
        "email": "npelly@google.com",
        "time": "Mon Jan 10 14:16:16 2011 -0800"
      },
      "message": "Update API current.xml to unbreak build.\n\nChange-Id: I151ee987fdae73fdf8f339dbb64f8fd27a0436b6\n"
    },
    {
      "commit": "19326cdcbf551728c54a844ddebe03b0f5d8d268",
      "tree": "b07876a4e8bd4e8b1d14101cf87b00e714fdd4fd",
      "parents": [
        "52d70722654548d156bd7a1cb8c1f05b94b09f06",
        "d64d711d457326b503981f7e55ab1448fa23ad9f"
      ],
      "author": {
        "name": "Nick Pelly",
        "email": "npelly@google.com",
        "time": "Mon Jan 10 12:06:39 2011 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Jan 10 12:06:39 2011 -0800"
      },
      "message": "am d64d711d: Merge \"Change Tag.getTechnology(NfcAdapter, int) to NfcAdapter.getTechnology(Tag, int)\" into gingerbread\n\n* commit \u0027d64d711d457326b503981f7e55ab1448fa23ad9f\u0027:\n  Change Tag.getTechnology(NfcAdapter, int) to NfcAdapter.getTechnology(Tag, int)\n"
    },
    {
      "commit": "b4003bf73e8150fa775506ae508cc55011442308",
      "tree": "fd165ed8567211bd94f591976e8160d51e0f9ca9",
      "parents": [
        "f54ad8daf6f9dc2b9670ab1abbbfa4308b40bc6a"
      ],
      "author": {
        "name": "Nick Pelly",
        "email": "npelly@google.com",
        "time": "Mon Jan 10 17:26:59 2011 +1100"
      },
      "committer": {
        "name": "Nick Pelly",
        "email": "npelly@google.com",
        "time": "Mon Jan 10 17:28:03 2011 +1100"
      },
      "message": "Change Tag.getTechnology(NfcAdapter, int) to NfcAdapter.getTechnology(Tag, int)\n\nThe later feels less clumsy.\n\nChange-Id: I50f29aef23d2993dcfd25f4c4f2cb0d77bdc0610\n"
    },
    {
      "commit": "6c4d904851772313930f800ac7c323cf90c709bb",
      "tree": "2f84951fb1aafb2b141419003cef9a64534e5c9a",
      "parents": [
        "9b447d122a2f0a4798f03749e9d93b9a58834fe3"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Fri Nov 19 12:48:05 2010 -0800"
      },
      "committer": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Sun Jan 09 13:20:28 2011 -0800"
      },
      "message": "Add the {get,set}PackageObbPaths calls to API\n\nAdd getPackageObbPaths() and setPackageObbPaths() to the public API.\n\nBug: 3214719\nChange-Id: Icb9f2f92f8c59bb3d31317f609854e81abbd1449\n"
    },
    {
      "commit": "525f953bb119fac27a877b0e56e4bc7777df70f5",
      "tree": "0ab2a0bf37cdf071af8113fc227271631e635888",
      "parents": [
        "97b0b7bbd41bf3bc6095a513c329e1143300ec3a",
        "0aea1836152da049273e581051a878381dcbd73d"
      ],
      "author": {
        "name": "Jeff Hamilton",
        "email": "jham@android.com",
        "time": "Thu Jan 06 20:28:52 2011 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Jan 06 20:28:52 2011 -0800"
      },
      "message": "am 0aea1836: Merge \"Make the new NFC APIs public.\" into gingerbread\n\n* commit \u00270aea1836152da049273e581051a878381dcbd73d\u0027:\n  Make the new NFC APIs public.\n"
    },
    {
      "commit": "be372d6462605010910e771cef15d5adccd0a59e",
      "tree": "aaddce760b3dd0f85743fe728aa6dc7e700e3e79",
      "parents": [
        "b5a8654dea9ea8443b41f8ff3668ae4074e13a07"
      ],
      "author": {
        "name": "Jeff Hamilton",
        "email": "jham@android.com",
        "time": "Wed Dec 22 19:20:26 2010 -0600"
      },
      "committer": {
        "name": "Jeff Hamilton",
        "email": "jham@android.com",
        "time": "Thu Jan 06 13:18:34 2011 -0600"
      },
      "message": "Make the new NFC APIs public.\n\nChange-Id: Ia0acd9759d67683eaf1dc199dc2cc55e16a98e77\n"
    },
    {
      "commit": "27d4ad2a5771ad025fa69f64b093d7429d94bfd3",
      "tree": "ebdfd8fe462e86500a411536971a251d6faacf00",
      "parents": [
        "2f209e885a86b8396fe1344043cf9858751fcb64",
        "2bf89b2197674ccc414ea60a61199562df9dc52b"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Wed Dec 22 12:40:57 2010 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Dec 22 12:40:57 2010 -0800"
      },
      "message": "am 2bf89b21: Merge \"Expose AMRNB/WB and AAC encoder and related file output formats - do not merge\" into gingerbread\n\n* commit \u00272bf89b2197674ccc414ea60a61199562df9dc52b\u0027:\n  Expose AMRNB/WB and AAC encoder and related file output formats - do not merge\n"
    },
    {
      "commit": "d609ca7f6a48f32dcd6671f877a96e8bf1b898ed",
      "tree": "e25349fbb920ff6c8f827f00010621a2cef869dd",
      "parents": [
        "3ce86481cbde92e2cb6fe3a46cbedd8b2a5c4b48"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Wed Dec 22 10:32:51 2010 -0800"
      },
      "committer": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Wed Dec 22 12:12:12 2010 -0800"
      },
      "message": "Expose AMRNB/WB and AAC encoder and related file output formats - do not merge\n\nbug - 3305667\n\nChange-Id: I8f137af7f87cb010f75cae1777b9ec6b6af8214f\n"
    },
    {
      "commit": "0655b31d758ce8fe054c98c6d288e424f2d273e2",
      "tree": "e2b900586473c0c458b5724339ba7d336488797c",
      "parents": [
        "e1df8e9be8e3a9969cf0d3594946abe0aa410c1e",
        "12b82c8da7bc477e591b12d8b7e469a9ba6dd574"
      ],
      "author": {
        "name": "Mike LeBeau",
        "email": "mlebeau@android.com",
        "time": "Mon Dec 20 11:58:01 2010 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Dec 20 11:58:01 2010 -0800"
      },
      "message": "am 12b82c8d: Merge \"Unhide RecognizerResultsIntent. This API was reviewed for Froyo, but we didn\\\u0027t want to make it public then because it wasn\\\u0027t until our first Market release of Voice Search that the APIs would be in use by our app.\" into gingerbread\n\n* commit \u002712b82c8da7bc477e591b12d8b7e469a9ba6dd574\u0027:\n  Unhide RecognizerResultsIntent. This API was reviewed for Froyo, but we didn\u0027t want to make it public then because it wasn\u0027t until our first Market release of Voice Search that the APIs would be in use by our app.\n"
    },
    {
      "commit": "52af3a4f9a1f13ea3b19a7d2f2ee07c733abef74",
      "tree": "ed3e37b18205a08982fcd10223a3f6ab0ee30d82",
      "parents": [
        "c724f2fba330da275f46586aeb5f0ae7bd2fae99"
      ],
      "author": {
        "name": "Mike LeBeau",
        "email": "mlebeau@android.com",
        "time": "Mon Dec 06 15:52:17 2010 -0500"
      },
      "committer": {
        "name": "Mike LeBeau",
        "email": "mlebeau@android.com",
        "time": "Mon Dec 20 10:50:31 2010 -0500"
      },
      "message": "Unhide RecognizerResultsIntent. This API was\nreviewed for Froyo, but we didn\u0027t want to make it\npublic then because it wasn\u0027t until our first\nMarket release of Voice Search that the APIs would\nbe in use by our app.\n\nhttp://b/3135351\n\nChange-Id: I49053717cac08e3976c22e3a105139b6755aadb8\n"
    },
    {
      "commit": "042042b809e3a0ff6cea915ccc7b176948833be9",
      "tree": "28e443680bed0e4dfe96999d257600e74bbe97ea",
      "parents": [
        "0ccc8b7345eac0b507c221be47e55926cbda8957",
        "2bd83c00a0c72d3f6bd929c4df5fe83ee31b4704"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Tue Dec 14 14:15:16 2010 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Dec 14 14:15:16 2010 -0800"
      },
      "message": "am 2bd83c00: Merge \"Work on issue #3255640: Need to bump GB to API 10 version name \"2.4\"\" into gingerbread\n\n* commit \u00272bd83c00a0c72d3f6bd929c4df5fe83ee31b4704\u0027:\n  Work on issue #3255640: Need to bump GB to API 10 version name \"2.4\"\n"
    },
    {
      "commit": "b2caa06c2ea8fb7a2a15279d19301c18cf41932d",
      "tree": "2303e3bf5960a52ca5a706700f9188b4760241f1",
      "parents": [
        "a848d3445090e114cbfe61f1c7449122a665fba6"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Tue Dec 14 11:29:01 2010 -0800"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Tue Dec 14 11:29:01 2010 -0800"
      },
      "message": "Work on issue #3255640: Need to bump GB to API 10 version name \"2.4\"\n\nNew API definition for API level 10.\n\nChange-Id: I1d78374ca5a17d568dc6f6b1ae8fb456f4d4aa88\n"
    },
    {
      "commit": "6d13b146e0444f40f45b9fe5812093c5e611b68e",
      "tree": "718855b74e2ccc8839b8722c2f26d60b39268b3d",
      "parents": [
        "6c2471649b5b1d1d9c19305a43676161823b623a",
        "e78a000955c283509ee8a21b8b7e448060ac8dd8"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Mon Dec 13 13:10:23 2010 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Dec 13 13:10:23 2010 -0800"
      },
      "message": "am e78a0009: resolved conflicts for merge of 4b94c451 to stage-korg-master\n\n* commit \u0027e78a000955c283509ee8a21b8b7e448060ac8dd8\u0027:\n  Added dropbox broadcast notification\n"
    },
    {
      "commit": "e78a000955c283509ee8a21b8b7e448060ac8dd8",
      "tree": "b314a80f3ae6ac3b0e63439f7204e6334f9aa316",
      "parents": [
        "d0ffef4b43594e540cb867da18d4403b4f583622",
        "4b94c451d2c3aea27c007518318ea98671ae6ed3"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Mon Dec 13 13:06:13 2010 -0800"
      },
      "committer": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Mon Dec 13 13:06:13 2010 -0800"
      },
      "message": "resolved conflicts for merge of 4b94c451 to stage-korg-master\n\nChange-Id: I07b974f96ca598677e58623050e4668822e68f23\n"
    },
    {
      "commit": "1d0d1188d71ed086b3910cfe1d244fdeee47f182",
      "tree": "354a79adfdf33dbcb515b5bde022c3fb68e0b7d4",
      "parents": [
        "87c03b58a9468caec18b161128ab14de90764fd4",
        "ae56a851624c2b2e78da8a2c339d2caa64c4f981"
      ],
      "author": {
        "name": "Nick Pelly",
        "email": "npelly@google.com",
        "time": "Fri Dec 10 17:19:45 2010 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Dec 10 17:19:45 2010 -0800"
      },
      "message": "am ae56a851: Merge \"Make getSystemService(NFC_SERVICE) the NFC entry point.\" into gingerbread\n\n* commit \u0027ae56a851624c2b2e78da8a2c339d2caa64c4f981\u0027:\n  Make getSystemService(NFC_SERVICE) the NFC entry point.\n"
    },
    {
      "commit": "50b4d8f643f31b37e9872f562fb869059cf79c8a",
      "tree": "6f866534d961355448a91f04ee5b3bec2b3b7dd5",
      "parents": [
        "a218e01437c3c47c49ced7ab363bf98fe92cf1e3"
      ],
      "author": {
        "name": "Nick Pelly",
        "email": "npelly@google.com",
        "time": "Tue Dec 07 22:40:28 2010 -0800"
      },
      "committer": {
        "name": "Nick Pelly",
        "email": "npelly@google.com",
        "time": "Fri Dec 10 17:12:33 2010 -0800"
      },
      "message": "Make getSystemService(NFC_SERVICE) the NFC entry point.\n\nThis gives NFC service a handle to the application context.\n\nDeprecate NfcAdapter.getDefaultAdapter(), it does not provide a context.\nUsing this method will print a warning, and will later throw an exception\nif a method that requires a context is called. No 2.3 API\u0027s will fail, but\nnew API\u0027s that do require a context might fail.\n\nAlso add helper NfcAdapter.getDefaultAdapter(Context).\n\nChange-Id: I9a6378de4ef4b61ad922f8d53e64e2a1a1d5d60c\n"
    },
    {
      "commit": "b247536aa3d458750edbc6b45b2348a994d83426",
      "tree": "e8e0a14fd8ae0b5a8dab3c4f7b1e33af71238209",
      "parents": [
        "2b858caecb3c293c47b48eed12a55a49e3039874"
      ],
      "author": {
        "name": "Hakan Still",
        "email": "hakan.still@sonyericsson.com",
        "time": "Tue Dec 07 14:05:55 2010 +0100"
      },
      "committer": {
        "name": "Johan Redestig",
        "email": "johan.redestig@sonyericsson.com",
        "time": "Wed Dec 08 13:19:33 2010 +0100"
      },
      "message": "Added dropbox broadcast notification\n\nTo monitor the dropbox an application have to either poll the dropbox\nand keep track of all entries or observ the /data/system/dropbox\ndirectory. The later requires that the application runs as system-user.\nThis commit adds that a broadcast intent is sent when something is written\nto the dropbox and an application can just listen on this intent and\nthen reads the entry with help of the DropboxManager class.\nThe application have to hold the permission android.permission.READ_LOGS\nto get the intent.\n\nChange-Id: I1f77f206a243df69f4ed5306078c47f7bf6181ec\n"
    },
    {
      "commit": "24a90c2674270fee0783bafa54fd5d845bdf0c18",
      "tree": "e666edcc7ed926f5eb2f6c4c23974095f7514c8a",
      "parents": [
        "8484e57f3006dd3aa925792e6414387c233c1a8d",
        "d93349342a89a25c7a884e8543c6adc048c5f86d"
      ],
      "author": {
        "name": "Gloria Wang",
        "email": "gwang@google.com",
        "time": "Mon Nov 22 21:25:56 2010 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Nov 22 21:25:56 2010 -0800"
      },
      "message": "am d9334934: Merge \"Update of DRM Framework.\"\n\n* commit \u0027d93349342a89a25c7a884e8543c6adc048c5f86d\u0027:\n  Update of DRM Framework.\n"
    },
    {
      "commit": "dc91865622e3cc9ff0bb33b83f1d3b38cd7a6d7a",
      "tree": "910ec95f6e2716cf6911da7247eaee49dc149933",
      "parents": [
        "14ac9546367d4df37eead55f6762b944b49f33b2"
      ],
      "author": {
        "name": "Takeshi Aimi",
        "email": "aimitakeshi@gmail.com",
        "time": "Tue Nov 16 13:56:11 2010 +0900"
      },
      "committer": {
        "name": "Takeshi Aimi",
        "email": "aimitakeshi@gmail.com",
        "time": "Fri Nov 19 22:02:51 2010 +0900"
      },
      "message": "Update of DRM Framework.\n\n-Access permission handling\n  Introduce an internal function which allows the desired process to\n  access decryption flow. This new function is just for reference and\n  each OEM manufacturer should implement/replace with their solutions.\n-New API, getMetadata()\n  This API is for retrieving media metadata from container-based DRM,\n  such as OMA forward-lock content. This API asks DRM agent to retrieve\n  media metadata hiddein inside of DRM special container.\n-New API, acquireRights()\n  This API wraps acquireDrmInfo() and processDrmInfo().\n  If DRM agent has valid implementation of both APIs,\n  Application can acquire DrmRights only by calling this API.\n-Bug fix in event loop of OnInfoListener.\n  Separate OnInfo event loop from mail thread loop so as to avoid\n  the issue that message is not dispatched when mail thread is busy.\n\nChanges are made by SEMC and Sony.\n\nChange-Id: I04ee3e0988152a71e221f2256d83253749a29da0\n"
    },
    {
      "commit": "f4072fcc14ec44072d31d7beeb4524550bead531",
      "tree": "e1c9f0667191b0e6098079a9f264b29a32d3f0c2",
      "parents": [
        "d28dc3cf7738f5574ef6359a67d68820dc6c2ad4",
        "8fc378f9f59c31f4d69878277696c6a6f723af53"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Wed Nov 17 16:47:59 2010 -0800"
      },
      "committer": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Wed Nov 17 16:47:59 2010 -0800"
      },
      "message": "resolved conflicts for merge of 8fc378f9 to gingerbread-plus-aosp\n\nChange-Id: I938c0a66ad4271b33626d6b12406a2f6c6d1b6d8\n"
    },
    {
      "commit": "d28dc3cf7738f5574ef6359a67d68820dc6c2ad4",
      "tree": "99a01a23946ca45b54ca1284b4ab01b48355a08c",
      "parents": [
        "8443dd16c2dfd5f56e33fbe76129f56e6a83b23e",
        "05434e9fa7a6ec844611bbd154c4a3eceafec538"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Tue Nov 16 17:49:07 2010 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Nov 16 17:49:07 2010 -0800"
      },
      "message": "am 05434e9f: Final API 9.  Really!  Honestly!  I hope.\n\n* commit \u002705434e9fa7a6ec844611bbd154c4a3eceafec538\u0027:\n  Final API 9.  Really!  Honestly!  I hope.\n"
    },
    {
      "commit": "05434e9fa7a6ec844611bbd154c4a3eceafec538",
      "tree": "b3295ca68383d12e9fea10756b08108d900c98d8",
      "parents": [
        "d0a8f54a5bcd6a10eaaa88d888c3cbb83869532c"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Tue Nov 16 15:40:56 2010 -0800"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Tue Nov 16 15:40:56 2010 -0800"
      },
      "message": "Final API 9.  Really!  Honestly!  I hope.\n\nChange-Id: I2ee5844587b5745556d621e4b9ef0efa3ec5edcf\n"
    },
    {
      "commit": "84029037239fec6e54327519c3e5ad30088c28ce",
      "tree": "7e271f9333da9258e02d8e9713b9e242d809b63e",
      "parents": [
        "db65907a2148f053e51f941979f0f7694acd5923"
      ],
      "author": {
        "name": "Jonas Schwertfeger",
        "email": "jschwertfeger@gmail.com",
        "time": "Fri Nov 12 11:42:28 2010 +0100"
      },
      "committer": {
        "name": "Jonas Schwertfeger",
        "email": "jschwertfeger@gmail.com",
        "time": "Fri Nov 12 12:18:37 2010 +0100"
      },
      "message": "Added buildQuery and buildUnionSubQuery methods without misleading selectionArgs parameter.\n\nThe signatures of the existing buildQuery and buildUnionSubQuery methods include a selectionArgs\nparameter that is not actually being used in the method implementations.  This parameter leads\nto the misconception that SQL paramter substitution is carried out by these methods.  I added\nnew variants of these methods without that parameter and deprecated the old variants.\n\nChange-Id: I1bf770d5c777649e9aac36d93aa93bd65bbcc2a3\n"
    },
    {
      "commit": "2d2f10fa3412adc07a08c25ba5d2df600fb654bf",
      "tree": "21ccf6a68ec67112ccaddf241082e655549aea2d",
      "parents": [
        "86372ec41c2ec23917fabff56b786edbb94e24d9",
        "28c742573ccaeb55c16bc02fb25fdd86b8d1f76a"
      ],
      "author": {
        "name": "Jesse Wilson",
        "email": "jessewilson@google.com",
        "time": "Tue Nov 09 10:17:33 2010 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Nov 09 10:17:33 2010 -0800"
      },
      "message": "am 28c74257: Add @Deprecated to match @deprecated where it\\\u0027s missing.\n\n* commit \u002728c742573ccaeb55c16bc02fb25fdd86b8d1f76a\u0027:\n  Add @Deprecated to match @deprecated where it\u0027s missing.\n"
    },
    {
      "commit": "28c742573ccaeb55c16bc02fb25fdd86b8d1f76a",
      "tree": "04b5c7321183c1353495fa294c2f605256762c8c",
      "parents": [
        "9eb48bb2b1627ef8182d260f8b3fd080c57bed4d"
      ],
      "author": {
        "name": "Jesse Wilson",
        "email": "jessewilson@google.com",
        "time": "Thu Nov 04 14:09:18 2010 -0700"
      },
      "committer": {
        "name": "Jesse Wilson",
        "email": "jessewilson@google.com",
        "time": "Tue Nov 09 10:10:11 2010 -0800"
      },
      "message": "Add @Deprecated to match @deprecated where it\u0027s missing.\n\nChange-Id: Ice95022671968386a601f32df7850f9baa1d2dd0\n"
    },
    {
      "commit": "2ee0af48a3ebb4ac1bbf5e867850519b424e5a06",
      "tree": "1a916ce81b6ca6ecdd8172eb679f28d5afd327f4",
      "parents": [
        "6025ecec2a0c37cdd0b25c85f6ffc54e35b42426",
        "a48b70fa8ff6363d1e5282be70f6be12bc0688dc"
      ],
      "author": {
        "name": "Wu-cheng Li",
        "email": "wuchengli@google.com",
        "time": "Mon Nov 08 12:19:35 2010 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Nov 08 12:19:35 2010 -0800"
      },
      "message": "am a48b70fa: Camera.open() should only return back-facing camera.\n\n* commit \u0027a48b70fa8ff6363d1e5282be70f6be12bc0688dc\u0027:\n  Camera.open() should only return back-facing camera.\n"
    },
    {
      "commit": "6025ecec2a0c37cdd0b25c85f6ffc54e35b42426",
      "tree": "51d2379d88e270d6c401e505521237ff3ce96c7a",
      "parents": [
        "28345ef6e1171bf5da792bb743c1a986a539ee4b",
        "17ae359721ba74399e785369346509b776999d1f"
      ],
      "author": {
        "name": "Wu-cheng Li",
        "email": "wuchengli@google.com",
        "time": "Mon Nov 08 12:19:26 2010 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Nov 08 12:19:26 2010 -0800"
      },
      "message": "am 17ae3597: Revert \"android.hardware.Camera.open only returns back-facing camera.\"\n\n* commit \u002717ae359721ba74399e785369346509b776999d1f\u0027:\n  Revert \"android.hardware.Camera.open only returns back-facing camera.\"\n"
    },
    {
      "commit": "28345ef6e1171bf5da792bb743c1a986a539ee4b",
      "tree": "bf7bcb703d0003d8660349827454aef3b1f3f045",
      "parents": [
        "2e1a8967243a88d73f3b3485b07a02aa4f8d16d9",
        "07b88fefd4e6386ad3265da47d008b40e6a58891"
      ],
      "author": {
        "name": "Wu-cheng Li",
        "email": "wuchengli@google.com",
        "time": "Mon Nov 08 12:19:15 2010 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Nov 08 12:19:15 2010 -0800"
      },
      "message": "am 07b88fef: android.hardware.Camera.open only returns back-facing camera.\n\n* commit \u002707b88fefd4e6386ad3265da47d008b40e6a58891\u0027:\n  android.hardware.Camera.open only returns back-facing camera.\n"
    },
    {
      "commit": "a48b70fa8ff6363d1e5282be70f6be12bc0688dc",
      "tree": "05e0932b8491b3aaf2bc8d44d7222ae15ccc59ab",
      "parents": [
        "17ae359721ba74399e785369346509b776999d1f"
      ],
      "author": {
        "name": "Wu-cheng Li",
        "email": "wuchengli@google.com",
        "time": "Tue Nov 09 01:55:44 2010 +0800"
      },
      "committer": {
        "name": "Wu-cheng Li",
        "email": "wuchengli@google.com",
        "time": "Tue Nov 09 02:20:02 2010 +0800"
      },
      "message": "Camera.open() should only return back-facing camera.\n\nAlso update current.xml and 9.xml. setRotationHint was also\nmissing from 9.xml.\nbug:3173302\n\nChange-Id: Idd3f7417a4d35c65910e9b08a1bfd157b91e1baa\n"
    },
    {
      "commit": "17ae359721ba74399e785369346509b776999d1f",
      "tree": "11c30987b79659d1c25d867a473b8997c61ea7d4",
      "parents": [
        "07b88fefd4e6386ad3265da47d008b40e6a58891"
      ],
      "author": {
        "name": "Wu-cheng Li",
        "email": "wuchengli@google.com",
        "time": "Tue Nov 09 01:34:05 2010 +0800"
      },
      "committer": {
        "name": "Wu-cheng Li",
        "email": "wuchengli@google.com",
        "time": "Tue Nov 09 01:34:05 2010 +0800"
      },
      "message": "Revert \"android.hardware.Camera.open only returns back-facing camera.\"\n\nThis reverts commit 07b88fefd4e6386ad3265da47d008b40e6a58891.\n"
    },
    {
      "commit": "07b88fefd4e6386ad3265da47d008b40e6a58891",
      "tree": "289956f94c54708c3b10b6767f189cdee7f8dc57",
      "parents": [
        "31dc911aee2b50752c0eb7785176075cdaed139c"
      ],
      "author": {
        "name": "Wu-cheng Li",
        "email": "wuchengli@google.com",
        "time": "Mon Nov 08 11:10:07 2010 +0800"
      },
      "committer": {
        "name": "Wu-cheng Li",
        "email": "wuchengli@google.com",
        "time": "Mon Nov 08 12:38:48 2010 +0800"
      },
      "message": "android.hardware.Camera.open only returns back-facing camera.\n\nbug:3173302\nChange-Id: I813e41b36c776246f151b66ef289cdf13a05dc2c\n"
    },
    {
      "commit": "bb97d7bbf33393af842de1d8fd8512a24c73b6b3",
      "tree": "8bc7017d4fc6eeaacb6bba4f06e24b123ecfe9d7",
      "parents": [
        "f80403dd5903e03cb51f374d042a297c84faaec4",
        "0467b0abfc94f959163d84eadedf6941e41c1882"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Sat Nov 06 14:21:53 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Sat Nov 06 14:21:53 2010 -0700"
      },
      "message": "am 0467b0ab: Merge \"Add a new public API to support recording rotated videos\" into gingerbread\n\n* commit \u00270467b0abfc94f959163d84eadedf6941e41c1882\u0027:\n  Add a new public API to support recording rotated videos\n"
    },
    {
      "commit": "ad8f19c6b3167cadc90a35f4d795b07aa2f04ffa",
      "tree": "b7f7f7f125d1843b8a22040d5c6d13547103720f",
      "parents": [
        "ce22d608733953e367a590efd9c7656a68ffc24d"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Thu Nov 04 19:11:27 2010 -0700"
      },
      "committer": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Fri Nov 05 15:53:00 2010 -0700"
      },
      "message": "Add a new public API to support recording rotated videos\n\no changed a comment about the rotation orientation from counter-clockwise\n  to clockwise.\n\nChange-Id: I16ad73ce1a55cc627d9a516e23d1325753b3037e\n"
    },
    {
      "commit": "a8d7b7477d99dd2671e6232e157da9954bf4699f",
      "tree": "1d7dc40888d00b25724c1b82e63ea26521737fab",
      "parents": [
        "6fb9316f6bd72b406bbfc61bd210281744eea9c1",
        "ef8a810b3b11d177a64111125eaa44bb76624414"
      ],
      "author": {
        "name": "Gloria Wang",
        "email": "gwang@google.com",
        "time": "Tue Nov 02 14:59:51 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Nov 02 14:59:51 2010 -0700"
      },
      "message": "am ef8a810b: Merge \"Update of DRM framework\"\n\n* commit \u0027ef8a810b3b11d177a64111125eaa44bb76624414\u0027:\n  Update of DRM framework\n"
    },
    {
      "commit": "ab1b304bd4cf0bb6473b21d5604596105b794362",
      "tree": "9822078d7454b320f26f8c7431ba26b9ff2a0d20",
      "parents": [
        "e06bdead5decc26c7fd7ed9b10ad0f009e14d274",
        "ccb75a882f670f8928f13a485c0c29b8b8b93af3"
      ],
      "author": {
        "name": "Dan Bornstein",
        "email": "danfuzz@android.com",
        "time": "Mon Nov 01 16:09:44 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Nov 01 16:09:44 2010 -0700"
      },
      "message": "am ccb75a88: Merge \"Update the API file.\" into gingerbread\n\n* commit \u0027ccb75a882f670f8928f13a485c0c29b8b8b93af3\u0027:\n  Update the API file.\n"
    },
    {
      "commit": "c7b3ccc564448cb4b918728421f9402bc18278c5",
      "tree": "7d97c647cef5ae086048f62636bad3343f193459",
      "parents": [
        "5b4d0e84d314bd58efb9dcf4e7f23f0d0e3fc630"
      ],
      "author": {
        "name": "Takeshi Aimi",
        "email": "aimitakeshi@gmail.com",
        "time": "Fri Oct 08 23:05:49 2010 +0900"
      },
      "committer": {
        "name": "Takeshi Aimi",
        "email": "aimitakeshi@gmail.com",
        "time": "Tue Nov 02 08:06:06 2010 +0900"
      },
      "message": "Update of DRM framework\n\n - Overload openDecryptSession() with uri parameter\n   in order to accept URI of DRM content,\n   Following API is added,\n       DecryptHandle*openDecryptSession(const char* uri);.\n - Unify texisting three event types of processDrmInfo()\n   so that caller of DRM framework does not have to handle many event types.\n - Let DrmManagerService call load/unload plugins API so that\n   client of DRM framework does not have to manage plug-in load/unload.\n - Trivial fix in DrmManagerClient.java is also incorporated.\n\nChanges are made by Sony Corporation.\n\nChange-Id: If62b47fa0360718fdc943e6e6143671d7db26adc\n"
    },
    {
      "commit": "bc19c7bdc07f5ab305d91b43ab7a14afc8ca10cd",
      "tree": "ca0b86e327fb78eb5588f3ed61cf2518fc14a749",
      "parents": [
        "42679cea5d8bc4b235b290b97805b86c8c7cbca5"
      ],
      "author": {
        "name": "Dan Bornstein",
        "email": "danfuzz@android.com",
        "time": "Mon Nov 01 14:08:01 2010 -0700"
      },
      "committer": {
        "name": "Dan Bornstein",
        "email": "danfuzz@android.com",
        "time": "Mon Nov 01 14:14:37 2010 -0700"
      },
      "message": "Update the API file.\n\nMy previous change was api-compatible, but some of the incidental data\nin the API file (like parameter names) changed. It looks like there\nwere probably a couple other similar changes too, that hadn\u0027t\npreviously been propagated to the API file; all I did to generate this\nchange was say \"make update-api\".\n\nChange-Id: I427a9ceb51212fde515df007613b8687b7228ce7\n"
    },
    {
      "commit": "c6b7b2dfaaab2cd8ec1940a4515b15433c83d190",
      "tree": "171948a739e0c4fcda658e1233e05637a4c44b58",
      "parents": [
        "f2ca96bcc9f5117a79c69edf11026653643419a3",
        "70a2c15ecfd4e8cd8581699d5df8a219c7d5cdb1"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Fri Oct 29 19:03:03 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Oct 29 19:03:03 2010 -0700"
      },
      "message": "am 70a2c15e: Final SDK API 9.  DO NOT MERGE.\n\n* commit \u002770a2c15ecfd4e8cd8581699d5df8a219c7d5cdb1\u0027:\n  Final SDK API 9.  DO NOT MERGE.\n"
    },
    {
      "commit": "70a2c15ecfd4e8cd8581699d5df8a219c7d5cdb1",
      "tree": "312ee406a262f67f686d0d9e4296a4641760977b",
      "parents": [
        "38fd394815a992c8874f73389e8ca849782e5fcd"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Wed Oct 27 12:31:34 2010 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Fri Oct 29 18:50:47 2010 -0700"
      },
      "message": "Final SDK API 9.  DO NOT MERGE.\n\nChange-Id: I3e2fc2ebc52eecb26ac3a6bb466447f378fb5de6\n"
    },
    {
      "commit": "ba1664b34cc33ebb6b45fccedb35298ff8b1d998",
      "tree": "ba3185c79d0a86a0d99d2e6270b2bd3e8b5e2130",
      "parents": [
        "faebca7f4319950927759163a703dd12f2727460",
        "4bf4b491be3fbd0f71bb87749a0e31f817b91e08"
      ],
      "author": {
        "name": "Nick Pelly",
        "email": "npelly@google.com",
        "time": "Fri Oct 29 08:15:48 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Oct 29 08:15:48 2010 -0700"
      },
      "message": "am 4bf4b491: Merge \"Hide some NFC API\\\u0027s.\" into gingerbread\n\n* commit \u00274bf4b491be3fbd0f71bb87749a0e31f817b91e08\u0027:\n  Hide some NFC API\u0027s.\n"
    },
    {
      "commit": "11b075e218b9921a953eeebe73fcd1a8a81f764b",
      "tree": "7efd302691767e6f3e7ba83fcd2f9ee2ada647ae",
      "parents": [
        "120a4594855951ed5eb185fdfc19bf98efef3ba2"
      ],
      "author": {
        "name": "Nick Pelly",
        "email": "npelly@google.com",
        "time": "Thu Oct 28 13:39:37 2010 -0700"
      },
      "committer": {
        "name": "Nick Pelly",
        "email": "npelly@google.com",
        "time": "Thu Oct 28 14:54:52 2010 -0700"
      },
      "message": "Hide some NFC API\u0027s.\n\nWe are leaving enough API so that you can see when any Tag is discovered,\nget its ID, and get its NDEF messages.\n\nBut for advanced use - creating tag connections and writing messages - we have\n2 problems. Firstly a lot of the code is untested\n(RawTagConnection.transceive()), or in some cases known not to work\n(NdefTagConnection.write()). Secondly, there is still debate about how to\nbest expose information about Tags.\n\nThe set of data/methods exposed for a Tag changes completely depending on the\ntag technology. There may be multiple sets of technology implemented in a\nsingle tag. Tag A may have technology X and Y, Tag B may have technology Y\nand Z. Furthermore, some NFC controllers will be not be able to use all\ntechnologies, and so Android Device 1 may see technology X and Y on Tag A but\nAndroid device 2 may only see technology X. So we have a pretty challenging\nset of constraints to work under, and we are not convinced the current Tag and\nNdefTag class is the best approach going forwards.\n\nThe Tag application should be able to remain unbundled, since it just needs to\nget incoming NDEF Messages.\n\nChange-Id: Ic09f094f33794e10f8d730fffe011c9a5957e0ac\nSigned-off-by: Nick Pelly \u003cnpelly@google.com\u003e\n"
    },
    {
      "commit": "c2f78020d3887539fc90230d96465e4b1dc84d8e",
      "tree": "c71f7293dfae5566b7ad688ddf33a676753c35ef",
      "parents": [
        "2ef36763700eff5679d6012e7f078c57f1a4c465",
        "236568999411214ef440cabc6d12e3bf5f19d8f4"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Sun Oct 24 18:38:11 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Sun Oct 24 18:38:11 2010 -0700"
      },
      "message": "am 23656899: Merge \"Fix issue #3126018: No way to specify NativeActivity\\\u0027s native method\" into gingerbread\n\nMerge commit \u0027236568999411214ef440cabc6d12e3bf5f19d8f4\u0027 into gingerbread-plus-aosp\n\n* commit \u0027236568999411214ef440cabc6d12e3bf5f19d8f4\u0027:\n  Fix issue #3126018: No way to specify NativeActivity\u0027s native method\n"
    },
    {
      "commit": "e21d91c694e828e6285cc50e79b2a6be6e8c692b",
      "tree": "bff7d5088aa8dc568c33a1c68a7dbd976ebe0f58",
      "parents": [
        "b6a2256e5461160a89d077b761d3253d95ce869f"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Sun Oct 24 14:56:38 2010 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Sun Oct 24 14:56:38 2010 -0700"
      },
      "message": "Fix issue #3126018: No way to specify NativeActivity\u0027s native method\n\nChange-Id: I59de6a543e7f7f45d963a905829a3f56f32bf8cf\n"
    },
    {
      "commit": "f5b5d177a94bf5b1e59c11fb6f53e2dd40271f59",
      "tree": "a4cff1c264d14442d9a11d62bbe50761b472d6aa",
      "parents": [
        "d13f5f4fea0dd03cbbfc4a9ec711c4ffcc91655b",
        "07f3bee2db8b6e93ebbf7222676bd9f468e85569"
      ],
      "author": {
        "name": "Nick Pelly",
        "email": "npelly@google.com",
        "time": "Fri Oct 22 18:20:52 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Oct 22 18:20:52 2010 -0700"
      },
      "message": "am 07f3bee2: Push Tag/NdefTag implementation details into the service.\n\nMerge commit \u002707f3bee2db8b6e93ebbf7222676bd9f468e85569\u0027 into gingerbread-plus-aosp\n\n* commit \u002707f3bee2db8b6e93ebbf7222676bd9f468e85569\u0027:\n  Push Tag/NdefTag implementation details into the service.\n"
    },
    {
      "commit": "07f3bee2db8b6e93ebbf7222676bd9f468e85569",
      "tree": "4d1d6a9f81252ebda078954da4380b470f0b320b",
      "parents": [
        "67496e591dca9c7faa07f6e1c8849c9d5af4edb9"
      ],
      "author": {
        "name": "Nick Pelly",
        "email": "npelly@google.com",
        "time": "Thu Oct 21 21:42:24 2010 -0700"
      },
      "committer": {
        "name": "Nick Pelly",
        "email": "npelly@google.com",
        "time": "Fri Oct 22 16:29:43 2010 -0700"
      },
      "message": "Push Tag/NdefTag implementation details into the service.\n\nTag/NdefTag objects should just be simple data objects. Push the mapping of\ninternal tag type to public rawTarget/ndefTarget into Nfc Service.\n\nThis gives an oppurtunity to clean up some Tag/NdefTag API methods. Most\nsignificantly, adding createMockTag() and createMockNdefTag() to help with\napplication testing.\n\nThere will probably be some more tweaking of the types/targets in\nTag/NdefTag to come, this commit makes that a lot easier.\n\nAlso:\n- Introduce getActivationBytes() and getPollBytes(). These are just stubs\nfor NFC service to implement, we have feedback these are really important\nto help identify NFC tags.\n- Based on outside advice, remove 3B_PRIME (roll into 3B) and TOPAZ (roll\ninto 3A).\n\nChange-Id: I3e6789c047f6ee5c298bf76c65e0885cf3c15d97\nSigned-off-by: Nick Pelly \u003cnpelly@google.com\u003e\n"
    },
    {
      "commit": "9c7489f8bdcd08990c44250cbad64399badc72be",
      "tree": "16af554746fcb12e6715514f89d01c39c80666fa",
      "parents": [
        "2051a1be52b3380285597c62e283e12bf659bda9",
        "38993d8d833ca2e61111d2a828dc4f67ca7848cb"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Fri Oct 22 14:03:08 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Oct 22 14:03:08 2010 -0700"
      },
      "message": "am 38993d8d: Merge \"Fix issue #3122240: Expose xlarge in GB.\" into gingerbread\n"
    },
    {
      "commit": "5383f502e4479d117c89666fb2ee1ca53f3d27cf",
      "tree": "3205788a98d26a3161916279d83e7fd5629fc92f",
      "parents": [
        "7ce276b5a3f2e0938956171abd32d60c7f619d16"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Fri Oct 22 12:59:20 2010 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Fri Oct 22 12:59:20 2010 -0700"
      },
      "message": "Fix issue #3122240: Expose xlarge in GB.\n\nPlus some other small API cleanup.\n\nChange-Id: I1a3c60f510f99224cccac9cc3f838f04141064f8\n"
    },
    {
      "commit": "8783b0e20ca8d484a13c1c5d7f19b8570c30eead",
      "tree": "a01dc2b19776a51c54426ffd84dceaeb37523983",
      "parents": [
        "c81ec79d1f88ae8a80e08560a56845655a74f67e",
        "7c68bc3867bf536ca58ababdd7e35c676b95f0a5"
      ],
      "author": {
        "name": "Jeff Hamilton",
        "email": "jham@android.com",
        "time": "Fri Oct 22 12:11:23 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Oct 22 12:11:23 2010 -0700"
      },
      "message": "am 7c68bc38: Merge \"Unhide some NFC APIs that are required for the Tag app.\" into gingerbread\n"
    },
    {
      "commit": "da83f513ca661cd2bb1e6f1c8b64b716205bae48",
      "tree": "362a40730be4d492165a6f7381b928eca0bbaaf1",
      "parents": [
        "389a440ad13f7b16e8f7c7f1670bdd55f1e2112a"
      ],
      "author": {
        "name": "Jeff Hamilton",
        "email": "jham@android.com",
        "time": "Thu Oct 21 22:39:30 2010 -0500"
      },
      "committer": {
        "name": "Jeff Hamilton",
        "email": "jham@android.com",
        "time": "Thu Oct 21 23:43:22 2010 -0500"
      },
      "message": "Unhide some NFC APIs that are required for the Tag app.\n\nChange-Id: Ic64e00476132dbf4644de5c465e06fe11a264508\n"
    },
    {
      "commit": "de8635e4c4c9f674b52cb6041380c3ef2812630c",
      "tree": "c6a9f6404edf36103ab1ad553a2e6746272d6460",
      "parents": [
        "6123e0f7c91ffc7534da99b4668879dacf662227",
        "389a440ad13f7b16e8f7c7f1670bdd55f1e2112a"
      ],
      "author": {
        "name": "Jeff Hamilton",
        "email": "jham@android.com",
        "time": "Thu Oct 21 21:08:20 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Oct 21 21:08:20 2010 -0700"
      },
      "message": "am 389a440a: Backport ParcelFileDescriptor.createPipe() from master.\n\nMerge commit \u0027389a440ad13f7b16e8f7c7f1670bdd55f1e2112a\u0027 into gingerbread-plus-aosp\n\n* commit \u0027389a440ad13f7b16e8f7c7f1670bdd55f1e2112a\u0027:\n  Backport ParcelFileDescriptor.createPipe() from master.\n"
    },
    {
      "commit": "389a440ad13f7b16e8f7c7f1670bdd55f1e2112a",
      "tree": "def02e1a495f57e433c457e34339333855351faa",
      "parents": [
        "1bd8a8c8acdb7c3aa875ea62ccf0b9111f1c9410"
      ],
      "author": {
        "name": "Jeff Hamilton",
        "email": "jham@android.com",
        "time": "Thu Oct 21 16:38:47 2010 -0500"
      },
      "committer": {
        "name": "Jeff Hamilton",
        "email": "jham@android.com",
        "time": "Thu Oct 21 22:39:41 2010 -0500"
      },
      "message": "Backport ParcelFileDescriptor.createPipe() from master.\n\nThis allows content providers to expose arbitraty data\nthrough the ContentResolver open* APIs.\n\nChange-Id: I408a0b7cee9cdba5654a962098386c012d6b3549\n"
    },
    {
      "commit": "101f14b275ab2451aef50dec427376d721d17aea",
      "tree": "af8c333d1c2d519c300ab817991b74d51cee43b6",
      "parents": [
        "86f1b643d10e0b5b17ae01db3b81020db87b3295",
        "ba501785c7b298198d1c6e4787fd40e98f97da67"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu Oct 21 20:17:56 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Oct 21 20:17:56 2010 -0700"
      },
      "message": "am ba501785: Merge \"Implement issue #3116702: New manifest tags for supported screen sizes  DO NOT MERGE\" into gingerbread\n\nMerge commit \u0027ba501785c7b298198d1c6e4787fd40e98f97da67\u0027 into gingerbread-plus-aosp\n\n* commit \u0027ba501785c7b298198d1c6e4787fd40e98f97da67\u0027:\n  Implement issue #3116702: New manifest tags for supported screen sizes  DO NOT MERGE\n"
    }
  ],
  "next": "a6d9c7c04c4b17d85ac70f4494777555655f3be1"
}
