Android 10 dibuat dengan tiga tema penting. Pertama, Android 10 membentuk inovasi seluler terdepan dengan machine learning canggih dan dukungan untuk perangkat baru seperti perangkat foldable dan ponsel yang mendukung 5G. Selanjutnya, Android 10 memiliki fokus utama pada privasi dan keamanan, dengan hampir 50 fitur yang memberi pengguna perlindungan, transparansi, dan kontrol yang lebih besar. Terakhir, Android 10 memperluas kontrol kesehatan digital pengguna sehingga individu dan keluarga dapat menemukan keseimbangan yang lebih baik dengan teknologi.
Berikut adalah fitur-fitur yang tersedia di Android 10 untuk developer dan cara menggunakannya sekarang.
Inovasi dan pengalaman baru
Dengan Android 10, Anda dapat memanfaatkan inovasi hardware dan software terbaru untuk membangun pengalaman aplikasi yang luar biasa bagi pengguna.
Dengan Android 10, Anda dapat mengoptimalkan aplikasi untuk perangkat foldable dan perangkat layar besar lainnya.
Perangkat foldable
Dengan dukungan multi-aplikasi yang andal, Android 10 memperluas multitasking di seluruh jendela aplikasi dan memberikan kontinuitas layar untuk mempertahankan status aplikasi Anda saat perangkat dilipat atau dibentangkan. Android 10 menambahkan sejumlah peningkatan di onResume dan onPause untuk mendukung multi-resume dan memberi tahu aplikasi Anda saat aplikasi tersebut memiliki fokus. Hal ini juga mengubah cara kerja atribut manifes resizeableActivity, untuk membantu Anda mengelola cara aplikasi ditampilkan di perangkat foldable dan perangkat layar besar. Untuk membantu Anda membangun aplikasi untuk perangkat foldable, Anda dapat mengonfigurasi emulator perangkat foldable sebagai perangkat virtual (AVD) di Android Studio. Untuk mengetahui detail tentang cara mengoptimalkan aplikasi untuk perangkat foldable, lihat panduan developer.
Jaringan 5G
5G menjanjikan kecepatan yang konsisten lebih tinggi dan latensi yang lebih rendah, Android 10 menambahkan dukungan platform untuk 5G dan memperluas API yang ada untuk membantu Anda memanfaatkan peningkatan ini. Anda dapat menggunakan API konektivitas untuk mendeteksi apakah perangkat memiliki koneksi bandwidth tinggi dan memeriksa apakah koneksi tersebut berbayar. Dengan fitur ini, aplikasi dan game Anda dapat menyesuaikan pengalaman yang kaya dan imersif bagi pengguna melalui 5G.
Smart Reply pada notifikasi
Android 10 menggunakan ML di perangkat untuk menyarankan tindakan kontekstual dalam notifikasi, seperti smart reply untuk pesan atau membuka peta untuk alamat dalam notifikasi. Aplikasi Anda dapat langsung memanfaatkan fitur ini, tanpa perlu melakukan apa pun. Smart reply dan tindakan yang disediakan sistem disisipkan langsung ke dalam notifikasi secara default. Anda masih dapat memberikan balasan dan tindakan Anda sendiri jika mau. Cukup nonaktifkan Smart Reply per notifikasi menggunakan setAllowGeneratedReplies() dan setAllowSystemGeneratedContextualActions().
Smart Reply dapat menyarankan tindakan berdasarkan konten notifikasi.
Tema Gelap
Android 10 menambahkan tema gelap di seluruh sistem yang ideal untuk kondisi cahaya redup dan membantu menghemat baterai. Pengguna dapat mengaktifkan tema gelap baru di seluruh sistem dengan membuka Setelan atau mengaktifkan Penghemat Baterai. Tindakan ini akan mengubah UI sistem menjadi gelap, dan mengaktifkan tema gelap aplikasi yang mendukungnya. Anda dapat membuat tema gelap kustom untuk aplikasi atau mengaktifkan fitur Gelap Otomatis baru yang memungkinkan sistem membuat versi gelap secara dinamis dari tema yang ada. Anda juga dapat memanfaatkan fitur DayNight AppCompat untuk menawarkan tema gelap bagi pengguna di versi Android yang lebih lama. Lihat panduan developer untuk mengetahui informasi selengkapnya.
Android 10 dapat membuat tema gelap untuk aplikasi Anda secara dinamis dengan Gelap Otomatis.
Navigasi gestur
Navigasi gestur memberi aplikasi layar penuh untuk konten.
Android 10 memperkenalkan mode navigasi gestur penuh yang menghilangkan area menu navigasi dan memungkinkan aplikasi menggunakan layar penuh untuk memberikan pengalaman yang lebih beragam dan imersif. Navigasi ini mempertahankan navigasi Kembali, Layar Utama, dan Terbaru yang sudah dikenal melalui geser tepi, bukan tombol yang terlihat. Agar menyatu dengan lancar dengan navigasi gestur, Anda harus menggunakan layar penuh, menggambar di belakang menu navigasi untuk menciptakan pengalaman yang imersif. Untuk menerapkannya, aplikasi harus menggunakan API setSystemUiVisibility() untuk ditata letak dalam layar penuh, lalu menangani WindowInsets sebagaimana mestinya untuk memastikan bahwa bagian penting UI tidak terhalang. Mulai optimalkan aplikasi Anda sekarang, dan lihat seri postingan blog kami untuk mengetahui informasi selengkapnya.
Panel Setelan
Sekarang Anda dapat menampilkan setelan sistem utama langsung dalam konteks aplikasi, melalui Settings Panel API baru. Panel setelan adalah UI mengambang yang Anda panggil untuk menampilkan setelan yang mungkin diperlukan pengguna, seperti konektivitas internet, NFC, dan volume audio. Misalnya, browser dapat menampilkan panel dengan setelan konektivitas seperti Mode Pesawat, Wi-Fi (termasuk jaringan di sekitar), dan Data Seluler. Untuk menampilkan panel setelan, cukup picu intent dengan salah satu tindakan Settings.Panel yang baru.
Berbagi pintasan
Pintasan Berbagi membuat berbagi lebih cepat dan mudah, sehingga pengguna dapat langsung beralih ke aplikasi lain untuk berbagi konten. Developer dapat memublikasikan target berbagi yang meluncurkan aktivitas tertentu di aplikasi mereka dengan konten terlampir, dan target ini ditampilkan kepada pengguna di UI berbagi. Karena dipublikasikan terlebih dahulu, UI berbagi akan langsung dimuat saat diluncurkan. Pintasan Berbagi mirip dengan Pintasan Aplikasi dan menggunakan ShortcutInfo API yang sama. API ini juga didukung di library AndroidX ShareTarget. Lihat aplikasi contoh untuk mengetahui detailnya.
Pintasan berbagi memungkinkan pengguna langsung membuka aktivitas tertentu di aplikasi Anda dengan konten terlampir.
Privasi untuk pengguna
Privasi adalah fokus utama di Android 10, mulai dari perlindungan yang lebih kuat di platform hingga fitur baru yang dirancang dengan mempertimbangkan privasi. Berdasarkan rilis sebelumnya, Android 10 menyertakan perubahan ekstensif untuk melindungi privasi dan memberi pengguna kontrol lebih besar, dengan UI sistem yang ditingkatkan, izin yang lebih ketat, dan pembatasan pada data yang dapat digunakan aplikasi. Lihat perubahan privasi untuk mengetahui detail tentang cara mendukungnya di aplikasi Anda.
Pengguna kini dapat memilih untuk memberikan akses ke lokasi saat aplikasi berada di latar depan.
Memberi pengguna kontrol lebih besar atas data lokasi - Pengguna memiliki kontrol lebih besar atas data lokasi mereka melalui opsi izin baru -- mereka kini dapat mengizinkan aplikasi mengakses lokasi hanya saat aplikasi benar-benar digunakan (berjalan di latar depan). Bagi sebagian besar aplikasi, hal ini memberikan tingkat akses yang memadai, sedangkan bagi pengguna, hal ini merupakan peningkatan besar dalam transparansi dan kontrol. Untuk mempelajari lebih lanjut perubahan lokasi, lihat panduan developer atau postingan blog kami.
Melindungi data lokasi dalam pemindaian jaringan - Sebagian besar API untuk memindai jaringan sudah memerlukan izin akses perkiraan lokasi. Android 10 meningkatkan perlindungan di sekitar API tersebut dengan mewajibkan izin akses lokasi akurat sebagai gantinya.
Mencegah pelacakan perangkat - Aplikasi tidak dapat lagi mengakses ID perangkat yang tidak dapat direset yang dapat digunakan untuk pelacakan, termasuk IMEI perangkat, nomor seri, dan ID serupa. Alamat MAC perangkat juga diacak saat terhubung ke jaringan Wi-Fi secara default. Baca praktik terbaik untuk membantu Anda memilih ID yang tepat untuk kasus penggunaan Anda, dan lihat detailnya di sini.
Mengamankan data pengguna di penyimpanan eksternal - Android 10 memperkenalkan sejumlah perubahan untuk memberi pengguna kontrol yang lebih besar atas file di penyimpanan eksternal dan data aplikasi di dalamnya. Aplikasi dapat menyimpan filenya sendiri di sandbox pribadinya, tetapi harus menggunakan MediaStore untuk mengakses file media bersama dan menggunakan pemilih file sistem untuk mengakses file bersama di koleksi Download baru. Pelajari lebih lanjut di sini.
Memblokir gangguan yang tidak diinginkan - Android 10 mencegah peluncuran aplikasi dari latar belakang yang tiba-tiba muncul di latar depan dan mengalihkan fokus dari aplikasi lain. Pelajari lebih lanjut di sini.
Keamanan
Android 10 memperkenalkan sejumlah fitur yang menjaga keamanan pengguna melalui peningkatan enkripsi, penguatan platform, dan autentikasi. Baca selengkapnya tentang update keamanan Android 10 di sini.
Enkripsi penyimpanan - Semua perangkat kompatibel yang diluncurkan dengan Android 10 diwajibkan untuk mengenkripsi data pengguna, dan untuk membuatnya lebih efisien, Android 10 menyertakan Adiantum, mode enkripsi baru kami.
TLS 1.3 secara default - Android 10 juga mengaktifkan TLS 1.3 secara default, revisi utama pada standar TLS dengan manfaat performa dan keamanan yang ditingkatkan.
Hardening platform - Android 10 juga menyertakan hardening untuk beberapa area yang penting bagi keamanan platform.
Biometrik yang Ditingkatkan - Android 10 memperluas framework BiometricPrompt untuk mendukung metode autentikasi pasif seperti wajah, dan menambahkan alur autentikasi implisit dan eksplisit. Dalam alur eksplisit, pengguna harus mengonfirmasi transaksi secara eksplisit di TEE selama autentikasi. Alur implisit dirancang sebagai alternatif yang lebih ringan untuk transaksi dengan autentikasi pasif. Android 10 juga meningkatkan penggantian untuk kredensial perangkat jika diperlukan. Pelajari lebih lanjut di sini.
Kamera dan media
Dynamic depth untuk foto
Aplikasi kini dapat meminta gambar Kedalaman Dinamis, yang terdiri dari JPEG, metadata XMP yang terkait dengan elemen terkait kedalaman, serta peta kedalaman dan keyakinan yang disematkan dalam file yang sama. Dengan fitur ini, Anda dapat menawarkan opsi blur dan bokeh khusus di aplikasi Anda. Dynamic Depth adalah format terbuka untuk ekosistem dan kami bekerja sama dengan partner kami untuk menghadirkannya ke perangkat yang menjalankan Android 10 dan yang lebih baru.
Dengan gambar Kedalaman Dinamis, Anda dapat menawarkan opsi blur dan bokeh khusus di aplikasi Anda.
Perekaman pemutaran audio
Sekarang, aplikasi apa pun yang memutar audio dapat mengizinkan aplikasi lain merekam streaming audionya menggunakan API perekaman pemutaran audio baru. Selain mengaktifkan teks dan subtitel, API ini memungkinkan Anda mendukung kasus penggunaan populer seperti game live streaming. Kami telah membangun kemampuan baru ini dengan mempertimbangkan privasi dan perlindungan hak cipta, sehingga kemampuan aplikasi untuk merekam audio aplikasi lain dibatasi, sehingga aplikasi memiliki kontrol penuh atas apakah streaming audionya dapat direkam. Baca selengkapnya di postingan blog ini.
Codec video dan audio baru
Android 10 menambahkan dukungan untuk codec video open source AV1, yang memungkinkan penyedia media melakukan streaming konten video berkualitas tinggi ke perangkat Android dengan menggunakan lebih sedikit bandwidth. Selain itu, Android 10 mendukung encoding audio menggunakan Opus - codec terbuka dan bebas royalti yang dioptimalkan untuk streaming ucapan dan musik - serta HDR10+ untuk video rentang dinamis tinggi pada perangkat yang mendukungnya. MediaCodecInfo API memperkenalkan cara yang lebih mudah untuk menentukan kemampuan rendering video perangkat Android. Untuk codec tertentu, Anda dapat memperoleh daftar ukuran dan kecepatan frame yang didukung.
Native MIDI API
Untuk aplikasi yang melakukan pemrosesan audio di C++, Android 10 memperkenalkan native MIDI API untuk berkomunikasi dengan perangkat MIDI melalui NDK. API ini memungkinkan data MIDI diambil di dalam callback audio menggunakan pembacaan non-blocking, sehingga memungkinkan pemrosesan pesan MIDI dengan latensi rendah. Cobalah dengan aplikasi contoh dan kode sumber di sini.
Mikrofon terarah yang dapat di-zoom
Android 10 memberi Anda kontrol lebih besar atas perekaman audio melalui API MicrophoneDirection baru. Anda dapat menggunakan API untuk menentukan arah mikrofon yang diinginkan saat melakukan perekaman audio. Misalnya, saat pengguna mengambil video "selfie", Anda dapat meminta mikrofon depan untuk perekaman audio (jika ada). Selain itu, API ini memperkenalkan cara standar untuk mengontrol mikrofon yang dapat di-zoom, sehingga aplikasi Anda dapat mengontrol dimensi bidang perekaman.
Vulkan di mana saja
Android 10 memperluas dampak Vulkan dengan implementasi kami atas API lintas platform dengan overhead rendah untuk grafis 3D berperforma tinggi. Vulkan 1.1 kini menjadi persyaratan di semua perangkat 64-bit yang menjalankan Android 10 dan yang lebih tinggi, serta rekomendasi untuk semua perangkat 32-bit. Kami telah melihat momentum yang signifikan pada dukungan Vulkan dalam ekosistem - di antara perangkat yang menjalankan Android N atau yang lebih tinggi, 53% mendukung Vulkan 1.0.3 atau yang lebih tinggi. Dengan persyaratan baru di Android 10, kami berharap dapat melihat peningkatan adopsi lebih lanjut pada tahun mendatang.
Konektivitas
Penyempurnaan konektivitas internet dan peer-to-peer
Kami telah memfaktorkan ulang stack Wi-Fi untuk meningkatkan privasi dan performa, serta meningkatkan kasus penggunaan umum seperti mengelola perangkat IoT dan menyarankan koneksi internet -- tanpa memerlukan izin akses lokasi. API koneksi jaringan mempermudah pengelolaan perangkat IoT melalui Wi-Fi lokal, untuk fungsi peer-to-peer seperti mengonfigurasi, mendownload, atau mencetak. API saran jaringan memungkinkan aplikasi menampilkan jaringan Wi-Fi pilihan kepada pengguna untuk konektivitas internet.
Mode performa Wi-Fi
Aplikasi kini dapat meminta Wi-Fi adaptif dengan mengaktifkan mode performa tinggi dan latensi
rendah.
Hal ini dapat memberikan manfaat besar jika latensi rendah
penting bagi pengalaman pengguna, seperti game real-time, panggilan suara aktif,
dan kasus penggunaan serupa. Platform ini berfungsi dengan firmware perangkat untuk memenuhi
persyaratan dengan konsumsi daya terendah. Untuk menggunakan mode performa baru,
panggil WifiManager.WifiLock.createWifiLock()
dengan WIFI_MODE_FULL_LOW_LATENCY atau WIFI_MODE_FULL_HIGH_PERF. Dalam mode
ini, platform bekerja sama dengan firmware perangkat untuk memenuhi persyaratan
dengan konsumsi daya terendah.
Dasar-dasar Android
Pengoptimalan ART
Peningkatan pada runtime ART membantu aplikasi Anda memulai lebih cepat, menggunakan lebih sedikit memori, dan berjalan lebih lancar -- tanpa memerlukan pekerjaan apa pun dari Anda. Profil ART yang dikirimkan oleh Google Play memungkinkan ART melakukan pra-kompilasi bagian-bagian aplikasi Anda bahkan sebelum dijalankan. Saat runtime, Android 10 menambahkan Pembersihan Sampah Memori Generasional ke Garbage Collector Concurrent Copying (CC) ART untuk membuat pembersihan sampah memori lebih efisien dalam hal waktu dan CPU, mengurangi jank, dan membantu aplikasi berjalan lebih baik di perangkat kelas bawah.
Diagram ini menunjukkan persentase peningkatan waktu startup untuk aplikasi tertentu saat diuji menggunakan profil Play.
Neural Networks API 1.2
Kami telah menambahkan 60 operasi baru termasuk ARGMAX, ARGMIN, LSTM terkuantisasi, serta berbagai pengoptimalan performa. Hal ini menjadi dasar untuk mempercepat berbagai model yang jauh lebih besar, seperti model untuk deteksi objek dan segmentasi gambar. Kami bekerja sama dengan vendor hardware dan framework machine learning populer seperti TensorFlow untuk mengoptimalkan dan meluncurkan dukungan untuk NNAPI 1.2.
Thermal API
Jika menjadi terlalu panas, perangkat dapat men-throttle CPU dan/atau GPU, dan hal ini dapat memengaruhi aplikasi dan game secara tidak terduga. Kini di Android 10, aplikasi dan game dapat menggunakan thermal API untuk memantau perubahan pada perangkat dan mengambil tindakan untuk membantu memulihkan suhu normal. Misalnya, aplikasi streaming dapat mengurangi resolusi/kecepatan bit atau traffic jaringan, aplikasi kamera dapat menonaktifkan flash atau peningkatan gambar yang intensif, atau game dapat mengurangi kecepatan frame atau teselasi poligon. Baca selengkapnya di sini.
Kompatibilitas melalui API publik
Android 10 terus memperluas pembatasan pada antarmuka non-SDK, sehingga aplikasi secara bertahap beralih hanya menggunakan API publik. Jika antarmuka yang saat ini Anda gunakan dibatasi, Anda dapat meminta API publik baru untuk antarmuka tersebut. Untuk membantu Anda melakukan transisi dan mencegah aplikasi berhenti berfungsi, kami hanya mengaktifkan pembatasan saat aplikasi Anda menargetkan Android 10 (API 29). Untuk mengetahui detail selengkapnya tentang batasan, lihat panduan developer.
Update lebih cepat, kode baru
Android 10 dibuat untuk update yang lebih cepat melalui Project Treble, yang menyediakan antarmuka yang konsisten dan dapat diuji antara Android dan kode perangkat yang mendasarinya dari produsen perangkat dan produsen silikon. Melalui Treble, pembuat perangkat dapat menghadirkan Android 10 ke perangkat yang mematuhi Treble dengan lebih cepat dan biaya lebih rendah.
Android 10 juga merupakan rilis pertama yang mendukung Project Mainline (secara resmi disebut update sistem Google Play), teknologi baru kami untuk mengamankan pengguna Android dan menjaga perangkat mereka tetap baru dengan perubahan kode penting - langsung dari Google Play. Dengan update sistem Google Play, kami dapat mengupdate komponen internal tertentu di semua perangkat yang menjalankan Android 10 dan yang lebih tinggi, tanpa memerlukan update sistem lengkap dari produsen perangkat.
Bagi developer, kami berharap update di Android 10 ini dapat membantu mendorong konsistensi implementasi platform secara luas di berbagai perangkat, dan seiring waktu menghadirkan keseragaman yang lebih besar yang akan mengurangi biaya pengembangan dan pengujian Anda.
Mulai
Untuk mengetahui referensi developer lengkap untuk Android 10, buka developer.android.com/10.
