API Level: 10
Android 2.3.3 (GINGERBREAD_MR1
)
adalah rilis fitur kecil yang menambahkan beberapa peningkatan
dan API ke platform Android 2.3.
Untuk developer, platform Android 2.3.3 tersedia sebagai komponen yang dapat didownload untuk Android SDK. Platform yang dapat didownload mencakup library dan image sistem Android, serta serangkaian skin emulator dan lainnya. Untuk mulai mengembangkan atau menguji terhadap Android 2.3.3, gunakan Android SDK Manager untuk mendownload platform ke SDK Anda.
Ringkasan API
Bagian di bawah memberikan ringkasan teknis tentang yang baru bagi developer di 2.3.3, termasuk fitur baru dan perubahan pada API framework sejak versi sebelumnya.
Komunikasi Nirkabel Jarak Dekat (NFC)
Android 2.3.3 memberikan dukungan yang lebih baik dan diperluas untuk NFC, sehingga aplikasi dapat berinteraksi dengan lebih banyak jenis tag dengan cara baru.
Kumpulan API baru yang komprehensif memberi aplikasi akses baca dan tulis ke berbagai teknologi tag standar yang lebih luas, termasuk:
- 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 Classic
- MIFARE Ultralight
- Tag NDEF NFC Forum
Platform ini juga menyediakan API dan protokol komunikasi peer-to-peer yang terbatas. Aktivitas Latar Depan dapat menggunakan API untuk mendaftarkan pesan NDEF yang akan dikirim ke perangkat NFC lain saat terhubung.
Pengiriman tag lanjutan kini memberi aplikasi lebih banyak kontrol atas cara dan
waktu peluncurannya, saat tag NFC ditemukan. Sebelumnya, platform
menggunakan pengiriman intent satu langkah untuk memberi tahu aplikasi yang tertarik bahwa tag
telah ditemukan. Platform ini kini menggunakan proses empat langkah yang memungkinkan
aplikasi latar depan mengambil kendali atas peristiwa tag sebelum diteruskan ke
aplikasi lain (android.nfc.NfcAdapter.enableForegroundDispatch()
).
Proses pengiriman baru juga memungkinkan aplikasi memproses konten tag dan
teknologi tag tertentu, berdasarkan dua tindakan intent baru —
android.nfc.action.NDEF_DISCOVERED
dan
android.nfc.action.TECH_DISCOVERED
.
NFC API tersedia dalam paket android.nfc
dan
android.nfc.tech
. Class utamanya adalah:
NfcAdapter
, yang mewakili hardware NFC di perangkat.NdefMessage
, yang mewakili pesan data NDEF, format standar tempat "data" yang membawa data dikirim antara perangkat dan tag. Pesan NDEF berisi banyak data NDEF dari berbagai jenis. Aplikasi dapat menerima pesan ini dari IntentNDEF_DISCOVERED
,TECH_DISCOVERED
, atauTAG_DISCOVERED
.NdefRecord
, yang dikirim dalamNdefMessage
, yang menjelaskan jenis data yang dibagikan dan membawa data itu sendiri.Tag
, yang mewakili tag yang dipindai oleh perangkat. Beberapa jenis tag didukung, berdasarkan teknologi tag yang mendasarinya.TagTechnology
, antarmuka yang memberi aplikasi akses ke properti tag dan operasi I/O berdasarkan teknologi yang ada dalam tag. Untuk mengetahui daftar lengkap teknologi tag yang didukung di Android 2.3.3, lihatandroid.nfc.tech
.
Komunikasi NFC mengandalkan teknologi nirkabel di hardware perangkat, dan
tidak ada di semua perangkat Android. Perangkat Android yang tidak mendukung
NFC akan menampilkan objek null saat
getDefaultAdapter(Context)
dipanggil, dan
context.getPackageManager().hasSystemFeature(PackageManager.FEATURE_NFC)
akan menampilkan false
. Namun, NFC API selalu ada, terlepas dari
dukungan hardware yang mendasarinya.
Untuk menggunakan NFC API, aplikasi harus meminta izin dari pengguna dengan
mendeklarasikan <uses-permission
android:name="android.permission.NFC">
dalam file manifesnya.
Selain itu, developer dapat meminta pemfilteran di Google Play, sehingga
aplikasi mereka tidak dapat ditemukan oleh pengguna yang perangkatnya tidak mendukung
NFC. Untuk meminta pemfilteran, tambahkan
<uses-feature android:name="android.hardware.nfc"
android:required="true">
ke manifes aplikasi.
Untuk informasi selengkapnya, baca panduan developer NFC.
Bluetooth
Android 2.3.3 menambahkan dukungan platform dan API untuk koneksi socket
Bluetooth yang tidak aman. Hal ini memungkinkan aplikasi berkomunikasi dengan perangkat sederhana yang mungkin tidak
menawarkan UI untuk autentikasi. Lihat
createInsecureRfcommSocketToServiceRecord(java.util.UUID)
dan
listenUsingInsecureRfcommWithServiceRecord(java.lang.String, java.util.UUID)
untuk mengetahui informasi selengkapnya.
Grafik
- Class
BitmapRegionDecoder
baru memungkinkan aplikasi mendekode wilayah persegi panjang dari gambar. API ini sangat berguna saat gambar asli berukuran besar dan aplikasi hanya memerlukan sebagian gambar. - Kolom
inPreferQualityOverSpeed
baru diBitmapFactory.Options
memungkinkan aplikasi menggunakan metode IDCT yang lebih akurat, tetapi sedikit lebih lambat dalam decoding JPEG. Hal ini pada akhirnya akan meningkatkan kualitas gambar yang direkonstruksi.
Framework media
- Class
MediaMetadataRetriever
baru menyediakan antarmuka terpadu untuk mengambil frame dan metadata dari file media input. MediaRecorder.AudioEncoder
danMediaRecorder.OutputFormat
menyertakan kolom baru untuk menentukan format AMR Wideband dan AAC.
Pengenalan ucapan
Speech-recognition API menyertakan konstanta baru untuk memungkinkan Anda mengelola hasil penelusuran
suara dengan cara baru. Meskipun konstanta baru tidak diperlukan untuk penggunaan
pengenalan ucapan yang normal, Anda dapat menggunakannya untuk menawarkan tampilan hasil penelusuran
suara yang berbeda di aplikasi Anda. Untuk informasi, lihat RecognizerResultsIntent
.
API Level
Platform Android 2.3.3 memberikan versi terbaru API framework. API Android 2.3.3 diberi ID bilangan bulat — 10 — yang disimpan dalam sistem itu sendiri. ID ini, yang disebut "API Level", memungkinkan sistem menentukan dengan benar apakah aplikasi kompatibel dengan sistem, sebelum menginstal aplikasi.
Untuk menggunakan API yang diperkenalkan di Android 2.3.3 dalam aplikasi,
Anda perlu mengompilasi aplikasi terhadap library Android yang disediakan di
platform SDK Android 2.3.3. Bergantung pada kebutuhan Anda, Anda mungkin
juga perlu menambahkan atribut android:minSdkVersion="10"
ke elemen <uses-sdk>
dalam manifes
aplikasi. Jika aplikasi Anda dirancang untuk hanya berjalan di Android 2.3 dan yang lebih tinggi,
mendeklarasikan atribut akan mencegah aplikasi diinstal di versi
platform sebelumnya.
Untuk mengetahui informasi selengkapnya, baca Apa yang dimaksud dengan Level API?