AOSP'ye genel bakış,AOSP'ye genel bakış

Android, farklı form faktörlerine sahip çok çeşitli cihazlara yönelik bir işletim sistemidir. Android'e yönelik belgeler ve kaynak kodu, Android Açık Kaynak Projesi (AOSP) olarak herkesin kullanımına açıktır. Kendi cihazlarınız için Android işletim sisteminin özel çeşitlerini oluşturmak amacıyla AOSP'yi kullanabilirsiniz.

AOSP, bir endüstri oyuncusunun diğerinin yeniliklerini kısıtladığı veya kontrol ettiği merkezi bir başarısızlık noktası olmayacak şekilde tasarlanmıştır. Bu nedenle AOSP, özelleştirme ve taşımaya açık kaynak koduna sahip, tam, üretim kalitesinde bir geliştirici ürünüdür.

Belgelerin bu bölümü, yeni AOSP geliştiricilerinin platforma başlamalarına ve temel geliştirme görevlerini gerçekleştirmelerine yardımcı olur.

Gerekli şartlar

Aşağıda bu başlangıç ​​belgelerinde kullanılan terimlerin ve tanımların bir listesi bulunmaktadır. Daha fazla devam etmeden önce her tanımı incelemelisiniz.

Android uygulama geliştiricisi

Android uygulama geliştiricileri , Android uygulamaları veya Android'de çalışan uygulamalar yazar. Uygulama geliştiricilerin iki sınıflandırması vardır: birinci taraf (1p) ve üçüncü taraf (3p) uygulama geliştiricileri.

Android 1p uygulama geliştiricisi
AOSP Sistem API'lerine erişimi olan ve ayrıcalıklı ve cihaz üreticisi uygulamaları yazan bir Android uygulama geliştiricisi.
Android 3p uygulama geliştiricisi
Android uygulamaları oluşturmak için yalnızca Android'in genel SDK'sını kullanan bir Android uygulama geliştiricisi.

Android için 3p uygulamalar geliştirmek istiyorsanız, developers.android.com adresine bakın. Bu web sitesindeki bilgiler yalnızca doğrudan AOSP ile çalışanlar içindir.

Android hata ayıklama köprüsü (ADB)
İş istasyonunuzun sanal, yazılım benzetimli veya fiziksel bir aygıtla iletişim kurmasına olanak tanıyan bir komut satırı aracı ( adb ).
Android uyumlu cihaz
Android SDK ve NDK kullanılarak üçüncü taraf geliştiriciler tarafından yazılan herhangi bir üçüncü taraf uygulamasını çalıştırabilen bir cihaz. Android uyumlu cihazlar Uyumluluk Tanımı Belgesinin (CDD) gereksinimlerine uymalı ve Uyumluluk Test Paketini (CTS) geçmelidir. Android uyumlu cihazlar, Android Play Store'un potansiyel lisansını, Google Mobil Hizmetleri (GMS) uygulama ve API paketinin potansiyel lisansını ve Android ticari markasının kullanımını içeren Android ekosistemine katılmaya uygundur. Herkes Android kaynak kodunu kullanabilir ancak bir cihazın Android ekosisteminin bir parçası olarak kabul edilebilmesi için Android uyumlu olması gerekir. Uyumluluk ve CTS hakkında daha fazla bilgi için Android Uyumluluk Programına genel bakış konusuna bakın
Onaylayan
Platforma önemli teknik ve tasarım katkılarında bulunan AOSP topluluğunun deneyimli üyeleri. Kod inceleme sürecinde, onaylayan bir değişikliğin dahil edilip edilmeyeceğine karar verir. Proje liderleri (genellikle Google tarafından istihdam edilirler) onaylayanları seçerler ve bazen doğrulayıcıları, AOSP'nin belirli bir bölümünde uzmanlık sergilediklerinde onaylayıcı pozisyonlarına yükseltirler.
Uyumluluk Tanımı Belgesi (CDD)
Android uyumlu bir cihazın yazılım ve donanım gereksinimlerini sıralayan bir belge.
Katkıda Bulunan

AOSP kaynak koduna da katkıda bulunan kişi. Katkıda bulunanlar Google çalışanları, diğer şirketlerin çalışanları ve şirketle bağlantısı olmayan kişiler olabilir. Her AOSP katılımcısı aynı araçları kullanır, aynı kod inceleme sürecini takip eder ve aynı kodlama stiline tabidir. AOSP'yi kullanmak için katkıda bulunan biri olmanıza gerek yok; AOSP'yi indirebilir, kendi ihtiyaçlarınıza göre değiştirebilir ve başkalarının kullanması için kod eklemeden bir cihaza dağıtabilirsiniz.

Google'ın kabul ettiği kod katkılarının türleri sınırlıdır. Örneğin, tam C++ tabanlı ortam gibi alternatif bir uygulama API'sine katkıda bulunmak isteyebilirsiniz. Android, uygulamaların ART çalışma zamanında çalıştırılmasını teşvik ettiğinden Google bu katkıyı reddedecektir. Benzer şekilde Google, GPL veya LGPL kitaplıkları gibi lisanslama hedefleriyle uyumlu olmayan katkıları kabul etmez.

Kaynak koduna katkıda bulunmak istiyorsanız çalışmaya başlamadan önce Google ile iletişime geçin .

Uyumluluk Test Paketi (CTS)

AOSP'de ikili dosya veya kaynak olarak indirilebilen ücretsiz, ticari sınıf bir test paketi. CTS, günlük iş akışınıza entegre edilmek üzere tasarlanmış bir dizi birim testtir. CTS'nin amacı uyumsuzlukları ortaya çıkarmak ve yazılımın geliştirme süreci boyunca uyumlu kalmasını sağlamaktır.

Mürekkepbalığı

Google Cloud Engine gibi üçüncü taraf bulut tekliflerini kullanarak ve yerel olarak Linux x86 makinelerinde uzaktan çalışabilen, Android destekli, yapılandırılabilir bir sanal cihaz.

Geliştirici

AOSP bağlamında geliştirici, herhangi bir şekilde AOSP ile çalışan herkestir. "Geliştirici" terimi, orijinal ekipman üreticileri (OEM'ler), telefon üreticileri, taşıyıcılar ve Çip Üzerinde Sistem (SoC) yaratıcıları gibi bu belgeleri okuyabilecek çeşitli kişileri genel olarak ifade etmek için kullanılır.

Google Mobil Hizmetleri (GMS)

Cihazlara önceden yüklenebilen Google uygulamaları ve API'lerinden oluşan bir koleksiyon.

Hedef

Belirli bir model veya form faktörü gibi bir cihazın permütasyonu. Örneğin, aosp_cf_x86_64_phone-userdebug mürekkep balığı öykünücüsünde çalışmak üzere tasarlanmış hata ayıklama bilgilerine sahip bir x86 65 MB telefonu temsil eder.

Doğrulayıcı

AOSP'deki değişiklikleri indiren ve doğrulayan, Android topluluğuna katkıda bulunan değerli bir kişi. AOSP'ye önemli miktarda yüksek kaliteli kod gönderdikten sonra proje liderleri sizi doğrulayıcı olmaya davet edebilir.

Yönetişim felsefesi

Google'ın liderliğindeki Open Handset Alliance (OHA) olarak bilinen bir grup şirket, Android'in kökenini oluşturdu. Bugün birçok şirket (hem OHA'nın orijinal üyeleri hem de diğerleri) Android'e büyük yatırımlar yapıyor. Bu şirketler, Android'i geliştirmek ve Android cihazlarını pazara sunmak için önemli mühendislik kaynakları ayırdı.

Android'e yatırım yapan şirketler bunu açık bir platformun gerekli olduğuna inandıkları için yaptılar. Android kasıtlı ve açık bir şekilde açık kaynak çalışmasıdır (özgür yazılımın aksine); Ortak ihtiyaçları olan bir grup kuruluş, ortak bir ürünün tek bir uygulaması üzerinde işbirliği yapmak için kaynakları bir araya getirdi. Her şeyden önce Android felsefesi pragmatiktir. Amaç, her katılımcının uyarlayabileceği ve özelleştirebileceği ortak bir üründür.

Elbette kontrolsüz özelleştirme uyumsuz uygulamalara yol açabilir. Uyumsuzluğu önlemek için Android Açık Kaynak Projesi (AOSP), Android uyumlu olmanın ne anlama geldiğini ve cihaz üreticilerinin bu duruma ulaşmak için nelerin gerekli olduğunu açıklayan Android Uyumluluk programını sürdürür. Herkes Android kaynak kodunu herhangi bir amaç için kullanabilir ve Google tüm meşru kullanımları memnuniyetle karşılar. Ancak OHA üyelerinin Android etrafında oluşturduğu ortak uygulama ekosisteminde yer almak için cihaz üreticilerinin Android Uyumluluk programına katılması gerekiyor.

AOSP, Android'in bakımını yapan ve daha da geliştiren Google tarafından yönetilmektedir. Android birden fazla alt projeden oluşsa da AOSP kesinlikle proje yönetimidir. Google, Android'i bir dağıtım, spesifikasyon veya değiştirilebilir parçalardan oluşan bir koleksiyon olarak değil, tek ve bütünsel bir yazılım ürünü olarak görür ve yönetir. Google'ın amacı, cihaz oluşturucuların Android'i bir cihaza taşımasıdır; bir spesifikasyon uygulamazlar veya bir dağıtım düzenlemezler.

Sıradaki ne?

,

Android, farklı form faktörlerine sahip çok çeşitli cihazlara yönelik bir işletim sistemidir. Android'e yönelik belgeler ve kaynak kodu, Android Açık Kaynak Projesi (AOSP) olarak herkesin kullanımına açıktır. Kendi cihazlarınız için Android işletim sisteminin özel çeşitlerini oluşturmak amacıyla AOSP'yi kullanabilirsiniz.

AOSP, bir endüstri oyuncusunun diğerinin yeniliklerini kısıtladığı veya kontrol ettiği merkezi bir başarısızlık noktası olmayacak şekilde tasarlanmıştır. Bu nedenle AOSP, özelleştirme ve taşımaya açık kaynak koduna sahip, tam, üretim kalitesinde bir geliştirici ürünüdür.

Belgelerin bu bölümü, yeni AOSP geliştiricilerinin platforma başlamalarına ve temel geliştirme görevlerini gerçekleştirmelerine yardımcı olur.

Gerekli şartlar

Aşağıda bu başlangıç ​​belgelerinde kullanılan terimlerin ve tanımların bir listesi bulunmaktadır. Daha fazla devam etmeden önce her tanımı incelemelisiniz.

Android uygulama geliştiricisi

Android uygulama geliştiricileri , Android uygulamaları veya Android'de çalışan uygulamalar yazar. Uygulama geliştiricilerin iki sınıflandırması vardır: birinci taraf (1p) ve üçüncü taraf (3p) uygulama geliştiricileri.

Android 1p uygulama geliştiricisi
AOSP Sistem API'lerine erişimi olan ve ayrıcalıklı ve cihaz üreticisi uygulamaları yazan bir Android uygulama geliştiricisi.
Android 3p uygulama geliştiricisi
Android uygulamaları oluşturmak için yalnızca Android'in genel SDK'sını kullanan bir Android uygulama geliştiricisi.

Android için 3p uygulamalar geliştirmek istiyorsanız, developers.android.com adresine bakın. Bu web sitesindeki bilgiler yalnızca doğrudan AOSP ile çalışanlar içindir.

Android hata ayıklama köprüsü (ADB)
İş istasyonunuzun sanal, yazılım benzetimli veya fiziksel bir aygıtla iletişim kurmasına olanak tanıyan bir komut satırı aracı ( adb ).
Android uyumlu cihaz
Android SDK ve NDK kullanılarak üçüncü taraf geliştiriciler tarafından yazılan herhangi bir üçüncü taraf uygulamasını çalıştırabilen bir cihaz. Android uyumlu cihazlar Uyumluluk Tanımı Belgesinin (CDD) gereksinimlerine uymalı ve Uyumluluk Test Paketini (CTS) geçmelidir. Android uyumlu cihazlar, Android Play Store'un potansiyel lisansını, Google Mobil Hizmetleri (GMS) uygulama ve API paketinin potansiyel lisansını ve Android ticari markasının kullanımını içeren Android ekosistemine katılmaya uygundur. Herkes Android kaynak kodunu kullanabilir ancak bir cihazın Android ekosisteminin bir parçası olarak kabul edilebilmesi için Android uyumlu olması gerekir. Uyumluluk ve CTS hakkında daha fazla bilgi için Android Uyumluluk Programına genel bakış konusuna bakın
Onaylayan
Platforma önemli teknik ve tasarım katkılarında bulunan AOSP topluluğunun deneyimli üyeleri. Kod inceleme sürecinde, onaylayan bir değişikliğin dahil edilip edilmeyeceğine karar verir. Proje liderleri (genellikle Google tarafından istihdam edilirler) onaylayanları seçerler ve bazen doğrulayıcıları, AOSP'nin belirli bir bölümünde uzmanlık sergilediklerinde onaylayıcı pozisyonlarına yükseltirler.
Uyumluluk Tanımı Belgesi (CDD)
Android uyumlu bir cihazın yazılım ve donanım gereksinimlerini sıralayan bir belge.
Katkıda Bulunan

AOSP kaynak koduna da katkıda bulunan kişi. Katkıda bulunanlar Google çalışanları, diğer şirketlerin çalışanları ve şirketle bağlantısı olmayan kişiler olabilir. Her AOSP katılımcısı aynı araçları kullanır, aynı kod inceleme sürecini takip eder ve aynı kodlama stiline tabidir. AOSP'yi kullanmak için katkıda bulunan biri olmanıza gerek yok; AOSP'yi indirebilir, kendi ihtiyaçlarınıza göre değiştirebilir ve başkalarının kullanması için kod eklemeden bir cihaza dağıtabilirsiniz.

Google'ın kabul ettiği kod katkılarının türleri sınırlıdır. Örneğin, tam C++ tabanlı ortam gibi alternatif bir uygulama API'sine katkıda bulunmak isteyebilirsiniz. Android, uygulamaların ART çalışma zamanında çalıştırılmasını teşvik ettiğinden Google bu katkıyı reddedecektir. Benzer şekilde Google, GPL veya LGPL kitaplıkları gibi lisanslama hedefleriyle uyumlu olmayan katkıları kabul etmez.

Kaynak koduna katkıda bulunmak istiyorsanız çalışmaya başlamadan önce Google ile iletişime geçin .

Uyumluluk Test Paketi (CTS)

AOSP'de ikili dosya veya kaynak olarak indirilebilen ücretsiz, ticari sınıf bir test paketi. CTS, günlük iş akışınıza entegre edilmek üzere tasarlanmış bir dizi birim testtir. CTS'nin amacı uyumsuzlukları ortaya çıkarmak ve yazılımın geliştirme süreci boyunca uyumlu kalmasını sağlamaktır.

Mürekkepbalığı

Google Cloud Engine gibi üçüncü taraf bulut tekliflerini kullanarak ve yerel olarak Linux x86 makinelerinde uzaktan çalışabilen, Android destekli, yapılandırılabilir bir sanal cihaz.

Geliştirici

AOSP bağlamında geliştirici, herhangi bir şekilde AOSP ile çalışan herkestir. "Geliştirici" terimi, orijinal ekipman üreticileri (OEM'ler), telefon üreticileri, taşıyıcılar ve Çip Üzerinde Sistem (SoC) yaratıcıları gibi bu belgeleri okuyabilecek çeşitli kişileri genel olarak ifade etmek için kullanılır.

Google Mobil Hizmetleri (GMS)

Cihazlara önceden yüklenebilen Google uygulamaları ve API'lerinden oluşan bir koleksiyon.

Hedef

Belirli bir model veya form faktörü gibi bir cihazın permütasyonu. Örneğin, aosp_cf_x86_64_phone-userdebug mürekkep balığı öykünücüsünde çalışmak üzere tasarlanmış hata ayıklama bilgilerine sahip bir x86 65 MB telefonu temsil eder.

Doğrulayıcı

AOSP'deki değişiklikleri indiren ve doğrulayan, Android topluluğuna katkıda bulunan değerli bir kişi. AOSP'ye önemli miktarda yüksek kaliteli kod gönderdikten sonra proje liderleri sizi doğrulayıcı olmaya davet edebilir.

Yönetişim felsefesi

Google'ın liderliğindeki Open Handset Alliance (OHA) olarak bilinen bir grup şirket, Android'in kökenini oluşturdu. Bugün birçok şirket (hem OHA'nın orijinal üyeleri hem de diğerleri) Android'e büyük yatırımlar yapıyor. Bu şirketler, Android'i geliştirmek ve Android cihazlarını pazara sunmak için önemli mühendislik kaynakları ayırdı.

Android'e yatırım yapan şirketler bunu açık bir platformun gerekli olduğuna inandıkları için yaptılar. Android kasıtlı ve açık bir şekilde açık kaynak çalışmasıdır (özgür yazılımın aksine); Ortak ihtiyaçları olan bir grup kuruluş, ortak bir ürünün tek bir uygulaması üzerinde işbirliği yapmak için kaynakları bir araya getirdi. Her şeyden önce Android felsefesi pragmatiktir. Amaç, her katılımcının uyarlayabileceği ve özelleştirebileceği ortak bir üründür.

Elbette kontrolsüz özelleştirme uyumsuz uygulamalara yol açabilir. Uyumsuzluğu önlemek için Android Açık Kaynak Projesi (AOSP), Android uyumlu olmanın ne anlama geldiğini ve cihaz üreticilerinin bu duruma ulaşmak için nelerin gerekli olduğunu açıklayan Android Uyumluluk programını sürdürür. Herkes Android kaynak kodunu herhangi bir amaç için kullanabilir ve Google tüm meşru kullanımları memnuniyetle karşılar. Ancak OHA üyelerinin Android etrafında oluşturduğu ortak uygulama ekosisteminde yer almak için cihaz üreticilerinin Android Uyumluluk programına katılması gerekiyor.

AOSP, Android'in bakımını yapan ve daha da geliştiren Google tarafından yönetilmektedir. Android birden fazla alt projeden oluşsa da AOSP kesinlikle proje yönetimidir. Google, Android'i bir dağıtım, spesifikasyon veya değiştirilebilir parçalardan oluşan bir koleksiyon olarak değil, tek ve bütünsel bir yazılım ürünü olarak görür ve yönetir. Google'ın amacı, cihaz oluşturucuların Android'i bir cihaza taşımasıdır; bir spesifikasyon uygulamazlar veya bir dağıtım düzenlemezler.

Sıradaki ne?