Bu sayfada, katkıda bulunanların yapması gereken iki önemli görev ele alınmaktadır: Katkıda bulunan lisans sözleşmelerini imzalama ve kodunuzda lisanslama üstbilgilerinin doğru şekilde kullanılmasını sağlama.
Katkıda bulunanların lisans sözleşmelerini imzalama
Android Open Source Project'e (AOSP) fikir, kod veya doküman katkıda bulunan tüm bireysel katkıda bulunanların (yalnızca kendi adına katkıda bulunanlar) Bireysel Katkıda Bulunan Lisans Sözleşmesi'ni doldurup imzalaması ve göndermesi gerekir. Bu sözleşmeyi kod inceleme aracı ile online olarak imzalayabilirsiniz. Bu sözleşme, AOSP'ye fikri mülkiyet katkısıyla ilgili şartları tanımlamaktadır. Bu lisans, hem katkıda bulunan kullanıcıları hem de projeyi korumak içindir. Kendi katkılarınızı başka bir amaçla kullanma haklarınızı değiştirmez.
Kurumsal Katkıda Bulunan Lisans Sözleşmesi, AOSP'de çalışanları olan şirketler (veya başka tüzel kişiler) tarafından kullanılabilir. Sözleşmenin bu sürümü, bir şirketin, atanmış çalışanları tarafından gönderilen katkıları yetkilendirmesine ve telif hakkı ile patent lisansları vermesine olanak tanır.
Google, katkıda bulunanlar için lisans sözleşmelerini Apache Software Foundation tarafından kullanılanlara dayandırır. Bu sözleşmeleri Apache web sitesinde bulabilirsiniz.
Lisans üstbilgilerini ekleme
Android Açık Kaynak Projesi (AOSP), yazılımımız için birkaç açık kaynak girişimi onaylı açık kaynak lisansları kullanmaktadır.
AOSP için tercih edilen lisans Apache Lisansı 2.0'dır (Apache 2.0). Android yazılımlarının çoğu Apache 2.0 lisansına sahiptir. Proje, tercih edilen lisansa uymaya çalışır ancak istisnalar vardır ve bunlar her duruma göre değerlendirilir. Örneğin, Linux çekirdek yamaları, sistem istisnaları içeren GPLv2 lisansı kapsamındadır ve Linux Çekirdek Arşivleri'nde bulunabilir.
Google, kullanıcı alanı (çekirdek olmayan) yazılımları için GNU Küçük Genel Kamu Lisansı (LGPL) gibi diğer lisanslar yerine Apache 2.0'ı (ve BSD ve MIT gibi benzer lisansları) tercih eder. Bunun nedeni aşağıda açıklanmıştır:
Android, özgürlük ve seçimle ilgilidir. Android'in amacı, mobil dünyada açıklığı teşvik etmektir. Google, yazılımımızın tüm kullanımlarını tahmin edemez veya belirleyemez. Bu nedenle Google, herkesi açık ve değiştirilebilir cihazlar yapmaya teşvik etse de onları bunu yapmaya zorlamanın bizim işimiz olmadığını düşünüyoruz. LGPL kitaplıklarını kullanmak kısıtlayıcı olabilir. Endişelerimizden bazıları şunlardır:
Basitleştirilmiş bir ifadeyle LGPL, kaynağın uygulamaya gönderilmesini, kaynak için yazılı bir teklif sunmayı veya LGPL'ye tabi kitaplığın dinamik olarak bağlanmasını ve kullanıcıların kitaplığı manuel olarak yükseltmesine ya da değiştirmesine izin vermeyi gerektirir. Android yazılımı genellikle statik bir sistem resmi olarak gönderilir. Bu nedenle, bu şartlara uymak cihaz üreticilerinin tasarımlarını kısıtlar. Örneğin, kullanıcının salt okunur flash depolamadaki bir kitaplığı değiştirmesi zordur.
LGPL, müşteri tarafından yapılan değişikliklere izin verilmesini ve bu değişikliklerde hata ayıklama için tersine mühendislik yapılmasını gerektirir. Çoğu cihaz üreticisi bu şartlara bağlı kalmak istemez.
LGPL kitaplıkları geçmişte, alt akış cihaz üreticileri ve uygulama geliştiricileri için birçok uygunluk sorununun kaynağı olmuştur. Mühendisleri bu konularda eğitmek zor ve zaman alıcıdır. Cihaz üreticilerinin lisanslara kolayca uyabilmesi, Android'in başarısı açısından kritik öneme sahiptir.
Bu endişeler, LGPL veya diğer lisanslara yönelik eleştiriler değildir. Google, tüm ücretsiz ve açık kaynak lisansları takdir eder ve diğer kullanıcıların lisans tercihlerine saygı duyar. Google, Apache 2.0'ın hedeflerimize en uygun çözüm olduğuna karar verdi.
AOSP'ye dahil edilecek kod gönderirken lisans başlıklarının doğru şekilde kullanılmasını sağlamanız gerekir. Aşağıdaki bölümlerde, yeni dosyalar ve mevcut kod için lisans üstbilgilerinin nasıl ele alınacağı açıklanmaktadır.
Lisans ve telif hakkıyla ilgili en iyi uygulamaları takip edin
Telif hakkı ve lisans başlığıyla ilgili olarak aşağıdaki en iyi uygulamaları izleyin:
Mevcut bir telif hakkını değiştirmeyin. Örneğin, kendi telif hakkı bildirimi olan bir dosyadan kaynaklanmış kod içeren bir dosyayı AOSP'ye eklemek istiyorsanız orijinal dosyadaki söz konusu telif hakkı bildirimini saklamanız gerekir.
Tamamen yeni bir kaynak dosya ekleyecekseniz katkıda bulunduğunuz projede önceden tanımlanmış farklı bir lisans yoksa varsayılan AOSP telif hakkı ve aşağıdaki lisans başlığını kullanın:
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.