)]}'
{
  "log": [
    {
      "commit": "75ea64fc54f328d37b115cfb1ded1e45c30380ed",
      "tree": "4254a5d2d0662de8b606b38fea6987da17c130e3",
      "parents": [
        "ebc016c01ea9d5707287cfc19ccc59b21a486c00"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Wed Jan 25 19:37:13 2012 -0800"
      },
      "committer": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Fri Jan 27 17:33:21 2012 -0800"
      },
      "message": "Implement a cancelation mechanism for queries.\n\nAdded new API to enable cancelation of SQLite and content provider\nqueries by means of a CancelationSignal object.  The application\ncreates a CancelationSignal object and passes it as an argument\nto the query.  The cancelation signal can then be used to cancel\nthe query while it is executing.\n\nIf the cancelation signal is raised before the query is executed,\nthen it is immediately terminated.\n\nChange-Id: If2c76e9a7e56ea5e98768b6d4f225f0a1ca61c61\n"
    },
    {
      "commit": "ee7fea9f2fd536107450204c9c2058bbe215f713",
      "tree": "b7486337ab00e4edd6f9e93f600e2689765e06fe",
      "parents": [
        "540c35f7aa01f7eba849148ea8b22eff351ce16d"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Wed Jan 18 14:56:06 2012 -0800"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Wed Jan 18 15:10:31 2012 -0800"
      },
      "message": "Remove dead setRingerMode(mode, mask)\n\nChange-Id: Ia4cc8be8424a40b3dcb7ebd0264fdff4e5247f7f\n"
    },
    {
      "commit": "9bc8358ddaa01c3490f9709991989633a6a3dd42",
      "tree": "12568959bb7bfd308ff2ef98c2e1ce0902ebdcd3",
      "parents": [
        "cc767191cfb675f744e0165608b0a4196aba2b37"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Nov 18 16:43:31 2011 -0800"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Jan 17 15:15:04 2012 -0800"
      },
      "message": "audio framework: manage stream volume per device\n\nImprove volume management by keeping track of volume for each type\nof device independently.\nVolume for each stream (MUSIC, RINGTONE, VOICE_CALL...) is now maintained\nper device.\n\nThe main changes are:\n- AudioService now keeps tracks of stream volumes per device:\n volume indexes are kept in a HashMap \u003c device , index\u003e.\n active device is queried from policy manager when a volume change request\n is received\n initalization, mute and unmute happen on all device simultaneously\n- Settings: suffixes is added to volume keys to store each device\nvolume independently.\n- AudioSystem/AudioPolicyService/AudioPolicyInterface: added a device argument\nto setStreamVolumeIndex() and getStreamVolumeIndex() to address each\ndevice independently.\n- AudioPolicyManagerBase: keep track of stream volumes for each device\nand apply volume according to current device selection.\n\nChange-Id: I61ef1c45caadca04d16363bca4140e0f81901b3f\n"
    },
    {
      "commit": "6c4c15569674e6a5eda0565b501b600a50d4ca6e",
      "tree": "cf0e4a310a3e03e1ddbab5b9713fde0115d4ac84",
      "parents": [
        "2cc28deb9ef5c9b8aff90e1ad42c3d1915e73b26"
      ],
      "author": {
        "name": "Sungsoo Lim",
        "email": "sungsoo@google.com",
        "time": "Mon Sep 26 11:00:36 2011 +0900"
      },
      "committer": {
        "name": "Sungsoo Lim",
        "email": "sungsoo@google.com",
        "time": "Wed Jan 11 11:34:20 2012 +0900"
      },
      "message": "MediaScanner: Disable bulk insert for settings\n\nSince the settings (notifications, ringtones, and alarms) request\nrowId after inserting into DB, do not use bulk insert for them.\n(Bulk insert does not return the rowId)\n\nChange-Id: I8faf993f8ac2da96672594a1c92ddc917f964d6f\n"
    },
    {
      "commit": "b282e08ab641d4fc74d0324b7a0ce30926638dd5",
      "tree": "f65ddd604d8118e0b513db000ad44e8852325249",
      "parents": [
        "5c17a820f9e46e0756c11795b3e6f89105f2f539"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Mon Jan 09 13:11:07 2012 -0800"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Mon Jan 09 13:11:07 2012 -0800"
      },
      "message": "Fix build\n\nChange-Id: Ia140af1a61edf124ef3d48b60351f850a3475af1\n"
    },
    {
      "commit": "5c17a820f9e46e0756c11795b3e6f89105f2f539",
      "tree": "d8754d83d29153e9954cbd2a866bb81444854501",
      "parents": [
        "13f94dc5bdea85608cb2f9bded4e390389d40c0c"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Wed Nov 30 09:41:01 2011 -0800"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Mon Jan 09 12:15:18 2012 -0800"
      },
      "message": "Audio Java doc comment typos and minor changes\n\nChange-Id: Id6ea6dccb8054c9f05db9a9c045387ce813659e6\n"
    },
    {
      "commit": "13f94dc5bdea85608cb2f9bded4e390389d40c0c",
      "tree": "dfd7acd5baf7fedacc44eb8311ad532d9d3da23e",
      "parents": [
        "4e7191448d5b1eae5181463b6a553fed9cbca3e5",
        "ba195ebc76f23b6679443724ab58c9dc9f2df884"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Mon Jan 09 12:01:37 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jan 09 12:01:37 2012 -0800"
      },
      "message": "Merge \"Fix race conditions related to ringer mode\""
    },
    {
      "commit": "18c6afa0c57074e08b8856dde306d3302834b1a9",
      "tree": "2cf52214ad56eba40eaa3787d37345a4907336b4",
      "parents": [
        "5883520fd7c9b3426d0fcc107f647f999a0a3232",
        "ad35f9165e7f2641812a5069de9c3cd3fdd16923"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Fri Jan 06 08:08:15 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jan 06 08:08:15 2012 -0800"
      },
      "message": "Merge \"Also accept non-parenthesized genre numbers\""
    },
    {
      "commit": "ad35f9165e7f2641812a5069de9c3cd3fdd16923",
      "tree": "c7c1546354052b924fe4f48abe87c666af5222b0",
      "parents": [
        "a8719ad9d53d3fe51e8031b2471e9558b8ef727f"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Thu Jan 05 15:13:15 2012 -0800"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Thu Jan 05 15:15:53 2012 -0800"
      },
      "message": "Also accept non-parenthesized genre numbers\n\nb/5790684\n\nChange-Id: Ia13feebeaadd45d9196486c012538c5b80840163\n"
    },
    {
      "commit": "399381868992c68abefa5dde62bfdc0a7e33e5e5",
      "tree": "2eb1dfa0326e401ba266c71f870631a94914e72c",
      "parents": [
        "9a03482c66b2f5c30c7fde38216239a1f233df02"
      ],
      "author": {
        "name": "Dongwon Kang",
        "email": "dwkang@google.com",
        "time": "Thu Jan 05 16:49:25 2012 +0900"
      },
      "committer": {
        "name": "Dongwon Kang",
        "email": "dwkang@google.com",
        "time": "Thu Jan 05 17:17:48 2012 +0900"
      },
      "message": "ThumbnailUtils: To fix misuse of FileInputStream.\n\nWe need to close it explicitly after using it. Without this, fd will be closed\nnon-deterministically, and that will break the decode procedure.\n\nBug: 5808889\nChange-Id: Icf9ff9abd6e327b122c6916df9750016b3d1b616\n"
    },
    {
      "commit": "afbb047c3945e9c2b7e9bc6b25098d5fb80bba4e",
      "tree": "5466e4f41a29332b6b4f370daf2fe9268348fb87",
      "parents": [
        "e4f0034226731724b67201d69fb4034ef857e2d3"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Dec 15 09:04:23 2011 -0800"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Dec 20 18:07:41 2011 -0800"
      },
      "message": "AudioService: simplified handler messages.\n\nFor historical reasons, messages to the AudioSystem\nhandler in AudioService have a complex identifier combining several information.\nMessages for a particular stream contain the stream type as part of the message type.\nThis complexity is not needed as the stream messages also carry a reference to the\nVolumeStreamState object which contains all necessary information, including the stream type.\n\nAlso grouped parameters of MSG_PERSIST_VOLUME message into a single bit field to make room for\nfurther needs.\n\nChange-Id: Ia27af626b3447541e8f9eaceba21389a824d88e2\n"
    },
    {
      "commit": "25adf474775acb3eea260cb0a6251cf43ff798ce",
      "tree": "0acebea1cd8c893c31030364ce9aa46e4f3865be",
      "parents": [
        "927cc6c7e8765c3b8b1e18e7105c9e5312a475c8",
        "fb2ab9efc3805c81521afb9ff91a58ff5097a36e"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Wed Dec 14 17:35:36 2011 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Dec 14 17:35:36 2011 -0800"
      },
      "message": "Merge \"Fix indentation and whitespace\""
    },
    {
      "commit": "fb2ab9efc3805c81521afb9ff91a58ff5097a36e",
      "tree": "a115dd527ef2256f39677fb990531f506cbeeb34",
      "parents": [
        "e61fd281a8cb69ae45c5de4b160ab86226083152"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Mon Dec 12 09:05:55 2011 -0800"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Wed Dec 14 16:54:05 2011 -0800"
      },
      "message": "Fix indentation and whitespace\n\nUse git diff -w to verify.\n\nChange-Id: Ib65be0a1ecf65d6cad516110604e3855bf68a638\n"
    },
    {
      "commit": "5bb8f80fc4a72ad70d7d38cdc9f7988edce476e4",
      "tree": "ffdf5195139d7d26548a124e119c787b4acc4e16",
      "parents": [
        "e61fd281a8cb69ae45c5de4b160ab86226083152"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Sun Jul 24 09:50:48 2011 -0700"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Wed Dec 14 13:13:13 2011 -0800"
      },
      "message": "Fix typo in error message, missing space\n\nChange-Id: Icdddbf2fddb81a1db538dd94fb25cf859e44bfbd\n"
    },
    {
      "commit": "ba195ebc76f23b6679443724ab58c9dc9f2df884",
      "tree": "bffe4277f1d6b3493ecdbdac936bcab89e3f8270",
      "parents": [
        "e61fd281a8cb69ae45c5de4b160ab86226083152"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Tue Dec 13 09:30:40 2011 -0800"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Tue Dec 13 10:04:56 2011 -0800"
      },
      "message": "Fix race conditions related to ringer mode\n\nConsistently protect all reads and writes of mRingerMode by mSettingsLock.\n\nChange-Id: I72675ff9009880cc212616f0f79f809a28eb6bff\n"
    },
    {
      "commit": "ca402cdcacfdcd2978a22d59f446c93aad34c75e",
      "tree": "36c7217db45eb2e7fda1fea5fe33d7e1228ae6d0",
      "parents": [
        "738a154a1b27ff908616c336d4adf400a141eebf"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Tue Dec 06 17:55:38 2011 -0800"
      },
      "committer": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Tue Dec 06 17:58:22 2011 -0800"
      },
      "message": "Update onVideoSizeChanged() callback method Java doc to explicitly specify the conditions under which the width/height passed\nto the callback could be 0.\n\nChange-Id: Ie921f0af8284eccfd02c4a5826ed41fe19f9676f\nrelated-to-bug: 5613451\n"
    },
    {
      "commit": "9c316f3c6ac785fd27be97a119dfe8f1303a8ed4",
      "tree": "ca073d5c34840f6fac41900d3bced91c38cd2379",
      "parents": [
        "e49e8cc4e799a2a6793c148b6a4b74d8f69026dd",
        "d49ec62cfb0469c39f2b5d79cbf2a6f69cceb7d7"
      ],
      "author": {
        "name": "Amith Yamasani",
        "email": "yamasani@google.com",
        "time": "Tue Dec 06 16:59:44 2011 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Dec 06 16:59:44 2011 -0800"
      },
      "message": "am d49ec62c: am f3364080: Merge \"New and improved silent mode on lockscreen.\" into ics-mr1\n\n* commit \u0027d49ec62cfb0469c39f2b5d79cbf2a6f69cceb7d7\u0027:\n  New and improved silent mode on lockscreen.\n"
    },
    {
      "commit": "6243edd818b84adfbe712d5d233d6414b33653ac",
      "tree": "8f6ee51bc79caa36157a05bed45dc7c22805a9bf",
      "parents": [
        "40cb30c2df2176c03f24cbdc194e3af5a4f64758"
      ],
      "author": {
        "name": "Amith Yamasani",
        "email": "yamasani@google.com",
        "time": "Mon Dec 05 19:58:48 2011 -0800"
      },
      "committer": {
        "name": "Amith Yamasani",
        "email": "yamasani@google.com",
        "time": "Tue Dec 06 14:48:38 2011 -0800"
      },
      "message": "New and improved silent mode on lockscreen.\n\n3-state item to toggle between Silent/Vibrate/Ringer in long-press power menu.\nNo volume dialog on lockscreen, unless Power menu is up.\n\nSet VIBRATE_IN_SILENT\u003d1 when upgrading device.\n\nChange-Id: I097d216f96c4abdbd83420e0c477106951b3607d\n"
    },
    {
      "commit": "89972657bd7fdd9def17fe75e2529865b2369722",
      "tree": "9583e67ad035bbf897c6680093aaf2fb4eed04fe",
      "parents": [
        "97c7bbbba7a05aa479a60d17b60aaa7badb90c14",
        "f8dad0b37d9aa2476ef3ab84b9f4a7a9f4c960e4"
      ],
      "author": {
        "name": "Amith Yamasani",
        "email": "yamasani@google.com",
        "time": "Fri Dec 02 17:49:31 2011 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Dec 02 17:49:31 2011 -0800"
      },
      "message": "am f8dad0b3: am afd01086: Merge \"Further volume improvements.\" into ics-mr1\n\n* commit \u0027f8dad0b37d9aa2476ef3ab84b9f4a7a9f4c960e4\u0027:\n  Further volume improvements.\n"
    },
    {
      "commit": "29f1c32eea12ab33547af73fb0e5dcf432e6979c",
      "tree": "d06e74143c2cd64ab0c1425b4b646e52cd6f13d0",
      "parents": [
        "7ea817e58d283434c624e1b2b6dcdba2e409133b",
        "5126f1d413b4fcb0aff5b364e1e5a41c89ca665c"
      ],
      "author": {
        "name": "Hong Teng",
        "email": "hongteng@google.com",
        "time": "Fri Dec 02 13:44:10 2011 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Dec 02 13:44:10 2011 -0800"
      },
      "message": "am 5126f1d4: am 613ed4c6: Merge \"Fixd for 5490443 Native crash while exporting a video - Add new onError callback to PreviewProgressListener, which is used to indicate video editor application for the error that has occurred during priviewing. With this modification, \n\n* commit \u00275126f1d413b4fcb0aff5b364e1e5a41c89ca665c\u0027:\n  Fixd for 5490443 Native crash while exporting a video - Add new onError callback to PreviewProgressListener, which is used to indicate video editor application for the error that has occurred during priviewing. With this modification, the application must implement the onError method, and then VideoEditorPreviewTest.java is changed accordingly.\n"
    },
    {
      "commit": "7944c1b19f04583c595732695d63f333cd051eb4",
      "tree": "68fecc447a58a5af1cd92ac7031fdf3e07cccc45",
      "parents": [
        "7a1ad63d16ac42482b3e043ef7a8474452aa057c"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@google.com",
        "time": "Thu Dec 01 16:58:41 2011 -0500"
      },
      "committer": {
        "name": "Mike Lockwood",
        "email": "lockwood@google.com",
        "time": "Fri Dec 02 15:12:47 2011 -0500"
      },
      "message": "MTP: Add support for restricting PTP to only certain subdirectories of the storage DO NOT MERGE\n\nBug: 5527220\n\nChange-Id: I81d6de590ea3002118ba46eb4b6d5fe9061c998c\nSigned-off-by: Mike Lockwood \u003clockwood@google.com\u003e\n"
    },
    {
      "commit": "afd01086795c7c1f6950a709180b2361625b8b6a",
      "tree": "e60d1c42d3e8d76e70776585167dbc8605ff9a74",
      "parents": [
        "f96aa3b197b96f9cb276485420c09a7b36606599",
        "2ef6f1bb5603c2e221191117695725237f49a5d5"
      ],
      "author": {
        "name": "Amith Yamasani",
        "email": "yamasani@google.com",
        "time": "Fri Dec 02 11:22:32 2011 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Dec 02 11:22:32 2011 -0800"
      },
      "message": "Merge \"Further volume improvements.\" into ics-mr1"
    },
    {
      "commit": "d62da2d0da976ea5590471c3b70ebf013e41ce8b",
      "tree": "5459ef0d691a45b6691f65ac11763a2bcb88cf8c",
      "parents": [
        "6a5c1a9574e857a80c8e4ca13f3b5f0439d331c9"
      ],
      "author": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Fri Dec 02 09:54:16 2011 -0800"
      },
      "committer": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Fri Dec 02 09:54:16 2011 -0800"
      },
      "message": "Remove unused variable and imports in AudioManager\n\nRemove unused imports.\nRemove private mHandler variable: it was assigned a new Handler\n object but was never accessed.\n\nChange-Id: I63cd08aa38701ea157fef7d3185a58a6e2a95822\n"
    },
    {
      "commit": "613ed4c69a53e6ffb1f104c7d45a0c6dd41c8eb0",
      "tree": "a81e8f435c3db8d7b1f4705f7c7154c333d681fb",
      "parents": [
        "e21dabf654e3d90e50e95174d5e9670bc930c194",
        "63149c81adf79f43c6508647614247277f8052e2"
      ],
      "author": {
        "name": "Hong Teng",
        "email": "hongteng@google.com",
        "time": "Fri Dec 02 09:32:02 2011 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Dec 02 09:32:02 2011 -0800"
      },
      "message": "Merge \"Fixd for 5490443 Native crash while exporting a video - Add new onError callback to PreviewProgressListener, which is used to indicate video editor application for the error that has occurred during priviewing. With this modification, the application must implement the onError method, and then VideoEditorPreviewTest.java is changed accordingly.\" into ics-mr1"
    },
    {
      "commit": "6a5c1a9574e857a80c8e4ca13f3b5f0439d331c9",
      "tree": "2fe42989e2f0534bcb5ecea476ed64ab17d5d3b4",
      "parents": [
        "09bd918c5d710cf500a3f16bc4021348c1677507",
        "73e56d935e7c9b8a06e4781c4995e407e118f93d"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@google.com",
        "time": "Fri Dec 02 08:17:33 2011 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Dec 02 08:17:33 2011 -0800"
      },
      "message": "Merge \"MTP: Add support for restricting PTP to only certain subdirectories of the storage\""
    },
    {
      "commit": "73e56d935e7c9b8a06e4781c4995e407e118f93d",
      "tree": "f35e4e26f2be4e533528ffc41ebd101ee1fc2abd",
      "parents": [
        "1958dc27c952da3a590750023e391e0d481a4328"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@google.com",
        "time": "Thu Dec 01 16:58:41 2011 -0500"
      },
      "committer": {
        "name": "Mike Lockwood",
        "email": "lockwood@google.com",
        "time": "Fri Dec 02 11:08:39 2011 -0500"
      },
      "message": "MTP: Add support for restricting PTP to only certain subdirectories of the storage\n\nBug: 5527220\n\nChange-Id: If68e7481617ecb62abd24e2d89e6b7dfdf95ba2b\nSigned-off-by: Mike Lockwood \u003clockwood@google.com\u003e\n"
    },
    {
      "commit": "ee07e110d92005f9dbd317a23721d9b7c9a5ed37",
      "tree": "f261621b9f9477c00ddc8a525704e91cbaa9e104",
      "parents": [
        "db918cf171afd3d4b3c22aab6dd3403d1dec94de",
        "6cfa9e6c507a721f647518569c89db9560056079"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Dec 01 20:38:15 2011 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Dec 01 20:38:15 2011 -0800"
      },
      "message": "am 6cfa9e6c: am 0d3a2e93: Merge \"AudioService: strengthen A2DP device detection\" into ics-mr1\n\n* commit \u00276cfa9e6c507a721f647518569c89db9560056079\u0027:\n  AudioService: strengthen A2DP device detection\n"
    },
    {
      "commit": "2ef6f1bb5603c2e221191117695725237f49a5d5",
      "tree": "3bcbff95c91f81308cd8520563b28179df796e59",
      "parents": [
        "0433c157141b9122f6c61498e909770f1db27c7c"
      ],
      "author": {
        "name": "Amith Yamasani",
        "email": "yamasani@google.com",
        "time": "Thu Dec 01 14:01:30 2011 -0800"
      },
      "committer": {
        "name": "Amith Yamasani",
        "email": "yamasani@google.com",
        "time": "Thu Dec 01 15:05:54 2011 -0800"
      },
      "message": "Further volume improvements.\n\n- Remove silent mode from Power menu\n- Show volume dialog on lockscreen\n- Allow beeps when adjusting volume in lockscreen\n\nBug: 5586083\nChange-Id: I93052a8ec5004c784f20e04488af9382d495e711\n"
    },
    {
      "commit": "63149c81adf79f43c6508647614247277f8052e2",
      "tree": "88903ac924756e62b577ede1aa72e01c70a9cb0f",
      "parents": [
        "a6f8ebc616cfe3185ae2513ef2f846e8d32b551e"
      ],
      "author": {
        "name": "Hong Teng",
        "email": "hongteng@google.com",
        "time": "Wed Nov 30 16:54:46 2011 -0800"
      },
      "committer": {
        "name": "Hong Teng",
        "email": "hongteng@google.com",
        "time": "Thu Dec 01 09:43:42 2011 -0800"
      },
      "message": "Fixd for 5490443 Native crash while exporting a video\n- Add new onError callback to PreviewProgressListener, which is\nused to indicate video editor application for the error that has occurred during\npriviewing.\nWith this modification, the application must implement the onError method,\nand then VideoEditorPreviewTest.java is changed accordingly.\n\nChange-Id: I15610b8907fcf8bd35a3c69ad7c07b5175a6e309\n"
    },
    {
      "commit": "6bc7f2cd30b6bd90806942b0722e22daa2108493",
      "tree": "59332a3c88ae9deaef386b238397035aeb93fd99",
      "parents": [
        "e35581ad5ad635f9dcfe4ab6a432c48b46b782cd"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Nov 29 18:49:40 2011 -0800"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Nov 30 17:08:44 2011 -0800"
      },
      "message": "AudioService: strengthen A2DP device detection\n\nIf the intent BluetoothA2dp.ACTION_CONNECTION_STATE_CHANGED is broadcast\nbefore AudioService is started, The A2DP device connection is never detected\nby the audio framework resulting in audio not being routed to A2DP unless the device\nis rebooted or the A2DP headset reconnected.\n\nMake sure that A2DP device connection state is sampled when\nboot completed event is received.\n\nIssue 5665159\n\nChange-Id: I04d82020afc00af28c5ea0bb9879ed55bcc9b6f3\n"
    },
    {
      "commit": "55cadf7eca8dffa981054d3521fd279fefe9b6f4",
      "tree": "739dc96c2d52f6050b056e8b64765b72f3983b1a",
      "parents": [
        "ec24b0217e6e6de9ebcfb72154dbde2070f53e5a",
        "4d592c59e684ed3e6f0db4b05c37ba8774b8d410"
      ],
      "author": {
        "name": "dujin.cha",
        "email": "dujin.cha@samsung.com",
        "time": "Tue Nov 22 13:22:00 2011 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Nov 22 13:22:00 2011 -0800"
      },
      "message": "am 4d592c59: am eabde3d4: am fe464a76: [Prime K] Fix gabage character issue\n\n* commit \u00274d592c59e684ed3e6f0db4b05c37ba8774b8d410\u0027:\n  [Prime K] Fix gabage character issue\n"
    },
    {
      "commit": "eabde3d4a9027a19443a31c7c7cda3d44fb0ffe0",
      "tree": "61c6212cb0987cd45b47d3ed10bd5d6601ec8ee5",
      "parents": [
        "eff6ed0fee42e4324ceb8d5a20be09bb2f34aa9f",
        "fe464a76d8fc858be971dbb5e67b1d22fd925347"
      ],
      "author": {
        "name": "dujin.cha",
        "email": "dujin.cha@samsung.com",
        "time": "Tue Nov 22 13:18:27 2011 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Nov 22 13:18:27 2011 -0800"
      },
      "message": "am fe464a76: [Prime K] Fix gabage character issue\n\n* commit \u0027fe464a76d8fc858be971dbb5e67b1d22fd925347\u0027:\n  [Prime K] Fix gabage character issue\n"
    },
    {
      "commit": "fe464a76d8fc858be971dbb5e67b1d22fd925347",
      "tree": "5fae81310242c8fc3dd782d3ee5e858d2e67784a",
      "parents": [
        "e36657e5416dbc9c1b22cc73174a958fafdfd736"
      ],
      "author": {
        "name": "dujin.cha",
        "email": "dujin.cha@samsung.com",
        "time": "Tue Nov 22 12:13:33 2011 +0900"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Tue Nov 22 10:28:21 2011 -0800"
      },
      "message": "[Prime K] Fix gabage character issue\n\nKorean characters show up as gabage characters in Music player.\nReason : MTP service does not set the locale for the MediaScanner\nSolution : Set locale when MtpDatabase creates MediaScanner.\n\nBug ID : 5567433\nSigned-off-by: dujin.cha \u003cdujin.cha@samsung.com\u003e\n\nChange-Id: I4bfe5f603c113170d45bd57a8709c21c665e260b\n"
    },
    {
      "commit": "0e7d85fa93a5f5975b437277439b3c65f86cf275",
      "tree": "9583c9f67deea73d392e692331da2650a381dd38",
      "parents": [
        "ca127baa0675bc1168019fbb1f9812dbbe4613d7",
        "4e72e2bfc24afe053ca98c6de2591a4057cfd9fa"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Tue Nov 15 20:19:55 2011 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Nov 15 20:19:55 2011 -0800"
      },
      "message": "am 4e72e2bf: am 4fdc36e6: Merge \"Document that release() should be called with onPause() and onStop() for media objects\" into ics-mr1\n\n* commit \u00274e72e2bfc24afe053ca98c6de2591a4057cfd9fa\u0027:\n  Document that release() should be called with onPause() and onStop() for media objects\n"
    },
    {
      "commit": "4fdc36e6d6003cdce911678f0b233697554f8dbf",
      "tree": "5071202f980d8e18e80f00d2987facb075b416a6",
      "parents": [
        "45f05c9580739ffe2d665cec50efb0bb57d757ba",
        "89ca6983eb2be21848f5ac884a2c118f152c83e6"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Tue Nov 15 20:13:03 2011 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Nov 15 20:13:03 2011 -0800"
      },
      "message": "Merge \"Document that release() should be called with onPause() and onStop() for media objects\" into ics-mr1"
    },
    {
      "commit": "29270da5f7dee7e81b9d69446c7d2030aea6ff74",
      "tree": "ff0b4b61184e438fdbfac5139e50160469664fe1",
      "parents": [
        "dff37bc674310beeb2aaf296130b8bbaa0e2ead2",
        "4978c1a5b07782d622ca9e3eedd649a5927d226f"
      ],
      "author": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Tue Nov 15 18:28:39 2011 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Nov 15 18:28:39 2011 -0800"
      },
      "message": "am 4978c1a5: am 0ddb0143: Merge \"Fix 5623252 unlink to death of audio focus client early\" into ics-mr1\n\n* commit \u00274978c1a5b07782d622ca9e3eedd649a5927d226f\u0027:\n  Fix 5623252 unlink to death of audio focus client early\n"
    },
    {
      "commit": "89ca6983eb2be21848f5ac884a2c118f152c83e6",
      "tree": "3d270f87edbba1a0ee42a63364b61a5f22bcc768",
      "parents": [
        "b3b66af2b5b4ccca1f507290ab6f138a3cbffc3e"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Mon Nov 14 19:01:26 2011 -0800"
      },
      "committer": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Tue Nov 15 18:08:06 2011 -0800"
      },
      "message": "Document that release() should be called with onPause() and onStop() for media objects\n\nChange-Id: I12dd734b4314df4f0573ad56a1714348e50da05e\nrelated-to-bug: 5616833\n"
    },
    {
      "commit": "e7edc868538e83152e7bc35c830fee0d629baefc",
      "tree": "10b740a8dd1b3d18ce353da65faea9feb940e5be",
      "parents": [
        "34a62348be92034a9fb7582e51754224785568dc"
      ],
      "author": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Tue Nov 15 16:27:05 2011 -0800"
      },
      "committer": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Tue Nov 15 17:41:05 2011 -0800"
      },
      "message": "Fix 5623252 unlink to death of audio focus client early\n\nWhen removing an entry in the audio focus stack, don\u0027t wait for\n this object\u0027s finalizer to unlink to the death of the associated\n client, and unlink right away.\nThe FocusStackEntry.unlinkToDeath() method is made safe to call\n by catching the exception it can throw inside its body.\n\nChange-Id: Id347a933d72dcb41531adff2854fb00277032cc9\n"
    },
    {
      "commit": "eb80b31b5548650675c078ccfffc3091402a9382",
      "tree": "91395268faadfcb0a488ccca5db68fbd943294b2",
      "parents": [
        "7c4dee75b8a9db10ff1c5456ea7d13bfc61f35ab",
        "87597d9ce00691f05703f728c17548df2bbc9cc2"
      ],
      "author": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Tue Nov 15 13:06:57 2011 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Nov 15 13:06:57 2011 -0800"
      },
      "message": "am 87597d9c: am 538dc6ac: Merge \"Fix 5615747 Don\\\u0027t leak remote control client death handlers\" into ics-mr1\n\n* commit \u002787597d9ce00691f05703f728c17548df2bbc9cc2\u0027:\n  Fix 5615747 Don\u0027t leak remote control client death handlers\n"
    },
    {
      "commit": "a9509736c85c19fe4ad4ba97a0545f0422a3dfc1",
      "tree": "b92044586a0fdb62deb6d006b29c844130410fb9",
      "parents": [
        "258576a82c2293c3a988bf2dc6744fd8082421f9"
      ],
      "author": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Mon Nov 14 15:23:04 2011 -0800"
      },
      "committer": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Mon Nov 14 17:30:23 2011 -0800"
      },
      "message": "Fix 5615747 Don\u0027t leak remote control client death handlers\n\nWhenever a remote control stack entry is GC\u0027d or removed from\n the stack, unlink its death handler.\n\nChange-Id: Ia4ed6667351849fd388272591e24ffc16959beaf\n"
    },
    {
      "commit": "f1ec32db686586eddd023583e1c5978005c06d58",
      "tree": "e539f119e3f2031d42cecd584a1e591bf94d882b",
      "parents": [
        "28a5ec9613a824d2ec15ce5e5cec77a6fcf444d5",
        "9d36a99582518ed1a7fb005382e0128479b43e18"
      ],
      "author": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Mon Nov 14 14:38:30 2011 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Nov 14 14:38:30 2011 -0800"
      },
      "message": "am 9d36a995: am 258576a8: Merge \"Fix 5607938 AudioFocusDeathHandler leaks GREF\" into ics-mr1\n\n* commit \u00279d36a99582518ed1a7fb005382e0128479b43e18\u0027:\n  Fix 5607938 AudioFocusDeathHandler leaks GREF\n"
    },
    {
      "commit": "527c44e8a455dd0fdef1aeb6d7d8f99bb0839295",
      "tree": "118f8d3b784b29fc519957bba613d4339b04af36",
      "parents": [
        "b14d771cf07479e3186a167a219fb2d42d8d4d30",
        "62b9aec7a0a4e1cf8cfec7e39ea3103ab510d72e"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Mon Nov 14 10:50:33 2011 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Nov 14 10:50:33 2011 -0800"
      },
      "message": "Merge \"Don\u0027t check return value of new for being \u003d\u003d null\""
    },
    {
      "commit": "de1f065be109e1c313d8330c8e34210fedaac74e",
      "tree": "ba350f88aa1c75fd400552b5ca8afa0c8e26f9e2",
      "parents": [
        "24597eb77e1a88994b83c5b1f45d5b72383943b8"
      ],
      "author": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Fri Nov 11 16:13:48 2011 -0800"
      },
      "committer": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Fri Nov 11 16:13:48 2011 -0800"
      },
      "message": "Fix 5607938 AudioFocusDeathHandler leaks GREF\n\nThe AudioFocus death handler was correctly updating the audio\n focus stack when an audio focus client dies, but the death handler\n was leaking GREF if unlinkToDeath() is not called.\nThe fix consists in making sure unlinkToDeath() is always called\n by calling it in its finalizer.\n\nChange-Id: I0c5343b4986ab582cadbf171fc53816952dc16f5\n"
    },
    {
      "commit": "62b9aec7a0a4e1cf8cfec7e39ea3103ab510d72e",
      "tree": "7fbec5605ee4f4f82bb4bd1a57d48af8eda5b367",
      "parents": [
        "e2d58e95a09590a63f1c597bb808b925bcab9a69"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Mon Nov 07 11:10:16 2011 -0800"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Fri Nov 11 07:30:19 2011 -0800"
      },
      "message": "Don\u0027t check return value of new for being \u003d\u003d null\n\nnew either succeeds or throws an exception\n\nChange-Id: I1615e10c4f6730495c49e56b64714a00141ea8ff\n"
    },
    {
      "commit": "00aa51b355d2b9ae7604fe4c43f6e64193422dba",
      "tree": "1b6a6c4e66681f32812f7a30937d05f394262cf3",
      "parents": [
        "08e42967b9e459b7beb22e859f1f1eba0546741b"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Thu Nov 10 14:46:26 2011 -0800"
      },
      "committer": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Fri Nov 11 01:49:01 2011 -0800"
      },
      "message": "Unhide the key to retriever location information in 3gp/mp4 files\n\nChange-Id: I71c651b403955c0f6f8df096e995a5f5f4e39130\nrelated-to-bug: 5560253\n"
    },
    {
      "commit": "77c500c9a1f763b31fb5a03c803b3523fcb72310",
      "tree": "9feafc0d06b27223cd189b22d7bf7bc2c82c11ef",
      "parents": [
        "785fd3685a69e5b3ef9c0958dcf4ae85f818e78d"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Wed Nov 09 00:48:56 2011 -0800"
      },
      "committer": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Thu Nov 10 11:40:11 2011 -0800"
      },
      "message": "Add support for retrieving location information in mp4/3gpp files\n\nChange-Id: Ib8427704ef9ee5a4fa8fe1818c8a62d77b4ea687\nrelated-to-bug: 5560253\n"
    },
    {
      "commit": "96a33d1caad2fab0bc28891cfbf553f4b050bf0b",
      "tree": "9a2560cbaa3a850793a0c7de5738953dcc859807",
      "parents": [
        "36a7f2a9adfa21ec31f00d496fef82e68931c860"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Nov 08 10:31:57 2011 -0800"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Nov 09 18:06:37 2011 -0800"
      },
      "message": "Fix problems in tablet silent mode.\n\nDo not enter silent mode when ALARM stream volume is changed\nto 0 by volume down key: Only RING, NOTIFICATION and MUSIC\nstreams control silent mode.\n\nReport correct volume (0) for NOTIFICATION stream when silent mode\nis entered by changing NOTIFICATION stream volume to 0 with\nvolume down key.\n\nChange-Id: I3e0816dfae40bc127cc30cca02cdca6ec19e30a4\n"
    },
    {
      "commit": "b1224ff1c4ef8324c9d76b857463787aabd84707",
      "tree": "c4d09a980b8032e44e6cd10053ccf20c63434825",
      "parents": [
        "6581043a44ab46a47f09080eeb7c9fc9d0a2d0c0"
      ],
      "author": {
        "name": "Chih-Chung Chang",
        "email": "chihchung@google.com",
        "time": "Mon Nov 07 20:32:40 2011 +0800"
      },
      "committer": {
        "name": "Chih-Chung Chang",
        "email": "chihchung@google.com",
        "time": "Mon Nov 07 20:34:37 2011 +0800"
      },
      "message": "Fix 5509346: Resize the thumbnails if it\u0027s too large.\n\nChange-Id: I805f37f22cc745cfbc788f594da704e7e634f122\n"
    },
    {
      "commit": "cd84197ac1226432de2e13c8fd678a4c88511e0f",
      "tree": "bcef45ac64c6b29b49aa3cae9539c308ea3a0281",
      "parents": [
        "b288f99334348a21ffb465b37a4522998b452410",
        "6e91e5b689a3eb8e6a6f3c038322b8044a9d6670"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Mon Oct 31 23:23:15 2011 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Oct 31 23:23:15 2011 +0000"
      },
      "message": "am 6e91e5b6: Merge \"Fix volume indication in vibrate mode.\" into ics-mr0\n\n* commit \u00276e91e5b689a3eb8e6a6f3c038322b8044a9d6670\u0027:\n  Fix volume indication in vibrate mode.\n"
    },
    {
      "commit": "8ca9a1cf350bde9a429b8a6fe7c673b964048a54",
      "tree": "12fe45701f5765db09cdc30cec36c2095a5512f0",
      "parents": [
        "69e640ee84fc218d6318acaf73a1c1841d7fba6b"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Mon Oct 31 12:12:37 2011 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Mon Oct 31 12:12:37 2011 -0700"
      },
      "message": "Fix volume indication in vibrate mode.\n\nThe latest change in silent/vibrate mode selection via volume keys\nwas such that ringtone volume was not showing 0 when entering vibrate mode\nby continuous press on vol down.\n\nIssue 5530217.\n\nChange-Id: I9ba817648e5dca40e0d19f5f606d7763ae61b1c6\n"
    },
    {
      "commit": "18936d7d1d0964ba3f5112c5e3ce60f31e1ba5bb",
      "tree": "48f209ead50adb66c5ae28dfd04e5a67906d0732",
      "parents": [
        "bce45617083209583d61afbea50994f2cdcda459",
        "69e640ee84fc218d6318acaf73a1c1841d7fba6b"
      ],
      "author": {
        "name": "Amith Yamasani",
        "email": "yamasani@google.com",
        "time": "Sun Oct 30 21:37:09 2011 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Sun Oct 30 21:37:09 2011 +0000"
      },
      "message": "am 69e640ee: Merge \"Bring back the old-style Ring/Vibrate/Silent states when using volume keys.\" into ics-mr0\n\n* commit \u002769e640ee84fc218d6318acaf73a1c1841d7fba6b\u0027:\n  Bring back the old-style Ring/Vibrate/Silent states when using volume keys.\n"
    },
    {
      "commit": "74b2b9547329a0b05e0bd5701057696007b854bb",
      "tree": "40eea9e4308a3ff3cb5033ddf51a2f25b1872f62",
      "parents": [
        "76756a42dd68062349158f70d9b0ab95db908acc",
        "09848bc89de999416e2de82a7693b2deec6bf802"
      ],
      "author": {
        "name": "Joe Fernandez",
        "email": "joefernandez@google.com",
        "time": "Sat Oct 29 02:16:10 2011 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Sat Oct 29 02:16:10 2011 +0000"
      },
      "message": "am 09848bc8: Merge \"docs: add developer guide cross references, Project ACRE, round 3\" into ics-mr0\n\n* commit \u002709848bc89de999416e2de82a7693b2deec6bf802\u0027:\n  docs: add developer guide cross references, Project ACRE, round 3\n"
    },
    {
      "commit": "69e640ee84fc218d6318acaf73a1c1841d7fba6b",
      "tree": "3657937f3baf9261fb25a4efd13e0e5f40f9a11c",
      "parents": [
        "2d280f754e32e556407df05d977cfabdfff1c070",
        "c696a53d1fe4d61373c5dc64dd057d322da90c8f"
      ],
      "author": {
        "name": "Amith Yamasani",
        "email": "yamasani@google.com",
        "time": "Fri Oct 28 18:59:11 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Oct 28 18:59:11 2011 -0700"
      },
      "message": "Merge \"Bring back the old-style Ring/Vibrate/Silent states when using volume keys.\" into ics-mr0"
    },
    {
      "commit": "c696a53d1fe4d61373c5dc64dd057d322da90c8f",
      "tree": "52999422370ca84ef1fedf1490bd6cfa14c7a96d",
      "parents": [
        "fe9a2a5471616a3267b30013bce36b13a455c0cd"
      ],
      "author": {
        "name": "Amith Yamasani",
        "email": "yamasani@google.com",
        "time": "Fri Oct 28 17:02:37 2011 -0700"
      },
      "committer": {
        "name": "Amith Yamasani",
        "email": "yamasani@google.com",
        "time": "Fri Oct 28 18:40:43 2011 -0700"
      },
      "message": "Bring back the old-style Ring/Vibrate/Silent states when using volume keys.\n\nIn order to completely mute the ringer (no vibrate), introduce an extra\nstate beyond mute, which mutes the vibrator as well, if it was enabled.\n\nBug: 5530217\n\nChange-Id: Ib1f299ee6bbca56c1aa7e1100662591362d08307\n"
    },
    {
      "commit": "61fd1e8d8c3ccf2d6b7d4af1c19e8f0988d5a1ec",
      "tree": "0cc2443b58929c018ac78c1f85047fb9c4b267f2",
      "parents": [
        "a6d2e6b952d535fec4483d67ea52947e6e3bc629"
      ],
      "author": {
        "name": "Joe Fernandez",
        "email": "joefernandez@google.com",
        "time": "Wed Oct 26 13:39:11 2011 -0700"
      },
      "committer": {
        "name": "Joe Fernandez",
        "email": "joefernandez@google.com",
        "time": "Fri Oct 28 14:23:23 2011 -0700"
      },
      "message": "docs: add developer guide cross references, Project ACRE, round 3\n\nChange-Id: I6125315ecdf0f78dd947c514a9944729d723e95d\n"
    },
    {
      "commit": "33fe290ca33235d7e0988cace14de3319a9a83f1",
      "tree": "de16feac822bed06d2059d704bac79f93daa3554",
      "parents": [
        "d085df318afc8b3485afdd81106ce93a13265ebb"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Thu Oct 27 08:09:44 2011 -0700"
      },
      "committer": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Thu Oct 27 08:47:07 2011 -0700"
      },
      "message": "Unhide QVGA related resolution profiles and allow to use QVGA resolution for timelapse video recording.\n\nChange-Id: I328d9fa83a381415d7648218a6fb93b3724bbcc6\nrelated-to-bug: 5343832\n"
    },
    {
      "commit": "e68a6936c7b3d3a041feeff9661b234a25e56e73",
      "tree": "6d6f931c462433358d772646652a166295ff7b76",
      "parents": [
        "4715402557a483eda853186e32ff6a552023a5fe",
        "8e2ed8d512ade2ea481b3a292556782b17a74674"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Wed Oct 19 07:50:24 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Oct 19 07:50:24 2011 -0700"
      },
      "message": "Merge \"Refactor FileInserter in MediaScanner and adding unit tests for the newly added class.\""
    },
    {
      "commit": "46c8f1535a884a77137c294cad94f811a33f07aa",
      "tree": "44bb9ec6b634f163ca27e1e7c329d42e0a53905b",
      "parents": [
        "21ad1d1cb0806991fc5e7c55c9f3bbce87745e17",
        "c0a87dc10cc74918518457e96b48f16bcc0ea2cd"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Mon Oct 17 19:50:36 2011 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Oct 17 19:50:36 2011 -0700"
      },
      "message": "am c0a87dc1: Merge \"Fix issue 5462427: Volume should never be 0 ...\" into ics-mr0\n\n* commit \u0027c0a87dc10cc74918518457e96b48f16bcc0ea2cd\u0027:\n  Fix issue 5462427: Volume should never be 0 ...\n"
    },
    {
      "commit": "b024c30a80684ac08daef3137b7ba0d347fe3ce5",
      "tree": "20617b67c4f8ddc6ccd091b63560c252225f19e8",
      "parents": [
        "202b38cb71d123e4ebc8741643e84fa455ecd002"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Oct 14 17:19:27 2011 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Oct 14 17:19:27 2011 -0700"
      },
      "message": "Fix issue 5462427: Volume should never be 0 ...\n\nMake sure that ring or notification volume index\nnever reaches 0 unless in silent mode.\nConversely, enter silent mode when this volume is set to 0.\n\nChange-Id: Iff5e5e972b607f4736e7a704b26b2dadb40074b0\n"
    },
    {
      "commit": "e04783ccde79730f239d739ad515224245683f22",
      "tree": "c6120978bbad10f2e08c61a412c38485ed1082cd",
      "parents": [
        "93c299d0d0fc46c2407edca569960c36043c137a",
        "615858a8ebb12b3541fd709e6e965ac814880261"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Oct 14 12:58:40 2011 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Oct 14 12:58:40 2011 -0700"
      },
      "message": "am 615858a8: Merge \"Indicate screen off condition to audio framework.\" into ics-mr0\n\n* commit \u0027615858a8ebb12b3541fd709e6e965ac814880261\u0027:\n  Indicate screen off condition to audio framework.\n"
    },
    {
      "commit": "950e8cb40a6d826af4cc2eef9d3908c1b70486e6",
      "tree": "d9afa821e1459d33cc815923466b5300a3844aec",
      "parents": [
        "e6fee18d16a86c266afef48f7705268435a99111"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Oct 13 08:57:54 2011 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Oct 14 11:40:24 2011 -0700"
      },
      "message": "Indicate screen off condition to audio framework.\n\nAdd a mechanism for AudioService to notify audio framework and audio HAL\nthat screen is turned on or off. This indication can be used by lower\naudio layers to trigger low power audio playback mode.\nCurrent implementaiton based on setParameters() method is experimental\nand will be replaced by a different interface when ready.\n\nChange-Id: Ie72ada0a8edec3d71b47681b9f51cb5bc839d45b\n"
    },
    {
      "commit": "414b74c564d29da933a650d5193bb2152b704c06",
      "tree": "53d026a96513eb3b4c60385e452dfd8fa81d0484",
      "parents": [
        "772158a596bc97694fa82e710b5cfbe8c6f40cdc",
        "e48440d59a52c0f13166da2fd32023356d9215d9"
      ],
      "author": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Fri Oct 14 08:46:08 2011 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Oct 14 08:46:08 2011 -0700"
      },
      "message": "am e48440d5: Merge \"Fix 5153611 remove remote control client/display log from AudioService\" into ics-mr0\n\n* commit \u0027e48440d59a52c0f13166da2fd32023356d9215d9\u0027:\n  Fix 5153611 remove remote control client/display log from AudioService\n"
    },
    {
      "commit": "7ff866e8cf43afc64111e98863dab549b57447b4",
      "tree": "278795ce70e40a709e4ffd1ad77517c555a9f5a5",
      "parents": [
        "0c265c886b563095172827d39b55a8cd71a19ffb"
      ],
      "author": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Thu Oct 13 18:09:26 2011 -0700"
      },
      "committer": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Thu Oct 13 18:09:26 2011 -0700"
      },
      "message": "Fix 5153611 remove remote control client/display log from AudioService\n\nDo not log debug messages for the RemoteControlClient and\n IRemoteControlDisplay related features.\n\nChange-Id: I81bfeec1770f81b78b679dc03fb40806393b170a\n"
    },
    {
      "commit": "0eb6ef1798362d15696618debdb2478b386398c5",
      "tree": "b8fb88c8fcc85ed6f33bcc7ace0188dc72772ecd",
      "parents": [
        "df3975c5aee17cc365b854e616d8831b45809db0",
        "bc554956128d69d8d2e60365fb6cffe6facf659b"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Thu Oct 13 10:03:26 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Oct 13 10:03:26 2011 -0700"
      },
      "message": "Merge \"Support for an MPEG2 Program Stream extractor.\""
    },
    {
      "commit": "09b4d99822678e57ba6ed1568832980ba64be330",
      "tree": "6f6d4a50696d0d509e48183e445347f6d3f9776e",
      "parents": [
        "99f36683a4f2c218d52922ae7c2a0c0b3f2890ed"
      ],
      "author": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Tue Oct 11 12:07:35 2011 -0700"
      },
      "committer": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Tue Oct 11 18:59:34 2011 -0700"
      },
      "message": "DO NOT MERGE Fix 5389442 RemoteControlClient javadoc\n\nExtend RemoteControlClient class description with an example\n of instance creation showing how the PendingIntent is created\n and how it uses the same ComponentName as the one used\n in AudioManager.registerMediaButtonEventReceiver()\n\nChange-Id: I1af61ddbf5cfb9160ea5b814bed7b881d51b7eff\n"
    },
    {
      "commit": "ad87f5b40f2a3fd2d506dc15e00b8af28a8fa2ba",
      "tree": "be556697448569ed7fdf1597d7a4a77f22fb969a",
      "parents": [
        "338140f7340a5471b5c5e8152405bc810fe56769"
      ],
      "author": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Tue Oct 11 12:07:35 2011 -0700"
      },
      "committer": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Tue Oct 11 14:09:23 2011 -0700"
      },
      "message": "Fix 5389442 RemoteControlClient javadoc\n\nExtend RemoteControlClient class description with an example\n of instance creation showing how the PendingIntent is created\n and how it uses the same ComponentName as the one used\n in AudioManager.registerMediaButtonEventReceiver()\n\nChange-Id: If8f050f94b112f9680ba6bf32ba622bc648fb1d0\n"
    },
    {
      "commit": "8e2ed8d512ade2ea481b3a292556782b17a74674",
      "tree": "07434a2f882aab55bdf1f0249f789a4761ec1bf2",
      "parents": [
        "041ed0485a5fce499add436d9a117562b202254e"
      ],
      "author": {
        "name": "Dongwon Kang",
        "email": "dwkang@google.com",
        "time": "Mon Oct 10 19:18:45 2011 -0700"
      },
      "committer": {
        "name": "Dongwon Kang",
        "email": "dwkang@google.com",
        "time": "Mon Oct 10 19:34:35 2011 -0700"
      },
      "message": "Refactor FileInserter in MediaScanner and adding unit tests for the newly added class.\n\nChange-Id: Ia0e8c95239916fd4c21cb5bf10ac94201e6eb6f1\n"
    },
    {
      "commit": "f58ba6506959947d2e646833789c859ae50e6767",
      "tree": "6333600bfc316ce5db2d92be9804ad39629d7833",
      "parents": [
        "f6497e45fae88788b1c67d815458355a1f2f65b5"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Sun Oct 09 21:02:12 2011 -0700"
      },
      "committer": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Sun Oct 09 21:14:58 2011 -0700"
      },
      "message": "Support AMR as a file type so that it can be imported into movie studio\n\nChange-Id: I3fc4f49ae0a210f53b1bab68716f4e558b3d91c5\nrelated-to-bug: 5419452\n"
    },
    {
      "commit": "bc554956128d69d8d2e60365fb6cffe6facf659b",
      "tree": "8a84036682044f96b5b5aade1b18add9c40e86f3",
      "parents": [
        "ce0a7ade96ddbdcb342e0b382e9d3ea43962cafd"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Thu Sep 08 14:12:44 2011 -0700"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Fri Sep 30 15:26:31 2011 -0700"
      },
      "message": "Support for an MPEG2 Program Stream extractor.\n\nChange-Id: I606d87c278f72b22a5b6d7ee57bce6b02e280d41\n"
    },
    {
      "commit": "b741c604861ddbafcacaa452e31bd19337a19705",
      "tree": "9e2a1593dba623c7a4ac269ed468c17f54331ed0",
      "parents": [
        "ee1d541ec89e1d2724a382c90276586e2c28b278"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Thu Sep 29 15:58:41 2011 -0700"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Thu Sep 29 15:58:41 2011 -0700"
      },
      "message": "Remove Ringtone.setWakeMode, it\u0027s not needed.\n\nThis partially reverts commit e47e8520fa48bd014287eda94ea39927de73d6bc.\n(the other part of that change was already removed as part of a different\nchange)\n\nChange-Id: Ica7c196ab1f74f96237e64d07580832f0d50022f\n"
    },
    {
      "commit": "d94a7b60ccbd748752d4babd9fc79252c71bb1c2",
      "tree": "78994f46f20f6f285c47f617e9325dff38024f34",
      "parents": [
        "cc3fbb7b699083518340cfd57334d3798d881a49",
        "e1bd048cf2af24cbd93e549875c875239e5f4829"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Thu Sep 29 10:11:34 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Sep 29 10:11:34 2011 -0700"
      },
      "message": "Merge \"Release MediaPlayer before letting it go out of scope.\""
    },
    {
      "commit": "e1bd048cf2af24cbd93e549875c875239e5f4829",
      "tree": "fae9e314ac3e012a73afc3b0b51bd1f26750d984",
      "parents": [
        "40047fa14df169bece9c8d28bdbc515030d37383"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Thu Sep 29 09:59:03 2011 -0700"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Thu Sep 29 09:59:03 2011 -0700"
      },
      "message": "Release MediaPlayer before letting it go out of scope.\n\nChange-Id: Ib2b727146f6cba91b131e66d218251f5a3206fac\n"
    },
    {
      "commit": "26b3d1ff38998c7cb80a2950da0589ebd8510897",
      "tree": "0776dff97f5818a9548e4d7a151acd0c111732d3",
      "parents": [
        "2b2adbdda04c96592026e84243cbb0f90a2021c9"
      ],
      "author": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Wed Sep 28 11:05:15 2011 -0700"
      },
      "committer": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Wed Sep 28 11:43:36 2011 -0700"
      },
      "message": "Fix bug 5357295 NPE on display when remote control client dies\n\nWhen a IRemoteControlClient dies, that client is set to null\n in the stack of remote control entries (mRCStack). This is done\n by calling registerRemoteControlClient() with a null client.\nThe bug is that registerRemoteControlClient(), after storing\n the new client, uses it to let it know what the current\n remote control display is. When that display is non null, the\n client is sent the current display. So when a client died\n when there was a display, the client reference was accessed\n in the part of the method where we haven\u0027t yet checked whether\n it is null or not.\nThe fix consists in moving the setting of the display on the\n client (method plugRemoteControlDisplay) only after having\n checked that the client is non-null.\n\nChange-Id: Ic74d6cba9e3a3a16e78cd80a1ae5901abfeb3905\n"
    },
    {
      "commit": "e47e8520fa48bd014287eda94ea39927de73d6bc",
      "tree": "f2b3b93f1420ee9b7813cad49b0cfa19f1d1282e",
      "parents": [
        "a80599f5be394edd9f3918ba03c490850a1d9e7f"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Wed Sep 21 13:34:33 2011 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Wed Sep 21 13:34:33 2011 -0700"
      },
      "message": "Keyguard sound needs to hold wake lock.\n\nWe need to hold a wakelock while playing the keyguard lock sound,\nso that it actually completes before the CPU goes to sleep.\n\nChange-Id: I144c345383afeb911ea461b2eb17b31183b6d092\n"
    },
    {
      "commit": "eb060254a0b7aa42ab05ed6539156c3084ec1908",
      "tree": "1761514f154b567612d108c6a902bb819cf70847",
      "parents": [
        "13dfa095c2a62b0bece80c12300fcab3f20a2cbe",
        "9c43016b52afa855156aac2dc81a2bbe1e4ab436"
      ],
      "author": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Wed Sep 21 09:36:56 2011 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Sep 21 09:36:56 2011 -0700"
      },
      "message": "am 9c43016b: Merge \"Bug 5045498 Keep track of RemoteControlClient play state change time\" into ics-factoryrom\n\n* commit \u00279c43016b52afa855156aac2dc81a2bbe1e4ab436\u0027:\n  Bug 5045498 Keep track of RemoteControlClient play state change time\n"
    },
    {
      "commit": "28b9a063ad359d186cf69b235c5592eb308d2ac4",
      "tree": "d7ddd735760c7c8722d3579cb4f72acec3b649cf",
      "parents": [
        "f888f3ffa06ea8f67dcf417e9ce446c183238b99",
        "7d92a22d9dec42a45cd55fd77d0a86b4b9c6e9df"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Wed Sep 21 08:48:46 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Sep 21 08:48:46 2011 -0700"
      },
      "message": "Merge \"MediaScanner: To query row ids of music files when handling playlists.\""
    },
    {
      "commit": "68622396b62f9084781add1e12f4d513b633ab54",
      "tree": "453653c1bf8e7de308091370e08edef4aafe4cac",
      "parents": [
        "bbb11b80106c8687f2833c3d4b538029fc0805e6"
      ],
      "author": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Mon Sep 19 14:53:14 2011 -0700"
      },
      "committer": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Tue Sep 20 11:59:51 2011 -0700"
      },
      "message": "Bug 5045498 Keep track of RemoteControlClient play state change time\n\nStore the time at which a RemoteControlClient changes it playback\n state, and send that time to the IRemoteControlDisplay.\nThis change will enable displays to implement strategies such as\n timeouts (e.g. to not display transport controls for clients which have\n been paused or stopped for a certain amount of time).\n\nChange-Id: I902882500565743d455d56f6000efaf612cbe0a9\n"
    },
    {
      "commit": "ed4cfe70ca165b6469d2c9fb1b5296afdff1faae",
      "tree": "8549abc09330a9e494d27559d2bccc23a421623b",
      "parents": [
        "291c6d789dac8f85c50163e9a9ef24ef31183b93",
        "e1bf8efaff42dc33b7a4663f3c9d50d12de81bcb"
      ],
      "author": {
        "name": "Chih-Chung Chang",
        "email": "chihchung@google.com",
        "time": "Tue Sep 20 09:23:34 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Sep 20 09:23:34 2011 -0700"
      },
      "message": "Merge \"Fix 5224359: Add width and height to media store.\""
    },
    {
      "commit": "e1bf8efaff42dc33b7a4663f3c9d50d12de81bcb",
      "tree": "603897f82cc21f920062a457798a19758d6c7f75",
      "parents": [
        "f2ff20e05baec2d9849c7456e8455a2671820f2a"
      ],
      "author": {
        "name": "Chih-Chung Chang",
        "email": "chihchung@google.com",
        "time": "Tue Sep 20 20:37:21 2011 +0800"
      },
      "committer": {
        "name": "Chih-Chung Chang",
        "email": "chihchung@google.com",
        "time": "Tue Sep 20 20:41:44 2011 +0800"
      },
      "message": "Fix 5224359: Add width and height to media store.\n\nChange-Id: I27376285a551e648eb0ea010dfdf6b8ed873cdd8\n"
    },
    {
      "commit": "92d0a64b909cd95e8f4ce587438b0cc6d2daeaa0",
      "tree": "17d23a22607f0eab69abedf4f82d850c222c1fae",
      "parents": [
        "3b6377b120bb507f93a8f1e7e25bc026de764dd6",
        "07b9ae33127212fd9e15f96fa89b7d4cab81e55e"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Mon Sep 19 20:06:52 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Sep 19 20:06:52 2011 -0700"
      },
      "message": "Merge \"Add QVGA resolution to CamcorderProfile\" into ics-factoryrom"
    },
    {
      "commit": "07b9ae33127212fd9e15f96fa89b7d4cab81e55e",
      "tree": "2649cc7409bb00e3037451e156931cee3cafe837",
      "parents": [
        "79aa40302b643ee6c6227ee354a1b1378e721568"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Mon Sep 19 16:27:31 2011 -0700"
      },
      "committer": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Mon Sep 19 19:32:26 2011 -0700"
      },
      "message": "Add QVGA resolution to CamcorderProfile\n\nChange-Id: Icebbafb68d8164370f98a2c36699845d10ef081b\nrelated-to-bug: 5145483\n"
    },
    {
      "commit": "f0cff0456258478ba768097f73d4367ab67fd7a3",
      "tree": "a8078a2ede31b08397230128d40de672cbf91744",
      "parents": [
        "34d0d300cac645b48cce5a1735f45e1102d4ef0e"
      ],
      "author": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Wed Sep 14 18:11:09 2011 -0700"
      },
      "committer": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Fri Sep 16 12:40:43 2011 -0700"
      },
      "message": "Bug 5300223 RemoteControlClient uses PendingIntent for media button events\n\nUpdate the implementation of the RemoteControlClient / Display\n feature rely on PendingIntent as provided in the construction\n of the RemoteControlClient instance.\nThe ComponentName that describes the target of the media button\n events is set as the target of the Intent from which\n a PendingIntent is constructed.\nThis ComponentName is still saved in the stack for persisting\n the last media button event receiver.\n\nThis CL also updates the lockscreen IRemoteControlDisplay\n implementation to use the PendingIntent supplied by the\n application when sending transport control events. A (good)\n side effect of doing this is that intent will be directly\n targeted at the application.\n\nRestoration of the media button event receiver\n after reboot is not fully functional yet.\n\nChange-Id: I2be82f2839e9dee1de02512437b3fb41cc386cde\n"
    },
    {
      "commit": "34d0d300cac645b48cce5a1735f45e1102d4ef0e",
      "tree": "7e738441e728ce0e460df11250053d9918604a07",
      "parents": [
        "ebdcae732f648871dd0df6586a5ba57aae015bd4"
      ],
      "author": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Fri Sep 16 10:41:04 2011 -0700"
      },
      "committer": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Fri Sep 16 11:33:50 2011 -0700"
      },
      "message": "Fix bug 5327199 Recycle bitmaps in RemoteControlClient\n\nWhen applying the new bitmap from the editor to the client,\n recycle the old bitmap, and set the reference to the editor\n bitmap to null.\n\nChange-Id: I7d79e4b8410e5035fa51b20be4b1ada391c84c28\n"
    },
    {
      "commit": "16066ec591d05830a925b34f966f8c552a81ca70",
      "tree": "9749c825e9e1c36ac6205a9989314176941dc38c",
      "parents": [
        "8dd41fb992668b67db9a0899f5d1768680a55620",
        "d7454be47f4111c0478a502353e11dea401378bd"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Sep 14 09:18:23 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Sep 14 09:18:23 2011 -0700"
      },
      "message": "Merge \"Issue 5044873: Pb with BT SCO AudioManager API\""
    },
    {
      "commit": "e83f771f0ab8e1e72e1fd2147085223ac8a00ba2",
      "tree": "62442357c460e9b2069cbb82ae8a48639cea896f",
      "parents": [
        "d8c82516dd664d3d7617d19bd1f8530f1d922957",
        "6e920e6dac11c3ebf6c0c19402934834e9e491bf"
      ],
      "author": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Wed Sep 14 09:05:36 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Sep 14 09:05:36 2011 -0700"
      },
      "message": "Merge \"Bug 5300223 RemoteControlClient uses PendingIntent\""
    },
    {
      "commit": "d7454be47f4111c0478a502353e11dea401378bd",
      "tree": "ed80cfa9763853f251790833dfd6a10a10087e16",
      "parents": [
        "cb18db8e7e43c4aa15aeb82dbab41ee3ee95f0b4"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Sep 14 08:45:58 2011 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Sep 14 08:45:58 2011 -0700"
      },
      "message": "Issue 5044873: Pb with BT SCO AudioManager API\n\nDo not identify the SCO connection client by the binder interface\npassed when starting the connection as this binder changes if the\nAudioManager proxy changes. Use the client PID instead.\n\nThis solves an issue with gTalk starting a SCO connection from one\nAudioManager proxy and then changing audio mode from another thus\nterminating the previously started SCO connection.\n\nChange-Id: Ia3067fecc551fc15df3bf75ce0c43d181859e4f0\n"
    },
    {
      "commit": "6e920e6dac11c3ebf6c0c19402934834e9e491bf",
      "tree": "2abb48550aaed544e9c997842e66ff8f20cbcd17",
      "parents": [
        "92bda84b11ba2aec98036313784444d9f5aebc9a"
      ],
      "author": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Tue Sep 13 17:48:43 2011 -0700"
      },
      "committer": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Tue Sep 13 19:27:20 2011 -0700"
      },
      "message": "Bug 5300223 RemoteControlClient uses PendingIntent\n\nAPI change so RemoteControlClient is given a PendingIntent in\n its constructor, which will be used for receiving media button\n events from remote controls.\nLeave the old constructors (but hidden) to not break\n current functionality until the AudioManager and AudioService\n implementations have been updated.\n\nChange-Id: Ifa12c8036c948931adc386a827dce2936788e1cd\n"
    },
    {
      "commit": "48c5fb14933cba4dcf6ba401b895e59bac4a8420",
      "tree": "0b9e5715ba5f0a0c674575ea27a04576cdb8b585",
      "parents": [
        "651cdfcbac6245f570475991588ddc2d30265e8d"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Tue Sep 13 00:17:08 2011 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Tue Sep 13 16:24:45 2011 -0700"
      },
      "message": "API review: Metadata class not used.\n\nThe Metadata class doesn\u0027t actually seem to be used with anything\nin the SDK, and the API probably needs some work, so hide it.\n\nChange-Id: Ifecf49130b90cbb4c588ad8104f1e7957978f789\n"
    },
    {
      "commit": "02ea7d48773210fa0f29299269aca26b3201b1d0",
      "tree": "9b6cab04851ffd8290c1ccfcf84da30acb4b99bc",
      "parents": [
        "ebf6478f557c20fc1c23f9537fcdc3f3c66decb4",
        "466ade5ad66e7bfb1814d5e5ac76a17f8a0bcd3a"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Fri Sep 09 08:44:19 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Sep 09 08:44:19 2011 -0700"
      },
      "message": "Merge \"Fix bug 5045498 Unhide Remote Control Client API\""
    },
    {
      "commit": "ebf6478f557c20fc1c23f9537fcdc3f3c66decb4",
      "tree": "c5551bed9dd3a33ecd1e13aa8e220811e83bf9ce",
      "parents": [
        "ce0027532dc10bf9b25f4eeff1a7540f10fe9a26",
        "9f103de83f2d5d472960dcf1401e95b2ab57a477"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Sep 09 08:27:04 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Sep 09 08:27:04 2011 -0700"
      },
      "message": "Merge \"Fix issue 4673378: switching from VoIP to GSM call\""
    },
    {
      "commit": "9f103de83f2d5d472960dcf1401e95b2ab57a477",
      "tree": "cf010908fb2dce19bfa8ab89b53468dc500bc2be",
      "parents": [
        "6a39c0201ca72d6ccbc63e5fec75949a08fcb043"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Sep 08 15:04:23 2011 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Sep 08 19:23:56 2011 -0700"
      },
      "message": "Fix issue 4673378: switching from VoIP to GSM call\n\nThe problem is that any app can change the audio mode and override\na mode previously set by another app. If two apps (gTalk and Phone) compete\nfor audio mode ownership, there is no mechanism to maintain coherency\nin the actual audio mode selected.\n\nAdded a mechanism in AudioService to manage an audio mode request stack.\nAny app requesting a mode different from NORMAL enters at the top of the stack\nand the requested mode is applied. When an app sets mode back to NORMAL, it exits\nthe stack and the new mode corresponding to the request at the top of the\nstack (if any) is applied.\n\nChange-Id: I68d1755d0922f680df4a19bfc5ab924f5a5d8ccd\n"
    },
    {
      "commit": "70ad1c378bce097f9f2dbb79cb8d5d225d4c14d7",
      "tree": "f9bca6d4a690a6a46463a15d40ed5c44dd5569cf",
      "parents": [
        "66b10a1cf77e1dd767508930a950b1584143ee9b",
        "47a52158d2df0eb818bf7d589d8ff9fd5c0daaa3"
      ],
      "author": {
        "name": "Chih-Chung Chang",
        "email": "chihchung@google.com",
        "time": "Thu Sep 08 05:52:44 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Sep 08 05:52:44 2011 -0700"
      },
      "message": "Merge \"Fix 5156702: rotate thumbnails\""
    },
    {
      "commit": "7d92a22d9dec42a45cd55fd77d0a86b4b9c6e9df",
      "tree": "2cd3a616c04a91fe89e5a5b6016e011eea959c68",
      "parents": [
        "9f443fb6e70f4dafdc9610385c66425410bb3ff1"
      ],
      "author": {
        "name": "Dongwon Kang",
        "email": "dwkang@google.com",
        "time": "Thu Aug 18 18:04:46 2011 +0900"
      },
      "committer": {
        "name": "Dongwon Kang",
        "email": "dwkang@google.com",
        "time": "Thu Sep 08 10:50:40 2011 +0900"
      },
      "message": "MediaScanner: To query row ids of music files when handling playlists.\n\nChange-Id: I3c2a803618bfdaf4915f2487669952d5e3b4dd32\n"
    },
    {
      "commit": "47a52158d2df0eb818bf7d589d8ff9fd5c0daaa3",
      "tree": "bfeb04d14957f9d5787622a08b6d3bf767cb929f",
      "parents": [
        "7a57009c3ab5e4a55db448596a650261e878c975"
      ],
      "author": {
        "name": "Chih-Chung Chang",
        "email": "chihchung@google.com",
        "time": "Wed Sep 07 19:20:45 2011 +0800"
      },
      "committer": {
        "name": "Chih-Chung Chang",
        "email": "chihchung@google.com",
        "time": "Wed Sep 07 19:20:45 2011 +0800"
      },
      "message": "Fix 5156702: rotate thumbnails\n\nChange-Id: I97b51dadf129172d5b154e9dfd66da254e4559d7\n"
    },
    {
      "commit": "671db6f3ba1fdb3c907e0735fe6d0d284f5c34de",
      "tree": "b2cd304b30f29ee35493d85b45c2f91c0a6270e2",
      "parents": [
        "535e8f3562b7ca49888769a4c5c974730fb9084d"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Tue Sep 06 16:29:12 2011 -0700"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Tue Sep 06 16:51:21 2011 -0700"
      },
      "message": "Fix startBluetoothSco race\n\nChange-Id: I8b711bd3c6b12f2e3e92144c0dadac72261bf914\n"
    },
    {
      "commit": "2e6f49cc810ea8c4a23d88fdeb24267a18085556",
      "tree": "b74ae2660d5878caae3a67879017af6b3b1daa01",
      "parents": [
        "05dbb65dfa3b81a4b70069ca6aa0a343b56565f9",
        "83fb94d188e18a44458f903ff4baa6e8402a31ce"
      ],
      "author": {
        "name": "Jamie Gennis",
        "email": "jgennis@google.com",
        "time": "Mon Sep 05 14:50:33 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Sep 05 14:50:33 2011 -0700"
      },
      "message": "Merge \"MediaPlayer: remove the setTexture method\""
    },
    {
      "commit": "09bb20b5f6072f3202c4bfd7db9b557e05547c3b",
      "tree": "9f0cc870703768bc99f448437eb8ac58cafcd35c",
      "parents": [
        "5c72e583f5f6eec85d5fb79742017e92b13ebc21",
        "8b1f35099331746599298bda151eac56b041b746"
      ],
      "author": {
        "name": "Chih-Chung Chang",
        "email": "chihchung@google.com",
        "time": "Sun Sep 04 19:36:20 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sun Sep 04 19:36:20 2011 -0700"
      },
      "message": "Merge \"Fix 5240036: Generate a reasonable bitrate for intermediate clips.\""
    },
    {
      "commit": "dca56b9432e2cc851d1a58920071fed2e1e3d142",
      "tree": "dec365b40e97c1e8331db5e0174548251aebdb92",
      "parents": [
        "5afd2bd02ae44d5a38f9e560047723ddab176405"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Sep 02 14:20:56 2011 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Sep 02 15:59:50 2011 -0700"
      },
      "message": "Fix issue 5252593: any app can restart the runtime\n\nReplace null device address string by empty sting.\n\nChange-Id: I285c35f3345334e6d2190493b1a8a5aca1a361a4\n"
    },
    {
      "commit": "83fb94d188e18a44458f903ff4baa6e8402a31ce",
      "tree": "a8455575f12848d418358f1c0e74e12a6f1d7669",
      "parents": [
        "c592e8e61acd3cfbd11f05d2ea59af267ca33dcf"
      ],
      "author": {
        "name": "Jamie Gennis",
        "email": "jgennis@google.com",
        "time": "Sun Aug 28 17:38:33 2011 -0700"
      },
      "committer": {
        "name": "Jamie Gennis",
        "email": "jgennis@google.com",
        "time": "Fri Sep 02 15:48:52 2011 -0700"
      },
      "message": "MediaPlayer: remove the setTexture method\n\nThis change removes the MediaPlayer#setTexture method.  It has been\nreplaced with MediaPlayer#setSurface.\n\nChange-Id: Iaecbbac7629d7092883f270694c5c67391f4ed6c\n"
    },
    {
      "commit": "fc301b0bb5c635c6bb51b48c504a8db5f9010e5c",
      "tree": "463dec648e238d2e6821a86d121f2a3f8048b3ff",
      "parents": [
        "117999d1f44ec3423369385495ae207898b7b73e"
      ],
      "author": {
        "name": "Dave Burke",
        "email": "daveburke@google.com",
        "time": "Tue Aug 30 14:39:17 2011 +0100"
      },
      "committer": {
        "name": "Dave Burke",
        "email": "daveburke@google.com",
        "time": "Fri Sep 02 11:26:59 2011 +0100"
      },
      "message": "Require INTERNET permission for network-based content.\nBug #1870981\n\nChange-Id: Ia3ad166390c4d60cea19c3783895b078a2c4c15f\n"
    }
  ],
  "next": "8b1f35099331746599298bda151eac56b041b746"
}
