Level API: 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 ini berisi library Android dan image sistem, serta sekumpulan skin emulator dan lainnya. Untuk mulai mengembangkan atau menguji Android 2.3.3, gunakan Android SDK Manager untuk mendownload platform ke SDK Anda.
Ringkasan API
Bagian di bawah ini memberikan ringkasan teknis tentang hal yang baru bagi developer pada versi 2.3.3, termasuk fitur dan perubahan baru dalam API framework sejak versi sebelumnya.
Komunikasi Nirkabel Jarak Dekat (NFC)
Android 2.3.3 menyediakan dukungan yang ditingkatkan dan diperluas untuk NFC, agar aplikasi dapat berinteraksi dengan lebih banyak jenis tag dengan cara yang 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 Klasik
- MIFARE Ultralight
- Tag NDEF Forum NFC
Platform ini juga menyediakan API dan protokol komunikasi peer-to-peer 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 kontrol yang lebih besar atas cara dan
waktu peluncurannya, saat tag NFC ditemukan. Sebelumnya, platform
menggunakan pengiriman intent satu langkah untuk memberi tahu aplikasi yang tertarik bahwa tag
ditemukan. Platform ini kini menggunakan proses empat langkah yang memungkinkan
aplikasi latar depan mengontrol 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 yang digunakan "record" yang berisi data yang ditransmisikan di antara perangkat dan tag. Pesan NDEF tertentu pada sejumlah data NDEF dari berbagai jenis. Aplikasi dapat menerima pesan ini dari IntentNDEF_DISCOVERED
,TECH_DISCOVERED
, atauTAG_DISCOVERED
.NdefRecord
, dikirim dalamNdefMessage
, yang menjelaskan jenis data yang dibagikan dan berisi 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 daftar lengkap teknologi tag yang didukung di Android 2.3.3, lihatandroid.nfc.tech
.
Komunikasi NFC bergantung pada 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 soket
Bluetooth 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 area persegi panjang dari gambar. API ini sangat berguna jika gambar asli berukuran besar dan aplikasi hanya memerlukan sebagian dari gambar tersebut. - Kolom
inPreferQualityOverSpeed
baru diBitmapFactory.Options
memungkinkan aplikasi menggunakan metode IDCT yang lebih akurat tetapi sedikit lebih lambat dalam dekode JPEG. Hal ini pada akhirnya 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
API pengenalan ucapan menyertakan konstanta baru agar Anda dapat mengelola hasil
penelusuran suara dengan cara baru. Meskipun konstanta baru tidak diperlukan untuk penggunaan normal
pengenalan ucapan, Anda dapat menggunakannya untuk menawarkan tampilan hasil penelusuran
suara yang berbeda dalam aplikasi Anda. Untuk mengetahui informasinya, lihat RecognizerResultsIntent
.
API Level
Platform Android 2.3.3 menyediakan versi API framework yang telah diupdate. API Android 2.3.3 diberikan 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 mungkin juga perlu menambahkan atribut android:minSdkVersion="10"
ke elemen <uses-sdk>
dalam manifes aplikasi. Jika aplikasi Anda dirancang untuk hanya berjalan pada Android 2.3 dan yang lebih tinggi,
mendeklarasikan atribut akan mencegah aplikasi diinstal pada versi
platform yang lebih lama.
Untuk mengetahui informasi selengkapnya, baca Apa yang dimaksud dengan API Level?