Android 4.0.3 API'leri

API Düzeyi: 15

Android 4.0.3 (ICE_CREAM_SANDWICH_MR1), Android 4.0 (ICE_CREAM_SANDWICH) platform ailesinin artımlı bir sürümüdür. Bu sürüm, kullanıcılar ve geliştiriciler için yeni özellikler, API değişiklikleri ve çeşitli hata düzeltmeleri içerir.

Android 4.0.3 platformu, geliştiriciler açısından Android SDK'sı için indirilebilir bir bileşen olarak mevcuttur. İndirilebilir platformda bir Android kitaplığı ve sistem görüntüsünün yanı sıra bir dizi emülatör görünümü ve daha fazlası yer alır. Android 4.0.3 sürümünü geliştirmeye veya test etmeye başlamak için Android SDK Yöneticisi'ni kullanarak platformu SDK'nıza indirin.

API'ye Genel Bakış

Aşağıdaki bölümlerde Android 4.0.3'teki yeni API'lara ilişkin teknik bir genel bakış sunulmaktadır.

Kişi Sağlayıcıda Social Stream API

Durum güncellemeleri ve check-in'ler gibi sosyal akış verilerini kullanan uygulamalar artık bu verileri kullanıcının kişileriyle senkronize ederek akıştaki öğeler ve her biri için fotoğraflar sağlayabilir.

Tek bir kişinin sosyal akışını içeren veritabanı tablosu, akış öğelerinin ait olduğu ContactsContract.RawContacts dizininin içine yerleştirilmiş URI'sı olan android.provider.ContactsContract.StreamItems öğesi tarafından tanımlanır. Her sosyal akış tablosu, kaynağı temsil eden bir simge (avatar), öğe için bir etiket, birincil metin içeriği, öğeyle ilgili yorumlar (diğer kullanıcıların yanıtları gibi) ve daha fazlası gibi her bir akış öğesiyle ilgili meta veriler için birkaç sütun içerir. Bir akışla ilişkili fotoğraflar, android.provider.ContactsContract.StreamItems Uri'nin alt dizini olarak bulunan ve android.provider.ContactsContract.StreamItemPhotos" tarafından tanımlanan başka bir tabloda depolanır.

Daha fazla bilgi için android.provider.ContactsContract.StreamItems ve android.provider.ContactsContract.StreamItemPhotos sayfalarına göz atın.

Bir kişinin sosyal akış öğelerini okumak veya yazmak için uygulamanın, manifest dosyalarında <uses-permission android:name="android.permission.READ_SOCIAL_STREAM"> ve/veya <uses-permission android:name="android.permission.WRITE_SOCIAL_STREAM"> tanımlayarak kullanıcıdan izin istemesi gerekir.

Takvim Sağlayıcısı

Ana ekran widget'ları

Android 4.0'dan itibaren ana ekran widget'larının kendi dolgularını içermemesi gerekir. Bunun yerine, sistem artık geçerli ekranın özelliklerine göre her widget için otomatik olarak dolgu ekliyor. Bu, widget'ların bir ızgarada daha tek tip, tutarlı bir şekilde sunulmasını sağlar. Ana ekran widget'ları barındıran uygulamalara yardımcı olmak için platform, yeni bir getDefaultPaddingForWidget() yöntemi sunuyor. Uygulamalar, sistem tanımlı dolguyu almak ve widget'a ayrılacak hücre sayısını hesaplarken bunu hesaba katmak için bu yöntemi çağırabilir.

Yazım denetimi

  • Yazım denetleyici hizmetlerine erişen uygulamalar için yeni cancel() yöntemi, bir oturumda beklemede olan ve çalıştırılmakta olan yazım denetleyici görevlerini iptal eder.
  • Yazım denetleyici hizmetleri için yeni bir öneri işareti (RESULT_ATTR_HAS_RECOMMENDED_SUGGESTIONS), hizmetlerin yüksek güven düzeyine sahip önerileri düşük güven düzeyine sahip önerilerden ayırt etmesine olanak tanır. Örneğin, yazım denetleyicisi, kullanıcı sözlüğünde olmayan ancak olası önerileri olan bir giriş sözcüğünü işaretleyebilir ya da girilen bir kelime sözlükte yoksa ve daha az yararlı olabilecek önerileri varsa işareti ayarlamayabilir.

    Yazım denetleyicisine bağlı uygulamalar, giriş kelimelerinin yazım hatası olarak işaretlenip işaretlenmeyeceğini ve öneriler sunulup sunulmayacağını belirlemek için RESULT_ATTR_HAS_RECOMMENDED_SUGGESTIONS işaretini diğer öneri özellikleriyle ve getSuggestionsAttributes() ile getSuggestionsCount() yöntemleriyle birlikte kullanabilir.

  • Metin aralıkları için yeni bir FLAG_AUTO_CORRECTION stili, kullanıcının yazmakta olduğu/oluşturduğu bir kelimeye/metne otomatik düzeltmenin uygulanacağını belirtir. Bu tür öneriler, otomatik düzeltmenin yapıldığını göstermek için farklı bir şekilde oluşturulur.

Bluetooth

fetchUuidsWithSdp() ve getUuids() adlı yeni genel yöntemler, uygulamaların uzak bir cihaz tarafından desteklenen özellikleri (UUID'ler) belirlemesine olanak tanır. fetchUuidsWithSdp() durumunda, sistem, desteklenen UUID'leri almak için uzak cihazda hizmet keşfi gerçekleştirir, ardından sonucu ACTION_UUID amacı ile yayınlar.

Kullanıcı arayüzü araç seti

setUserVisibleHint() ve getUserVisibleHint() adlı yeni yöntemler, bir parçanın o anda kullanıcı tarafından görünür olup olmadığına dair ipucu ayarlamasına olanak tanır. Sistem, görünür parçalar için yükleyiciler çalıştırılıncaya kadar kullanıcı tarafından görülebilen parçaların başlangıcını erteler. Görünürlük ipucu, varsayılan olarak "true" (doğru) şeklindedir.

Grafik

Erişilebilirlik

  • RemoteViews istemcileri artık büyütülmüş düzendeki herhangi bir Görünümün içerik açıklamasını ayarlamak ve almak için setContentDescription() yöntemini kullanabilir.
  • getMaxScrollX(), getMaxScrollY(), setMaxScrollX() ve setMaxScrollY() yöntemleri, uygulamaların bir AccessibilityRecord nesnesi için maksimum kaydırma ofsetini alıp ayarlamasına izin verir.
  • Dokunma keşfi modu etkinleştirildiğinde yeni bir güvenli ayar, ACCESSIBILITY_SPEAK_PASSWORD kullanıcının, mikrofonlu kulaklık kullanılmadığında bile şifre alanlarına girilen metni IME'den okumasını isteyip istemediğini belirtir. Varsayılan olarak, mikrofonlu kulaklık kullanılmadığı sürece şifre metni söylenmez.

Metin-konuşma

  • Ağ TTS desteğini sorgulamak ve etkinleştirmek için getFeatures()yeni yöntemi ekler.
  • Motorların, konuşma sentezi hataları hakkında bildirim almak için kaydedebileceği yeni bir işleyici sınıfı (UtteranceProgressListener) ekler.

Veritabanı

  • Yeni bir CrossProcessCursorWrapper sınıfı, içerik sağlayıcıların çapraz işlemler sorgusu için sonuçları daha verimli bir şekilde döndürmesine olanak tanır. Yeni sınıf, uzaktan işlemlere gönderilecek imleçlerin sarmalanması için yararlı bir yapı taşıdır. Ayrıca normal Cursor nesnelerini şeffaf bir şekilde CrossProcessCursor nesnelerine dönüştürebilir.

    CrossProcessCursorWrapper sınıfı, uygulamaların içerik sağlayıcılarını uygularken karşılaştığı yaygın performans sorunlarını ve hataları düzeltir.

  • CursorWindow(java.lang.String) oluşturucu artık giriş olarak bir ad dizesi alır. Sistem artık yerel ve uzak imleç pencereleri arasında ayrım yapmadığından CursorWindow(boolean) desteği sonlandırıldı.

Etkinlikler

Cihazda yaygın olarak kullanılan uygulama türlerini (ör. CATEGORY_APP_BROWSER, CATEGORY_APP_CALENDAR, CATEGORY_APP_MAPS vb.) hedeflemek için yeni kategoriler ekler.

Kamera

İzinler

Yeni izinler şunlardır:

  • android.Manifest.permission#READ_SOCIAL_STREAM ve android.Manifest.permission#WRITE_SOCIAL_STREAM: Bir senkronizasyon bağdaştırıcısının, paylaşılan Kişi Sağlayıcı'daki bir kişiye sosyal akış verilerini okuması ve yazmasına izin verin.

Android 4.0.3'teki (API Düzeyi 15) tüm API değişikliklerinin ayrıntılı görünümü için API Farkları Raporu'na bakın.

API Düzeyi

Android 4.0.3 API'ye, sistemin kendisinde depolanan bir tam sayı tanımlayıcı (15) atanır. "API düzeyi" adı verilen bu tanımlayıcı, sistemin bir uygulamanın sistemle uyumlu olup olmadığını uygulamayı yüklemeden önce doğru şekilde belirlemesine olanak tanır.

Uygulamanızda Android 4.0.3'te sunulan API'leri kullanmak için uygulamayı API düzeyi 15 veya üstünü destekleyen bir Android platformuna göre derlemeniz gerekir. İhtiyaçlarınıza bağlı olarak <uses-sdk> öğesine bir android:minSdkVersion="15" özelliği eklemeniz de gerekebilir.

Daha fazla bilgi için API Düzeyleri belgesine bakın.