ข้อตกลงการอนุญาตให้ใช้สิทธิส่วนหัวสำหรับผู้ร่วมให้ข้อมูล

หน้านี้ครอบคลุมงานสำคัญ 2 อย่างที่ผู้ร่วมให้ข้อมูลต้องทำ ได้แก่ การลงนามในข้อตกลงใบอนุญาตสำหรับผู้ร่วมให้ข้อมูล และการตรวจสอบว่าใช้ส่วนหัวของการอนุญาตอย่างถูกต้องในโค้ด

ลงนามในข้อตกลงใบอนุญาตผู้สนับสนุน

ผู้ร่วมให้ข้อมูลแต่ละราย (ผู้ที่ให้ข้อมูลในนามของตนเองเท่านั้น) ไม่ว่าจะเป็นไอเดีย โค้ด หรือเอกสารประกอบใน Android Open Source Project (AOSP) จะต้องกรอกข้อมูล ลงนาม และส่งสัญญาอนุญาตสำหรับผู้ร่วมให้ข้อมูลแต่ละราย คุณสามารถดำเนินการตามข้อตกลงนี้ทางออนไลน์ผ่านเครื่องมือตรวจสอบโค้ด ข้อตกลงนี้กำหนดข้อกำหนดสำหรับการมีส่วนร่วมในทรัพย์สินทางปัญญา ใน AOSP การอนุญาตนี้มีไว้เพื่อปกป้องคุณในฐานะผู้มีส่วนร่วม รวมถึงปกป้องโปรเจ็กต์ โดยไม่ได้เปลี่ยนแปลงสิทธิ์ของคุณในการใช้ผลงานของคุณเองเพื่อวัตถุประสงค์อื่นๆ

ข้อตกลงอนุญาตให้ใช้เนื้อหาสำหรับผู้มีส่วนร่วมในนามขององค์กร มีไว้สำหรับองค์กร (หรือหน่วยงานอื่นๆ) ที่มีพนักงานทำงานใน AOSP ข้อตกลงเวอร์ชันนี้ช่วยให้บริษัทสามารถให้สิทธิ์การมีส่วนร่วม ที่ส่งโดยพนักงานที่ได้รับมอบหมาย รวมถึงให้สิทธิ์การอนุญาต ลิขสิทธิ์และสิทธิบัตร

Google ใช้ข้อตกลงใบอนุญาตผู้สนับสนุนตามข้อตกลงที่ใช้โดย มูลนิธิซอฟต์แวร์ Apache ซึ่งดูได้ใน เว็บไซต์ Apache

ใส่ส่วนหัวของใบอนุญาต

โครงการโอเพนซอร์ส Android (AOSP) ใช้ โครงการโอเพนซอร์สบางส่วนที่ได้รับอนุมัติ ใบอนุญาตโอเพนซอร์สสำหรับซอฟต์แวร์ของเรา

สัญญาอนุญาตของ Apache เวอร์ชัน 2.0 (Apache 2.0) เป็นสัญญาอนุญาตที่แนะนำสำหรับ AOSP และซอฟต์แวร์ Android ส่วนใหญ่ได้รับอนุญาตภายใต้ Apache 2.0 แม้ว่าโปรเจ็กต์จะพยายามปฏิบัติตาม ใบอนุญาตที่ต้องการ แต่ก็มีข้อยกเว้น ซึ่งจะพิจารณาเป็นกรณีๆ ไป ตัวอย่างเช่น แพตช์เคอร์เนล Linux อยู่ภายใต้ใบอนุญาต GPLv2 ที่มี ข้อยกเว้นของระบบ ซึ่งดูได้ที่ ที่เก็บถาวรของเคอร์เนล Linux

สำหรับซอฟต์แวร์ในพื้นที่ผู้ใช้ (ไม่ใช่เคอร์เนล) Google ชอบ Apache 2.0 (และสัญญาอนุญาตที่คล้ายกัน เช่น BSD และ MIT) มากกว่าสัญญาอนุญาตอื่นๆ เช่น GNU Lesser General Public License (LGPL) เหตุผลก็คือ:

  • Android คืออิสระและทางเลือก จุดประสงค์ของ Android คือการส่งเสริม ความเปิดกว้างในโลกอุปกรณ์เคลื่อนที่ และ Google ไม่สามารถคาดการณ์หรือกำหนดการใช้งาน ซอฟต์แวร์ของเราทั้งหมดได้ ดังนั้น แม้ว่า Google จะสนับสนุนให้ทุกคนสร้างอุปกรณ์ที่เปิดและแก้ไขได้ แต่เราก็ไม่คิดว่าเราควรบังคับให้ผู้ใช้ทำเช่นนั้น การใช้ไลบรารี LGPL อาจเป็นการจำกัด ข้อกังวลบางส่วนของเรามีดังนี้

    • กล่าวอย่างง่ายๆ คือ LGPL กำหนดให้ต้องจัดส่งซอร์สไปยังแอปพลิเคชัน มีข้อเสนอเป็นลายลักษณ์อักษรสำหรับซอร์ส หรือลิงก์ไลบรารีที่ใช้ LGPL แบบไดนามิก และอนุญาตให้ผู้ใช้อัปเกรดหรือแทนที่ไลบรารีด้วยตนเอง โดยปกติแล้ว ซอฟต์แวร์ Android จะจัดส่งเป็นอิมเมจระบบแบบคงที่ ดังนั้นการปฏิบัติตามข้อกำหนดเหล่านี้ จึงจำกัดการออกแบบของผู้ผลิตอุปกรณ์ ตัวอย่างเช่น ผู้ใช้จะเปลี่ยนแทนที่ไลบรารีในพื้นที่เก็บข้อมูลแบบแฟลชแบบอ่านอย่างเดียวได้ยาก

    • LGPL กำหนดให้ต้องอนุญาตให้ลูกค้าแก้ไขและทำวิศวกรรมย้อนกลับ เพื่อแก้ไขข้อบกพร่องของการแก้ไขเหล่านั้น ผู้ผลิตอุปกรณ์ส่วนใหญ่ไม่ต้องการถูกผูกมัด ด้วยข้อกำหนดเหล่านี้

    • ในอดีต ไลบรารี LGPL เป็นแหล่งที่มาของปัญหาด้านการปฏิบัติตามข้อกำหนด มากมายสำหรับผู้ผลิตอุปกรณ์และนักพัฒนาแอปที่ใช้ไลบรารีดังกล่าว การให้ความรู้แก่วิศวกรเกี่ยวกับปัญหาเหล่านี้เป็นเรื่องยากและใช้เวลานาน การที่ผู้ผลิตอุปกรณ์ปฏิบัติตามข้อกำหนดของใบอนุญาตได้อย่างง่ายดายเป็นสิ่งสำคัญต่อความสำเร็จของ Android

ข้อกังวลเหล่านี้ไม่ได้เป็นการวิพากษ์วิจารณ์ LGPL หรือใบอนุญาตอื่นๆ Google ขอขอบคุณ ใบอนุญาตแบบโอเพนซอร์สและใบอนุญาตฟรีทั้งหมด และเคารพค่ากำหนดใบอนุญาตของผู้อื่น Google ตัดสินใจว่า Apache 2.0 เหมาะสมกับเป้าหมายของเรามากที่สุด

เมื่อส่งโค้ดเพื่อรวมไว้ใน AOSP คุณต้องตรวจสอบว่าได้ใช้ ส่วนหัวของใบอนุญาตอย่างถูกต้อง ส่วนต่อไปนี้จะอธิบายวิธีจัดการ ส่วนหัวของใบอนุญาตสำหรับไฟล์ใหม่และโค้ดที่มีอยู่

ทำตามแนวทางปฏิบัติแนะนำต่อไปนี้สำหรับส่วนหัวของลิขสิทธิ์และใบอนุญาต

  • ห้ามแก้ไขลิขสิทธิ์ที่มีอยู่ เช่น หากต้องการมีส่วนร่วมใน AOSP ด้วย ไฟล์ที่มีโค้ดที่มาจากไฟล์ที่มีประกาศลิขสิทธิ์ของตัวเอง คุณต้องเก็บประกาศลิขสิทธิ์นั้นจากไฟล์ต้นฉบับไว้

  • หากเพิ่มไฟล์ต้นฉบับใหม่ทั้งหมด ให้ใช้ลิขสิทธิ์ AOSP เริ่มต้นและส่วนหัวของใบอนุญาตต่อไปนี้ เว้นแต่โปรเจ็กต์ที่คุณมีส่วนร่วมจะมีใบอนุญาตที่กำหนดไว้ล่วงหน้าแตกต่างกัน

    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.