Na tej stronie omawiamy 2 ważne zadania współtwórców: podpisywanie licencji współtwórców umowy i poprawne wykorzystanie nagłówków licencji w kodzie.
Podpisz umowy licencyjne współtwórców
Wszystkie osoby, które wnoszą (tylko we własnym imieniu) pomysły, kod lub dokumentację do projektu Android Open Source Project (AOSP), muszą wypełnić, podpisać i przesłać umowę licencyjną dla indywidualnego autora. Umowę możesz zawrzeć online za pomocą narzędzia do sprawdzania kodu. Umowa określa warunki udostępniania własności intelektualnej do AOSP. Licencja ta ma na celu ochronę użytkownika jako współtwórcy oraz ochrony projektu; nie zmienia to Twoich praw do wykorzystywania własnych darowizny do jakichkolwiek innych celów.
Umowa licencyjna dla firm jest dostępna dla korporacji (lub innego podmiotu) zatrudniającego pracowników pracujących nad AOSP. Ta wersja umowy umożliwia korporacji autoryzowanie darowizn przesłane przez wyznaczonych pracowników i przyznają prawa autorskie oraz patenty licencji.
Umowy licencyjne Google oparte są na tych, których używa fundacja Apache Software Foundation. Można je znaleźć na stronie internetowej Apache.
Uwzględnij nagłówki licencji
Projekt Android Open Source (AOSP) korzysta z kilku licencji open source zatwierdzonych przez inicjatywę open source na nasze oprogramowanie.
Licencja Apache w wersji 2.0 (Apache 2.0) jest preferowaną licencją dla AOSP, a większość oprogramowania na Androida jest licencjonowana na podstawie Apache 2.0. Chociaż projekt stara się przestrzegać preferowanej licencji, istnieją wyjątki, które są rozpatrywane indywidualnie. Na przykład poprawki jądra systemu Linux są dostępne na licencji s wyjątków systemowych, które można znaleźć na Archiwa jądra systemu Linux
W przypadku oprogramowania stanowiącego przestrzeń użytkownika (bez jądra systemu) Google preferuje Apache 2.0 (i podobny takich jak BSD czy MIT) w porównaniu z innymi licencjami, takimi jak GNU Zmniejszer General Licencja publiczna (LGPL). Przyczyna jest następująca:
Android to swoboda i możliwość wyboru. Celem Androida jest promowanie otwartości w świecie urządzeń mobilnych, a Google nie może przewidzieć ani narzucić wszystkich zastosowań naszej platformy. Dlatego Google zachęca wszystkich do otwartego które da się modyfikować, nie jest to nasze miejsce na zmuszanie ich do tego. Zastosowanie Biblioteki LGPL mogą być restrykcyjne. Oto kilka naszych konkretnych obaw:
W skrócie: LGPL wymaga przesłania źródła do aplikacji. w pisemna oferta źródła; lub dynamiczne łączenie biblioteki LGPL co daje użytkownikom możliwość ręcznego uaktualniania lub zastępowania biblioteki. Oprogramowanie Androida jest zwykle dostarczane jako statyczny obraz systemu, więc spełnienie tych wymagań ogranicza możliwości projektowania producentów urządzeń. Na przykład użytkownikowi trudno jest zastąpić bibliotekę na pamięci flash tylko do odczytu.
LGPL wymaga dopuszczenia modyfikacji przez klienta i odwrotnego inżynierii w celu debugowania tych modyfikacji. Większość producentów urządzeń nie chce być kojarzona tych warunków.
W przeszłości biblioteki LGPL były źródłem wielu zgodności w przypadku dalszych twórców urządzeń i deweloperów aplikacji. Edukacja tych kwestii jest trudne i czasochłonne. Ważnym elementem sukcesu Androida jest to, że producenci urządzeń mogą łatwo dostosować się do licencji.
Te obawy nie są krytyką LGPL ani innych licencji. Google docenia wszystkich licencji open source i open source oraz szanujemy prawa innych osób ustawień licencji. Uznaliśmy, że Apache 2.0 to najlepszy sposób dla naszych celów.
Przesyłając kod, który ma zostać uwzględniony w AOSP, musisz zadbać o właściwe użycie nagłówków licencji. W sekcjach poniżej wyjaśniamy, jak postępować nagłówki licencji na nowe pliki i istniejący kod.
Stosowanie sprawdzonych metod dotyczących licencji i prawa autorskiego
Postępuj zgodnie z tymi sprawdzonymi metodami dotyczącymi praw autorskich i nagłówka licencji:
Nie zmieniaj istniejących praw autorskich. Na przykład jeśli chcesz przesłać do AOSP, który zawiera kod, który pochodzi z pliku z własnym informacje o prawach autorskich, należy je zachować w oryginalnym pliku.
Jeśli dodasz zupełnie nowy plik źródłowy, użyj domyślnego prawa autorskiego AOSP i tego nagłówka licencji, chyba że projekt, do którego się przyczyniasz, ma inną wstępnie zdefiniowaną licencję:
Copyright (C) yyyy The Android Open Source Project Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.