Dan Morrill | 3cd199f | 2009-11-06 14:04:16 -0800 | [diff] [blame^] | 1 | page.title=Licenses |
| 2 | doc.type=source |
| 3 | @jd:body |
| 4 | <div> |
| 5 | <p>The Android Open Source Project uses a few <a |
| 6 | href="http://www.opensource.org/">open source initiative</a> approved open |
| 7 | source licenses to enable availability of source code and to accept |
| 8 | contributions from individuals and corporations.</p> |
| 9 | <h2>Android Open Source Project license</h2> |
| 10 | <p>The preferred license for the Android Open Source Project is <a |
| 11 | href="http://www.apache.org/licenses/LICENSE-2.0">Apache 2.0</a>. Apache 2.0 |
| 12 | is a commercial and open source friendly open source license. The majority of |
| 13 | the Android platform is licensed under the<a |
| 14 | href="http://www.apache.org/licenses/">Apache 2.0 license</a>. While the |
| 15 | project will strive to adhere to the preferred license, there may be |
| 16 | exceptions which will be handled on a case-by-case basis. For example, the |
| 17 | Linux kernel patches are under the GPLv2 license with system exceptions, which |
| 18 | can be found on <a |
| 19 | href="http://www.kernel.org/pub/linux/kernel/COPYING">kernel.org</a>. |
| 20 | </p> |
| 21 | <h2>Contributor License Grants</h2> |
| 22 | <p>All <b>individual</b> contributors (that is, contributors making contributions |
| 23 | only on their own behalf) of ideas, code, or documentation to the Android Open |
| 24 | Source Project will be required to complete, sign, and submit an <a |
| 25 | href="{@docRoot}source/cla-individual.html">Individual |
| 26 | Contributor License Grant</a>. The grant can be executed online through the <a |
| 27 | href="http://review.source.android.com/Gerrit#settings,agreements">code review |
| 28 | tool</a>. The agreement clearly defines the terms under which intellectual |
| 29 | property has been contributed to the Android Open Source Project.This license |
| 30 | is for your protection as a contributor as well as the protection of the |
| 31 | project; it does not change your rights to use your own contributions for any |
| 32 | other purpose.</p> |
| 33 | <p>For a <b>corporation</b> (or other entity) that has assigned employees to |
| 34 | work on the Android Open Source Project, a <a |
| 35 | href="{@docRoot}source/cla-corporate.html">Corporate |
| 36 | Contributor License Grant</a> is available. This version of the Grant allows a |
| 37 | corporation to authorize contributions submitted by its designated employees |
| 38 | and to grant copyright and patent licenses. Note that a Corporate Contributor |
| 39 | License Grant does not remove the need for any developer to sign their own |
| 40 | Individual Contributor License Grant as an individual, to cover any of their |
| 41 | contributions which are <b><i>not</i></b> owned by the corporation signing the |
| 42 | Corporate Contributor License Grant. |
| 43 | </p> |
| 44 | <p>Please note that we based our grants on the ones that the <a |
| 45 | href="http://www.apache.org/">Apache Software Foundation</a> uses, which can |
| 46 | be found on <a href="http://www.apache.org/licenses/">the Apache web site</a>.</p> |
| 47 | <h2>Why Apache Software License?</h2> |
| 48 | <p>We are sometimes asked why Apache Software License 2.0 is the preferred |
| 49 | license for Android. For userspace (that is, non-kernel) software, we do in |
| 50 | fact prefer ASL2.0 (and similar licenses like BSD, MIT, etc.) over other |
| 51 | licenses such as LGPL.</p> |
| 52 | <p>Android is about freedom and choice. The purpose of Android is promote |
| 53 | openness in the mobile world, but we don't believe it's possible to predict or |
| 54 | dictate all the uses to which people will want to put our software. So, while |
| 55 | we encourage everyone to make devices that are open and modifiable, we don't |
| 56 | believe it is our place to force them to do so. Using LGPL libraries would |
| 57 | often force them to do so.</p> |
| 58 | <p>Here are some of our specific concerns:</p> |
| 59 | <ol> |
| 60 | <li>LGPL (in simplified terms) requires either: shipping of source to the |
| 61 | application; a written offer for source; or linking the LGPL-ed library |
| 62 | dynamically and allowing users to manually upgrade or replace the library. |
| 63 | Since Android software is typically shipped in the form of a static system |
| 64 | image, complying with these requirements ends up restricting OEMs' designs. |
| 65 | (For instance, it's difficult for a user to replace a library on read-only |
| 66 | flash storage.)</li> |
| 67 | <li>LGPL requires allowance of customer modification and reverse |
| 68 | engineering for debugging those modifications. Most app producers do |
| 69 | want to have to be bound by these terms, and the more userspace libs |
| 70 | that are LGPL, the more they would have to be to use Android |
| 71 | userspace.</li> |
| 72 | <li>Historically, LGPL libraries have been the source of a large number |
| 73 | of compliance problems for downstream device makers and application |
| 74 | developers (due to ignorance and disbelief, usually). Education is |
| 75 | slow going, sadly. Part of android being successful as a platform is |
| 76 | that we want to make it easy for our device makers to comply with the |
| 77 | licenses in Android. Given the difficulties with complying with LGPL |
| 78 | in the past, it is easiest to simply not use LGPL libraries if we can |
| 79 | avoid it.</li> |
| 80 | </ol> |
| 81 | <p>The issues discussed above are our reasons for preferring ASL2.0 for |
| 82 | our own code. They aren't criticisms of LGPL or other licenses. We do |
| 83 | feel strongly on this topic, even to the point where we've gone out of our |
| 84 | way to make sure as much code as possible is ASL2.0. However, we love all free |
| 85 | and open source licenses, and respect others' opinions and preferences. We've |
| 86 | simply decided that ASL2.0 is the right license for our goals.</p> |
| 87 | </div> |