Ringkasan Android Q AMA: Apa yang Google katakan tentang Android 10 di Reddit

click fraud protection

Insinyur Google melakukan AMA di Reddit beberapa hari yang lalu. AMA adalah tentang Android Q beta. Berikut ringkasan apa yang kami pelajari dari tanggapan mereka.

Tahun lalu, tim Android Google menyelenggarakan Ask Me Anything (AMA) di subreddit /r/AndroidDev Reddit untuk mengajukan pertanyaan tentang Pratinjau Pengembang Android P. Tahun ini, tim teknik yang mengerjakan Android Q beta menjawab pertanyaan di Reddit. AMAnya dimulai 1 Agustus pukul 12:00 PST dan berakhir sekitar satu setengah jam kemudian. 33 insinyur Google terlibat dalam AMA, menjawab banyak pertanyaan dalam waktu singkat AMA berlangsung. Berikut ringkasan semua informasi baru yang kami pelajari.

Android Q AMA: Semua yang kami pelajari dari Google

Peserta dari tim Android Q beta

  • Adam Cohen: TLM di Peluncur Android / UI Sistem
  • Adam Powell: TLM pada perangkat/kerangka UI; tampilan, siklus hidup, fragmen, lib dukungan
  • Alan Viverette: TLM, Jetpack/Android X
  • Allen Huang: PM untuk UI, peluncur, notifikasi, integrasi pencarian, dan banyak lagi!
  • Andrew Sapirstein: TLM di Pengaturan Android
  • Brahim Elbouchikhi: PM Director untuk Pembelajaran Mesin dan Kamera Android (NN API, ML Kit, CameraX, Platform Kamera)
  • Chad Brubaker: Insinyur Perangkat Lunak, Keamanan Platform Android
  • Charmaine D'Silva: PM untuk Privasi
  • Chet Haase: Kepala Advokat Android, Hubungan Pengembang
  • Diana Wong: PM, Kompatibilitas Aplikasi, penggunaan API non-SDK, ART, NDK
  • Dianne Hackborn: Manajer tim kerangka kerja Android (Sumber Daya, Manajer Jendela, Manajer Aktivitas, Multi-pengguna, Pencetakan, Aksesibilitas, dll.)
  • E.K. Chung: Direktur UX
  • Danau Ian: Insinyur Perangkat Lunak, Jetpack (Fragmen, Navigasi, Komponen Arsitektur)
  • Iliyan Malchev: Insinyur Perangkat Lunak Utama, Proyek Mainline
  • Yakub Lehrbaum: Direktur Hubungan Pengembang untuk Android
  • Jake Wharton: Insinyur Perangkat Lunak, Jetpack
  • Jamal Alasan: PM, Android Studio
  • Jeff Bailey: TLM, Proyek Sumber Terbuka Android (AOSP)
  • Jeff Sharkey: Insinyur Perangkat Lunak, Kerangka Android
  • Jeffrey van Gogh: Android Studio, Kompiler
  • Jen Chai: PM, Lokasi dan Konteks, Auth, IsiOtomatis, penggunaan API non-SDK, ART
  • Karen Ng: Grup PM untuk Alat Pengembang Android, Android Studio, Android Tookit, dan Jetpack
  • Paul Bankhead: Direktur Manajemen Produk, Google Play
  • Rohan Shah: Manajer Produk, UI Sistem Android
  • Orang Roma: Manajer tim Android Toolkit/Jetpack
  • Sagar Kamdar: Direktur Manajemen Produk, Android
  • Sabtu K: Direktur Teknik, Konektivitas Android
  • Selim Cinek: Insinyur Perangkat Lunak, UI Sistem Android
  • Stephanie Saad Cuthbertson: Direktur Senior Manajemen Produk, Android
  • Sumir Kataria: Insinyur Perangkat Lunak, Jetpack (Manajer Kerja)
  • Travis McCoy: PM, Platform Android
  • Trystan Naik: Insinyur Terhormat, Pimpinan untuk UI & Intelijen Sistem Android
  • Vinit Modi: PM, Kamera Android

Baca selengkapnya

OEM tidak dapat lagi mematikan aplikasi saat pengguna menghapusnya baru-baru ini

Jika Anda pernah menggunakan ponsel cerdas merek Cina, Anda mungkin pernah menghadapi fitur "pengoptimalan baterai" yang mengganggu. matikan semua aplikasi favorit Anda di latar belakang. Perilaku ini tidak hanya mengganggu pengguna yang mengharapkan aplikasi tertentu terus berjalan di latar belakang karena alasan apa pun, tapi itu juga menjengkelkan bagi pengembang yang harus menerima ulasan buruk dari pengguna yang tidak mengerti bahwa itu bukan milik aplikasinya. kesalahan. Sementara Google adalah tetap tidak sepenuhnya mengatasi masalah ini (mereka mengabaikan masalah ini dengan menyatakan bahwa perilaku ini memang benar mungkin sudah melanggar persyaratan Dokumen Definisi Kompatibilitas Android), perusahaan adalah mengambil tindakan terhadap satu perubahan perilaku "hemat baterai" yang diterapkan oleh beberapa OEM.

"Untuk mengatasi situasi ini, kami telah menambahkan pengujian CTS di Android Q untuk memastikan bahwa aplikasi tidak dimatikan saat digeser dari Terbaru."

Android R mungkin membawa lebih banyak perubahan pada tangkapan layar daripada yang kami perkirakan

Google berencana menambahkan menggulir tangkapan layar di Android R, tetapi pada saat yang sama, Tim Android adalah "mencermati bagaimana [mereka] dapat meningkatkan pengalaman layar-[X] secara keseluruhan untuk R." Jadi, kita mungkin lihat peningkatan lainnya pada perilaku tangkapan layar (DAN screencast) di versi Android utama berikutnya.

Mengklarifikasi Mode Desktop baru Android Q

Itu rilis beta publik pertama Android Q menghadirkan antarmuka mode desktop tersembunyi ke AOSP dan Pixel Launcher. Meskipun Google secara singkat menyentuh fitur tersebut selama sesi Google I/O, kami belum pernah mendengar langsung dari Google bagaimana fitur baru ini cocok dengan ekosistem Android. Google sekarang menjelaskan:

"Dalam Q AOSP 'mode desktop' adalah opsi pengembang yang ditargetkan untuk pengembang aplikasi. Hal ini memungkinkan mereka menguji aplikasi mereka di lingkungan mode multi-tampilan dan jendela bentuk bebas. Sebelumnya tidak ada cara mudah untuk menguji perilaku aplikasi pada tampilan sekunder dan dengan jendela yang dapat diubah ukurannya secara bebas di stok Android. Fitur ini tidak diproduksi sendiri dan saat ini tidak dimaksudkan untuk pengguna biasa. Namun demikian, ini adalah landasan platform Android bagi OEM untuk berinovasi dan membuat produk hebat."

Dengan demikian, kita dapat melihat OEM membangun mode desktop asli Android Q. Misalnya, OnePlus 7 Pro mendukung tampilan keluar melalui HDMI, jadi mungkin saja OxygenOS 10 berbasis Android Q akan memiliki antarmuka mode desktop sendiri di masa mendatang. Kami juga berharap Google mengembangkan fitur ini di masa mendatang Piksel 4.

Mode Gelap berbasis waktu

Android Q akhirnya menghadirkan fitur yang banyak diminta: mode gelap seluruh sistem. Saat ini, mode gelap dapat diaktifkan secara manual di Pengaturan atau melalui ubin Pengaturan Cepat, atau dapat diaktifkan secara otomatis ketika Penghemat Baterai diaktifkan. Sebelum Android Q, ada opsi untuk mengaktifkan mode gelap berdasarkan waktu hari itu, tapi opsi itu sudah tidak digunakan lagi. Menurut Chris Banes:

"Ada beberapa alasan mengapa hal ini tidak digunakan lagi (tidak dihapus) di AppCompat v1.1.0: hal ini memerlukan aplikasi untuk meminta izin lokasi harus akurat, dan bahkan dengan lokasi yang valid perhitungan waktu matahari terbit/terbenam dapat dilakukan kereta."

Ketika ditanya tentang bug ini, Mr. Banes menyatakan bahwa "menghitung matahari terbit/terbenam sangatlah sulit, terutama untuk lokasi yang dekat dengan kutub utara/selatan." Pengguna menampilkan Cahaya Malam, yang tersedia sejak Android 7.1 Nougat, dapat diaktifkan secara otomatis berdasarkan Matahari Terbenam/Terbit jadwal. Pak Banes kemudian menyatakan bahwa karena Cahaya Malam menggunakan Kalender, Astronom dari ICU4J, ia menggunakan "sebagian besar kode yang kami tidak ingin AppCompat bergantung padanya." Namun, tim melakukannya negara bahwa fitur ini adalah "sesuatu yang [mereka] akan selidiki".

Dukungan Camera2 API/Camera HAL3 wajib untuk perangkat peluncuran Android Q

Google memperkenalkan Camera2 API untuk lebih mendefinisikan bagaimana aplikasi dapat berinteraksi dengan masing-masing kamera yang terhubung ke ponsel cerdas Anda. Sementara Google mendorong vendor ponsel pintar untuk "mengekspos semua kamera fisik mereka kepada pengembang", banyak vendor memilih untuk tidak melakukannya meskipun "API itu sendiri tidak mencegahnya saat ini." Ini berarti banyak aplikasi kamera pihak ketiga tidak dapat menggunakan modul kamera sekunder atau tersier di versi modern ponsel pintar. Namun, kemajuan sedang dicapai seiring dengan peningkatan Android Q LOGICAL_MULTI_CAMERA, sebuah API yang memberi pengembang akses lebih baik ke semua kamera di perangkat dan memberi OEM kendali atas konsumsi daya dan pengelolaan berbagai status kamera.

Selain itu, Google mengatakan bahwa mereka telah menambahkan persyaratan untuk semua perangkat yang diluncurkan dengan Android Q agar mendukung Camera2 API/Camera HAL3. Menurut Vinit Modi:

“Dimulai dengan Android P, perangkat baru yang dikirimkan dengan RAM 1GB atau lebih diharuskan menggunakan HALv3/camera2 secara native. Android Q dan seterusnya, semua perangkat baru harus mendukung HALv3/camera2 secara native. Sayangnya peningkatan dari HALv1 ke HALv3 cukup rumit melalui udara dan mungkin memiliki konsekuensi yang tidak terduga sehingga kami harus membatasi cakupannya pada perangkat baru."

Menariknya, pernyataan Modi tentang RAM normal perangkat peluncuran Android P bertentangan apa yang diberitahukan sebelumnya kepada kami oleh Google dan apa yang dipublikasikan di halaman Image Test Suite online.

Tema Aplikasi Dinamis dengan Jetpack Compose

Kerangka kerja bertema OMS Sony telah ditambahkan ke AOSP beberapa rilis lalu, tapi itu hanya saja ditujukan untuk OEM untuk membangun. Kita sudah mengetahuinya Google menentangnya penggunaan overlay sumber daya runtime oleh pengguna untuk tema aplikasi, namun bagi pengembang, perusahaanlah yang melakukannya berharap itu dia UI Penulisan Jetpack kerangka kerja ini akan mengedepankan "pendekatan menarik terhadap tema dinamis".

Vulkan-backend untuk Skia untuk merender UI

Tahun lalu, kami melihat sebuah diskusi di antara para insinyur Google membicarakan rencana mereka agar kerangka kerja Android menggunakan API grafis Vulkan untuk rendering UI. Meskipun sekarang dimungkinkan untuk mengaktifkan backend yang dipercepat perangkat keras Vulkan tanpa ponsel Anda mengalami gangguan, kami belum mendengar rencana konkrit dari Google mengenai kapan mereka akan meluncurkannya perubahan. AMA ini tidak menjawab pertanyaan itu, tapi setidaknya kami mendapat konfirmasi bahwa AMA ini masih dalam pengerjaan. Menurut Romain Guy:

“Tim telah mengerjakan backend Vulkan untuk Skia, penyaji 2D yang digunakan oleh Android, namun saat ini tidak diaktifkan secara default. UI dan Canvas masih melalui OpenGL ES."

Menjadikan bilah isyarat Android Q lebih dinamis

Beberapa orang di XDA masih berpikir seperti itu Gerakan baru Android berantakan, tapi menurut saya pribadi mereka baik-baik saja. Namun, jika Anda bermain-main dengan gerakan baru di Android Q sebentar, Anda akan melihat bahwa bilah gerakan tidak bergerak mengikuti jari Anda. Itu juga menempel di layar yang tidak diperlukan, seperti layar beranda atau ikhtisar aplikasi terkini. Allen Huang mengatakan bahwa mereka "sepenuhnya setuju bahwa ada peluang" untuk membuat "jalur navigasi tidak terlalu statis". Dia lebih lanjut mengatakan bahwa "ini adalah sesuatu yang sedang kami kerjakan - namun juga menyeimbangkan sehingga tidak mengganggu muncul/menghilang."

Perbaikan pada Kerangka Akses Penyimpanan

Banyaknya perubahan di Android Q telah meningkatkan kinerja secara signifikan keamanan dan privasi platform. Salah satu perubahan tersebut, yang disebut "Penyimpanan Tercakup", membatasi akses aplikasi ke file di penyimpanan eksternal dengan cara yang masuk akal; misalnya, aplikasi musik tidak perlu melihat galeri Anda. Aplikasi pengelola file yang berjalan di Android Q harus menggunakan API yang disebut Storage Access Framework agar dapat terus bekerja seperti biasa, namun beberapa pengembang melihat API ini lebih rendah dengan apa yang tersedia sebelumnya. Jeff Sharkey dari Google mengatakan tim telah mengatasi beberapa keluhan pengembang berikut:

"Kami melakukan beberapa peningkatan kinerja SAF pada rilis Android Q Beta terbaru; bisakah Anda memeriksa tolok ukur Anda terhadap Beta terbaru? Pastikan juga Anda menggunakan ContentProviderClient saat menjalankan operasi massal apa pun."

Project Treble meningkatkan adopsi Android Pie dibandingkan Android Oreo

Kita telah melihat bagaimana Project Treble, sebuah perancangan ulang kerangka kerja Android tingkat rendah, telah meningkatkan adopsi versi OS Android yang lebih baru. Google memuji Treble di balik banyaknya vendor ponsel pintar yang bergabung Android P beta tahun lalu dan Android Q beta tahun ini. Iliyan Malchev, pemimpin Proyek Treble dan Garis utama insinyur, mengatakan bahwa adopsi Android Pie “3 kali lipat” dari Android Oreo pada akhir tahun 2018.

Dalam komentar yang sama, Dick Dougherty mengisyaratkan bahwa metrik yang lebih berguna sedang dikerjakan untuk bagan distribusi versi Android. Grafiknya adalah terakhir diperbarui pada bulan Mei, namun datanya lebih berguna bagi jurnalis dibandingkan pengembang aplikasi.

Perekaman Layar masih berupa WIP

Android Q beta awal menambahkan tanda fitur untuk perekam layar dasar, namun platform itu sendiri telah meningkatkan kegunaan perekaman layar secara signifikan. memungkinkan aplikasi menangkap audio dari aplikasi lain. Stephanie Saad Cuthbertson mengatakan tim sedang mempertimbangkan "bagaimana kami dapat melakukan yang lebih baik pada kebutuhan perekaman layar baru-baru ini." Merek smartphone lain seperti Satu ditambah, ASUS, Huawei, dan Samsung memiliki perekam layar tangguh yang dapat merekam audio internal, jadi Google akan mengejar ketinggalan di sini.

Tema Gelap Semua Hal!

Jika Anda melewatkannya, Google menambahkan mode gelap ke sebagian besar aplikasinya. Stephanie Saad Cuthbertson mengatakan mengharapkan semua "aplikasi utama" mendukung tema gelap "pada rilis resmi [Android Q]." Bahkan Google Chrome yang saat ini memaksa halaman dimuat ulang saat tema gelap seluruh sistem diaktifkan, akan diperbarui agar tidak lagi disegarkan saat tema diaktifkan berubah.

Ya, Peluncur Pihak Ketiga akan bekerja dengan Gestur (Akhirnya)

Isyarat Android memang semacam itu rusak saat Anda menggunakan peluncur pihak ketiga. Itu karena UI aplikasi terbaru terdapat dalam aplikasi peluncur stok, dan Google belum melakukannya menemukan cara untuk mendapatkan transisi mulus yang sama seperti yang kita lihat saat menggunakan gerakan dengan Pixel bawaan Peluncur. Adam Cohen menegaskan Google berencana untuk mengatasi masalah ini "secepat mungkin setelah rilis". Dia lebih lanjut mengatakan itu ketidakcocokan "akan diatasi dalam pembaruan pasca-Q, dan di-backport untuk perangkat baru yang diluncurkan Q."

Partisi Dinamis/Logis tidak ada di sini untuk mematikan ROM khusus

Untuk mendukung Pembaruan Sistem Dinamis di Android Q, perangkat tertentu seperti Google Pixel 3 dan Pixel 3 XL menggunakan partisi logis. Partisi ini dapat diubah ukurannya secara dinamis. Perubahan ini telah terjadi terbukti menantang dalam membuat akses root berfungsi, dan beberapa pengembang khawatir bahwa ROM khusus menjadi sasaran. Iliyan Malchev meyakinkan kita bahwa tujuannya bukan untuk membatasi custom ROM. Sebagai dia menjelaskan:

"Partisi dinamis tidak dimaksudkan untuk membatasi apa yang dapat Anda lakukan dengan ROM kustom. Partisi tersebut hanyalah sebuah solusi untuk masalah ukuran partisi tetap dan kurangnya cara aman untuk mempartisi ulang perangkat OTA. Sebelum partisi dinamis, jika OEM melakukan kesalahan dalam ukuran, mis. partisi sistem, lalu mereka akan dibatasi oleh pilihan tersebut, sehingga hampir tidak mungkin untuk mengupgrade perangkat setelah waktu tertentu titik. Beberapa OEM melakukan partisi ulang perangkat mereka di OTA sebagai praktiknya, namun hal ini a) tidak didukung secara resmi di Android, dan b) mengubah tabel partisi dianggap cukup berisiko. Partisi dinamis bertujuan untuk mengatasi masalah dengan memperkenalkan tingkat tipuan antara tabel partisi fisik dan tampilan OS. Hal ini pada gilirannya memungkinkan kita menyesuaikan ukuran partisi dengan aman di OTA. Sedangkan untuk ROM khusus, Anda tidak boleh dibatasi sama sekali seperti saat ini dengan apa yang dapat Anda lakukan. Mendukung ROM kustom adalah dan terus menjadi sesuatu yang diputuskan untuk diaktifkan oleh setiap OEM."

Jalur Utama Proyek - Modul ART dan Panjang Dukungan

Mainline adalah inisiatif baru Google yang bertujuan untuk menstandarisasi perpustakaan dan paket tertentu sehingga dapat diperbarui secara independen dari pembaruan platform. Beberapa orang bertanya-tanya mengapa Android Runtime (ART) belum menjadi modul Mainline, namun saya diberitahu di Google I/O bahwa kompleksitas yang terlibat dalam modularisasi ART menghalangi mereka untuk memasukkannya sebagai salah satu paket APEX awal. Sebagai menjelaskan oleh Iliyan Malchev dan Diana Wong:

“Membuat pembaruan pada Runtime (terutama perbaikan kinerja & GC serta pustaka inti) jelas merupakan sesuatu yang kami jelajahi dalam konteks jalur utama. Kami dapat melihat banyak manfaat dengan dapat membuat pembaruan ini konsisten di semua perangkat dan di beberapa rilis dengan jalur utama. Ini juga merupakan tantangan teknis yang sangat besar ketika kami memikirkan cara melakukan yang terbaik untuk pengembang, dan kemungkinan merupakan upaya multi-tahun. Ini bukan sesuatu yang bisa dilakukan Mainline saat ini, tapi yang pasti adalah sesuatu yang sedang kami pikirkan."

Jika Anda mengikuti AOSP Gerrit, Anda akan melihat bahwa Google masih demikian keras dalam bekerja membuat APEX Waktu Proses. Saat ini, tampaknya memang begitu memisahkan Bionic dan ART/libcore menjadi modul APEX terpisah.

Mengenai manfaat Project Mainline, salah satu pengguna bertanya tentang lamanya pembaruan Mainline. Sebagai tanggapan, Iliyan Malchev mengatakan bahwa "ini adalah pertanyaan kebijakan yang masih kami evaluasi, namun kami ingin memperbarui modul Mainline pada perangkat selama mungkin." Pengembang yang Diakui XDA luca020400 bertanya tentang apakah modul Mainline prebuilt akan disediakan sehingga pengembang ROM khusus dapat menggabungkan pembaruan, dan sebagai tanggapan, Jeff Bailey menegaskan kembali bahwa "modul yang dipisahkan dari AOSP akan memiliki rilis sumber yang cocok dengan setiap rilis modul." Kita sudah dapat melihat perkembangan modul APEX baru di AOSP seperti yang ada pada API Jaringan Neural.

CameraX bertemu dengan ML Kit

Pada I/O tahun ini, Google memperkenalkan Pustaka CameraX Jetpack. Pustaka ini dirancang untuk memudahkan pengembang mendukung API Camera2 Android sambil menjaga kompatibilitas hingga ke Android Lollipop. Vinit Modi menggoda bahwa perusahaan sedang berupaya mengintegrasikan CameraX dengannya Perangkat ML, Firebase SDK pembelajaran mesin Google, sehingga pengembang dapat memasukkan bingkai gambar ke dalam ML Kit untuk dianalisis.

Ekstensi Vendor CameraX dan Tanggal Rilis

Pengembang aplikasi kamera menyesalkan kenyataan bahwa fitur kamera canggih seperti Night Sight Google Pixel tidak dapat diakses oleh aplikasi kamera pihak ketiga. Hal ini seharusnya dapat diselesaikan dengan ekstensi vendor CameraX, yaitu Jeff Sharkey dari Google mengatakan bahwa "semua perangkat Pixel dioptimalkan untuk CameraX Core." Dia menggoda bahwa "aspek Ekstensi akan didukung pada perangkat baru dan yang akan datang." Selain itu, Google adalah "bekerja sama dengan beberapa produsen untuk dapat menghadirkan kemampuan perangkat mereka kepada pengembang dan pengguna." Meskipun tidak dikonfirmasi secara langsung, ada kemungkinan kita dapat melihat fitur-fiturnya menyukai Pemandangan Malam di Google Piksel 4 tersedia untuk aplikasi kamera pihak ketiga yang menggunakan perpustakaan CameraX.

Mr Sharkey menyatakan bahwa Google menargetkan rilis beta untuk akhir tahun ini.

Peningkatan Manajemen Memori di Android Q

Pixel 3 dikecam karena memilikinya banyak masalah pasca peluncuran, namun Google telah melakukan banyak hal untuk mengatasi masalah ini melalui berbagai cara pembaruan pasca peluncuran. Manajemen memori telah menjadi salah satu aspek terlemah Pixel 3, tetapi segalanya akan menjadi lebih baik pada rilis Android Q. Menurut Selim Cinek:

"Di SystemUI misalnya, kami melakukan berbagai upaya pemfaktoran ulang besar-besaran di Q untuk mengurangi penggunaan RAM pada notifikasi dan permukaan lainnya."

Akankah kita akhirnya mendapatkan ADB nirkabel?

Jika Anda ingin men-debug ponsel Anda secara nirkabel, Anda harus melakukan root pada perangkat Anda. Jamal Eason dari tim Android Studio mengatakan bahwa mereka sedang membahas kelayakan fitur ini.

Apakah Google masih mengujinya di tablet?

Pengembang yang Diakui XDA Luk1337 bertanya apakah Google masih menguji AOSP UX di tablet. Itu pertanyaan yang wajar mengingat kelangkaan tablet Android yang bagus dan itu bug hadir dalam rilis saat ini. Allen Huang mengatakan bahwa Google masih "menguji dan melakukan perbaikan setiap tahun" dan bahwa perusahaan tersebut bekerja sama dengan mitranya "untuk memastikan pengalaman tablet Android yang baik".


Ada lebih banyak postingan di thread lengkap di Reddit. Apa yang saya bahas di sini merangkum semua informasi baru yang kami pelajari, tetapi beberapa Googler (terutama Dianne Hackborn) menjelaskan alasan mereka di balik pemotongan fitur X atau tidak mengimplementasikan Y izin. Saya sarankan Anda membaca AMA selengkapnya jika Anda ingin memahami pengambilan keputusan tim Android sedikit lebih baik.

Baca AMA selengkapnya di /r/AndroidDev