Android 1.6 r2
Google Inc.
uyumluluk@android.com
İçindekiler
1. Giriş ............................................... .................................................. .................. 4
2. Kaynaklar .................................................... .................................................. ..................... 4
3. Yazılım ................................................................ .................................................. ................................. 5
3.1. Yönetilen API Uyumluluğu.................................................. ................................................... 5
3.2. Yazılım API Uyumluluğu.................................................. .................................................... 6
3.2.1. İzinler................................................................ .................................................. ... 6
3.2.2. Yapı Parametreleri ................................................... .................................................... 6
3.2.3. Amaç Uyumluluğu................................................. ................................................... 8
3.2.3.1. Temel Uygulama Amaçları ................................................... ................................. 8
3.2.3.2. Niyet Geçersiz Kılmaları ................................................... ................................................... 8
3.2.3.3. Amaç Ad Alanları................................................................ ................................................... 8
3.2.3.4. Yayın Amaçları ................................................... ................................................... 9
3.3. Yerel API Uyumluluğu.................................................. ................................................... 9
3.4. Web API Uyumluluğu.................................................. ................................................... 9
3.5. API Davranış Uyumluluğu.................................................. ................................. 10
3.6. API Ad Alanları................................................................ .................................................. 10
3.7. Sanal Makine Uyumluluğu .................................................. ................................. 11
3.8. Kullanıcı Arayüzü Uyumluluğu .................................................. ................................. 11
3.8.1. Widget'lar ................................................... .................................................. ........ 11
3.8.2. Bildirimler ................................................. .................................................. 12
3.8.3. Aramak ................................................. .................................................. .......... 12
3.8.4. Tostlar.................................................. .................................................. ........... 12
4. Referans Yazılım Uyumluluğu.................................................. ................................. 12
5. Uygulama Paketleme Uyumluluğu.................................................. ................................. 13
6. Multimedya Uyumluluğu.................................................. .................................................... 13
7. Geliştirici Aracı Uyumluluğu.................................................. ................................................... 14
8. Donanım Uyumluluğu.................................................. ................................................. 15
8.1. Görüntülemek ................................................. .................................................. ................ 15
8.1.1. Standart Ekran Yapılandırmaları ................................................... .................. 15
8.1.2. Standart Olmayan Ekran Yapılandırmaları ................................................... ................ 16
8.1.3. Görüntüleme Metrikleri................................................................ .................................................... 16
8.2. Tuş takımı ................................................. .................................................. ................ 16
8.3. Dokunmatik Olmayan Navigasyon ................................................... ................................................... 16
8.4. Ekran Yönü................................................................ ................................................. 17
8.5. Dokunmatik ekran girişi.................................................. ................................................. 17
8.6. USB ................................................. .................................................. ..................... 17
8.7. Gezinme tuşları ................................................... .................................................. .. 17
8.8. Wifi ................................................. .................................................. ..................... 17
8.9. Kamera ................................................. .................................................. .................. 18
8.9.1. Otomatik Odaklama Olmayan Kameralar ................................................... ................................. 18
8.10. İvmeölçer.................................................. .................................................. .. 18
8.11. Pusula ................................................. .................................................. .......... 19
8.12. KÜRESEL KONUMLAMA SİSTEMİ ................................................. .................................................. ................... 19
8.13. Telefon...................................................... .................................................. ......... 19
8.14. Ses seviyesi kontrolleri.................................................. .................................................. 19
9. Performans Uyumluluğu.................................................. .................................................... 19
10. Güvenlik Modeli Uyumluluğu.................................................. ................................................... 20
10.1. İzinler ................................................... .................................................. ..... 20
10.2. Kullanıcı ve Süreç İzolasyonu ................................................... .................................. 20
10.3. Dosya Sistemi İzinleri................................................................ ................................................... 21
11. Uyumluluk Testi Paketi.................................................. .................................................... 21
12. Bize Ulaşın ................................................... .................................................. .................. 21
Ek A: Gerekli Uygulama Amaçları ................................................... ...................... 22
Ek B: Gerekli Yayın Amaçları ................................................... ................................. 0
Ek C: Geleceğe Yönelik Hususlar.................................................. .................................... 0
1. Telefon Dışı Cihazlar ................................................... .................................................... 30
2. Bluetooth Uyumluluğu.................................................. ................................................... 30
3. Gerekli Donanım Bileşenleri.................................................. .................................... 30
4. Örnek Uygulamalar .................................................... .................................................... 30
5. Dokunmatik Ekranlar ................................................... .................................................. ......... 30
6. Performans................................................................ .................................................. ................ 31
1. Giriş
Bu belge, cep telefonlarının kullanılabilmesi için yerine getirilmesi gereken şartları sıralamaktadır.
Android 1.6 ile uyumludur. Bu tanım, Android Uyumluluk Programına aşina olduğunuzu varsayar
[Kaynaklar, 1].
"Zorunlu", "yapmamalı", "gerekli", "yapmalı", "yapmamalı", "yapmalı", "yapmamalı", "önerilen" ifadelerinin kullanımı,
"olabilir" ve "isteğe bağlı" RFC2119'da tanımlanan IETF standardına uygundur [ Kaynaklar , 2].
Bu belgede kullanıldığı şekliyle "cihaz uygulayıcısı" veya "uygulayıcı", ürün geliştiren kişi veya kuruluştur.
Android 1.6 çalıştıran bir donanım/yazılım çözümü. Bir "cihaz uygulaması" veya "uygulama",
donanım/yazılım çözümü bu şekilde geliştirildi.
Cihaz uygulamalarının Android 1.6 ile uyumlu sayılması için:
1. Tüm belgeler de dahil olmak üzere bu Uyumluluk Tanımında sunulan gereksinimleri karşılaması ZORUNLUDUR
referans yoluyla dahil edilmiştir.
2. Android Open'ın bir parçası olarak sunulan Android Uyumluluk Test Paketini (CTS) GEÇMELİDİR
Kaynak Projesi [ Kaynaklar , 3]. CTS, bu kılavuzda belirtilen bileşenlerin hepsini olmasa da çoğunu test eder.
belge.
Bu tanımın veya CTS'nin sessiz, belirsiz veya eksik olması durumunda sorumluluk cihazın sorumluluğundadır.
Mevcut uygulamalarla uyumluluğun sağlanması için uygulayıcı. Bu nedenle Android Açık
Kaynak Projesi [ Kaynaklar , 4] Android'in hem referansı hem de tercih edilen uygulamasıdır. Cihaz
uygulayıcıların uygulamalarını "yukarı akış" kaynak koduna dayandırmaları şiddetle teşvik edilir
Android Açık Kaynak Projesi'nden edinilebilir. Bazı bileşenler varsayımsal olarak değiştirilebilirken
alternatif uygulamalarla bu uygulama kesinlikle tavsiye edilmez, çünkü CTS testlerini geçmek daha zor hale gelecektir.
önemli ölçüde daha zordur. Davranışsal uyumluluğun tam olarak sağlanması uygulayıcının sorumluluğundadır.
Uyumluluk Test Paketi dahil ve ötesinde standart Android uygulaması.
2. Kaynaklar
Bu Uyumluluk Tanımı, buradan edinilebilecek bir dizi kaynağa atıfta bulunmaktadır.
1. Android Uyumluluk Programına Genel Bakış: https://sites.google.com/a/android.com/compatibility/
nasıl çalışır
2. IETF RFC2119 Gereksinim Düzeyleri: http://www.ietf.org/rfc/rfc2119.txt
3. Uyumluluk Testi Paketi: http://sites.google.com/a/android.com/compatibility/compatibility-test-
süit--cts
4. Android Açık Kaynak Projesi: http://source.android.com/
5. API tanımları ve belgeleri: http://developer.android.com/reference/packages.html
6. İçerik Sağlayıcılar: http://code.google.com/android/reference/android/provider/package-
özet.html
7. Mevcut Kaynaklar: http://code.google.com/android/reference/available-resources.html
8. Android Manifest dosyaları: http://code.google.com/android/devel/bblocks-manifest.html
9. Android İzinleri referansı: http://developer.android.com/reference/android/
Manifest.permission.html
10. Sabitleri Oluşturun: http://developer.android.com/reference/android/os/Build.html
11. Web Görünümü: http://developer.android.com/reference/android/webkit/WebView.html
12. Gears Tarayıcı Uzantıları: http://code.google.com/apis/gears/
13. Dalvik Sanal Makine spesifikasyonu, kaynak kodun dalvik/docs dizininde bulunur
Çıkış yapmak; http://android.git.kernel.org/?p=platform/ adresinde de mevcuttur
dalvik.git;a=tree;f=docs;h=3e2ddbcaf7f370246246f9f03620a7caccbfcb12;hb=HEAD
14. AppWidget'lar: http://developer.android.com/guide/practices/ui_guidelines/widget_design.html
15. Bildirimler: http://developer.android.com/guide/topics/ui/notifiers/notifications.html
16. Durum Çubuğu simgesi stil kılavuzu: http://developer.android.com/guide/practices/ui_guideline
/icon_design.html#statusbaryapısı
17. Arama Yöneticisi: http://developer.android.com/reference/android/app/SearchManager.html
18. Tost: http://developer.android.com/reference/android/widget/Toast.html
19. Android Uygulamaları: http://code.google.com/p/apps-for-android
20. Android apk dosyası açıklaması: http://developer.android.com/guide/topics/fundamentals.html
21. Android Hata Ayıklama Köprüsü (adb): http://code.google.com/android/reference/adb.html
22. Dalvik Hata Ayıklama İzleme Hizmeti (ddms): http://code.google.com/android/reference/ddms.html
23. Maymun: http://developer.android.com/guide/developing/tools/monkey.html
24. Ekran Bağımsızlığı Belgeleri:
25. Yapılandırma Sabitleri: http://developer.android.com/reference/android/content/res/
Yapılandırma.html
26. Görüntüleme Metrikleri: http://developer.android.com/reference/android/util/DisplayMetrics.html
27. Kamera: http://developer.android.com/reference/android/hardware/Camera.html
28. Sensör koordinat alanı: http://developer.android.com/reference/android/hardware/
SensorEvent.html
29. Android Güvenliği ve İzinleri referansı: http://developer.android.com/guide/topics/security/
güvenlik.html
Bu kaynakların birçoğu doğrudan veya dolaylı olarak Android 1.6 SDK'sından türetilmiştir ve
söz konusu SDK'nın belgelerindeki bilgilerle işlevsel olarak aynıdır. Bunun olduğu her durumda
Uyumluluk Tanımı, SDK belgeleriyle aynı fikirde değil; SDK belgeleri dikkate alınır
yetkili. Yukarıda yer alan referanslarda sağlanan tüm teknik ayrıntılar dahil edilerek değerlendirilmiştir.
bu Uyumluluk Tanımının bir parçası olmak.
3. Yazılım
Android platformu, hem bir dizi yönetilen ("hard") API'yi hem de "soft" API olarak adlandırılan bir grup API'yi içerir
Intent sistemi, yerel kod API'leri ve web uygulaması API'leri gibi. Bu bölüm, zor ve
Uyumluluğun ayrılmaz bir parçası olan yumuşak API'lerin yanı sıra diğer bazı ilgili teknik ve kullanıcı arayüzleri
davranışlar. Cihaz uygulamalarının bu bölümdeki tüm gereksinimlere uyması ZORUNLUDUR.
3.1. Yönetilen API Uyumluluğu
Yönetilen (Dalvik tabanlı) yürütme ortamı, Android uygulamaları için birincil araçtır.
Android uygulama programlama arayüzü (API), kullanıma sunulan Android platformu arayüzleri kümesidir.
yönetilen VM ortamında çalışan uygulamalar. Cihaz uygulamalarının eksiksiz olması ZORUNLUDUR
Android tarafından kullanıma sunulan herhangi bir belgelenmiş API'nin tüm belgelenmiş davranışları da dahil olmak üzere uygulamaları
1.6 SDK, örneğin:
1. Temel Android Java dili API'leri [Kaynaklar, 5].
2. İçerik Sağlayıcılar [Kaynaklar , 6].
3. Kaynaklar [Kaynaklar, 7].
4. AndroidManifest.xml nitelikleri ve öğeleri [Kaynaklar, 8].
Cihaz uygulamaları, yönetilen API'leri atlamamalı, API arayüzlerini veya imzalarını değiştirmemeli,
belgelenen davranıştan veya bu Uyumluluk tarafından özel olarak izin verilen durumlar dışında işlem yapılmayan işlemleri dahil etmekten
Tanım.
3.2. Yazılım API Uyumluluğu
Bölüm 3.1'deki yönetilen API'lere ek olarak, Android aynı zamanda yalnızca çalışma zamanında kullanılabilen önemli bir "soft" yazılım içerir.
API, Android uygulamalarının Amaçları, izinleri ve benzer yönleri gibi şeyler biçiminde
uygulama derleme zamanında uygulanamaz. Bu bölümde "yazılımsal" API'ler ve sistem ayrıntıları verilmektedir
Android 1.6 ile uyumluluk için gerekli davranışlar. Cihaz uygulamalarının tüm gereklilikleri karşılaması ZORUNLUDUR
Bu bölümde sunulan gereksinimler.
3.2.1. İzinler
Cihaz uygulayıcılarının, belgelenen tüm izin sabitlerini desteklemesi ve uygulaması ZORUNLUDUR.
İzin referans sayfası [ Kaynaklar , 9]. Bölüm 10'un aşağıdakilerle ilgili ek gereklilikleri listelediğini unutmayın:
Android güvenlik modeli.
3.2.2. Parametreleri Oluştur
Android API'leri android.os.Build sınıfında [Resources, 10] bir dizi sabit içerir:
mevcut cihazı tanımlamayı amaçlamaktadır. Cihaz genelinde tutarlı, anlamlı değerler sağlamak
uygulamalarda aşağıdaki tablo, bu değerlerin formatlarına ilişkin ek kısıtlamalar içermektedir.
cihaz uygulamalarının uyumlu olması ZORUNLUDUR.
Parametre
Yorumlar
Şu anda çalışmakta olan Android sisteminin insandaki sürümü
android.os.Build.VERSION.RELEASE
okunabilir format Android 1.6 için bu alanın dize değerine sahip olması GEREKİR
"1.6".
Şu anda çalışmakta olan Android sisteminin sürümü
android.os.Build.VERSION.SDK
üçüncü taraf uygulama koduna erişilebilir. Android 1.6 için bu alan
4 tamsayı değerine sahip OLMALIDIR.
Cihaz uygulayıcısı tarafından seçilen ve spesifik yapıyı belirten bir değer
Şu anda çalışmakta olan Android sisteminin insan tarafından okunabilir biçimde.
Bu değer, sonuna kadar gönderilen farklı yapılar için yeniden KULLANILMAMALIDIR
android.os.Build.VERSION.INCREMENTAL kullanıcıları. Bu alanın tipik bir kullanımı, hangi yapı numarasını veya
Derlemeyi oluşturmak için kaynak kontrolü değişiklik tanımlayıcısı kullanıldı. Orada
dışında bu alanın özel formatına ilişkin herhangi bir gereklilik yoktur.
Boş veya boş dize ("") OLMAMALIDIR.
Cihaz uygulayıcısı tarafından seçilen ve belirli dahili özellikleri tanımlayan bir değer
Cihaz tarafından kullanılan donanımın insan tarafından okunabilir formatta olması. Olası bir kullanım
android.os.Build.BOARD
Bu alanın amacı, güç veren kartın özel revizyonunu belirtmektir.
cihaz. Bu alanın özel formatına ilişkin herhangi bir gereklilik yoktur,
ancak boş veya boş dize ("") OLMAMALIDIR.
Cihaz uygulayıcısı tarafından seçilen ve cihazın adını tanımlayan bir değer.
android.os.Build.BRAND
cihazı üreten şirket, kuruluş, şahıs vb.
insan tarafından okunabilir format. Bu alanın olası bir kullanımı OEM'i belirtmektir.
ve/veya cihazı satan operatör. konusunda herhangi bir gereklilik bulunmamaktadır.
Bu alanın belirli bir biçimi; ancak null veya boş OLMAMALIDIR
sicim ("").
Cihaz uygulayıcısı tarafından seçilen ve belirli bir özelliği tanımlayan bir değer
gövdenin konfigürasyonu veya revizyonu (bazen "endüstriyel
android.os.Build.DEVICE
cihazın tasarımı"). Özel formatta herhangi bir gereklilik yoktur.
ancak boş veya boş dize ("") OLMAMALIDIR.
Bu yapıyı benzersiz şekilde tanımlayan bir dize. Mantıklı olmalı
insan tarafından okunabilir. Bu şablona uyması GEREKİR:
$(product_BRAND)/$(product_NAME)/$(product_DEVICE)/
$(TARGET_BOOTLOADER_BOARD_NAME):$(PLATFORM_VERSION)/
$(BUILD_ID)/$(BUILD_NUMBER):$(TARGET_BUILD_VARIANT)/
android.os.Build.FINGERPRINT
$(BUILD_VERSION_TAGS)
Örneğin: acme/mydevicel/generic/generic:Donut/ERC77/
3359:kullanıcı hata ayıklama/test anahtarları
Parmak izi boşluk içermemelidir. Diğer alanlar da dahilse
yukarıdaki şablonda boşluklar var, bunların ASCII ile değiştirilmesi GEREKİR
parmak izindeki alt çizgi ("_") karakteri.
Yapının üzerine inşa edildiği ana bilgisayarı insan dilinde benzersiz şekilde tanımlayan bir dize
android.os.Build.HOST
okunabilir format Bunun özel formatına ilişkin herhangi bir gereklilik yoktur.
alanı, ancak boş veya boş dize ("") OLMAMALIDIR.
Cihaz uygulayıcısı tarafından belirli bir şeye atıfta bulunmak üzere seçilen bir tanımlayıcı
insan tarafından okunabilir formatta yayınlanır. Bu alan aynı şekilde
android.os.Build.VERSION.INCREMENTAL, ancak bir değer OLMALIDIR
android.os.Build.ID
son kullanıcılar için bir nebze anlamlı olması amaçlanmıştır. hayır
Bu alanın özel formatına ilişkin gereklilikler hariç, OLMAMALIDIR
null veya boş dize ("") olabilir.
Cihaz uygulayıcısı tarafından seçilen ve cihazın adını içeren bir değer
son kullanıcı tarafından bilinen cihaz. Bu aynı isim OLMALIDIR
android.os.Build.MODEL
Cihaz bu kapsamda pazarlanır ve son kullanıcılara satılır. hayır
Bu alanın özel formatına ilişkin gereklilikler hariç, OLMAMALIDIR
null veya boş dize ("") olabilir.
Geliştirmeyi içeren cihaz uygulayıcısı tarafından seçilen bir değer
cihazın adı veya kod adı. İnsan tarafından okunabilir OLMALIDIR, ancak değil
android.os.Build.PRODÜKTÖR
mutlaka son kullanıcıların görüntülemesi için tasarlanmıştır. Herhangi bir gereklilik yok
Bu alanın özel formatına göre, ancak boş OLMAMALIDIR veya
boş dize ("").
Cihaz uygulayıcısı tarafından seçilen virgülle ayrılmış etiket listesi.
yapıyı daha da ayırt edin. Örneğin, "imzasız, hata ayıklama". Bu alan
android.os.Build.TAGS
Boş veya boş dize ("") OLMAMALI, ancak tek bir etiket (örneğin,
"serbest bırakma") iyidir.
android.os.Build.TIME
Derlemenin gerçekleştiği zamanın zaman damgasını temsil eden bir değer.
Cihaz uygulayıcısı tarafından seçilen ve çalışma zamanını belirten bir değer
yapının konfigürasyonu. Bu alanın değerlerden birine sahip olması GEREKİR
android.os.Build.TYPE
üç tipik Android çalışma zamanı yapılandırmasına karşılık gelir: "kullanıcı",
"kullanıcı hata ayıklaması" veya "eng".
Oluşturan kullanıcının (veya otomatik kullanıcının) adı veya kullanıcı kimliği
android.os.Build.USER
inşa etmek. Bu alanın özel formatına ilişkin herhangi bir gereklilik yoktur,
ancak boş veya boş dize ("") OLMAMALIDIR.
3.2.3. Amaç Uyumluluğu
Android, uygulamalar arasında gevşek bağlantılı entegrasyon sağlamak için Amaçları kullanır. Bu bölümde açıklanmaktadır
Cihaz uygulamaları tarafından karşılanması GEREKEN Amaç kalıplarıyla ilgili gereksinimler. İle
"Onurlandırıldım", cihaz uygulayıcısının bir Android Etkinliği, Hizmeti veya başka bir şey sağlaması GEREKLİ olduğu anlamına gelir.
eşleşen bir Amaç filtresini belirten ve her biri için doğru davranışı bağlayan ve uygulayan bileşen
belirtilen Niyet modeli.
3.2.3.1. Temel Uygulama Amaçları
Android yukarı akış projesi, telefon çevirici, takvim gibi bir dizi temel uygulamayı tanımlar.
kişiler defteri, müzik çalar vb. Cihaz uygulayıcıları bu uygulamaları şununla değiştirebilir:
alternatif versiyonlar.
Bununla birlikte, bu tür alternatif versiyonların, yukarı akış tarafından sağlanan aynı Niyet modellerine uyması ZORUNLUDUR.
proje. (Örneğin, bir cihaz alternatif bir müzik çalar içeriyorsa yine de Intent modelini dikkate almalıdır.
bir şarkıyı seçmek için üçüncü taraf uygulamalar tarafından yayınlanır.) Cihaz uygulamalarının tüm Intent modellerini desteklemesi ZORUNLUDUR
Ek A'da listelenmiştir.
3.2.3.2. Niyet Geçersiz Kılmaları
Android genişletilebilir bir platform olduğundan, cihaz uygulayıcılarının burada açıklanan her bir Amaç modeline izin vermesi ZORUNLUDUR.
Ek A, üçüncü taraf uygulamalar tarafından geçersiz kılınacaktır. Yukarı akışlı Android açık kaynak projesi
buna varsayılan olarak izin verir; cihaz uygulayıcıları sistem uygulamalarına özel ayrıcalıklar EKLEMEMELİDİR
bu Intent kalıplarının kullanılması veya üçüncü taraf uygulamaların bunlara bağlanmasını ve bunların kontrolünü üstlenmesini önlemek
bu desenler. Bu yasak özellikle "Seçici" kullanıcı arayüzünün devre dışı bırakılmasını içerir.
kullanıcının tümü aynı Amaç modelini işleyen birden fazla uygulama arasında seçim yapmasına olanak tanır.
3.2.3.3. Amaç Ad Alanları
Cihaz uygulayıcıları, herhangi bir yeni Niyet veya amacı yerine getiren herhangi bir Android bileşenini İÇERMEMELİDİR
Android.* ad alanındaki bir ACTION, CATEGORY veya başka bir anahtar dizeyi kullanarak Yayın Amacı kalıpları.
Cihaz uygulayıcıları, herhangi bir yeni Niyet veya amacı yerine getiren herhangi bir Android bileşenini İÇERMEMELİDİR
Paket alanındaki bir ACTION, CATEGORY veya başka bir anahtar dizeyi kullanarak Yayın Amacı kalıpları
başka bir kuruluşa ait olmak. Cihaz uygulayıcıları, Amaçlardan herhangi birini DEĞİŞTİRMEMELİ veya Uzatmamalı
Ek A veya B'de listelenen desenler.
Bu yasak, Bölüm 3.6'da Java dil sınıfları için belirtilene benzerdir.
3.2.3.4. Yayın Amaçları
Üçüncü taraf uygulamalar, belirli Amaçları yayınlamak ve bunları değişiklikler hakkında bilgilendirmek için platforma güvenir.
donanım veya yazılım ortamı. Android uyumlu cihazlar genel yayını yayınlamalıdır ZORUNLU
Uygun sistem olaylarına yanıt olarak niyetler. Gerekli Yayın Amaçlarının bir listesi şurada verilmiştir:
Ek B; ancak SDK'nın ek yayın amaçlarını da tanımlayabileceğini unutmayın; bunlar da GEREKLİDİR.
onurlandırıldı.
3.3. Yerel API Uyumluluğu
Dalvik'te çalışan yönetilen kod, uygulamanın .apk dosyasında sağlanan yerel kodu ELF olarak çağırabilir
Uygun cihaz donanım mimarisi için derlenmiş .so dosyası. Cihaz uygulamaları şunları içermelidir ZORUNLU
Standart Java'yı kullanarak yerel kodu çağırmak için yönetilen ortamda çalışan kod desteği
Yerel Arayüz (JNI) semantiği. Aşağıdaki API'ler yerel kodda mevcut olmalıdır:
• libc (C kitaplığı)
• libm (matematik kütüphanesi)
• JNI arayüzü
• libz (Zlib sıkıştırması)
• liblog (Android günlüğü)
• C++ için minimum destek
• OpenGL ES 1.1
Bu kütüphaneler kaynak uyumlu (yani başlık uyumlu) ve ikili uyumlu (belirli bir veri için) OLMALIDIR
işlemci mimarisi) Bionic'te Android Açık Kaynak projesi tarafından sağlanan sürümlerle. O zamandan beri
Biyonik uygulamalar GNU C gibi diğer uygulamalarla tam uyumlu değildir
kütüphane, cihaz uygulayıcılarının Android uygulamasını kullanması GEREKİR. Cihaz uygulayıcıları bir
Bu kütüphanelerin farklı uygulamaları, başlık ve ikili uyumluluğu sağlamalıdır.
Yerel kod uyumluluğu zordur. Bu nedenle cihaz uygulayıcılarının önemli olduğunu tekrarlamak isteriz.
yardımcı olmak için yukarıda listelenen kütüphanelerin yukarı akış uygulamalarının kullanılması şiddetle tavsiye edilir.
uyumluluğu sağlayın.
3.4. Web API Uyumluluğu
Birçok geliştirici ve uygulama android.webkit.WebView sınıfının davranışına güvenir [ Kaynaklar ,
11] kullanıcı arayüzleri için WebView uygulamasının Android genelinde uyumlu olması gerekir
uygulamalar. Android Açık Kaynak uygulaması, WebKit oluşturma motoru sürümünü kullanır.
Web Görünümünü uygulayın.
Bir web tarayıcısı için kapsamlı bir test paketi geliştirmek mümkün olmadığından cihaz uygulayıcıları
WebView uygulamasında WebKit'in belirli yukarı akış yapısını KULLANMALIDIR. Özellikle:
• WebView'ün, yukarı akışlı Android Açık Kaynak ağacından 528.5+ WebKit yapısını kullanması ZORUNLUDUR
Android1.6. Bu yapı, Web Görünümü için belirli bir dizi işlevsellik ve güvenlik düzeltmesi içerir.
• WebView tarafından bildirilen kullanıcı aracısı dizesi şu formatta OLMALIDIR:
Mozilla/5.0 (Linux; U; Android 1.6; <dil>-<ülke>; <cihaz
isim>; Build/<build ID>) AppleWebKit/528.5+ (KHTML, Gecko gibi)
Sürüm/3.1.2 Mobil Safari/525.20.1
◦ "<cihaz adı>" dizesi, değeriyle aynı OLMALIDIR
android.os.Build.MODEL
◦ "<build ID>" dizesi, android.os.Build.ID değeriyle aynı OLMALIDIR.
◦ "<dil>" ve "<ülke>" dizeleri, aşağıdakiler için olağan kurallara uyması GEREKLİdir:
ülke kodu ve dili ve cihazın geçerli yerel ayarına atıfta bulunulması GEREKLİdir.
isteğin zamanı.
Uygulamalar, bağımsız Tarayıcı uygulamasında özel bir kullanıcı aracısı dizesi GÖNDEREBİLİR. ne
Dahası, bağımsız Tarayıcı alternatif bir tarayıcı teknolojisini temel alıyor OLABİLİR (örneğin, Firefox,
Opera, vb.) Ancak alternatif bir Tarayıcı uygulaması gönderilse bile WebView bileşeni
üçüncü taraf uygulamalarına sağlanan içeriklerin yukarıdaki gibi WebKit'i temel alması GEREKİR.
Bağımsız Tarayıcı uygulamasının Gears [ Kaynaklar, 12] ve MAY desteğini içermesi GEREKİR
HTML5'in bir kısmı veya tamamı için destek içerir.
3.5. API Davranış Uyumluluğu
API türlerinin her birinin (yönetilen, yazılımsal, yerel ve web) davranışları aşağıdakilerle tutarlı olmalıdır:
Android Açık Kaynak Projesi'nden temin edilebilen Android'in tercih edilen uygulaması.
Bazı spesifik uyumluluk alanları şunlardır:
• Cihazlar standart bir Niyetin davranışını veya anlamını DEĞİŞTİRMEMELİDİR
• Cihazlar belirli bir sistem türünün yaşam döngüsünü veya yaşam döngüsü anlamını DEĞİŞTİRMEMELİDİR
bileşen (Hizmet, Etkinlik, ContentProvider vb. gibi)
• Cihazlar belirli bir iznin anlamını DEĞİŞTİRMEMELİDİR
Yukarıdaki liste kapsamlı değildir ve davranışsal önlemlerin alınması sorumluluğu cihaz uygulayıcılarına aittir.
uyumluluk. Bu nedenle, cihaz uygulayıcılarının mevcut kaynak kodunu kullanması GEREKLİdir.
Sistemin önemli kısımlarını yeniden uygulamak yerine mümkün olan yerlerde Android Açık Kaynak Projesi.
Uyumluluk Test Paketi (CTS), platformun önemli bölümlerini davranışsal uyumluluk açısından test eder,
fakat hepsi değil. Android ile davranışsal uyumluluğun sağlanması uygulayıcının sorumluluğundadır.
Açık Kaynak Projesi.
3.6. API Ad Alanları
Android, Java programlama tarafından tanımlanan paket ve sınıf ad alanı kurallarını takip eder
dil. Üçüncü taraf uygulamalarla uyumluluğu sağlamak için cihaz uygulayıcıları
bu paket ad alanlarındaki yasaklanmış değişiklikler (aşağıya bakın):
• java.*
• javax.*
• güneş.*
• android.*
• com.android.*
Yasaklanan değişiklikler şunları içerir:
• Cihaz uygulamaları, Android platformundaki herkese açık API'leri DEĞİŞTİRMEMELİDİR
herhangi bir yöntemi veya sınıf imzasını değiştirerek veya sınıfları veya sınıf alanlarını kaldırarak.
• Cihaz uygulayıcıları API'lerin temel uygulamasını DEĞİŞTİREBİLİR, ancak bu tür
değişiklikler herhangi bir belgenin belirtilen davranışını ve Java dili imzasını etkilememelidir ZORUNLU
herkese açık API'ler.
• Cihaz uygulayıcıları genel kullanıma açık herhangi bir öğeyi (sınıflar veya
arayüzler veya mevcut sınıflara veya arayüzlere yönelik alanlar veya yöntemler) yukarıdaki API'lere.
"Herkese açık öğe", "@hide" işaretiyle süslenmeyen herhangi bir yapıdır.
yukarı akış Android kaynak kodu. Başka bir deyişle, cihaz uygulayıcılarının yeni API'leri veya
yukarıda belirtilen ad alanlarındaki mevcut API'leri değiştirin. Cihaz uygulayıcıları yalnızca dahili olarak yapabilirler
ancak bu değişikliklerin reklamı yapılmamalı veya geliştiricilere başka şekilde sunulmamalıdır.
Cihaz uygulayıcıları özel API'ler EKLEYEBİLİR, ancak bu tür API'lerin sahip olunan bir ad alanında OLMAMALIDIR
başka bir kuruluş tarafından veya başka bir kuruluşa atıfta bulunularak. Örneğin, cihaz uygulayıcıları API'leri EKLEMEMELİDİR
com.google.* veya benzer ad alanı; bunu yalnızca Google yapabilir. Benzer şekilde, Google'ın API'leri EKLEMEMESİ ZORUNLUDUR
diğer şirketlerin ad alanları.
Bir cihaz uygulayıcısı yukarıdaki paket ad alanlarından birini geliştirmeyi teklif ederse (örneğin,
Mevcut bir API'ye yeni işlevsellik kazandırılması veya yeni bir API eklenmesi gibi durumlarda, uygulayıcının şu adresi ziyaret etmesi GEREKLİdir:
source.android.com adresine gidin ve değişikliklere ve kodlara katkıda bulunma sürecini başlatın.
o sitedeki bilgiler.
Yukarıdaki kısıtlamaların Java'daki API'leri adlandırmaya ilişkin standart kurallara karşılık geldiğini unutmayın.
Programlama dili; bu bölüm sadece bu sözleşmeleri güçlendirmeyi ve bağlayıcı kılmayı amaçlamaktadır
bu uyumluluk tanımına dahil edilerek.
3.7. Sanal Makine Uyumluluğu
Uyumlu bir Android cihazı, Dalvik Yürütülebilir (DEX) bayt kodu spesifikasyonunun tamamını desteklemeli ve
Dalvik Sanal Makine semantiği [Kaynaklar, 13].
3.8. Kullanıcı Arayüzü Uyumluluğu
Android platformu, geliştiricilerin sistem kullanıcısına bağlanmasına olanak tanıyan bazı geliştirici API'leri içerir
arayüz. Cihaz uygulamalarının bu standart kullanıcı arayüzü API'lerini özel kullanıcı arayüzlerine dahil etmesi ZORUNLUDUR
aşağıda açıklandığı gibi gelişirler.
3.8.1. Widget'lar
Android, uygulamaların kullanıma sunulmasına olanak tanıyan bir bileşen türünü ve ilgili API'yi ve yaşam döngüsünü tanımlar.
son kullanıcıya bir "AppWidget" [Resources , 14] . Android Açık Kaynak referans sürümü şunları içerir:
Kullanıcının eklemesine, görüntülemesine ve kaldırmasına olanak tanıyan kullanıcı arayüzü öğelerini içeren başlatıcı uygulaması
Ana ekrandan AppWidget'lar.
Cihaz uygulayıcıları referans Başlatıcının (yani ana ekranın) alternatifini OLABİLİR.
Alternatif Başlatıcılar, AppWidget'lar için yerleşik destek içermeli ve kullanıcı arayüzünü kullanıma sunmalıdır GEREKLİ
AppWidget'ları doğrudan Başlatıcı içinde eklemek, görüntülemek ve kaldırmak için kullanabileceğiniz öğeler. Alternatif Başlatıcılar MAYIS
bu kullanıcı arayüzü öğelerini çıkarın; ancak bunlar atlanırsa cihaz uygulayıcısının bir
Kullanıcıların eklemesine, görüntülemesine ve kaldırmasına olanak tanıyan, Başlatıcıdan erişilebilen ayrı bir uygulama
AppWidget'lar.
3.8.2. Bildirimler
Android, geliştiricilerin kullanıcıları önemli olaylar hakkında bilgilendirmesine olanak tanıyan API'ler içerir [Kaynaklar, 15]. Cihaz
uygulayıcılar bu şekilde tanımlanan her bildirim sınıfı için destek sağlamalıdır ZORUNLU; özellikle: sesler,
titreşim, ışık ve durum çubuğu.
Ek olarak, uygulamanın doğru şekilde işlenmesi ZORUNLUDUR ve tüm kaynaklar (simgeler, ses dosyaları vb.)
API'lerde [Kaynaklar, 7] veya Durum Çubuğu simge stili kılavuzunda [Kaynaklar , 16] sağlanır. Cihaz
uygulayıcılar, bildirimler için,
Android Açık Kaynak uygulamasına referans; ancak bu tür alternatif bildirim sistemleri ZORUNLUDUR
yukarıdaki gibi mevcut bildirim kaynaklarını destekleyin.
3.8.3. Aramak
Android, geliştiricilerin aramayı uygulamalarına dahil etmelerine olanak tanıyan API'ler [Kaynaklar, 17] içerir.
ve uygulamalarının verilerini küresel sistem aramasına sunarlar. Genel olarak konuşursak, bu işlevsellik
Kullanıcıların sorgu girmesine olanak tanıyan, önerileri görüntüleyen, sistem çapında tek bir kullanıcı arayüzünden oluşur
kullanıcılar yazarken ve sonuçları görüntülerken. Android API'leri, geliştiricilerin bu arayüzü yeniden kullanarak
kendi uygulamaları içinde arama yapma ve geliştiricilerin sonuçları ortak küresel arama kullanıcısına sunmalarına olanak sağlama
arayüz.
Cihaz uygulamalarının, tek, paylaşılan, sistem çapında arama yapabilen bir arama kullanıcı arayüzü içermesi ZORUNLUDUR.
Kullanıcı girişine yanıt olarak gerçek zamanlı öneriler. Cihaz uygulamalarının aşağıdaki API'leri uygulaması ZORUNLUDUR:
geliştiricilerin kendi uygulamaları içinde arama sağlamak için bu kullanıcı arayüzünü yeniden kullanmalarına izin verin.
Cihaz uygulamalarının, üçüncü taraf uygulamaların öneri eklemesine izin veren API'leri uygulaması ZORUNLUDUR
genel arama modunda çalıştırıldığında arama kutusuna. Hiçbir üçüncü taraf uygulaması yüklü değilse
Bu işlevsellikten yararlandığınızda, varsayılan davranış web arama motoru sonuçlarını görüntülemek OLMALIDIR ve
öneriler.
Cihaz uygulamaları alternatif arama kullanıcı arayüzleri sunabilir.
Arama çerçevesini çağırmak için herhangi bir uygulamada herhangi bir zamanda kullanılabilecek özel arama düğmesi,
API belgelerinde belirtilen davranışla.
3.8.4. Tostlar
Uygulamalar, kipli olmayan kısa dizeleri görüntülemek için "Tost" API'sini ([ Kaynaklar, 18]'de tanımlanmıştır) kullanabilir.
Kısa bir süre sonra ortadan kaybolan son kullanıcı. Cihaz uygulamalarının Tostları görüntülemesi ZORUNLU
uygulamaları son kullanıcılara yüksek görünürlükle sunar.
4. Referans Yazılım Uyumluluğu
Cihaz uygulayıcılarının aşağıdaki açık kaynağı kullanarak uygulama uyumluluğunu test etmesi GEREKİR
uygulamalar:
• Hesap Makinesi (SDK'ya dahildir)
• Ay'a İniş Aracı (SDK'ya dahildir)
• ApiDemos (SDK'ya dahildir)
• "Android Uygulamaları" uygulamaları [ Kaynaklar, 19]
Uygulamanın gerçekleşebilmesi için yukarıdaki her uygulamanın başlatılması ve uygulamada doğru şekilde davranması ZORUNLUDUR
uyumlu kabul edilir.
5. Uygulama Paketleme Uyumluluğu
Cihaz uygulamalarının "aapt" aracı tarafından oluşturulan Android ".apk" dosyalarını yüklemesi ve çalıştırması ZORUNLUDUR
resmi Android SDK'sına dahil edilmiştir [ Kaynaklar , 20].
Cihaz uygulamalarının .apk, Android Manifest veya Dalvik bayt kodunu genişletmemesi ZORUNLUDUR
bu dosyaların diğer cihazlara yüklenmesini ve düzgün şekilde çalışmasını engelleyecek şekilde biçimlendirin
uyumlu cihazlar. Cihaz uygulayıcıları Dalvik'in referans yukarı akış uygulamasını KULLANMALIDIR,
ve referans uygulamasının paket yönetim sistemi.
6. Multimedya Uyumluluğu
Uyumlu bir Android cihazının aşağıdaki multimedya codec bileşenlerini desteklemesi gerekir. Bu codec'lerin tümü
Android Open'dan tercih edilen Android uygulamasında yazılım uygulamaları olarak sağlanır
Kaynak Projesi [ Kaynaklar , 4].
Ne Google'ın ne de Open Handset Alliance'ın bunların bu yönde olduğuna dair herhangi bir beyanda bulunmadığını lütfen unutmayın.
codec'ler üçüncü taraf patentleri tarafından engellenmez. Bu kaynak kodunu donanımda kullanmak isteyenler veya
yazılım ürünlerine, açık kaynaklı yazılımlar da dahil olmak üzere bu kodun uygulanması tavsiye edilir veya
paylaşılan yazılımlar, ilgili patent sahiplerinden patent lisansları gerektirebilir.
Ses
İsim
Kodlayıcı Kod Çözücü Ayrıntıları
Desteklenen Dosyalar
Herhangi bir formatta Mono/Stereo içerik
3GPP (.3gp) ve
standart bit hızlarının kombinasyonu
MPEG-4 (.mp4, .m4a)
AAC LC/LTP
X
160 kbps'ye kadar ve örnekleme hızları dosyaları. Ham destek yok
8 ila 48kHz arasında
AAC (.aac)
Herhangi bir formatta Mono/Stereo içerik
3GPP (.3gp) ve
HE-AACv1
standart bit hızlarının kombinasyonu
MPEG-4 (.mp4, .m4a)
X
(AA+)
96 kbps'ye kadar ve örnekleme hızları dosyaları. Ham destek yok
8 ila 48kHz arasında
AAC (.aac)
Herhangi bir formatta Mono/Stereo içerik
HE-AACv2
3GPP (.3gp) ve
standart bit hızlarının kombinasyonu
(geliştirilmiş
MPEG-4 (.mp4, .m4a)
X
96 kbps'ye kadar ve örnekleme hızları
AAC+)
Dosyalar. Ham destek yok
8 ila 48kHz arasında
AAC (.aac)
AMR-NB
4,75 - 12,2 kbps örneklenmiş @
3GPP (.3gp) dosyaları
X
X
8kHz
AMR-WB
6,60 kbit/s'den 23,85'e 9 hız
-3GPP (.3gp) dosyaları
X
kbit/sn @ 16kHz'de örneklendi
MP3
Mono/Stereo 8-320Kbps sabit MP3 (.mp3) dosyaları
X
(CBR) veya değişken bit hızı (VBR)
0 ve 1 yazın (.mid, .xmf,
MIDI Tip 0 ve 1. DLS Versiyon 1
MİDİ
X
.mxmf). Ayrıca RTTTL/RTX
ve 2. XMF ve Mobil XMF.
(.rtttl, .rtx), OTA (.ota),
Zil sesi formatları desteği
ve iMelody (.imy)
RTTTL/RTX, OTA ve iMelody
Ogg Vorbis
.ogg
X
8 ve 16 bit doğrusal PCM (oranlar artar
PCM
X
DALGA
donanım sınırına kadar)
Resim
Dosyalar
İsim
Kodlayıcı Kod Çözücü Ayrıntıları
Destekleniyor
JPEG
X
X
temel+aşamalı
GIF
X
PNG
X
X
BMP
X
Video
Dosyalar
İsim
Kodlayıcı Kod Çözücü Ayrıntıları
Destekleniyor
3GPP (.3gp)
H.263
X
X
Dosyalar
3GPP (.3gp)
H.264
X
ve MPEG-4
(.mp4) dosyaları
MPEG4
X
3GPP (.3gp) dosyası
SP
7. Geliştirici Aracı Uyumluluğu
Cihaz uygulamaları, Android SDK'da verilen Android geliştirici araçlarını desteklemelidir.
Özellikle, Android uyumlu cihazlar aşağıdakilerle uyumlu olmalıdır:
• Android hata ayıklama köprüsü veya ADB [Resources , 21]
Cihaz uygulamaları, Android'de belgelenen tüm ADB işlevlerini desteklemelidir
SDK'dır. Cihaz tarafı ADB arka planı varsayılan olarak aktif değil, ancak bir kullanıcı olmalı
Android hata ayıklama köprüsünü açmak için erişilebilir mekanizma.
• Dalvik Hata Ayıklama Monitör Hizmeti veya DDMS [Kaynaklar , 22]
Cihaz uygulamaları, Android SDK'da belgelendiği gibi tüm DDMS özelliklerini desteklemelidir.
DDMS ADB kullandığından, DDMS desteği varsayılan olarak etkin değil, ancak desteklenmelidir
Kullanıcı yukarıdaki gibi Android hata ayıklama köprüsünü etkinleştirdiğinde.
• Maymun [Kaynaklar, 23]
Cihaz uygulamaları Monkey Framework'ü içermeli ve
Kullanılacak uygulamalar.
8. Donanım uyumluluğu
Android, yenilikçi form faktörleri ve konfigürasyonlar oluşturan cihaz uygulayıcılarını desteklemeyi amaçlamaktadır.
Aynı zamanda Android geliştiricileri tüm Android'de belirli donanım, sensör ve API'lar bekliyor
cihaz. Bu bölümde, tüm Android 1.6 uyumlu cihazların desteklemesi gereken donanım özellikleri listelenmektedir. İçinde
Android 1.6, donanım özelliklerinin çoğunluğu (WiFi, pusula ve ivmeölçer gibi) gereklidir.
Bir cihaz, üçüncü taraf için karşılık gelen bir API'ya sahip belirli bir donanım bileşeni içeriyorsa
Geliştiriciler, cihaz uygulaması Android SDK'da tanımlandığı gibi API'yi uygulamalıdır
belgeler.
8.1. Görüntülemek
Android 1.6, belirli otomatik ölçeklendirme ve dönüşüm işlemlerini gerçekleştiren tesisleri içerir.
Bazı koşullar, üçüncü taraf uygulamalarının donanımda makul derecede iyi çalışmasını sağlamak için
Mutlak bir şekilde tasarlanmadıkları yapılandırmalar [Resources, 24] . Cihazlar olmalı
Bu davranışları bu bölümde ayrıntılı olarak uygun şekilde uygulayın.
8.1.1. Standart Ekran Yapılandırmaları
Bu tablo, Android ile uyumlu olduğu düşünülen standart ekran yapılandırmalarını listeler:
Diyagonal
Ekran boyutu
Ekran Yoğunluğu
Ekran Tipi
Genişlik (piksel)
Yükseklik (piksel)
Uzunluk aralığı
Grup
Grup
(inç)
Qvga
240
320
2.6 - 3.0
Küçük
Düşük
WQVGA
240
400
3.2 - 3.5
Normal
Düşük
Fwqvga
240
432
3.5 - 3.8
Normal
Düşük
HVGA
320
480
3.0 - 3.5
Normal
Orta
WVGA
480
800
3.3 - 4.0
Normal
Yüksek
Fwvga
480
854
3.5 - 4.0
Normal
Yüksek
WVGA
480
800
4.8 - 5.5
Büyük
Orta
Fwvga
480
854
5.0 - 5.8
Büyük
Orta
Yukarıdaki standart yapılandırmalardan birine karşılık gelen cihaz uygulamaları yapılandırılmalıdır
Belirtilen ekran boyutunu android.content.res.configuration üzerinden uygulamalara bildirmek için [ Kaynaklar,
25] sınıf.
Bazı .APK paketleri, bunları belirli bir yoğunluk aralığını destekleyen olarak tanımlamayan tezahürlere sahiptir.
Bu tür uygulamaları çalıştırırken, aşağıdaki kısıtlamalar uygulanır:
• Cihaz uygulamaları, mevcut tüm kaynakları temerrüde olarak yorumlamalıdır.
"Orta" (SDK belgesinde "MDPI" olarak bilinir.)
• "Düşük" yoğunluklu bir ekranda çalışırken, cihaz uygulamaları ortamı azaltmalıdır/
MDPI varlıkları 0.75 faktörü.
• "Yüksek" yoğunluklu bir ekranda çalışırken, cihaz uygulamaları ortamı ölçeklendirmelidir/
MDPI varlıkları 1,5 kat.
• Cihaz uygulamaları, varlıkları yoğunluk aralığında ölçeklendirmemeli ve ölçeklendirmelidir
Yoğunluk aralıkları arasındaki tam olarak bu faktörlerin varlıkları.
8.1.2. Standart Olmayan Ekran Yapılandırmaları
Bölüm 8.2.1'de listelenen standart yapılandırmalardan biriyle eşleşmeyen yapılandırma yapılandırmaları
uyumlu olmak için ek değerlendirme ve çalışma. Cihaz uygulayıcıları Android ile iletişime geçmeli
Ekran boyutunda kova, yoğunluk için sınıflandırmalar elde etmek için Bölüm 12'de belirtildiği gibi uyumluluk ekibi,
ve ölçeklendirme faktörü. Bu bilgiler verildiğinde, cihaz uygulamaları bunları uygulamalıdır
belirtildiği gibi.
Bazı ekran yapılandırmalarını (çok büyük veya çok küçük ekranlar ve bazı en boy oranları gibi) unutmayın.
temelde Android 1.6 ile uyumsuzdur; Bu nedenle cihaz uygulayıcıları
Geliştirme sürecinde Android uyumluluk ekibine mümkün olduğunca erken iletişime geçin.
8.1.3. Metrikleri görüntüle
Cihaz uygulamaları, içinde tanımlanan tüm ekran metrikleri için doğru değerleri bildirmelidir.
Android.util.displayMetrics [Resources , 26].
8.2. Tuş takımı
Cihaz Uygulamaları:
• Giriş yönetimi çerçevesine destek içermelidir (üçüncü tarafa izin veren
Geliştiriciler Giriş Yönetimi Motorları - yani Yumuşak Klavye) Oluşturacak
geliştirici.android.com
• En az bir yumuşak klavye uygulaması sağlamalıdır (zor olup olmadığına bakılmaksızın
klavye mevcut)
• Ek yumuşak klavye uygulamaları içerebilir
• Bir donanım klavyesi içerebilir
• Belirtilen formatlardan biriyle eşleşmeyen bir donanım klavye eklememelidir
Android.content.res.Configuration [ Resources, 25] (yani Qwerty veya 12-Key)
8.3. Dokunmasız gezinme
Cihaz Uygulamaları:
• Touch olmayan gezinme seçeneklerini atlayabilir (yani, bir Trackball, 5 yönlü yön pedini atlayabilir veya
teker)
• Android.content.res.configuration [Resources , 25] aracılığıyla rapor etmelidir.
Cihazın Donanımı
8.4. Ekran Yönü
Uyumlu cihazlar, portreye veya manzaraya uygulamalara göre dinamik oryantasyonu desteklemelidir
ekran yönü. Yani, cihaz uygulamanın belirli bir ekran talebine saygı duymalıdır
oryantasyon. Cihaz uygulamaları varsayılan olarak portre veya peyzaj oryantasyonunu seçebilir.
Cihazlar, cihazın geçerli yönü için doğru değeri bildirmelidir.
android.content.res.configuration.orientation, android.view.display.getOrientation () veya diğer API'ler.
8.5. Dokunmatik ekran girişi
Cihaz Uygulamaları:
• Bir dokunmatik ekrana sahip olmalı
• Kapasitif veya dirençli dokunmatik ekrana sahip olabilir
• Android.content.res.configuration [ Resources, 25] değerini yansıtmanın değerini bildirmelidir
cihazdaki belirli dokunmatik ekranın türüne karşılık gelir
8.6. USB
Cihaz Uygulamaları:
• Standart bir USB-A bağlantı noktası olan bir USB ana bilgisayarına bağlanabilen bir USB istemcisi uygulamalıdır
• Android hata ayıklama köprüsünü USB üzerinden uygulamalıdır (Bölüm 7'de açıklandığı gibi)
• Çıkarılabilir/medya depolama için bir USB kütle depolama istemcisi uygulamalıdır.
cihaz
• Cihaz tarafında mikro USB form faktörünü kullanmalıdır
• USB kütle depolama spesifikasyonu için destek uygulamalıdır (böylece çıkarılabilir
veya cihazda sabit depolama alanına bir ana bilgisayardan erişilebilir)
• Cihaz tarafında standart olmayan bir bağlantı noktası içerebilir, ancak eğer öyleyse, bir kablo ile gönderilmelidir.
Özel Pinout'u standart USB-A bağlantı noktasına bağlamak
8.7. Gezinme tuşları
Ev, menü ve arka işlevler Android navigasyon paradigması için gereklidir. Cihaz
Uygulamalar, uygulamadan bağımsız olarak bu işlevleri kullanıcı için her zaman kullanılabilir hale getirmelidir
durum. Bu işlevler özel düğmeler aracılığıyla uygulanmalıdır. Uygulanabilirler
Yazılım, jestler, dokunmatik panel vb. Kullanma, ancak eğer öyleyse her zaman erişilebilir olmalı ve belirsiz olmalı veya
Mevcut uygulama görüntüleme alanına müdahale edin.
Aygıt uygulayıcıları ayrıca özel bir arama anahtarı sağlamalıdır. Cihaz uygulayıcıları da
Telefon görüşmeleri için gönder ve son anahtarlar sağlayın.
8.8. Wifi
Cihaz uygulamaları 802.11b ve 802.11g'yi desteklemeli ve 802.11a'yı destekleyebilir.
8.9. Kamera
Cihaz uygulamaları bir kamera içermelidir. Dahil kamera:
• En az 2 megapiksel çözünürlüğe sahip olmalıdır
• Kamerada donanım otomatik odaklı veya otomatik odaklı yazılım bulunmalıdır
Sürücü (Uygulama Yazılımına Şeffaf)
• Sabit o-odak veya EDOF (genişletilmiş alan derinliği) donanımına sahip olabilir
• Bir flaş içerebilir. Kamera bir flaş içeriyorsa, flaş lambası yanmamalı
Android.hardware.camera.previewCallback örneği bir kamera önizlemesine kaydedildi
yüzey.
Cihaz uygulamaları, kamerayla ilgili API'ler için aşağıdaki davranışları uygulamalıdır
[Kaynaklar, 27] :
1. Bir uygulama asla Android.Hardware.Camera.Parameters.SetPreviewFormat (Int)
Önizleme verileri için cihazın Android.Hardware.YCBCR_420_SP'yi kullanması gerekir.
uygulama geri çağrılarına sağlanır.
2. Bir uygulama bir android.hardware.camera.previewcallback örneği ve
Önizleme biçimi ycbcr_420_sp olduğunda, sistem onpreviewframe () yöntemini çağırıyor
OnPreviewFrame () içine aktarılan bayt [] 'daki veriler ayrıca NV21 kodlama formatında olmalıdır.
(Bu, 7K donanım ailesi tarafından doğal olarak kullanılan biçimdir.) Yani, NV21 varsayılan olmalıdır.
8.9.1. Otofocus olmayan kameralar
Bir cihazın otomatik odak kamerası yoksa, cihaz uygulayıcının ek gereksinimleri karşılaması gerekir.
bu bölüm. Cihaz uygulamaları, Android 1.6'da bulunan tam kamera API'sını uygulamalıdır.
Gerçek kamera donanımının yeteneklerine bakılmaksızın, SDK belgeleri makul bir şekilde.
Android 1.6 için, kamerada otomatik odaklı yoksa, cihaz uygulaması aşağıdakilere uymalıdır:
1. Sistem, "Ro.workaround.noautofocus" adlı salt okunur bir sistem özelliği içermelidir.
"1" değeri ile. Bu değerin, Android Market gibi uygulamalar tarafından kullanılması amaçlanmıştır.
Cihaz yeteneklerini seçici olarak tanımlayın ve Android'in gelecekteki bir sürümünde değiştirilecek.
sağlam API.
2. Bir uygulama android.hardware.camera.autofocus () çağırıyorsa, sistemin araması gerekir.
OnAutofocus () Kayıtlı herhangi bir
Android.hardware.camera.Autofocuscallback örnekleri, aslında odaklama olmasa da
olmuş. Bu, bir otomatik odaklama için sonsuza dek bekleyerek mevcut uygulamaların kırılmasını önlemek için
Asla gelmeyecek geri arama.
3. Autofocuscallback.onautofocus () yöntemine yapılan çağrı, sürücü tarafından tetiklenmelidir veya
Ana çerçeve looper iplikte yeni bir etkinlikte çerçeve. Yani kamera.autofocus ()
Bu Android'i ihlal ettiği için doğrudan autofocuscallback.onautofocus () aramamalı
Çerçeve iş parçacığı modeli ve uygulamaları kıracak.
8.10. İvmeölçer
Cihaz uygulamaları 3 eksenli bir ivmeölçer içermeli ve şu adresten etkinlikler sunabilmelidir.
En az 50 Hz. İvmeölçer tarafından kullanılan koordinat sistemi, Android sensörüne uymalıdır
Koordinat sistemi Android API'larında ayrıntılı olarak açıklandığı gibi [Resources , 28].
8.11. Pusula
Cihaz uygulamaları 3 eksenli bir pusula içermeli ve en azından etkinlikler sunabilmelidir.
10 Hz. Pusula tarafından kullanılan koordinat sistemi, Android sensörü koordinatına uymalıdır
Android API'sinde tanımlandığı gibi sistem [Resources , 28].
8.12. Küresel Konumlama Sistemi
Cihaz uygulamaları bir GPS içermeli ve bir çeşit "Destekli GPS" içermelidir.
GPS kilitleme süresini en aza indirmek için teknik.
8.13. Telefon
Cihaz Uygulamaları:
• GSM veya CDMA telefonu içermelidir
• Android SDK belgelerinde ayrıntılı olarak uygun API'leri uygulamalıdır.
geliştirici.android.com
Bu gereksinimin telefon dışı cihazların Android 1.6 ile uyumlu olmadığını; Android
1.6 Cihazlar telefon donanımı içermelidir. Telefon dışı bilgi için lütfen Ek C'ye bakın
cihazlar.
8.14. Ses seviyesi kontrolleri
Android uyumlu cihazlar, kullanıcının artırmasını ve azaltmasını sağlayacak bir mekanizma içermelidir.
ses hacmi. Cihaz uygulamaları bu işlevleri kullanıcı için her zaman kullanılabilir hale getirmelidir,
Uygulama durumundan bağımsız olarak. Bu işlevler fiziksel donanım anahtarları kullanılarak uygulanabilir,
Yazılım, jestler, dokunmatik panel vb., Ancak her zaman erişilebilir olmalı ve belirsiz veya müdahale etmemelidir.
Kullanılabilir uygulama görüntüleme alanı ile (yukarıdaki ekrana bakın).
Bu düğmeler kullanıldığında, ilgili anahtar olaylar oluşturulmalı ve
ön plan uygulaması. Etkinlik uygulama tarafından durdurulmaz ve batırılırsa, cihaz
Uygulama, olayı bir sistem hacmi kontrolü olarak ele almalıdır.
9. Performans uyumluluğu
Android uyumluluk programının hedeflerinden biri,
tüketiciler. Uyumlu uygulamalar, yalnızca uygulamaların doğru bir şekilde çalışmasını sağlamalıdır.
cihaz, ancak bunu makul performans ve genel olarak iyi kullanıcı deneyimi ile yapıyorlar.
Cihaz uygulamaları, Android 1.6 uyumlu bir cihazın temel performans metriklerini karşılamalıdır,
Aşağıdaki tabloda olduğu gibi:
Metrik
Performans eşiği
Yorumlar
Bu CTS tarafından test edilir.
Aşağıdaki uygulamalar
Fırlatma süresi toplam süresi olarak ölçülür
içinde lansman yapmalı
tam yükleme için varsayılan etkinlik
Başvuru
belirli zaman.
başlatmak için gereken süre dahil uygulama
Fırlatma süresi
Tarayıcı: 1300ms'den az
Linux işlemi, Android paketini
MMS/SMS: 700m'den az
Dalvik VM ve OnCreate'yi arayın.
AlarmClock: 650ms'den az
Birden fazla uygulama olacak
Bu CTS tarafından test edilir.
başlatıldı. Yeniden başlatıyor
Eşzamanlı ilk uygulama
Uygulamalar
Tamamen daha az alarak
Orijinal lansman süresi.
10. Güvenlik Modeli Uyumluluğu
Cihaz uygulamaları, Android platform güvenliği ile tutarlı bir güvenlik modeli uygulamalıdır
API'larda [Kaynaklar, 29] Güvenlik ve İzinler Referans Belgesi'nde tanımlandığı gibi model
Android Geliştirici Belgeleri. Cihaz uygulamaları, kendi imzalı kurulumunu desteklemelidir
Herhangi bir üçüncü taraftan/yetkililerden herhangi bir ek izin/sertifika gerektirmeden başvurular.
Özellikle, uyumlu cihazlar aşağıdaki güvenlik mekanizmalarını desteklemelidir:
10.1. İzinler
Cihaz uygulamaları, Android'de tanımlandığı gibi Android İzin Modelini desteklemelidir.
Geliştirici Belgeleri [ Kaynaklar , 9]. Özellikle, uygulamalar her izni zorunlu kılmalıdır
SDK belgesinde açıklandığı gibi tanımlanır; Hiçbir izin atlanamaz, değiştirilemez veya göz ardı edilemez.
Yeni izin kimliği dizelerinin içinde olmaması koşuluyla, uygulamalar ek izinler ekleyebilir.
Android.* Ad alanı.
10.2. Kullanıcı ve Süreç Tecremi
Cihaz uygulamaları, her uygulamanın olduğu Android Uygulama Sandbox modelini desteklemelidir.
benzersiz bir Unix tarzı UID ve ayrı bir işlemde çalışır.
Cihaz uygulamaları, aynı Linux kullanıcı kimliği ile birden fazla uygulamayı çalıştırmayı desteklemelidir.
Güvenlik ve izinlerde tanımlandığı gibi, uygulamaların uygun şekilde imzalandığını ve oluşturulduğunu
Referans [ Kaynaklar , 29].
10.3. Dosya sistemi izinleri
Cihaz uygulamaları, AS'de tanımlanan Android Dosya Dosya Erişim İzinleri Modelini desteklemelidir.
Güvenlik ve İzin Referansında tanımlanmıştır [Kaynaklar , 29].
11. Uyumluluk Testi Suite
Cihaz uygulamaları Android Uyumluluk Testi Suite'i (CTS) [ Kaynaklar, 3] Mevcut
Android açık kaynak projesinden, cihazdaki son gönderim yazılımını kullanarak. Bunlara ek olarak,
Cihaz uygulayıcıları, Android açık kaynak ağacında referans uygulamasını kullanmalıdır.
mümkün olduğunca ve CT'lerde ve herhangi bir
Referans kaynak kodunun parçalarının yeniden uygulanması.
CTS gerçek bir cihazda çalıştırılacak şekilde tasarlanmıştır. Herhangi bir yazılım gibi, CTS de hatalar içerebilir.
CTS, bu uyumluluk tanımından bağımsız olarak verilecek ve
CTS Android 1.6 için yayınlanabilir. Ancak, bu tür sürümler yalnızca CTS'deki davranışsal hataları düzeltir
Testler ve belirli bir platform sürümü için yeni testler, davranışlar veya API'lar getirmeyecektir.
12. Bize Ulaşın
İle ilgili açıklamalar için Compatibility@android.com adresinden Android uyumluluk ekibiyle iletişime geçebilirsiniz.
Bu uyum tanımı ve bu tanım hakkında geri bildirim sağlamak.
Ek A: Gerekli uygulama niyetleri
Not: Bu liste geçicidir ve gelecekte güncellenecektir.
Uygulama eylemleri
MIME Türleri Şemaları
(hiçbiri)
Metin/Düz
http
metin/html
Tarayıcı
android.intent.action.VIEW
https
uygulama/xhtml+xml
başvuru/
vnd.wap.xhtml+xml
(hiçbiri)
Android.intent.action.web_search
http
(hiçbiri)
https
android.media.action.IMAGE_CAPTURE
android.media.action.still_image_camera
Kamera
Android.media.action.video_camera
Android.media.action.video_capture
vnd.android.cursor.dir/
android.intent.action.VIEW
görüntü
Android.intent.action.get_content
vnd.android.cursor.dir/
android.intent.action.pick
video
Android.intent.action.attach_data
Resim/*
video/*
android.intent.action.VIEW
RTSP
video/mp4
Video/3GP
android.intent.action.VIEW
http
Video/3gpp
Video/3gpp2
android.intent.action.dial
Telefon /
android.intent.action.VIEW
tel
Kişiler
android.intent.action.call
android.intent.action.dial
vnd.android.cursor.dir/
android.intent.action.VIEW
kişi
vnd.android.cursor.dir/
kişi
vnd.android.cursor.dir/
android.intent.action.pick
telefon
vnd.android.cursor.dir/
posta adresi
vnd.android.cursor.item/
kişi
vnd.android.cursor.item/
Android.intent.action.get_content
telefon
vnd.android.cursor.item/
posta adresi
Metin/Düz
E-posta
android.intent.action.send
Resim/*
video/*
android.intent.action.VIEW
posta yoluyla
Android.intent.action.sendto
SMS
android.intent.action.VIEW
smsto
Sms / mms android.intent.action.sendto
mms
mmsto
ses/*
Uygulama/OGG
Müzik
android.intent.action.VIEW
dosya
Uygulama/X-OGG
Uygulama/iTunes
ses/mp3
Ses/X-MP3
android.intent.action.VIEW
http
Ses/MPEG
Ses/MP4
ses/mp4a-latm
vnd.android.cursor.dir/
sanatçı
vnd.android.cursor.dir/
albüm
vnd.android.cursor.dir/
android.intent.action.pick
Şimdi oynuyor
vnd.android.cursor.dir/
izlemek
nd.android.cursor.dir/
çalma listesi
vnd.android.cursor.dir/
video
medya/*
ses/*
Android.intent.action.get_content
Uygulama/OGG
Uygulama/X-OGG
video/*
içerik
Paket
android.intent.action.VIEW
dosya
Kurulumcu
paket
dosya
Android.intent.action.package_install
http
https
Android.intent.action.all_apps
Android.settings.settings
Android.settings.wireless_settings
android.settings.airplane_mode_settings
Android.settings.wifi_settings
Android.settings.apn_settings
Android.settings.bluetooth_settings
Android.settings.date_settings
Android.settings.locale_settings
Ayarlar
Android.settings.input_method_settings
com.android.settings.sound_settings
com.android.settings.display_settings
Android.settings.security_setting
Android.settings.location_source_settings
Android.settings.internal_storage_settings
Android.settings.memory_card_settings
Android.intent.action.set_wallpaper
Aramak
android.intent.action.search
sorgu
Android.intent.action.search_long_press
Ses
Android.intent.action.voice_command
Kişiler Yönetimi
Niyet eylemi
Tanım
Kullanıcının seçmesini sağlayan bir etkinlik başlatır
Att_image
bir görüntü eklemek için bir kişi.
Kullanılmış
Ekstra_create_description
show_or_create_contact ile
Olmak için kesin bir açıklama belirtin
Kullanıcı isterken gösterilen
yeni bir iletişim oluşturmak.
Kullanılmış
show_or_create_contact ile
Ekstra_force_create
HAYIR ise yeni bir iletişim kurma kuvveti
eşleşen temas bulundu.
Bu, bir
Search_suggestion_clicked
Arama önerisi tıklanır.
Bu, bir
Search_suggestion_create_contact_clicked arama önerisi oluşturmak için
İletişim tıklanır.
Bu, bir
Search_suggestion_dial_number_clicked
Bir numarayı aramak için arama önerisi
tıklanır.
Posta ile bir veri URI girişi alır:
Show_or_create_contact
veya Tel: Şema.
Ek B: Gerekli yayın niyetleri Not: Bu liste geçicidir ve
gelecekte güncellendi.
Niyet eylemi
Tanım
Yayın Eylemi: Bu, bir kez,
Action_boot_completed
Sistem önyüklemeyi bitirdi.
Yayın Eylemi: Bu bir kez yayınlanır,
Action_call_button
Çağrı alınır.
Yayın Eylemi: "Kamera düğmesi"
Action_camera_button
basıldı.
Yayın Eylemi: Mevcut
Action_configuration_changed
cihaz yapılandırması (oryantasyon, yerel ayar vb.)
değişti.
Action_date_changed
Yayın Eylemi: Tarih değişti.
Yayın Eylemi: Düşük Bellek Durumunu Gösterir
Action_device_storage_low
cihazda
Yayın Eylemi: Düşük Bellek Durumunu Gösterir
Action_device_storage_ok
Cihazda artık yok
Yayın Eylemi: Kablolu kulaklık takılı veya
Action_headset_plug
fişi çekilmiş.
Yayın Eylemi: Bir giriş yöntemi
Action_input_method_changed
değişti.
Yayın Eylemi: Harici Medya kaldırıldı
Action_media_bad_removal
SD kart yuvasından, ancak Mount Point
monte edilmemiş.
Yayın Eylemi: "Medya düğmesi"
Action_media_button
basıldı.
Yayın Eylemi: Harici Medya mevcut ve
Montaj noktasına giden yolu disk kontrol etmek
Action_media_checking
Kontrol medyası
Intent.Mdata Alanı.
Yayın Eylemi: Kullanıcı arzuyu ifade etti
Action_media_eject
Harici depolama ortamını kaldırın.
Yayın Eylemi: Harici medya mevcut ve
Action_media_mounted
montaj noktasına monte edilmiştir.
Yayın Eylemi: Harici Medya mevcuttur, ancak
uyumsuz bir FS kullanarak (veya boş)
Action_media_nofs
kontrol ortamının montaj noktası
Niyette yer almaktadır.
Yayın Eylemi: Harici Medya
Action_media_removed
kaldırıldı.
Yayın Eylemi: Medya Tarayıcısı bitirdi
Action_media_scanner_finished
bir dizini taramak.
Yayın Eylemi: Medya tarayıcısından isteyin
Action_media_scanner_scan_file
Bir dosya tarayın ve medya veritabanına ekleyin.
Yayın Eylemi: Medya Tarayıcısı başladı
Action_media_scanner_started
bir dizini taramak.
Yayın Eylemi: Harici medya monte edilmedi
Action_media_shared
Çünkü USB kütle depolama yoluyla paylaşılıyor.
Yayın Eylemi: Harici Medya mevcut ama
Action_media_unmountable
monte edilemez.
Yayın Eylemi: Harici Medya mevcuttur, ancak
Action_media_unmounted
montaj noktasına monte edilmemiş.
Yayın Eylemi: Giden bir çağrı olmak üzere
Action_new_outing_call
yerleştirildi.
Yayın Eylemi: Yeni bir uygulama paketi var
Action_package_added
cihaza kuruldu.
Yayın Eylemi: Mevcut bir uygulama paketi
Action_package_changed
değiştirildi (örneğin bir bileşen
etkin veya devre dışı.
Yayın Eylemi: Kullanıcı verileri temizledi.
bir paket. Bundan önce olmalı
Action_package_restarted, bundan sonra
Action_package_data_cleared
Tüm kalıcı verileri silinir ve bu
Yayın gönderildi. Temizlenmiş paketi unutmayın
bu yayını almaz . Veriler içeriyor
Paketin adı.
Yayın Eylemi: Mevcut bir uygulama paketi
cihazdan kaldırıldı. Veri
Action_package_removed
Paketin adını içerir. Paket
yükleniyor bu amacı almaz .
Yayın Eylemi: Bir Uygulamanın Yeni Bir Sürümü
Action_package_Repled
Paket kuruldu, mevcut bir
daha önce yüklenmiş sürüm.
Yayın Eylemi: Kullanıcı bir
Paket ve tüm süreçleri öldürüldü.
Onunla ilişkili tüm çalışma zamanı durumu (süreçler,
Action_package_restarted
alarmlar, bildirimler vb.) Kaldırılmalıdır. Not
yeniden başlatılan paketin bunu almadığı
yayın. Veriler adını içerir:
paket.
Yayın Eylemi: Bazı İçerik Sağlayıcılar
Yeni yayınladıkları ad alanlarının bölümleri
Action_provider_changed
Kullanıcının özellikle olabileceği olaylar veya öğeler
meraklı.
Action_screen_off
Yayın Eylemi: Ekran kapatıldıktan sonra gönderildi.
Action_screen_on
Yayın Eylemi: Ekran açıldıktan sonra gönderildi.
Yayın Eylemi: Bir Kullanıcı Kimliği kaldırıldı
Action_uid_removed
sistemden.
Yayın Eylemi: Cihaz USB'ye girdi
Action_ums_connected
Kütle depolama modu.
Yayın Eylemi: Cihaz USB'den çıktı
Action_ums_disconnected
Kütle depolama modu.
Yayın Eylemi: Kullanıcı mevcut olduğunda gönderildi
Action_user_present
Cihaz uyandıktan sonra (örneğin anahtar muhafazası
gitmiş).
Yayın Eylemi: Mevcut Sistem Duvar Kağıdı
Action_wallpaper_changed
değişti.
Action_time_changed
Yayın Eylemi: Zaman belirlendi.
Action_time_tick
Yayın Eylemi: Mevcut zaman değişti.
Action_timezone_changed
Yayın Eylemi: Zaman dilimi değişti.
Yayın Eylemi: Şarj durumu veya şarj
Action_battery_changed
Pil seviyesi değişti.
Yayın Eylemi: Düşük pil durumunu gösterir
Action_battery_low
cihazda. Bu yayın,
"Düşük Pil Uyarısı" Sistem iletişim kutusu.
Yayın Eylemi: Pilin artık iyi olduğunu gösterir
Düşük olduktan sonra. Bu gönderilecek
Action_battery_okay
Action_battery_low'dan sonra pil
iyi bir duruma geri döndü.
Ağ Durumu
Niyet eylemi
Tanım
Yayın Niyeti Eylemi
Network_state_changed_action
Wi-Fi bağlantısının durumu değişti.
Yayın Niyeti Eylemi
RSSI_CHANGED_ACTION
RSSI (sinyal gücü) değişti.
Bir yayın niyet eylemi
Supplicant_state_changed_action
Supplict ile bağlantı
yerleşik veya kayıp.
Wi-Fi'yi gösteren yayın niyeti eylemi
Wifi_state_changed_action
etkinleştirildi, devre dışı bırakıldı, etkinleştirildi,
devre dışı bırakma veya bilinmeyen.
Yapılandırılmış ağların ağ kimlikleri
Network_ids_changed_action
değişebilirdi.
Yayın Niyeti Eylemi
Action_background_data_setting_changed arka plan veri kullanımı için ayar
Değişmiş değerler.
Bir değişiklik olduğunu gösteren yayın niyeti
Connectivity_action
Ağ bağlantısı meydana geldi.
Yayın Eylemi: Kullanıcı
Action_airplane_mode_changed
Uçak moduna veya dışına telefon edin.
Ek C: Gelecekteki Hususlar Bu ek, bu Android'in belirli bölümlerini açıklığa kavuşturuyor
1.6 Uyumluluk Tanımı ve bazı durumlarda, bir
Android platformunun gelecekteki sürümü. Bu ek sadece bilgi ve planlama amaçlıdır ve
Android 1.6 için uyumluluk tanımının bir parçası değildir.
1. Telefonsuz cihazlar
Android 1.6 sadece telefonlar için tasarlanmıştır; Telefon işlevselliği isteğe bağlı değildir. Gelecek Sürümler
Android platformunun telefonu isteğe bağlı hale getirmesi bekleniyor (ve böylece telefon dışı Android'e izin veriyor
cihazlar), ancak sadece telefonlar Android 1.6 ile uyumludur.
2. Bluetooth uyumluluğu
Android 1.6'nın Android sürümü, Bluetooth API'lerini desteklemiyor, bu nedenle uyumluluk perspektifinden
Bluetooth, platformun bu sürümü için herhangi bir husus getirmez. Ancak, gelecekteki bir versiyon
Android Bluetooth API'leri tanıtacak. Bu noktada, Bluetooth'u desteklemek zorunlu olacak
uyumluluk.
Sonuç olarak, Android 1.6 cihazların Bluetooth'u içermesini şiddetle tavsiye ediyoruz, böylece bunlar
Bluetooth gerektiren Android'in gelecekteki sürümleriyle uyumlu.
3. Gerekli donanım bileşenleri
Bölüm 8'deki tüm donanım bileşenleri (WiFi, manyetometre/pusula, ivmeölçer, vb.)
gerekli ve atlanamayabilir. Android'in gelecekteki versiyonlarının bazılarını (ancak hepsi değil) yapması bekleniyor.
Bu bileşenler İsteğe bağlı, üçüncü taraf geliştiricilerin bunları ele alması için karşılık gelen araçlarla birlikte
değişiklikler.
4. Örnek uygulamalar
Android'in gelecekteki bir sürümü için uyumluluk tanımı belgesi daha kapsamlı ve
Yukarıdaki Bölüm 4'te listelenenlerden daha temsili uygulamalar listesi. Android 1.6 için,
Bölüm 4'te listelenen uygulamalar test edilmelidir.
5. Dokunmatik Ekranlar
Uyumluluk tanımının gelecekteki sürümleri, cihazların dokunmatik ekranları atlamasına izin verebilir veya olmayabilir.
Ancak, şu anda Android Framework uygulamasının çoğu, bir
dokunmatik ekran; Bir dokunmatik ekranı ihmal etmek, mevcut tüm üçüncü taraf Android uygulamalarını önemli ölçüde kıracaktır,
Bu nedenle Android 1.6'da uyumluluk için bir dokunmatik ekran gereklidir.
6. Performans
CTS'nin gelecekteki sürümleri, aşağıdakilerin CPU kullanımını ve performansını da ölçecektir.
Bir uygulamanın bileşenleri:
• 2D grafikler
• 3D grafikler
• Video oynatma
• Ses oynatma
• Bluetooth A2DP oynatma
Belge Anahattı
- 1. Giriş
- 2. Kaynaklar
- 3. Yazılım
- 4. Referans yazılım uyumluluğu
- 5. Uygulama ambalaj uyumluluğu
- 6. Multimedya uyumluluğu
- 7. Geliştirici Araç Uyumluluğu
- 8. Donanım uyumluluğu
- 9. Performans uyumluluğu
- 10. Güvenlik Modeli Uyumluluğu
- 11. Uyumluluk Testi Suite
- 12. Bize Ulaşın
- Ek A: Gerekli uygulama niyetleri