Bu sayfa, bazı sık sorulan sorulara (SSS) yanıtlar sağlar.
Açık kaynak
Android Açık Kaynak Projesi nedir?
Android Açık Kaynak Projesi (AOSP), Android'i oluşturan kişileri, süreçleri ve kaynak kodunu ifade eder.
İnsanlar projeyi denetler ve kaynak kodunu geliştirir. Süreçler, yazılımın gelişimini yönetmek için kullandığımız araçlar ve prosedürlerdir. Net sonuç, cep telefonlarında ve diğer cihazlarda kullanabileceğiniz kaynak kodudur.
Android kaynak kodunu neden açtık?
Google, mobil uygulamaları başlatma konusundaki deneyimlerimize yanıt olarak Android projesini başlattı. Taşıyıcıların, OEM'lerin ve geliştiricilerin yenilikçi fikirlerini gerçeğe dönüştürmek için her zaman kullanabilecekleri açık bir platform olmasını sağlamak istedik. Ayrıca herhangi bir merkezi başarısızlık noktasından kaçınmak istedik, böylece tek bir sektör oyuncusu diğerinin yeniliklerini kısıtlayamaz veya kontrol edemez. AOSP ile en önemli tek amacımız, açık kaynak Android yazılımının herkesin yararına olabildiğince geniş ve uyumlu bir şekilde uygulanmasını sağlamaktır.
Android ne tür bir açık kaynak projesidir?
Google, temel Android açık kaynak platformunun geliştirilmesini denetler ve güçlü geliştirici ve kullanıcı toplulukları oluşturmak için çalışır. Çoğunlukla, Android kaynak kodu, copyleft lisansı yerine, izin verilen Apache License 2.0 kapsamında lisanslanır. Apache 2.0 lisansını, yaygın Android yazılımlarının benimsenmesini teşvik ettiğine inandığımız için seçtik. Ayrıntılar için bkz. Lisanslar .
Google neden Android'den sorumlu?
Bir yazılım platformunu başlatmak karmaşıktır. Açıklık, bir platformun uzun vadeli başarısı için hayati önem taşır çünkü açıklık, geliştiricilerden yatırım çeker ve eşit bir oyun alanı sağlar. Platform aynı zamanda kullanıcılar için çekici bir ürün olmalıdır.
Google, Android'in tamamen rekabetçi bir yazılım platformu olmasını sağlamak için gerekli profesyonel mühendislik kaynaklarını taahhüt etmiştir. Google, Android projesini tam ölçekli bir ürün geliştirme operasyonu olarak ele alır ve Android çalıştıran harika cihazların piyasaya çıkmasını sağlamak için gerekli iş anlaşmalarını yapar.
Android'in kullanıcılar arasında başarılı olmasını sağlayarak, Android'in bir platform ve açık kaynaklı bir proje olarak canlılığını sağlamaya yardımcı oluyoruz. Sonuçta, başarısız bir ürünün kaynak kodunu kim ister?
Google'ın amacı, Android çevresinde başarılı bir ekosistem sağlamaktır. Herkesin yazılımı kendi ihtiyaçlarını karşılayacak şekilde değiştirip dağıtabilmesi için Android kaynak kodunu açtık.
Google'ın Android ürün geliştirme için genel stratejisi nedir?
Harika cihazları rekabetçi bir pazara sunuyoruz. Ardından, yaptığımız yenilikleri ve geliştirmeleri bir sonraki sürüm olarak çekirdek platforma dahil ediyoruz.
Pratikte bu, Android mühendislik ekibinin az sayıda "amiral gemisi" cihazına odaklandığı ve bu ürün lansmanlarını desteklemek için Android yazılımının bir sonraki sürümünü geliştirdiği anlamına geliyor. Bu amiral gemisi cihazlar, ürün riskinin çoğunu üstlenir ve yeni özelliklerden yararlanan daha fazla cihazla takip eden geniş OEM topluluğu için bir yol açar. Bu sayede Android platformunun gerçek dünyadaki cihazların ihtiyaçlarına göre gelişmesini sağlıyoruz.
Android yazılımı nasıl geliştirilir?
Android'in her platform sürümünün (1.5 veya 8.1 gibi) açık kaynak ağacında karşılık gelen bir dalı vardır. En yeni şube, mevcut kararlı şube sürümü olarak kabul edilir. Bu, üreticilerin cihazlarına aktardığı şubedir. Bu dal her zaman serbest bırakılmaya uygun tutulur.
Aynı zamanda, büyük yeni nesil özellikler gibi spekülatif katkıların geliştirildiği güncel bir deneysel dal da var. Hata düzeltmeleri ve diğer katkılar, deneysel daldaki mevcut kararlı dala uygun şekilde dahil edilebilir.
Son olarak Google, amiral gemisi bir cihaz geliştirmekle birlikte Android platformunun bir sonraki sürümü üzerinde çalışıyor. Bu dal, deneysel ve kararlı dallardan uygun şekilde değişiklikleri çeker.
Ayrıntılar için bkz. Kod Çizgileri, Dallar ve Sürümler .
Android'in bazı bölümleri neden özel olarak geliştiriliyor?
Bir cihazı piyasaya sürmek genellikle bir yıldan uzun sürer. Ve elbette, cihaz üreticileri ellerinden gelen en yeni yazılımı göndermek istiyor. Bu arada, geliştiriciler uygulama yazarken sürekli olarak platformun yeni sürümlerini izlemek istemiyorlar. Her iki grup da nakliye ürünleri arasında bir gerilim yaşıyor ve geride kalmak istemiyor.
Bunu ele almak için, çekirdek platform API'leri de dahil olmak üzere bir sonraki Android sürümünün bazı bölümleri özel bir dalda geliştirildi. Bu API'ler, Android'in bir sonraki sürümünü oluşturur. Amacımız, platformun bir sonraki sürümünü oluştururken dikkatleri Android kaynak kodunun mevcut kararlı sürümüne odaklamaktır. Bu, geliştiricilerin ve OEM'lerin, sırf ayak uydurmak için gelecekteki tamamlanmamış çalışmaları izlemeden tek bir sürümü kullanmalarına olanak tanır. Android sisteminin uygulama uyumluluğu ile ilgili olmayan diğer kısımları açıkta geliştirilir. Niyetimiz, zaman içinde bu parçalardan daha fazlasını geliştirmeye açık hale getirmek.
Kaynak kod sürümleri ne zaman yapılır?
Hazır olduklarında. Kaynak kodunu serbest bırakmak oldukça karmaşık bir süreçtir. Android'in bazı bölümleri açık olarak geliştirilir ve bu kaynak kodu her zaman kullanılabilir. Diğer parçalar önce özel bir ağaçta geliştirilir ve bu kaynak kodu bir sonraki platform sürümü hazır olduğunda yayınlanır.
Bazı sürümlerde, temel platform API'leri yeterince önceden hazırdır, böylece kaynak kodunu cihazın piyasaya sürülmesinden önce erken bir bakış için dışarı çıkarabiliriz. Diğer sürümlerde bu mümkün değildir. Her durumda, sürümün kararlı olduğunu hissettiğimizde ve geliştirme süreci izin verdiğinde platform kaynağını yayınlıyoruz.
Yeni bir Android sürümü için kaynak kodunu yayınlamaya neler dahil?
Android platformunun yeni bir sürümü için kaynak kodunu yayınlamak önemli bir süreçtir. İlk olarak, yazılım bir cihaz için bir sistem görüntüsüne yerleştirilir ve telefonların konuşlandırılacağı bölgeler için devlet düzenleme sertifikası dahil olmak üzere çeşitli sertifikasyon biçimlerinden geçer. Kod ayrıca operatör testinden geçer. Bu, sürecin önemli bir aşamasıdır çünkü yazılım hatalarının tespit edilmesine yardımcı olur.
Sürüm, düzenleyiciler ve operatörler tarafından onaylandığında, üretici cihazları seri üretmeye başlar ve biz de kaynak kodunu yayınlamaya başlarız.
Kitlesel üretime eş zamanlı olarak Google ekibi, açık kaynak sürümünü hazırlamak için çeşitli çabalar başlattı. Bu çabalar arasında son API değişikliklerinin yapılması, dokümantasyonun güncellenmesi (örneğin, yeterlilik testi sırasında yapılan değişiklikleri yansıtmak için), yeni sürüm için bir SDK'nın hazırlanması ve platform uyumluluk bilgilerinin başlatılması yer alır.
Hukuk ekibimiz, kodu açık kaynak olarak yayınlamak için son bir imza atar. Nasıl açık kaynak katkıda bulunanların, katkılarına ilişkin fikri mülkiyet sahipliklerini onaylayan bir Katkıda Bulunanlar Lisans Sözleşmesi imzalamaları gerektiği gibi, Google'ın da kaynağın katkı yapmak için uygun olduğunu doğrulaması gerekir.
Seri üretimin başladığı andan itibaren, yazılım yayınlama süreci genellikle yaklaşık bir ay sürer, bu nedenle kaynak kodu sürümleri genellikle cihazların kullanıcılara ulaştığı anda gerçekleşir.
AOSP'nin Android Uyumluluk Programı ile ilişkisi nedir?
Android Açık Kaynak Projesi, Android yazılımını korur ve yeni sürümler geliştirir. Açık kaynak olduğu için bu yazılım, aynı kaynağı temel alan diğer cihazlarla uyumlu olmayan cihazlar geliştirmek de dahil olmak üzere herhangi bir amaç için kullanılabilir.
Android Uyumluluk Programının işlevi, geliştiriciler tarafından yazılan üçüncü taraf uygulamalarla uyumlu bir temel Android uygulaması tanımlamaktır. Android uyumlu cihazlar, Google Play dahil olmak üzere Android ekosistemine katılabilir; uyumluluk gereksinimlerini karşılamayan cihazlar bu ekosistemin dışında bulunur.
Başka bir deyişle, Android Uyumluluk Programı, Android uyumlu cihazları yalnızca kaynak kodun türevlerini çalıştıran cihazlardan ayırma şeklimizdir. Android kaynak kodunun tüm kullanımlarını memnuniyetle karşılıyoruz, ancak Android ekosistemine katılmak için bir cihazın program tarafından Android uyumlu olarak tanımlanması gerekir.
Android'e nasıl katkıda bulunabilirim?
Hataları bildirebilir, Android için uygulamalar yazabilir veya Android Açık Kaynak Projesi'ne kaynak koduyla katkıda bulunabilirsiniz.
Kabul ettiğimiz kod katkı türlerinin sınırları vardır. Örneğin, tam C ++ tabanlı ortam gibi alternatif bir uygulama API'sine katkıda bulunmak isteyebilirsiniz. Bu katkıyı reddederiz, çünkü Android uygulamaların ART çalışma zamanında çalıştırılmasını teşvik eder. Benzer şekilde, lisanslama hedeflerimizle uyumlu olmayan GPL veya LGPL kitaplıkları gibi katkıları kabul etmeyeceğiz.
Kaynak kodla katkıda bulunmak isteyenlerin, herhangi bir çalışmaya başlamadan önce Android Topluluğu sayfasında listelenen kanallar aracılığıyla bizimle iletişime geçmelerini öneririz. Ayrıntılar için bkz. Katkıda Bulunma .
Nasıl bir Android kaydedici olurum?
Android Açık Kaynak Projesi gerçekten Committer mefhumu yoktur. Tüm katkılar (Google çalışanları tarafından yazılanlar dahil), Android mühendislik sürecinin bir parçası olan Gerrit olarak bilinen web tabanlı bir sistemden geçer. Bu sistem, kaynak kodu katkılarını temiz bir şekilde yönetmek için git kaynak kodu yönetim sistemi ile birlikte çalışır.
Gönderildiğinde, değişikliklerin atanmış bir onaylayıcı tarafından kabul edilmesi gerekir. Onaylayanlar genellikle Google çalışanlarıdır, ancak aynı onaylayıcılar, kökenine bakılmaksızın tüm gönderimlerden sorumludur.
Ayrıntılar için bkz. Yamaları Gönderme .Başa dönüş
Uyumluluk
Android "uyumluluğu" nedir?
Android uyumlu bir cihazı , Android SDK ve NDK kullanarak üçüncü taraf geliştiriciler tarafından yazılan herhangi bir uygulamayı çalıştırabilen bir cihaz olarak tanımlıyoruz. Bunu, Android uygulama ekosistemine katılabilen ve katılamayan cihazları ayırmak için bir filtre olarak kullanıyoruz. Uygun şekilde uyumlu cihazlar için, cihaz üreticileri Android ticari markasını kullanmak için onay isteyebilir. Uyumlu olmayan cihazlar yalnızca Android kaynak kodundan türetilmiştir ve Android ticari markasını kullanmayabilir.
Diğer bir deyişle, uyumluluk, Android uygulamaları ekosistemine katılmak için bir ön şarttır. Herkes Android kaynak kodunu kullanabilir. Ancak cihaz uyumlu değilse, Android ekosisteminin bir parçası sayılmaz.
Google Play'in uyumluluktaki rolü nedir?
Android uyumlu cihazlara sahip cihaz üreticileri, Google Play istemci yazılımını lisanslamak isteyebilir. Lisanslı cihazlar, Android uygulama ekosisteminin bir parçası haline gelir ve kullanıcılarının, tüm uyumlu cihazlar tarafından paylaşılan bir katalogdan geliştiricilerin uygulamalarını indirmesine olanak tanır. Uyumlu olmayan cihazlar için lisanslama yapılamaz.
Ne tür cihazlar Android uyumlu olabilir?
Android yazılımı, üçüncü taraf uygulamaların düzgün çalışmayacağı bazıları da dahil olmak üzere birçok farklı cihaza taşınabilir. Android Uyumluluk Tanımı Belgesi (CDD), uyumlu olduğu düşünülen belirli cihaz yapılandırmalarını açıklar.
Örneğin, Android kaynak kodu kamerası olmayan bir telefonda çalışacak şekilde taşınabilir, ancak CDD tüm telefonların bir kameraya sahip olmasını gerektirir. Bu, geliştiricilerin uygulamalarını yazarken tutarlı yeteneklere güvenmelerine olanak tanır.
CDD, piyasa gerçeklerini yansıtacak şekilde gelişmeye devam ediyor. Örneğin, CDD'nin 1.6 sürümü yalnızca cep telefonlarını destekler. Ancak sürüm 2.1, cihazların telefon donanımını çıkarmasına izin vererek tablet tarzı müzik çalarlar gibi telefon dışı cihazların uyumlu olmasını sağlar. Bu değişiklikleri yaparken, geliştiricilerin uygulamalarının kullanılabilir olduğu yerler üzerinde kontrol sahibi olmalarını sağlamak için Google Play'i de genişleteceğiz. Telefon örneğine devam edersek, SMS metin mesajlarını yöneten bir uygulama bir medya oynatıcıda kullanışlı değildir, bu nedenle Google Play, geliştiricinin bu uygulamayı yalnızca telefon cihazlarıyla kısıtlamasına izin verir.
Cihazım uyumluysa, Google Play'e ve markalamaya otomatik olarak erişebilir mi?
Hayır. Erişim otomatik değildir. Google Play, Google tarafından işletilen bir hizmettir. Uyumluluğa ulaşmak, Google Play yazılımına ve markalamaya erişim elde etmenin ön koşuludur. Bir cihazın Android uyumlu bir cihaz olarak nitelendirilmesinden sonra, cihaz üreticisi, Google Play'e erişim sağlamak için Google Mobil Hizmetlerinin lisanslanmasında yer alan iletişim formunu doldurmalıdır. Size yardımcı olabilirsek sizinle iletişime geçeceğiz.
Üretici değilsem, Google Play'i nasıl edinebilirim?
Google Haritalar gibi Android için Google uygulamalarına nasıl erişebilirim?
YouTube, Google Haritalar ve Gmail gibi Android için Google uygulamaları, Android'in parçası olmayan ve ayrı olarak lisanslanan Google mülkleridir. Bu uygulamalarla ilgili sorularınız için email@example.com ile iletişime geçin.
Uyumluluk zorunlu mu?
Hayır. Android Uyumluluk Programı isteğe bağlıdır. Android kaynak kodu açıktır, bu nedenle herkes onu herhangi bir tür cihaz oluşturmak için kullanabilir. Bununla birlikte, üreticiler Android adını ürünleriyle birlikte kullanmak isterlerse veya Google Play'e erişmek isterlerse, önce cihazlarının uyumlu olduğunu göstermeleri gerekir.
Uyumluluk sertifikasının maliyeti nedir?
Bir cihaz için Android uyumluluğunu elde etmenin hiçbir maliyeti yoktur. Uyumluluk Test Paketi açık kaynaktır ve cihaz testi için herkes tarafından kullanılabilir.
Uyumluluk ne kadar sürer?
İşlem otomatiktir. Uyumluluk Test Paketi, uyumluluğu doğrulamak için Google'a sağlanabilecek bir rapor oluşturur. Sonunda, bu raporları herkese açık bir veritabanına yüklemek için self servis araçlar sağlamayı planlıyoruz.
Uyumluluk tanımını kim belirler?
Google, bir platform ve ürün olarak Android'in genel yönünden sorumludur, bu nedenle Google, her sürüm için Uyumluluk Tanımı Belgesini (CDD) tutar. Yeni bir Android sürümü için CDD'yi, girdi sağlayan çeşitli OEM'lere danışarak hazırladık.
Yeni cihazlar için her Android sürümü ne kadar süreyle desteklenecek?
Android'in kodu açık kaynak olduğundan, birisinin eski bir sürümü kullanarak bir cihazı başlatmasını engelleyemiyoruz. Bunun yerine Google, Google Play istemci yazılımını eski olarak değerlendirilen sürümlerde kullanmak üzere lisanslamamayı seçer. Bu, herkesin Android'in eski sürümlerini göndermeye devam etmesine izin verir, ancak bu cihazlar Android adını kullanmaz ve tıpkı uyumlu değilmiş gibi Android uygulamaları ekosisteminin dışında var olmaz.
Bir cihaz farklı bir kullanıcı arayüzüne sahip olabilir ve yine de uyumlu olabilir mi?
Android Uyumluluk Programı, bir cihazın üçüncü taraf uygulamaları çalıştırıp çalıştıramayacağını belirler. Bir cihazla birlikte gönderilen kullanıcı arabirimi bileşenleri (ana ekran, çevirici ve renk düzeni gibi) genellikle üçüncü taraf uygulamalar üzerinde fazla etkiye sahip değildir. Bu nedenle, cihaz üreticileri kullanıcı arayüzünü özelleştirmekte özgürdür. Uyumluluk Tanımı Belgesi, OEM'lerin üçüncü taraf uygulamaları etkileyen alanlar için sistem kullanıcı arayüzünü değiştirme derecesini sınırlar.
Yeni Android sürümleri için uyumluluk tanımları ne zaman yayınlanıyor?
Amacımız, ilgili Android platform sürümü izin verecek kadar yakınlaştığında Android Uyumluluk Tanımı Belgesinin (CDD) yeni bir sürümünü yayınlamaktır. İlk amiral gemisi cihaz bu yazılımla birlikte gelmeden önce bir Android yazılım sürümü için bir CDD'nin son taslağını yayınlayamasak da, son CDD'ler her zaman ilk cihazdan sonra yayınlanır. Bununla birlikte, mümkün olan her yerde CDD'lerin taslak sürümlerini yayınlıyoruz.
Cihaz üreticilerinin uyumluluk iddiaları nasıl doğrulanır?
Android cihaz uyumluluğu için herhangi bir doğrulama süreci yoktur. Ancak, cihaz Google Play'i içerecekse, Google genellikle Google Play istemci yazılımını lisanslamayı kabul etmeden önce cihazın uyumluluğunu doğrular.
Uyumluluk iddiasında olan bir aygıtın daha sonra uyumluluk sorunları olduğu tespit edilirse ne olur?
Tipik olarak, Google'ın Google Play lisans sahipleriyle olan ilişkileri, cihaz üreticisinden sorunları düzelten güncellenmiş sistem görüntüleri yayınlamasını istememize olanak tanır.Başa dönüş
Uyumluluk Test Paketi
CTS'nin amacı nedir?
Uyumluluk Test Paketi, cihaz üreticileri tarafından cihazlarının uyumlu olduğundan emin olmak ve doğrulamalar için test sonuçlarını bildirmek için kullanılan bir araçtır. CTS'nin, uyumluluk sorunlarını erken yakalamak için mühendislik süreci boyunca OEM'ler tarafından sık sık çalıştırılması amaçlanmıştır.
CTS ne tür şeyleri test eder?
CTS şu anda desteklenen tüm Android güçlü yazılmış API'lerin mevcut olduğunu ve doğru davrandığını test etmektedir. Ayrıca, uygulama yaşam döngüsü ve performans gibi diğer API olmayan sistem davranışlarını da test eder. Amaçlar gibi yazılım API'leri test etmek için gelecekteki CTS sürümlerine destek eklemeyi planlıyoruz.
CTS raporları kamuoyuna açıklanacak mı?
Evet. Şu anda uygulanmamış olsa da Google, OEM'lerin herkesin görüntüleyebilmesi için CTS raporları yayınlamaları için web tabanlı self servis araçlar sağlamayı amaçlamaktadır. Üreticiler, CTS raporlarını istedikleri kadar geniş bir kitleyle paylaşabilirler.
CTS nasıl lisanslanır?
CTS, Android'in büyük bir kısmının kullandığı aynı Apache Yazılım Lisansı 2.0 kapsamında lisanslanmıştır.
CTS katkıları kabul ediyor mu?
Evet lütfen! Android Açık Kaynak Projesi, diğer bileşenlerde olduğu gibi CTS'yi iyileştirmek için katkıları kabul eder. Aslında, CTS test senaryolarının kapsamını ve kalitesini artırmak, Android'e yardımcı olmanın en iyi yollarından biridir.
CTS'yi mevcut cihazlarda herkes kullanabilir mi?
Uyumluluk Tanımı Belgesi, uyumlu cihazların
adb hata ayıklama yardımcı programını uygulamasını gerektirir. Bu, herhangi bir uyumlu cihazın (perakende satışta bulunanlar dahil) CTS testlerini çalıştırabilmesi gerektiği anlamına gelir.
Kodekler CTS tarafından doğrulanıyor mu?
Evet. Tüm zorunlu kodekler CTS tarafından doğrulanır.Başa dönüş