Android cihaz üreticileri, çeşitli nedenleri vardır. Bazı satıcılar AOSP kitaplıklarındaki işlevleri Diğer tedarikçiler yeni kancalar, yeni API'ler veya yeni özellikler eklerken performansı artırır. işlevsellikleri hakkında daha fazla bilgi edinin. Bu bölümde, AOSP kitaplıklarını, CTS/VTS'yi bozmayacak şekilde genişletme.
Servise bırakma
Değiştirilen tüm paylaşılan kitaplıklar ikili ile uyumlu olmalıdır. AOSP muadillerinin değişikliklerine. Mevcut olanların tümü AOSP kullanıcıları, değiştirilen paylaşılan kitaplığı ücretsiz olarak kullanabilmelidir. derlemeler. Bu şart, aşağıdakileri ifade eder:
- AOSP işlevleri kaldırılmamalıdır.
- Bu tür yapılar maruz kalınan yapıların içinde değişiklik yardımcı olur.
- İşlevlerin ön koşulu güçlendirilemez.
- İşlevler eşdeğer işlevler sağlamalıdır.
- İşlevlerin son durumu zayıflatılmamalıdır.
Genişletilmiş modül sınıflandırmaları
Modülleri tanımladıkları işlevlere göre sınıflandırırlar. kullanabilirsiniz.
Not: İşlevler burada kullanılır değişiklik yapmadan işlev eklemek mümkün olduğundan, API/ABI yerine herhangi bir API/ABI.
Bir modülde tanımlanan işlevlere bağlı olarak, modüller DA-Modül ve DX-Modül olarak sınıflandırılmıştır:
-
Defining-only-AOSP Modülleri (DA-Module) yeni tanımlama değil
AOSP'de olmayan bazı işlevlere sahip.
- 1.örnek Değiştirilmemiş bir AOSP kitaplığı, DA-Modülü.
- 2.örnek Bir tedarikçi, fonksiyonları
SIMD talimatlarıyla
libcrypto.so
(yeni eklemeden işlevleri) içeriyorsa, değiştirilenlibcrypto.so
bir DA Modülü olur.
-
Açıklama-Uzantı Modülleri (DX-Module) ya yeni
olması veya AOSP eşdeğeri olmaması gerekir.
- 1.örnek Tedarikçi firma, reklamverenin
Bazı dahili verilere erişmek için
libjpeg.so
, ardındanlibjpeg.so
bir DX-Lib olacak, yeni eklenen işlev genişletilmiş kısmını kullanabilirsiniz. - 2.örnek Bir tedarikçi,
libfoo.so
, ardındanlibfoo.so
bir DX-Lib olacak.
- 1.örnek Tedarikçi firma, reklamverenin
Bazı dahili verilere erişmek için
Bir modülün kullandığı işlevlere bağlı olarak modüller sınıflandırılabilir. UA-Module ve UX-Module entegrasyonlarına dahildir.
-
Yalnızca AOSP Modüllerini Kullanma (UA Modülü), yalnızca AOSP işlevlerini kullanır
pek çok faydası vardır. AOSP olmayan uzantılar kullanılmaz.
- 1.örnek Değiştirilmemiş bir AOSP kitaplığı, UA Modülü'nü seçin.
- 2.örnek Değiştirilmiş bir paylaşılan kitaplık varsa
libjpeg.so
diğer AOSP API'lerine dayandığı takdirde UA Modülü olur.
-
Uzantı Modüllerini Kullanma (Kullanıcı Deneyimi Modülü), AOSP dışındaki bazı
işlevleri bulunuyor.
- 1.örnek Değiştirilmiş
libjpeg.so
libjpeg_turbo2.so
adlı AOSP olmayan başka bir kitaplık, ardından Değiştirilenlibjpeg.so
, bir Kullanıcı Deneyimi Modülü olacaktır. - 2.örnek Tedarikçi firma, değiştirilmiş e-postaya yeni bir işlev eklerse
libexif.so
ve değiştirdiklerilibjpeg.so
şunları kullanıyor:libexif.so
kaynağından yeni eklenen işlev, ardından değiştirilmişlibjpeg.so
, Kullanıcı Deneyimi Modülü olacak.
- 1.örnek Değiştirilmiş
Tanımlar ve kullanımlar birbirinden bağımsızdır:
Kullanılan İşlevler | |||
---|---|---|---|
Yalnızca AOSP (UA) | Genişletilmiş (Kullanıcı Deneyimi) | ||
Tanımlanan İşlevler | Yalnızca AOSP (DA) | DAUA | DAUX |
Genişletilmiş (DX) | DXUA | DXUX |
VNDK uzantı mekanizması
Genişletilmiş işlevlerden yararlanan tedarikçi modülleri Aynı ada sahip AOSP kitaplığı, genişletilmiş işleve sahip değildir. Eğer doğrudan veya dolaylı olarak kapsamı genişletilmiş işlevlere bağlı olan Tedarikçi firma; DAUX, DXUA ve DXUX paylaşılan kitaplıklarını tedarikçiye kopyalamalıdır. bölüm (tedarikçi firma işlemleri her zaman satıcıda paylaşılan kitaplıkları arar bölümünü içerir). Ancak LL-NDK kitaplıklarının kopyalanmaması gerekir. Bu nedenle, modüllerin, söz konusu değişiklik tarafından tanımlanan genişletilmiş işlevlere bağlı LL-NDK kitaplıkları.
DAUA paylaşılan kitaplıkları, karşılık gelen AOSP kitaplığı, aynı işlevi ve satıcıyı bir Genel program, sistem bölümünün üzerine yazıldığında, modüller çalışmaya devam eder Sistem Görüntüsü (GSI).
GSI, ad çakışması durumunda değiştirilmiş paylaşılan kitaplıklara bağlanır. Öğe AOSP kitaplıkları, API/ABI ile uyumlu olmayan bir şekilde değiştirilmiştir. AOSP GSI'daki kitaplıklar bağlanamayabilir veya tanımlanmamış davranışlara neden olabilir.