Android 2.3.3 API'leri

API Düzeyi: 10

Android 2.3.3 (GINGERBREAD_MR1), Android 2.3 platformuna çeşitli iyileştirmeler ve API'ler ekleyen küçük bir özellik sürümüdür.

Android 2.3.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 2.3.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, yeni özellikler ve çerçeve API'sinde önceki sürümden beri yapılan değişiklikler dahil olmak üzere 2.3.3 sürümündeki geliştiriciler için sunulan yeniliklere teknik bir genel bakış sunulmaktadır.

Near Field Communication (NFC)

Android 2.3.3, uygulamaların daha fazla etiket türüyle yeni yöntemler kullanarak etkileşime girmesine olanak tanımak için NFC için iyileştirilmiş ve genişletilmiş destek sağlar.

Bu yeni ve kapsamlı API'ler, uygulamaların çok daha çeşitli standart etiket teknolojilerine okuma ve yazma erişimi sağlar. Örneğin:

  • NFC-A (ISO 14443-3A)
  • NFC-B (ISO 14443-3B)
  • NFC-F (JIS 6319-4)
  • NFC-V (ISO 15693)
  • ISO-DEP (ISO 14443-4)
  • MIFARE Klasik
  • MIFARE Ultra Hafif
  • NFC Forumu NDEF etiketleri

Platform ayrıca sınırlı bir eşler arası iletişim protokolü ve API sağlar. Ön Plan Etkinlikleri, bağlandıklarında diğer NFC cihazlarına aktarılacak bir NDEF mesajını kaydetmek için API'yi kullanabilir.

Gelişmiş etiket gönderme özelliği artık uygulamaların, bir NFC etiketi keşfedildiğinde nasıl ve ne zaman başlatılacakları üzerinde daha fazla kontrol sahibi olmalarını sağlıyor. Önceden platform, ilgilenen uygulamalara bir etiketin keşfedildiğini bildirmek için tek adımlı bir intent dağıtımı kullanıyordu. Platform artık, ön plan uygulamasının bir etiket etkinliğini başka uygulamalara (android.nfc.NfcAdapter.enableForegroundDispatch()) iletilmeden önce kontrol etmesini sağlayan dört adımlı bir süreç kullanıyor. Yeni dağıtım işlemi, uygulamaların iki yeni amaç işlemini (android.nfc.action.NDEF_DISCOVERED ve android.nfc.action.TECH_DISCOVERED) temel alarak uygulamaların belirli etiket içeriklerini ve etiket teknolojilerini dinlemesine de olanak tanır.

NFC API, android.nfc ve android.nfc.tech paketlerinde bulunur. Önemli sınıflar şunlardır:

  • NfcAdapter, cihazdaki NFC donanımını temsil eder.
  • NdefMessage, bir NDEF veri mesajını temsil eder. Veri taşıyan "kayıtların", cihazlar ve etiketler arasında iletildiği standart biçimdir. Farklı türlerde birçok NDEF kaydına sahip belirli bir NDEF mesajı. Uygulamalar bu mesajları NDEF_DISCOVERED, TECH_DISCOVERED veya TAG_DISCOVERED Intents'ten alabilir.
  • NdefRecord, paylaşılan veri türünü açıklayan ve verileri taşıyan bir NdefMessage içinde sunulur.
  • Tag, cihaz tarafından taranan bir etiketi temsil eder. Temel etiket teknolojisine bağlı olarak birden fazla etiket türü desteklenir.
  • TagTechnology arayüzü, uygulamaların etikette bulunan teknolojilere dayalı olarak etiket özelliklerine ve G/Ç işlemlerine erişmesini sağlar. Android 2.3.3'te desteklenen etiket teknolojilerinin tam listesi için android.nfc.tech adresini inceleyin.

NFC iletişimi, cihaz donanımındaki kablosuz teknolojiye dayanır ve tüm Android cihazlarda yoktur. NFC'yi desteklemeyen Android cihazlar getDefaultAdapter(Context) çağrıldığında boş nesne döndürür ve context.getPackageManager().hasSystemFeature(PackageManager.FEATURE_NFC), false değerini döndürür. Ancak temel donanım desteğinden bağımsız olarak NFC API her zaman mevcuttur.

NFC API'yi kullanmak için uygulamaların, manifest dosyalarında <uses-permission android:name="android.permission.NFC"> öğesini tanımlayarak kullanıcıdan izin istemesi gerekir.

Ayrıca geliştiriciler, Google Play'de uygulamalarının, cihazları NFC'yi desteklemeyen kullanıcılar tarafından bulunamayacağı şekilde filtreleme isteğinde bulunabilirler. Filtreleme isteğinde bulunmak için <uses-feature android:name="android.hardware.nfc" android:required="true"> öğesini uygulamanın manifest dosyasına ekleyin.

Daha fazla bilgi için NFC geliştirici kılavuzunu okuyun.

Bluetooth

Android 2.3.3, güvenli olmayan Bluetooth yuva bağlantıları için platform ve API desteği sunmaktadır. Bu sayede uygulamalar, kimlik doğrulama için kullanıcı arayüzü sunmayabilecek basit cihazlarla iletişim kurabilir. Daha fazla bilgi için createInsecureRfcommSocketToServiceRecord(java.util.UUID) ve listenUsingInsecureRfcommWithServiceRecord(java.lang.String, java.util.UUID) sayfalarını inceleyin.

Grafik

  • Yeni bir BitmapRegionDecoder sınıfı, uygulamaların resimdeki bir dikdörtgenin kodunu çözmesini sağlar. Bu API, özellikle orijinal resim büyük olduğunda ve uygulama resmin bazı bölümlerine ihtiyaç duyduğunda kullanışlıdır.
  • BitmapFactory.Options içindeki yeni bir inPreferQualityOverSpeed alanı, uygulamaların JPEG kod çözme işleminde daha doğru ancak biraz daha yavaş bir IDCT yöntemi kullanmasına olanak tanır. Bu da yeniden oluşturulan resmin kalitesini artırır.

Medya çerçevesi

Konuşma tanıma

Speech-cognition API, sesli arama sonuçlarını yeni yöntemlerle yönetmenize olanak tanıyan yeni sabit değerler içerir. Konuşma tanımanın normal kullanımı için yeni sabit değerler gerekli olmasa da, uygulamanızda sesli arama sonuçlarının farklı bir görünümünü sunmak için bunları kullanabilirsiniz. Daha fazla bilgi için RecognizerResultsIntent sayfasına bakın.

API Düzeyi

Android 2.3.3 platformu, çerçeve API'sinin güncellenmiş bir sürümünü sunar. Android 2.3.3 API'ye, sistemin kendisinde depolanan bir tam sayı tanımlayıcı (10) atanır. "API Düzeyi" adı verilen bu tanımlayıcı, sistemin bir uygulamanın uygulamayı yüklemeden önce sistemle uyumlu olup olmadığını doğru şekilde belirlemesine olanak tanır.

Uygulamanızda Android 2.3.3'te sunulan API'ları kullanmak için uygulamayı Android 2.3.3 SDK platformunda sağlanan Android kitaplığına göre derlemeniz gerekir. İhtiyaçlarınıza bağlı olarak, uygulamanın manifest dosyasındaki <uses-sdk> öğesine bir android:minSdkVersion="10" özelliği eklemeniz de gerekebilir. Uygulamanız yalnızca Android 2.3 ve sonraki sürümlerde çalışacak şekilde tasarlandıysa özelliğin bildirilmesi, uygulamanın platformun önceki sürümlerine yüklenmesini engeller.

Daha fazla bilgi için API Düzeyi nedir?