Sunday, August 30, 2020

Dukungan CodePen untuk Flutter

Dukungan CodePen untuk Flutter

Kami gembira bisa mengumumkan bahwa CodePen, lingkungan pengembangan sosial terkemuka untuk jutaan desainer dan developer front-end, menambahkan dukungan untuk Flutter! Bagi developer web, CodePen telah lama menjadi tempat yang mengasyikkan untuk berbagi eksplorasi desain, teknik, dan ide baru. Sekarang dengan kehadiran Flutter, CodePen memungkinkan audience baru untuk belajar, berbagi, dan mempromosikan kreativitasnya.

Berikut adalah kata Alex Vazquez, salah satu pendiri CodePen:

“CodePen telah bertahun-tahun menjadi penggemar berat Flutter dan bahasa pemrograman Dart. Kami sangat senang karena sekarang Flutter mendukung seluler dan web. Komunitas Flutter berkembang pesat, itulah sebabnya kami sangat bersemangat mendukung Flutter dengan editor CodePen khusus! Flutter secara resmi adalah anggota kelas satu komunitas CodePen. Kami tak sabar ingin segera melihat kreasi yang Anda bangun dengan Flutter di CodePen.”

Sejak awal Flutter diciptakan, kami telah merancangnya sebagai kanvas untuk ekspresi kreatif. Sangat menggembirakan bisa mendapatkan pengakuan yang semakin banyak atas kemampuan desainnya, dari kemitraan yang kami umumkan dengan Adobe dan SuperNova di event Flutter Interact berorientasi-desain kami, hingga penamaan Flutter sebagai salah satu ide desain terpenting dekade ini oleh Fast Company. Dengan penambahan lingkungan Flutter baru berbasis CodePen, profesional kreatif sekarang bisa memanfaatkan CodePen untuk menemukan inspirasi Flutter artistik, membangun portofolio Flutter yang mengesankan, dan menunjukkan ide-ide Flutter yang menakjubkan kepada dunia!

Editor Flutter CodePen dibangun di atas layanan backend, dart-services, yang saat ini juga mendukung DartPad (editor berbasis web yang dibuat oleh tim Flutter dan Dart yang baru saja diupdate untuk mendukung Flutter). Ketika kami membangun DartPad, kami merancangnya menjadi alat edukasi untuk membantu developer mempelajari Flutter dan Dart, serta berbagi cuplikan kode satu sama lain. Kami secara khusus memutuskan untuk membuat open-source dart-services sehingga situs-situs seperti CodePen bisa menyesuaikannya dengan skenario dan audience baru.

DartPad adalah alat yang luar biasa untuk menguji ide dalam kode secara cepat, atau membagikan cuplikan Anda dengan developer lain, dan ia berguna untuk mereproduksi (serta mengarsipkan) bug. Anda juga bisa melakukannya di CodePen, tetapi CodePen memiliki keuntungan komunitas desain aktif di mana Anda bisa berbagi, berkomentar, mempromosikan, mencoba ide-ide desain, dan mendapatkan masukan dari desainer lain. Editor Flutter CodePen lebih seperti “otak kanan” yang Anda gunakan untuk membuat prototipe ide untuk ekspresi kreatif dan inspirasi desain, sedangkan DartPad lebih seperti “otak kiri” ketika Anda perlu dengan cepat menguji ide atau menyusun konsep teknis.

Animasi “Light effect” oleh Mariano Zorrilla

Editor Flutter di CodePen

Mari ikuti tur singkat editor Flutter di CodePen. Anda bisa membuat Flutter pen baru (istilah CodePen untuk “cuplikan kode”) baik dari awal maupun menggunakan template yang sudah ada. Terima kasih banyak kepada anggota komunitas Flutter yang luar biasa (@aednlaxer, @ayushnishad, @diegoveloper, @divyanshub024, @egorbelibov, @gskinnerTeam, @mkiisoft, @orestesgaolin, @SlaxXxX, dan lainnya) yang telah menyumbang beberapa contoh keren ke daftar template.

Mari mulai dengan template “GooeyEdge”. Seperti yang Anda lihat, kode Flutter ada di sisi kiri, dan output web Flutter di sisi kanan. Anda bisa memainkan desain interaktif ini dengan menarik tepi visual menggunakan mouse Anda.

Animasi “Gooey edge” oleh Grant Skinner

Anda juga bisa mengubah kode Flutter, dan langsung melihat efeknya. Misalnya, jika kita mengubah warna indikator kontrol halaman dari “putih” menjadi “biru” (baris 326), Anda bisa melihat warnanya berubah dalam beberapa detik! CodePen secara otomatis mengompilasi ulang kode setiap kali Anda membuat perubahan. Cukup ubah satu baris, tunggu beberapa detik, dan output baru akan muncul.

Indikator kontrol halaman berubah menjadi biru

Sekarang mari kita lihat apa yang terjadi jika saya memasukkan error sintaks. Katakanlah saya tidak sengaja menghapus titik koma di akhir baris 1. Saya akan langsung melihat peringatan dengan bilah merah tentang error sintaks. Ini memungkinkan Anda untuk dengan mudah menemukan dan memperbaiki kesalahan.

Pesan peringatan saat terdapat error sintaks

Fitur sosial

Yang paling kami sukai dari CodePen adalah fitur sosial dan komunitas yang ditawarkannya. Setelah Anda membuat pen baru atau menemukan “pen” Flutter yang dibuat oleh komunitas, Anda bisa menyimpan, memfavoritkan, menambahkan ke koleksi, membagikan di media sosial, atau bahkan mengubahnya untuk membuat versi Anda sendiri!

Selamat mencoba!

Kami berharap playground Flutter baru di CodePen ini memberdayakan Anda untuk membangun serta memamerkan animasi Flutter keren Anda, ide, skema, dan lainnya. Silakan bagikan desain Anda dengan kami di Twitter menggunakan #FlutterPen. Kami tak sabar ingin segera melihat kreasi Anda! Jika Anda ketinggalan pengumuman pekan lalu tentang pelatihan gratis, Anda mungkin perlu mengeceknya. Dan siap-siap: lebih banyak berita akan segera kami kabarkan.

Sumber : https://developers-id.googleblog.com/2020/04/pengumuman-dukungan-codepen-untuk.html?m=1

Tuesday, August 18, 2020

Android 11: Update Developer Preview 3

Tim kami, seperti Anda semua, semakin terbiasa dengan keadaan baru ini. Banyak dari kita, bekerja dari ruang tamu, dapur, halaman belakang dan kamar tidur. Jadi, dari rumah kami ke rumah Anda, kami ingin meluangkan waktu sejenak untuk membagikan developer preview terbaru untuk Android 11. Update ini mencakup perbaikan bug dan rangkaian peningkatan produktivitas untuk developer.
Anda bisa melihat beberapa penjelasannya di bawah ini, dan kunjungi situs developer Android 11 untuk detail selengkapnya tentang semua fitur baru di Android 11. Rilis hari ini untuk kalangan developer dan tidak ditujukan untuk penggunaan sehari-hari atau pengguna umumnya, sehingga kami menyediakannya melalui download manual dan flash untuk perangkat Pixel 2, 3, 3a, atau 4. Jika Anda sudah menjalankan build Developer Preview, Anda akan segera menerima update over-the-air (OTA) untuk rilis hari ini. Seperti biasa, beri tahu kami pendapat Anda, dan terima kasih atas masukan bermanfaat yang telah Anda berikan sejauh ini.


Apa yang ada di Developer Preview 3

Dalam rilis hari ini ada sejumlah fitur dan perubahan baru yang bisa Anda coba, serta update terbaru fitur, API, dan alat saat ini. Berikut adalah beberapa di antaranya:

Update exit reasons aplikasi - Aplikasi bisa keluar karena berbagai alasan, mulai dari error hingga system kill atau aksi pengguna. Di banyak jenis perangkat, konfigurasi memori, dan skenario pengguna yang digunakan aplikasi Anda, penting untuk memahami mengapa aplikasi tersebut keluar dan bagaimana keadaannya saat itu. Android 11 membuatnya lebih mudah dengan exit reasons API yang bisa Anda gunakan untuk meminta detail keluarnya aplikasi baru-baru ini. Di DP3 kami mengupdate API berdasarkan masukan Anda, jadi silakan lihat. Jika Anda belum berkesempatan melihat API baru ini, kami sarankan untuk mencobanya dan memberi tahu kami pendapat Anda di sini.

Analisis heap GWP-ASan - Android 11 menggunakan berbagai fitur untuk mengamankan komponen yang sangat penting dalam platform dan aplikasi. Di DP3, kami menambahkan GWP-ASan sebagai cara untuk membantu developer menemukan dan memperbaiki masalah keamanan memori. GWP-ASan adalah fitur alokasi sampling yang mendeteksi error memori heap dengan overhead atau dampak minimal pada kinerja. Kami mengaktifkan GWP-ASan untuk berjalan secara default di platform biner serta aplikasi sistem, dan sekarang Anda juga bisa mengaktifkannya untuk aplikasi Anda. Jika aplikasi Anda menggunakan kode atau library native, kami sarankan untuk mengaktifkan GWP-ASan dan mengujinya sesegera mungkin. Untuk detailnya, lihat dokumentasi.

ADB Incremental - Menginstal APK yang sangat besar dengan ADB (Android Debug Bridge) selama pengembangan bisa memperlambat dan berdampak pada produktivitas Anda, terutama bagi developer yang mengerjakan Game Android. Dengan ADB Incremental di Android 11, menginstal APK besar (2GB+) dari komputer pengembangan ke perangkat Android 11 bisa dilakukan 10x lebih cepat. Untuk menggunakan fitur developer baru ini, pertama-tama tandatangani APK Anda dengan format APK signature scheme v4 baru, lalu instal APK dengan fitur baris perintah ADB terbaru yang ada di Android 11 Preview SDK. Fitur baru ini adalah bagian dari rangkaian fitur baru yang kami bangun untuk membuat Anda lebih produktif dalam membangun game di Android. Perhatikan bahwa di DP3, ADB Incremental hanya berfungsi dengan perangkat Pixel 4 / 4XL karena perubahan sistem file yang diperlukan pada tingkat perangkat. Semua perangkat baru yang diluncurkan dengan Android 11 akan menyertakan perubahan ini dan mendukung ADB Incremental. Pelajari lebih lanjut di sini.

Wireless Debugging - Di Android 11, kami mengubah total pengalaman proses debug menggunakan ADB melalui koneksi Wi-Fi. Dengan keterbatasan port USB di laptop, serta banyaknya kabel USB & koneksi yang harus dikelola, fitur Wireless Debugging di Android 11 bisa membantu Anda menjadi lebih produktif. Tidak seperti alur kerja proses debug TCP/IP saat ini, Wireless Debugging di Android 11 tidak memerlukan kabel, selalu mengingat koneksi, dan bisa memanfaatkan kecepatan penuh standar Wi-Fi terbaru. Di DP3, gunakan alur kerja kode penyambungan untuk mulai menggunakan fitur developer ini. Kami berencana menambahkan pengalaman terintegrasi untuk Wireless Debugging dengan pemindaian kode QR dalam rilis Android Studio mendatang, tetapi kami ingin mendapatkan masukan awal Anda pada fitur baris perintah yang ditawarkan di Android 11 DP3. Untuk detailnya, lihat dokumentasi.
Coba fitur wireless debugging baru di Opsi Developer
Coba fitur wireless debugging baru di Opsi Developer.

Update data access auditing - Di DP3 kami mengganti nama beberapa API untuk fitur developer Android 11. Jika Anda sudah menggunakan API ini, pastikan untuk mengecek perubahannya. Jika Anda belum familier, data access auditing memungkinkan Anda melengkapi aplikasi agar lebih memahami caranya mengakses data pengguna dan alur penggunaannya. Misalnya, ia bisa membantu Anda mengidentifikasi setiap akses yang tidak disengaja ke data pribadi dalam kode Anda atau dalam SDK yang mungkin Anda gunakan. Cobalah data access auditing di aplikasi Anda - Anda bisa membaca selengkapnya di sini. Beri tahu kami masukan Anda di sini.
Untuk detail selengkapnya tentang semua perubahan di Developer Preview 3, lihat laporan perbedaan DP3 dan baca catatan rilis untuk detail tentang masalah umum.


Kompatibilitas aplikasi

Dengan Developer Preview 3, kami sudah hampir menyelesaikan fitur dan API serta mengalihkan fokus kami ke penyempurnaan dan kinerja. Jika Anda belum melakukannya, sekaranglah saatnya untuk mulai menguji kompatibilitas aplikasi Anda dan mengidentifikasi semua pekerjaan yang perlu dilakukan. Kami sarankan untuk merilis update aplikasi yang kompatibel dengan Android 11 Beta untuk mendapatkan masukan dari kelompok pengguna Android Beta yang lebih besar.

Timeline pengujian kompatibilitas

Ketika kami mencapai Stabilitas Platform, perilaku sistem, daftar abu-abu non-SDK, dan API akan dimatangkan. Pada saat itu, rencanakan pengujian kompatibilitas final Anda dan rilis aplikasi, SDK, atau library yang sudah sepenuhnya kompatibel sesegera mungkin sehingga itu semua siap untuk rilis Android 11 final. Anda bisa membaca selengkapnya di timeline untuk developer.
Anda bisa memulai pengujian kompatibilitas hari ini pada perangkat Pixel 2, 3, 3a, atau 4, atau Anda dapat menggunakan Android Emulator. Cukup flash build terbaru, instal aplikasi produksi Anda, dan uji alur penggunaan. Pastikan untuk meninjau perubahan perilaku untuk area di mana aplikasi Anda mungkin terpengaruh. Tidak perlu mengubah targetSdkVersion aplikasi saat ini, meskipun kami sarankan mengevaluasi pekerjaan karena banyak perubahan diterapkan setelah aplikasi Anda menargetkan API level baru.
Untuk membantu pengujian, kami memberikan tombol beralih untuk perubahan targetSdk, sehingga Anda bisa mengaktifkan atau menonaktifkannya secara individual dari Opsi developer atau ADB. Lihat detail selengkapnya di sini. Lihat juga daftar abu-abu antarmuka non-SDK terbatas, yang juga dapat diaktifkan/dinonaktifkan.

Tombol beralih kompatibilitas aplikasi di Opsi Developer

Tombol beralih kompatibilitas aplikasi di Opsi Developer.


Memulai dengan Android 11

Developer Preview 3 memiliki semua yang Anda butuhkan untuk mencoba fitur Android 11 terbaru, menguji aplikasi Anda, dan memberi kami masukan. Cukup download dan flash gambar sistem perangkat ke perangkat Pixel 2 / 2 XL, Pixel 3 / 3 XL, Pixel 3a / 3a XL, atau Pixel 4 / 4 XL, atau siapkan Android Emulator melalui Android Studio. Berikutnya, update lingkungan Android Studio Anda dengan fitur dan Android 11 Preview SDK terbaru, lihat panduan penyiapan untuk detailnya.
Seperti biasa, masukan Anda sangatlah penting, karena itu terus beri tahu kami pendapat Anda — semakin cepat kami mendengarnya, semakin besar kemungkinan kami akan mengintegrasikan masukan Anda. Bila menemui masalah, silakan laporkan di sini.
Untuk informasi selengkapnya tentang Android 11, kunjungi situs developer Android 11.

Sumber : https://developers-id.googleblog.com/2020/04/android-11-developer-preview-3.html?m=1

Menjadi Developer Student Club Lead

untuk menjadi seorang developer; bila kamu tertarik untuk memimpin, mempunyai passion di bidang teknologi, suka memecahkan masalah, terdorong untuk membantu komunitas disekitarmu, maka Developer Students Clubs bisa menjadi rumah untukmu. Aplikasi formulir untuk tahun akademik 2020-2021 sedang dibuka. Siap untuk ambil bagian? Mulai perjalananmu melalui goo.gle/dsc-leads.

Mau tahu lebih lanjut? Cek detail di bawah ini.





Apa itu Developer Student Clubs?


Developer Student Clubs (DSC) adalah kelompok komunitas berdasarkan universitas dan didesain untuk mahasiswa yang tertarik dengan teknologi Google developers. Dengan format program yang bertemu langsung dan online, mahasiswa dari program sarjana dan pascasarjana dengan ketertarikan untuk bertumbuh sebagai seorang developer boleh untuk bergabung. Dengan menjadi bagian DSC, mahasiswa dapat menambah ilmu dengan cara belajar bersama dan membuat solusi untuk bisnis lokal serta komunitas mereka.





Kenapa saya harus bergabung?

  • Menambah keahlian untuk menjadi seorang developer dengan konten pelatihan dari Google.
  • Berpikir untuk membuat project sendiri, dan memimpin kelompok yang terdiri dari teman-teman mahasiswa untuk mengembangkannya.
  • Membanguin prototype dan solusi untuk masalah lokal.
  • Ikut serta dalam kompetisi developer tingkat global.
  • Mendapat akses ke acara dan konferensi Google pilihan.
  • Mendapat pengalaman berharga.






Apakah ada Developer Student Club dekat saya?


Developer Student Clubs saat ini ada di 68+ negara dengan 860+ kelompok. Cari kelompok DSC yang terdekat denganmu atau belajar cara membuka kelompokmu sendiri, disini.



Kapan saya harus mengirim formulir aplikasi? 


Kamu boleh menyatakan ketertarikanmu dengan cara mengisi formulir aplikasi sampai 16 Mei, 1:59pm WIB. Mulai perjalananmu disini.


Pastikan kamu belajar tentang kriteria programnya.


DSC Leads saat ini bekerja membangun projek yang berdampak di seluruh dunia. Tonton video ini tentang salah satu lead yang bekerja untuk melindungi komunitasnya dari banjir yang melanda Indonesia. Baca juga cerita ini, tentang bagaimana salah satu lead membantu memodernisasi sistem kesehatan di Uganda.


Kami menantikan kehadiran kelompok baru dari Developer Student Clubs. Punya teman yang menurutmu cocok? Bagikan artikel ini. Semoga semua mahasiswa yang bercita-cita menjadi developer mendapat jalur terbaik untuk membangun produk dan komunitas yang berdampak.





*Developer Student Clubs adalah organisasi independen yang dipimpin oleh mahasiswa, dan kehadirannya tidak menunjukan hubungan antara Google dengan universitas dimana mahasiswa berasal.

Sumber : https://developers-id.googleblog.com/2020/04/menjadi-developer-student-club-lead.html?m=1

Wednesday, March 25, 2020

Ibunda Presiden Jokowi Meninggal Dunia

Ibunda Presiden Jokowi Meninggal Dunia

Kabar duka datang dari keluarga Presiden Joko Widodo (Jokowi). Ibunda dari Jokowi, Sudjiatmi, meninggal dunia.
"Berita duka. Innalillahi wa innaillaihi rojiun. Eyang Notomiharjo, Ibunda Bapak Presiden Jokowi berpulang di Solo pukul 16.45 WIB tadi," demikian kabar yang disampaikan Wakil Menteri Desa Pembangunan Daerah Tertinggal dan Transmigrasi Budi Arie Setiadi, Rabu (25/3/2020).

Dia memohon doa semua pihak agar almarhumah husnul khotimah. Belum diketahui perihal kondisi almarhumah sebelum meninggal dunia, termasuk sakit yang dideritanya.

Sunday, January 12, 2020

Peluncuran Flutter 1.2 di Mobile World Congress

Tim Flutter mengadakan Mobile World Congress di Barcelona, pertemuan tahunan terbesar industri teknologi seluler. Satu tahun yang lalu, kami mengumumkan Flutter versi beta pertama di event ini, dan sejak saat itu Flutter tumbuh lebih cepat dari yang bisa kami bayangkan. Jadi sepertinya hal yang pas untuk merayakan peristiwa tahunan ini adalah dengan rilis update stabil pertama untuk Flutter.


Flutter 1.2
Flutter 1.2 adalah update fitur yang pertama untuk Flutter. Kami memfokuskan rilis ini pada beberapa bidang utama:
Peningkatan stabilitas, kinerja, dan kualitas framework inti.

Menyempurnakan sentuhan akhir visual dan fungsionalitas widget yang ada.

Perangkat berbasis web baru untuk developer yang membangun aplikasi Flutter.

Setelah meluncurkan Flutter 1.0, kami memfokuskan banyak energi dalam beberapa bulan terakhir ini untuk meningkatkan pengujian dan infrastruktur kode kami, membersihkan tumpukan permintaan pull, dan meningkatkan kinerja serta kualitas framework secara keseluruhan. Kami memiliki daftar lengkap permintaan ini di wiki Flutter untuk mereka yang tertarik pada detailnya. Pekerjaan ini juga meliputi dukungan yang lebih luas untuk bahasa UI baru seperti Swahili.

Kami terus melakukan penyempurnaan pada set widget Material dan Cupertino, untuk mendukung penggunaan Material yang lebih fleksibel dan terus mengusahakan kesesuaian pixel-perfect di iOS. Pekerjaan yang terakhir meliputi dukungan untuk mengedit teks floating cursor, serta menunjukkan perhatian terus-menerus pada detail kecil (misalnya, kami mengupdate cara kursor pengedit teks menggambar di iOS untuk representasi yang sebenarnya dari urutan animasi dan penggambaran). Kami menambahkan dukungan untuk rangkaian fungsi kemudahan animasi yang lebih luas, terinspirasi oleh karya Robert Penner. Kami juga menambahkan dukungan untuk event keyboard baru dan dukungan untuk mengarahkan kursor mouse, sebagai persiapan untuk dukungan yang lebih mendalam bagi sistem operasi desktop-class.

Tim plugin juga sibuk di Flutter 1.2, dengan pekerjaan yang sedang berlangsung untuk mendukung pembelian dalam apl, serta banyak perbaikan bug untuk pemutar video, webview, dan peta. Dan berkat permintaan pull yang dikontribusikan oleh developer dari Intuit, kami sekarang memiliki dukungan untuk Android App Bundles, format pengemasan baru yang membantu mengurangi ukuran aplikasi dan mengaktifkan fitur-fitur baru seperti pengiriman dinamis untuk aplikasi Android.

Terakhir, Flutter 1.2 menyertakan Dart 2.2 SDK, update yang membawa peningkatan kinerja signifikan untuk kode terkompilasi bersama dengan dukungan bahasa baru untuk menginisialisasi set. Untuk informasi selengkapnya tentang pekerjaan ini, Anda bisa membaca pemberitahuan Dart 2.2.
(Sebagai tambahan, beberapa orang mungkin bertanya-tanya mengapa rilis ini diberi nomor 1.2. Tujuan kami adalah meluncurkan rilis 1.x ke saluran 'beta' setiap bulannya, dan merilis update kira-kira setiap kuartal ke saluran 'stabil' yang siap untuk penggunaan produksi. Versi 1.1 bulan lalu adalah rilis beta, dan karenanya 1.2 adalah rilis stabil kami yang pertama.)

Fitur Baru untuk Developer Flutter

Developer seluler berasal dari berbagai latar belakang dan sering kali memilih fitur pemrograman dan editor yang berbeda. Flutter sendiri mendukung fitur yang beragam, termasuk dukungan kelas satu untuk Android Studio dan Visual Studio Code serta dukungan untuk membangun aplikasi dari baris perintah, jadi kami tahu bahwa kami membutuhkan fleksibilitas dalam cara kami mengekspos proses debug dan fitur inspeksi runtime.

Bersama Flutter 1.2, kami gembira bisa memperlihatkan pratinjau rangkaian fitur pemrograman berbasis web yang baru untuk membantu developer Flutter melakukan debug dan menganalisis aplikasi mereka. Fitur-fitur ini sekarang bisa diinstal bersama dengan ekstensi dan add-in untuk Visual Studio Code dan Android Studio, dan menawarkan sejumlah kemampuan:

Widget inspector, yang memungkinkan visualisasi dan eksplorasi hierarki pohon yang digunakan Flutter untuk rendering.
Tampilan timeline yang membantu Anda mendiagnosis aplikasi pada level bingkai-per-bingkai, mengidentifikasi pekerjaan rendering dan komputasi yang mungkin menyebabkan 'sendatan' animasi dalam aplikasi Anda.

Source-level debugger lengkap yang memungkinkan Anda menyusuri kode, menyetel breakpoint, dan menyelidiki tumpukan panggilan.

Tampilan logging yang menunjukkan aktivitas yang Anda log dari aplikasi serta kejadian jaringan, framework dan pembersihan sampah memori.



Kami berencana untuk berinvestasi lebih lanjut dalam perangkat berbasis web baru ini untuk developer Flutter serta Dart dan, seiring meningkatnya pengalaman berbasis web, kami berencana untuk membangun layanan ini langsung ke fitur seperti Visual Studio Code.
Apa yang berikutnya untuk Flutter?

Selain karya engineering, kami membutuhkan sedikit waktu setelah Flutter 1.0 untuk mendokumentasikan roadmap 2019, dan Anda akan melihat bahwa kami memiliki banyak pekerjaan di depan kami.

Fokus besar untuk 2019 adalah mengembangkan Flutter melampaui platform seluler. Di Flutter Live, kami mengumumkan project bernama sandi "Hummingbird", yang membawa Flutter ke web, dan kami berencana untuk membagikan pratinjau teknis dalam beberapa bulan mendatang. Selain itu, kami terus berupaya menghadirkan Flutter ke perangkat desktop-class; ini membutuhkan usaha baik pada tingkat framework seperti dijelaskan di atas, serta kemampuan untuk mengemas dan menerapkan aplikasi ke sistem operasi seperti Windows dan Mac, di mana kami berinvestasi melalui project Flutter Desktop Embedding.
Flutter Create: apa yang bisa Anda lakukan dengan 5K dari Dart?

Kami juga bersemangat meluncurkan Flutter Create, sebuah kontes yang menantang Anda untuk membangun sesuatu yang menarik, menginspirasi, dan indah dengan Flutter menggunakan lima kilobyte atau kurang dari kode Dart. 5K tidaklah banyak -- untuk file MP3 biasa, ini sekitar sepertiga detik musik -- tetapi kami bertaruh Anda bisa membuat kami takjub dengan apa yang dapat Anda capai di Flutter dengan kode yang sangat kecil tersebut.


Kontes ini berjalan hingga 7 April, jadi Anda punya waktu beberapa minggu untuk membangun sesuatu yang keren. Kami memiliki beberapa hadiah menarik, termasuk workstation developer iMac Pro komplet dengan prosesor 14-inti dan memori 128GB yang bernilai lebih dari $10.000! Kami akan mengumumkan pemenang di Google I/O, di mana kami akan mengadakan sejumlah pembicaraan Flutter, codelab, dan aktivitas.

//developers-id.googleblog.com/2019/03/peluncuran-flutter-12-di-mobile-world.html

Saturday, January 11, 2020

Flutter Release versi 1: Langsung dari GMTC di Beijing

Hari ini di GMTC front-end conference di Beijing, kami mengumumkan Flutter Release Preview versi 1, yang menandakan fase baru pengembangan bagi Flutter selagi kita bergerak menuju tahap akhir stabilisasi untuk versi 1.0.


Google I/O bulan lalu adalah perayaan bagi tim Flutter: mencapai versi Beta, kami senang sekali bisa bertemu dengan banyak developer yang belajar, membuat prototipe, atau build dengan Flutter. Segera setelah Google I/O, kami terus melihat pertumbuhan cepat dalam ekosistem Flutter, dengan peningkatan 50% pada pengguna Flutter aktif. Kami juga melihat lebih dari 150 event Flutter individual yang diselenggarakan di lima puluh negara: dari New York City hingga Uyo, Nigeria; dari Tokyo dan Osaka di Jepang hingga Nuremberg, Jerman.


Salah satu pengukur umum dari momentum komunitas adalah jumlah bintang GitHub, dan kami juga melihat pertumbuhan yang luar biasa di sini, dengan Flutter menjadi salah satu dari 100 repo software terbaik di GitHub pada bulan Mei.

Pengumuman Flutter Release Preview versi 1
Hari ini kami mengambil langkah besar ke depan, dengan ketersediaan langsung Flutter Release Preview versi 1. Tampaknya sangat menguntungkan melakukan pengumuman ini di Beijing pada GMTC Global Front-End Conference. Cina adalah populasi developer terbesar ketiga yang menggunakan Flutter, setelah Amerika Serikat dan India. Perusahaan seperti Alibaba dan Tencent sudah mengadopsi Flutter untuk aplikasi produksi, dan terdapat komunitas lokal yang semakin bertambah yang menerjemahkan konten dan menambahkan package serta cermin untuk developer Cina.

Perubahan dari versi Beta ke ke release preview bersama rilis ini menandakan kepercayaan kami pada stabilitas dan kualitas dari apa yang kami miliki dengan Flutter, dan fokus kami pada perbaikan bug dan stabilisasi.

Kami telah memposting artikel yang lebih panjang dengan detail mengenai apa yang baru di Flutter Release Preview versi 1 di saluran Medium kami. Anda bisa mendownload Flutter Release Preview versi 1 langsung dari situs Flutter, atau cukup jalankan flutter upgrade dari penginstalan lama.

Sangat menyenangkan melihat orang lain merasakan Flutter untuk pertama kalinya. Artikel dari developer iOS yang baru saja menyelesaikan porting Aplikasi iOS ke Flutter adalah dukungan positif bagi kesiapan project ini untuk penggunaan produksi dunia nyata:

"Saya belum pernah begitu bersemangat lagi tentang teknologi sejak Ruby on Rails atau Go... Setelah mendedikasikan bertahun-tahun mempelajari pengembangan Aplikasi iOS secara mendalam, saya merasa sangat bersalah karena telah mengabaikan begitu banyak teman-teman Android di luar sana. Selain itu, mempelajari framework lintas platform lainnya pada saat itu sangat tidak menarik bagi saya karena apa yang tersedia... Menulis aplikasi Flutter telah menjadi tes lakmus dan Flutter lulus tes tersebut. Flutter adalah sesuatu yang saya rasakan benar-benar bisa saya dalami dan yang paling penting, saya benar-benar menikmatinya."

Karena kami semakin dekat memublikasikan rilis pertama saluran "stabil", kami sudah siap bagi lebih banyak developer untuk mem-build dan menerapkan solusi yang menggunakan Release Preview ini. Ada banyak penawaran pelatihan untuk membantu Anda mempelajari Flutter: dari sesi I/O hingga newsletter hingga video praktik hingga acara developer. Kami ingin segera melihat kreasi yang Anda build!

//developers-id.googleblog.com/2018/07/flutter-release-preview-versi-1.html

Friday, January 10, 2020

Aplikasi Hamilton yang dibuat dalam 3 bulan dengan Flutter meraih lebih dari 1 juta penginstalan [Video]

Aslinya diposting pada Flutter Medium oleh Martin Aguinis


Hamilton dan Posse, agensi desain dan pengembangan di New York, hanya membutuhkan tiga bulan untuk mengembangkan dan meluncurkan aplikasi seluler bagi acara Broadway yang sedang hit. Bagaimana mereka melakukannya? Menggunakan Flutter, framework UI seluler Google yang baru.

Menjangkau jutaan pengguna — dengan setengah juta pengguna aktif bulanan yang luar biasa dan dipublikasikan di App Store dan Google Play— aplikasi memungkinkan penggemar memasukkan lotre tiket, membeli merchandise, bermain trivia, berfoto selfie dengan #HamCam, membaca berita dan interviu terupdate, dan banyak lagi.

Tonton studi kasus video ini untuk melihat bagaimana Flutter terus membantu aplikasi seperti Hamilton agar berhasil di iOS dan Android. Anda bisa membaca detail selengkapnya tentang pengembangan aplikasi ini pada entri blog Posse.

Flutter gratis dan open source. Mulai sekarang di flutter.io. Kami tak sabar ingin segera melihat kreasi Anda!

//developers-id.googleblog.com/2018/04/video-aplikasi-hamilton-yang-dibuat.html

Thursday, October 24, 2019

Kotlin untuk Android

Hari ini menandai awal KotlinConf 2018 - pertemuan tatap muka tahunan terbesar komunitas Kotlin. 2018 menjadi tahun yang besar bagi Kotlin, karena bahasa ini semakin banyak diadopsi dan disukai developer. Bahkan, 27% dari 1.000 aplikasi Android teratas di Google Play sudah menggunakan Kotlin. Yang lebih penting lagi, developer Android sangat menyukai bahasa ini dengan tingkat kepuasan lebih dari 97% dalam survei terbaru kami. Tidaklah mengherankan sehingga Kotlin terpilih sebagai bahasa #2 yang paling disukai dalam survei StackOverflow 2018.

Google mendukung Kotlin sebagai bahasa pemrograman kelas-satu untuk pengembangan Android. Dalam 12 bulan terakhir, kami telah memberikan sejumlah perbaikan penting untuk pengalaman developer Kotlin. Ini termasuk SDK ramah-Kotlin, Android KTX, pemeriksaan Lint baru dan berbagai perbaikan dukungan Kotlin di Android Studio. Kami juga telah meluncurkan dukungan Kotlin dalam dokumentasi resmi kami, contoh-contoh unggulan baru di Kotlin, kursus Kotlin Bootcamp Udacity baru, #31DaysOfKotlin dan konten mendalam lainnya. Kami berkomitmen untuk terus meningkatkan pengalaman developer Kotlin.

Seiring dengan terus berkembangnya bahasa, semakin banyak developer yang menemukan keunggulan Kotlin di seluruh dunia. Baru-baru ini, kami melakukan perjalanan ke India dan bekerja dengan developer lokal seperti Zomato untuk lebih memahami bagaimana adopsi Kotlin telah menguntungkan pengembangan Android mereka. Zomato adalah layanan penelusuran & penemuan restoran terkemuka yang beroperasi di 24 negara, dengan lebih dari 150 juta pengguna setiap bulan. Kotlin membantu Zomato mengurangi jumlah baris kode di aplikasi mereka secara signifikan, dan Kotlin juga membantu mereka menemukan cacat penting dalam aplikasi mereka pada waktu kompilasi. Anda bisa menonton kisah adopsi Kotlin mereka dalam video di bawah ini.

Android Developer Story: Zomato uses Kotlin to write safer, more concise code.
Melampaui Android, dengan senang hati kami umumkan bahwa tim Google Cloud Platform meluncurkan portal Kotlin khusus hari ini. Ini akan mempermudah developer dalam menemukan sumber daya yang terkait dengan Kotlin di Google Cloud. Kami ingin membuat penggunaan Kotlin semudah mungkin bagi Anda, baik di seluler atau di Cloud.



Halaman beranda Kotlin di Google Cloud Platform
Mengadopsi bahasa baru adalah keputusan yang besar bagi kebanyakan perusahaan, dan Anda harus yakin bahwa bahasa yang Anda pilih memiliki masa depan cerah. Itulah sebabnya Google bergabung dengan JetBrains dan mendirikan Kotlin Foundation. Kotlin Foundation akan memastikan bahwa Kotlin terus berkembang pesat, tetap bebas dan terbuka. Anda bisa mempelajari lebih lanjut tentang Kotlin Foundation di sini.

Sangat menarik menjadi developer Kotlin. Jika Anda belum mencoba Kotlin, kami mendorong Anda untuk bergabung dengan komunitas global yang sedang berkembang ini. Anda bisa memulai dengan mengunjungi kotlinlang.org atau halaman Kotlin Developer Android.
Share on Twitter Share on Facebook

lihat selengkapnya disini https://developers-id.googleblog.com/2018/10/momentum-kotlin-untuk-android-dan.html

Wednesday, October 23, 2019

backup Android Anda

backup Android Anda

Android adalah semua tentang pilihan. Karena itulah, Android berusaha menyediakan banyak pilihan bagi pengguna untuk melindungi data mereka. Dengan menggabungkan Android Backup Service dan Google Cloud Titan Technology, Android mengambil langkah tambahan untuk mengamankan data pengguna sembari menjaga privasi mereka.

Mulai Android Pie, perangkat bisa memanfaatkan kemampuan baru ketika data aplikasi yang di-backup hanya bisa didekripsi oleh kunci yang dihasilkan secara acak di klien. Kunci dekripsi ini dienkripsi menggunakan PIN/pola/kode sandi kunci pengguna, yang tidak diketahui oleh Google. Kemudian, material kunci yang dilindungi kode sandi ini dienkripsi ke chip keamanan Titan di lantai pusat data kami. Chip Titan dikonfigurasikan untuk hanya merilis kunci dekripsi backup ketika menerima klaim yang benar yang berasal dari kode sandi pengguna. Karena chip Titan harus mengotorisasi setiap akses ke kunci dekripsi, ia bisa memblokir akses secara permanen setelah terlalu banyak upaya yang salah dalam menebak kode sandi pengguna, sehingga mengurangi serangan brute force. Jumlah upaya yang salah dibatasi secara ketat oleh firmware Titan khusus yang tidak bisa diupdate tanpa menghapus isi chip. Secara desain, ini berarti bahwa tidak seorang pun (termasuk Google) bisa mengakses data aplikasi backup pengguna tanpa secara khusus mengetahui kode sandi mereka.

Untuk meningkatkan kepercayaan diri kami bahwa teknologi baru ini secara aman mencegah siapa pun mengakses data aplikasi yang di-backup pengguna, tim Android Security & Privacy menyewa ahli keamanan cyber global dan mitigasi risiko NCC Group untuk menyelesaikan audit keamanan. Beberapa hasilnya mencakup hal positif seputar proses desain keamanan Google, validasi kualitas kode, dan mitigasi untuk vektor serangan yang dikenal telah dipertimbangkan sebelum peluncuran layanan. Saat ada beberapa masalah yang ditemukan selama audit ini, para engineer segera memperbaikinya. Untuk detail selengkapnya tentang cara kerja layanan menyeluruh dan laporan terperinci temuan NCC Group, klik di sini.

Mendapatkan tinjauan eksternal untuk upaya keamanan kami adalah salah satu dari banyak cara kami dalam menunjukkan bahwa Google dan Android menjaga transparansi dan keterbukaan yang pada gilirannya akan membantu pengguna merasa aman ketika menyangkut data mereka. Baik itu 100-an jam data game atau preferensi personalisasi di Google app favorit Anda, informasi pengguna kami selalu terlindungi.

Kami ingin berterima kasih atas kontribusi Shabsi Walfish, Software Engineering Lead, Identity and Authentication untuk karya ini

lihat selengkapnya disini https://developers-id.googleblog.com/2018/11/google-melindungi-backup-anda.html

Tuesday, October 22, 2019

Memperkenalkan WorkManager



Ada banyak pertimbangan dan praktik terbaik untuk menangani pekerjaan latar belakang, yang diuraikan dalam seri entri blog Google Power. Salah satu hal yang berulang kali disebut adalah library Android Jetpack yang disebut WorkManager, yang memperluas kemampuan API framework JobScheduler dan mendukung Android 4.0+ (API 14+). WorkManager beta baru saja dirilis hari ini!
Entri blog ini adalah yang pertama dari seri baru WorkManager. Kita akan menjelajahi dasar-dasar WorkManager, bagaimana dan kapan waktu yang tepat menggunakannya, dan apa yang terjadi di balik layar. Kemudian kita akan membahas kasus penggunaan yang lebih kompleks.

Apa yang dimaksud dengan WorkManager?
WorkManager adalah salah satu Komponen Arsitektur Android dan merupakan bagian dari Android Jetpack, sebuah cara baru dan ringkas dalam cara membangun aplikasi Android modern.

WorkManager adalah library Android yang menjalankan pekerjaan latar belakang yang dapat ditangguhkan saat batasan pekerjaan terpenuhi.

WorkManager ditujukan untuk tugas-tugas yang membutuhkan jaminan bahwa sistem akan menjalankannya bahkan bila aplikasi ditutup.

Dengan kata lain, WorkManager menyediakan API ramah-baterai yang merangkum evolusi bertahun-tahun dari pembatasan perilaku latar belakang Android. Ini sangat penting untuk aplikasi Android yang perlu menjalankan tugas latar belakang!

Kapan waktu yang tepat menggunakan WorkManager
WorkManager menangani pekerjaan latar belakang yang perlu dijalankan ketika berbagai batasan terpenuhi, terlepas dari apakah proses aplikasi tersebut aktif atau tidak. Pekerjaan latar belakang bisa dimulai saat aplikasi berada di latar belakang, saat aplikasi berada di latar depan, atau saat aplikasi dimulai di latar depan tetapi beralih ke latar belakang. Apa pun yang dilakukan aplikasi, pekerjaan latar belakang harus terus dijalankan, atau dimulai ulang bila Android mematikan prosesnya.

Salah satu kekeliruan umum tentang WorkManager adalah bahwa ia diperuntukkan bagi tugas yang perlu dijalankan di thread “latar belakang” tetapi tidak perlu bertahan dari penutupan prosesnya. Bukan itu masalahnya. Ada solusi lain untuk kasus penggunaan ini seperti coroutines Kotlin, ThreadPools, atau library seperti RxJava. Anda bisa menemukan informasi selengkapnya tentang kasus penggunaan ini dalam panduan pemrosesan latar belakang.

Ada banyak situasi berbeda ketika Anda perlu menjalankan pekerjaan latar belakang, dan karena itu Anda membutuhkan solusi berbeda untuk menjalankan pekerjaan latar belakang. Entri blog tentang pemrosesan latar belakang ini menyediakan banyak informasi keren tentang kapan waktu yang tepat menggunakan WorkManager. Lihatlah diagram berikut yang bersumber dari blog:



Diagram dari Modern background execution in Android
Dalam kasus WorkManager, ia cocok digunakan untuk pekerjaan latar belakang yang harus diselesaikan dan dapat ditangguhkan.

Untuk memulai, tanyakan pada diri Anda sendiri:
Apakah tugas ini harus diselesaikan?

Jika aplikasi ditutup pengguna, apakah ia masih harus menyelesaikan tugas? Contohnya adalah aplikasi catatan dengan sinkronisasi jarak jauh; setelah Anda selesai menulis catatan, Anda tentu berharap aplikasi akan menyinkronkan catatan dengan server backend. Semuanya ini tetap berjalan bahkan bila Anda beralih ke aplikasi lain dan OS harus menutup aplikasi tersebut untuk mendapatkan kembali sebagian memori. Ini juga harus tetap berjalan bahkan bila Anda memulai ulang perangkat. WorkManager memastikan tugas diselesaikan.

Apakah tugas ini dapat ditangguhkan?
Bisakah kita menjalankannya nanti, atau ini hanya berguna jika tugas dijalankan sekarang? Jika tugas bisa dijalankan nanti, berarti tugasnya dapat ditangguhkan. Kembali ke contoh sebelumnya, tentu sangat menyenangkan jika catatan Anda langsung segera diupload, tetapi bila ini tidak memungkinkan dan sinkronisasi terjadi belakangan, itu bukanlah masalah besar. WorkManager menghormati pembatasan latar belakang OS dan mencoba menjalankan pekerjaan Anda dengan penggunaan baterai seefisien mungkin.

Jadi, sebagai panduan, WorkManager ditujukan untuk tugas-tugas yang membutuhkan jaminan bahwa sistem akan menjalankannya, bahkan bila aplikasi ditutup. WorkManager tidak ditujukan untuk pekerjaan latar belakang yang membutuhkan eksekusi segera atau pada waktu yang tepat. Jika Anda membutuhkan agar sebuah pekerjaan dieksekusi pada waktu yang tepat (seperti jam alarm, atau pengingat acara), gunakan AlarmManager. Untuk pekerjaan yang harus dieksekusi dengan segera tetapi berjalan lama, sering kali Anda harus memastikan bahwa pekerjaan dieksekusi saat berada di latar depan; apakah itu dengan membatasi eksekusi ke latar depan (dalam hal ini, pekerjaan tersebut tidak lagi berjalan sebagai pekerjaan latar belakang) atau menggunakan Foreground Service.

WorkManager bisa dan sebaiknya dipasangkan dengan API lain saat Anda perlu memicu beberapa pekerjaan latar belakang dalam skenario yang lebih kompleks:

Jika server Anda memicu pekerjaan, WorkManager bisa dipasangkan dengan Firebase Cloud Messaging.

Jika Anda mendengarkan siaran menggunakan penerima siaran dan kemudian perlu memicu pekerjaan yang berjalan lama, Anda bisa menggunakan WorkManager. Perhatikan bahwa WorkManager menyediakan dukungan untuk banyak Constraints umum yang biasanya datang sebagai siaran — dalam kasus ini, Anda tidak perlu mendaftarkan penerima siaran Anda sendiri.

Mengapa menggunakan WorkManager?
WorkManager menjalankan pekerjaan latar belakang sembari menangani masalah kompatibilitas dan menjalankan praktik terbaik bagi baterai dan kesehatan sistem untuk Anda.

Selain itu, dengan menggunakan WorkManager, Anda bisa menjadwalkan tugas periodik dan rantai tugas dependen yang kompleks: pekerjaan latar belakang dapat dieksekusi secara paralel atau berurutan, dan Anda bisa menetapkan urutan eksekusi. WorkManager menangani input dan output antar tugas dengan lancar.

Anda juga bisa menetapkan kriteria mengenai kapan tugas latar belakang harus dijalankan. Misalnya, tidak ada alasan untuk membuat permintaan HTTP ke server jarak jauh jika perangkat tidak memiliki sambungan jaringan. Jadi, Anda bisa menetapkan Constraint bahwa suatu tugas hanya dapat dijalankan ketika terdapat sambungan jaringan.

Sebagai bagian dari eksekusi terjamin, WorkManager mengelola seluruh pekerjaan Anda bila perangkat dimulai ulang dan proses dihentikan secara paksa. Anda juga bisa dengan mudah menentukan strategi coba lagi jika pekerjaan Anda dihentikan dan Anda ingin mencobanya lagi nanti.

  • Yang terakhir, WorkManager memungkinkan Anda mengawasi status permintaan pekerjaan sehingga Anda bisa mengupdate UI.
  • Sebagai ringkasan, WorkManager menawarkan keuntungan berikut:
  • Menangani kompatibilitas dengan berbagai versi OS
  • Mengikuti praktik terbaik kesehatan sistem
  • Mendukung tugas tidak bersamaan dan tugas periodik
  • Mendukung tugas berantai dengan input/output
  • Anda bisa menyetel batasan kapan tugas dijalankan
  • Menjamin eksekusi tugas, bahkan bila aplikasi atau perangkat dimulai ulang

Mari kita lihat contoh konkretnya di mana kita membangun pipeline tugas bersamaan yang menerapkan filter ke sebuah gambar. Hasilnya kemudian dikirim ke tugas compress dan kemudian ke tugas upload.

Kita bisa menetapkan serangkaian batasan untuk tugas-tugas ini dan menentukan kapan mereka dapat dieksekusi:



Contoh rantai tugas dengan batasan
Semua pekerja ini menetapkan urutan yang tepat: mis. kita tidak tahu urutan pemfilteran gambar, tetapi kita tahu bahwa pekerja Compress hanya akan mulai setelah semua pekerja Filter selesai.

Cara kerja penjadwal WorkManager
Untuk memastikan kompatibilitas mundur ke API level 14, WorkManager memilih cara yang tepat untuk menjadwalkan tugas latar belakang bergantung pada API level perangkat. WorkManager bisa menggunakan JobScheduler atau kombinasi dari BroadcastReceiver dan AlarmManager.



Bagaimana WorkManager menentukan penjadwal yang akan digunakan
Apakah WorkManager siap digunakan untuk produksi?

WorkManager sekarang dalam versi beta. Ini berarti bahwa tidak akan ada perubahan yang merusak API dalam revisi utama ini.

Ketika WorkManager versi stabil sudah dirilis, WorkManager akan menjadi cara yang disukai untuk menjalankan tugas latar belakang. Karena alasan ini, sekaranglah saat yang tepat untuk mulai menggunakan WorkManager dan membantu mengembangkannya!

lihat selengkap nya disini https://developers-id.googleblog.com/2019/01/memperkenalkan-workmanager.html

Monday, October 21, 2019

Data Binding Android dan Pelajaran yang Didapat

Data Binding Library (yang selanjutnya akan kami sebut ‘DB library’ dalam postingan ini) menawarkan cara yang fleksibel dan kuat untuk mengikat data ke UI Anda, tetapi seperti pepatah lama: ‘kekuatan yang besar diikuti tanggung jawab yang besar’. Hanya karena Anda menggunakan pengikatan data, bukan berarti Anda bisa menghindar dari menjadi pelaku UI yang baik.
Saya telah menggunakan pengikatan data di Android selama beberapa tahun terakhir dan postingan ini merinci beberapa hal yang telah saya pelajari selama ini.

Gunakan pengikatan standar bila memungkinkan
Adapter pengikat khusus adalah cara terbaik untuk menambahkan fungsionalitas khusus ke View dengan mudah. Seperti banyak developer, saya bertindak agak jauh dengan adapter pengikatan dan berakhir dengan class yang penuh berisi 15 adapter dengan kualitas yang berbeda-beda.
Penyebabnya adalah sejumlah adapter yang menghasilkan string terformat dan menyetelnya di TextViews. Adapter biasanya dirujuk hanya dalam satu layout:

Meskipun ini mungkin terlihat pintar, tetapi ada tiga kelemahan besar:
Sulit mengaturnya. Kecuali jika Anda adalah seorang yang sangat teratur, Anda cenderung memiliki satu file besar yang berisi semua metode adapter Anda. Antitesis yang kohesif dan terpisah.
Anda harus menggunakan instrumentasi untuk pengujian. Menurut definisi, adapter pengikatan tidak menampilkan nilai, mereka mengambil input kemudian menetapkan properti pada tampilan. Ini berarti Anda harus menggunakan instrumentasi untuk menguji logika khusus Anda, yang membuat pengujian menjadi lebih lambat dan mungkin lebih sulit dijaga.

Kode adapter pengikatan khusus (biasanya) tidak optimal. Jika Anda memperhatikan pengikatan teks bawaan [di sini], Anda akan melihat bahwa ia melakukan banyak pemeriksaan untuk menghindari pemanggilan TextView.setText(), sehingga mengefisienkan pemberian layout yang tidak terpakai. Saya jatuh ke dalam perangkap berpikir bahwa DB Library akan secara otomatis mengoptimalkan update tampilan. Dan itu benar, tetapi hanya jika Anda menggunakan adapter pengikat bawaan yang dioptimalkan dengan cermat.

Sebagai gantinya, pisahkan logika metode Anda menjadi class yang kohesif (saya menyebutnya kreator teks), kemudian teruskan ke pengikatan. Dari sana Anda bisa memanggil kreator teks dan menggunakan pengikatan tampilan bawaan: Dengan cara ini, kita mendapatkan semua efisiensi dari pengikatan bawaan, dan kita bisa dengan mudah menguji unit kode yang menciptakan string terformat.

Menjadikan adapter pengikatan khusus Anda lebih efisien
Jika Anda benar-benar perlu menggunakan adapter khusus, karena fungsionalitas yang Anda inginkan tidak tersedia, maka cobalah membuatnya seefisien mungkin. Maksud saya adalah dengan menggunakan semua optimalisasi UI Android standar: hindari memicu perubahan ukuran/layout bila memungkinkan.

Hal ini bisa hal yang sederhana seperti memeriksa apa yang sedang digunakan oleh tampilan vs. apa yang Anda setel. Berikut adalah contoh di mana kita menerapkan kembali adapter ImageView standar untuk android:drawable: Sayangnya, tampilan tidak selalu bisa mengekspos status mengenai apa yang perlu kita periksa. Berikut adalah contoh dengan setelan toggle max-lines pada TextView. Ia memfungsikan toggle dengan mengubah properti maxLines TextView, bersama dengan transisi layout tertunda.



Supaya Anda bisa tahu tentang apa yang dilakukannya
Sebelumnya, adapter pengikatan berformat sederhana dan selalu menyetel properti maxLines, bersama dengan listener klik. TextView akan selalu memicu layout ketika setMaxLines() dipanggil, yang berarti bahwa setiap kali adapter pengikatan dijalankan, layout akan terpicu.

Jadi mari kita perbaiki. Karena fungsionalitas ini sepenuhnya terpisah dari TextView (kita hanya memanggil setMaxLines() dengan nilai yang berbeda saat diklik), kita perlu menyimpan sendiri status ‘current’. Untungnya, View memberikan kita cara praktis untuk melakukannya melalui mekanisme tag. Di sini, kita hanya menyimpan nilai collapsedMaxLines yang saat ini disetel dalam tag, dan ketika adapter dijalankan, kita memanggil setMaxLines(), dll. hanya jika nilainya berbeda.

lihat selengkapnya disini https://developers-id.googleblog.com/2019/01/data-binding-pelajaran-yang-didapat.html

Sunday, October 20, 2019

Mempersiapkan aplikasi Anda untuk persyaratan 64-bit

Ditulis oleh Vlad Radu, Product Manager, Play dan Diana Wong, Product Manager, Android
CPU 64-bit memberikan pengalaman yang lebih cepat dan lebih kaya bagi pengguna Anda. Menambahkan versi 64-bit pada aplikasi akan meningkatkan kinerja, memberi jalan bagi inovasi pada masa depan, dan mempersiapkan Anda untuk perangkat dengan hardware 64-bit saja.

Kami ingin membantu Anda bersiap-siap dan memberi tahu bahwa Anda perlu waktu untuk merencanakan. Kami telah mendukung CPU 64-bit sejak Android 5.0 Lollipop, dan pada tahun 2017 kami pertama kali mengumumkan bahwa aplikasi yang menggunakan kode native harus menyediakan versi 64-bit (selain versi 32-bit). Hari ini, kami memberikan informasi dan jadwal yang lebih terperinci untuk semakin mempermudah transisi pada tahun 2019.

Persyaratan 64-bit: apa artinya bagi developer
Mulai 1 Agustus 2019:
Semua aplikasi dan update aplikasi baru yang menyertakan kode native harus menyediakan versi 64-bit selain versi 32-bit saat memublikasikan ke Google Play.

Ekstensi: Google Play akan terus menerima update 32-bit saja untuk game yang menggunakan Unity 5.6 atau versi lebih lama hingga Agustus 2021.

Mulai 1 Agustus 2021:
Google Play akan berhenti menyajikan aplikasi tanpa versi 64-bit pada perangkat berkemampuan 64-bit, yang berarti mereka tidak akan lagi tersedia di Play Store pada perangkat tersebut.
Ini termasuk game yang dibangun dengan Unity 5.6 atau versi lebih lama.

Persyaratan ini tidak berlaku untuk:
APK atau paket aplikasi yang secara eksplisit menargetkan Wear OS atau Android TV, yang merupakan platform yang saat ini tidak mendukung kode 64-bit.

APK atau paket aplikasi yang tidak didistribusikan ke perangkat yang menjalankan Android 9 Pie atau yang lebih baru.

Kami tidak mengubah kebijakan kami tentang dukungan 32-bit. Play akan terus menghadirkan aplikasi untuk perangkat 32-bit. Persyaratan ini berarti bahwa aplikasi dengan kode native 32-bit juga harus memiliki versi 64-bit tambahan.



lihat selengkap nya disini https://developers-id.googleblog.com/2019/01/mempersiapkan-aplikasi-anda-untuk.html

Saturday, October 19, 2019

Memindahkan Android Studio dan Android Emulator ke versi 64-bit

Memindahkan Android Studio dan Android Emulator ke versi 64-bit

Dengan Project Marble, tim Android Studio berfokus pada upaya untuk membuat fitur-fitur dasar dan alur Integrated Development Environment (IDE) yang solid. Kinerja adalah tenant yang mendasari dalam memberikan IDE berkualitas tinggi. Untuk tujuan ini, kami mempertajam fokus produk dan hanya akan mendukung sistem operasi 64-bit ke depan. Menggunakan Android Studio dengan sistem operasi 64-bit memungkinkan akses yang efisien ke memori, baik untuk IDE maupun Android Emulator, dan secara keseluruhan mengarah pada pengalaman pengembangan yang lebih baik. Meskipun tidak akan memengaruhi sebagian besar pengguna Android Studio, perubahan ini memang berdampak jika Anda menggunakan versi 32-bit Microsoft® Windows®. Untuk membantu transisi bagi developer yang menggunakan Microsoft Windows versi 32-bit, kami ingin memberi Anda detail tentang timeline depresiasi mendatang ditambah langkah-langkah yang harus dilakukan untuk bersiap-siap menghadapi perubahan ini.

Timeline
Untuk meminimalkan dampak perubahan ini terhadap sistem operasi 64-bit yang didukung secara eksklusif, kami pertama-tama akan menghentikan dukungan untuk versi 32-bit. Selama fase depresiasi, baik Android Studio maupun Android Emulator akan terus bekerja, tetapi produk-produknya tidak akan menerima update fitur baru. Selama masa transisi ini, Anda masih bisa mendownload produk dari situs web Android Studio. Setelah satu tahun, kami akan secara resmi mengakhiri dukungan produk dan akan menghapus link download versi 32-bit. Catatan, jika Anda sebelumnya sudah menginstal Android Studio versi 32-bit selama periode ini maka produk tersebut akan terus berfungsi, tetapi kami tidak akan menyediakan link untuk mendownload ulang produk tersebut. Tanggal untuk periode akhir dukungan dan depresiasi bisa dilihat dalam tabel di bawah ini:

Versi Produk 32-bit yang Didukung Depresiasi dari Akhir Dukungan pada
Android Studio IDE 3.6 31 Desember 2019 31 Desember 2020
Android Emulator 28.0.25 30 Juni 2019 31 Desember 2020

Keuntungan lingkungan pengembangan 64-bit
Ada beberapa keuntungan ketika kita menggunakan Android Studio versi 64-bit, yang meliputi:
Kinerja - IDE bisa bekerja lebih baik karena dapat mengakses memori lebih dari 4GB. Peningkatan memori khususnya memberikan pengalaman yang lebih baik ketika Anda mengerjakan project besar.
Dukungan Aplikasi 64-bit - Anda bisa membangun versi aplikasi 32-bit dan 64-bit bila aplikasi Anda menggunakan kode native C/C++. Pengujian pada kedua arsitektur bisa membantu Anda bersiap-siap untuk persyaratan 64-bit di Google Play yang dimulai pada 1 Agustus 2019.

Pengujian pada Emulator - Citra sistem Android Emulator 32-bit maupun 64-bit didukung oleh Android Emulator versi 64-bit. Fleksibilitas ini mempermudah pengujian aplikasi Anda di berbagai lingkungan Android dengan satu mesin pengembangan.

Langkah berikutnya
Ringkasan, sebelum mengakhiri dukungan untuk Android Studio versi 32-bit, kami ingin memberi tahu Anda terlebih dahulu, menyediakan panduan, dan memberikan waktu tunggu satu tahun untuk membantu Anda bermigrasi ke sistem operasi 64-bit. Anda masih bisa menggunakan Android Studio versi 32-bit, tetapi perlu diingat bahwa versi ini tidak akan menerima update di masa mendatang. Oleh karena itu, jika Anda ingin bermigrasi, kami sarankan Anda memulai perencanaan lebih awal sehingga Anda bisa terus mendapatkan update produk terbaru dan memanfaatkan secara maksimal peningkatan kinerja lingkungan pengembangan 64-bit.

lihat selengkap nya di https://developers-id.googleblog.com/2019/06/memindahkan-android-studio-dan-android.html

Friday, October 18, 2019

Android + Play developer untuk membangun pengalaman terbaiknya

Ditulis oleh Chet Haase
Senang sekali bisa hadir kembali di Google I/O untuk bertemu para developer Android dari seluruh dunia. 7.200 orang hadir di Shoreline Amphitheatre, jutaan orang menonton melalui livestream, dan ribuan developer di acara I/O Extended lokal di lebih dari 80 negara sudah tahu tentang upaya kami memudahkan pekerjaan developer. Hari ini di Google I/O, kami berbicara tentang dua tema besar; membantu developer menjadi lebih produktif dan memperkuat privasi dan keamanan pengguna dalam platform ini. Mari perhatikan lebih dekat pada berita utama developer di I/O sejauh ini:

Produktivitas Developer
Tahun ini, kami berfokus pada ide sederhana - kami ingin mengefisienkan waktu Anda setiap hari. Dengan membuat semua yang Anda gunakan menjadi lebih baik.

Kotlin
Dua tahun lalu, kami mengumumkan bahwa Kotlin adalah bahasa yang didukung untuk Android. Developer terbaik kami menyukainya, dan sejak saat itu, Kotlin tumbuh luar biasa cepat. Lebih dari 50% developer Android profesional sekarang menggunakan Kotlin, ini adalah salah satu bahasa yang paling disukai selama dua tahun berturut-turut di Stack Overflow, dan menjadi salah satu bahasa yang paling cepat perkembangannya di GitHub dalam hal jumlah kontributor.

Hari ini kami mengumumkan langkah besar lainnya: Pengembangan Android akan semakin berfokus pada Kotlin. Banyak fitur dan Jetpack API baru akan ditawarkan terlebih dahulu di Kotlin. Jika Anda memulai project baru, sebaiknya Anda menulisnya dengan Kotlin; kode yang ditulis dalam Kotlin sering kali berarti kode yang jauh lebih sedikit–lebih sedikit kode yang perlu diketik, diuji, dan dijaga. Dan, dalam kemitraan dengan Jetbrains dan Kotlin Foundation, kami terus berinvestasi dalam peralatan, dokumentasi, pelatihan, dan acara agar Kotlin lebih mudah dipelajari dan digunakan. Ini termasuk Kotlin/Everywhere, rangkaian acara global baru di mana Anda bisa mempelajari lebih lanjut tentang bahasa ini, kursus Udacity baru, dan banyak lagi.

Android Jetpack
Tahun lalu, kami mengumumkan Android Jetpack, API Android untuk mempercepat pengembangan Android dan membuat penulisan aplikasi berkualitas tinggi menjadi semakin mudah, dengan kode yang lebih sedikit. Lebih dari 80% dari 1.000 aplikasi teratas kami sudah menggunakan Jetpack, seiring kami terus memangkas hambatan yang dihadapi developer setiap hari. Hari ini, kami merilis 6 library Jetpack baru (versi alfa), dan menghadirkan 5 library ke kualitas versi beta. Berikut adalah 3 sorotannya:

Android Studio
Hari ini kami merilis Android Studio 3.5 ke versi Beta. Selama berbulan-bulan, tim kami secara khusus berfokus pada pemurnian dan pemolesan alur kerja pengembangan setiap harinya, dengan Project Marble. Android Studio 3.5 mencakup manajemen memori IDE yang lebih baik untuk project besar, latensi pengetikan yang lebih rendah, peningkatan lint, optimalisasi penggunaan CPU, peningkatan editor layout, peningkatan emulator, perubahan build, serta penulisan ulang Instant Run secara penuh, yang sekarang disebut Apply Changes, yang sekarang mampu mempercepat kemampuan untuk melihat perubahan kode pada perangkat secara andal - ditambah lebih dari 400 perbaikan bug berprioritas tinggi.

Machine Learning berskala Android
Di Android Q, kami telah membuat peningkatan signifikan untuk Android Neural Networks API (NNAPI). Pertama, kami telah meningkatkan jumlah Operator yang didukung dari 38 menjadi lebih dari 90. Sebagian besar model sekarang bisa dipercepat oleh NNAPI tanpa memerlukan perubahan. Kami juga memperkenalkan introspection API untuk pengguna lanjutan, yang memungkinkan kontrol penuh atas komponen hardware mana yang menangani akselerasi (mis. DSP vs. NPU). Dan, kami bekerja sama secara intens dengan vendor hardware untuk menghadirkan peningkatan kinerja yang signifikan, baik dalam latensi maupun konsumsi daya. Bekerja sama dengan MediaTek, kami bisa mempercepat API deteksi wajah ML Kit sebesar 9X di Helio P90. Bekerja sama dengan Qualcomm, kami bisa mempercepat Google Lens OCR pada AI Engine Snapdragon 855, dan meningkatkan kecepatan 3X selagi mengurangi konsumsi daya sebesar 3,7X.

Fitur dinamis dan update dalam aplikasi
Tahun lalu kami memperkenalkan Android App Bundle untuk membantu Anda mengurangi ukuran aplikasi dan meningkatkan penginstalan. Sejak itu, kami telah melihat lebih dari 80.000 paket aplikasi yang diproduksi, dengan pengurangan ukuran rata-rata 20%. Dan hari ini, kami memiliki sejumlah pengumuman untuk membantu Anda mengurangi ukuran dan mengirimkan update kepada pengguna dengan lebih cepat. Hari ini, kami senang bisa menginformasikan bahwa modul fitur dinamis beralih dari versi beta ke stabil. Dengan modul fitur dinamis, Anda bisa mengurangi ukuran aplikasi lebih banyak lagi dengan memilih bagian dari aplikasi yang akan dikirim - berdasarkan kondisi seperti fitur perangkat dan negara. Anda bahkan bisa mengirimkan modul sesuai permintaan, sebagai ganti pada saat penginstalan. Dan hari ini, kami juga memindahkan update dalam aplikasi dari versi beta ke stabil. Kemampuan untuk mengupdate aplikasi secara dinamis adalah sesuatu yang sudah lama Anda minta. Katakanlah Anda memiliki bug penting dalam aplikasi, dan Anda harus segera memperbaikinya; Anda tentunya tidak ingin menunggu sampai pengguna menemukan update di Play Store. Sekarang Anda bisa.

Privasi dan keamanan pengguna di Android Q
Sebagai komunitas developer, kita semua memiliki kewajiban untuk melakukannya dengan benar. Ini tentang membangun platform yang menawarkan kapabilitas kuat bagi developer, sembari memastikan bahwa keamanan dan privasi pengguna terlindungi. Kami memperkenalkan Android Q Beta beberapa bulan lalu dengan lebih dari 50 fitur dan peningkatan di seputar privasi dan keamanan pengguna. Perubahan Q ini memberikan pengguna lebih banyak transparansi dan kontrol.

Seperti biasa, kami selalu bekerja keras untuk melakukan segala yang kami bisa agar developer mengadopsi rilis baru. Kami tahu Anda memiliki fitur sendiri yang akan dibangun. Itulah sebabnya, dengan perubahan Q ini, kami bekerja sangat keras untuk meminimalkan dampaknya bagi Anda, serta menerapkan masukan Anda. Kami memberikan periode pemberitahuan selama mungkin, serta informasi teknis yang lengkap dan terperinci di muka, untuk membuatnya semudah mungkin diadopsi. Kami juga ingin mengucapkan terima kasih kepada komunitas atas masukan Anda yang tanpa henti. Ini merupakan bantuan besar bagi tim yang terus bekerja keras agar semuanya bisa berjalan dengan baik. Salah satu contohnya adalah perubahan penyimpanan Beta 3, di mana masukan Anda membantu kami mengembangkan fitur ini selama versi Beta. Android memiliki komitmen jangka panjang untuk meminimalkan semua perubahan yang memecah. Komitmen kami tidak berubah, dan kami akan terus bekerja keras untuk menjaga Android tetap berplatform terbuka, fleksibel, dan ramah developer seperti yang selama ini kita cintai.

lihat selengkap nya disini https://developers-id.googleblog.com/2019/07/google-io-2019-memberdayakan-developer.html

Thursday, October 17, 2019

Di Android Google I/O 2019



Google I/O 2019
Salah satu hal paling menakjubkan tentang Google I/O adalah livestream/video dari acara ini. Sangat menyenangkan jika Anda bisa hadir langsung di acara ini, terutama karena kami dapat berbicara dengan Anda untuk mengetahui masalah atau pertanyaan yang Anda miliki. Tetapi tidak semua orang bisa mendapatkan tiket, bepergian, atau meninggalkan pekerjaan coding mereka. Jadi kami menyiarkan streaming langsung hampir semua konten dan memublikasikan rekaman semua sesi teknis untuk memastikan bahwa semua orang di mana saja bisa melihat presentasi dan mendapatkan highlight konferensi dan kondisi Android terkini.

Dalam beberapa tahun terakhir, tim produksi telah melakukan tugasnya dengan sangat baik sehingga video dapat langsung diposting segera setelah pembicaraan selesai. Dalam waktu dekat, mereka akan memposting rekaman lebih cepat dari presentasi yang sebenarnya, sehingga akan sangat membantu pembicara.

Namun masalah yang saya temukan dengan banyak konten video adalah... ada begitu banyak konten video. Jika saya tidak tahu persis apa yang saya cari di berbagai playlist YouTube, ini akan memakan waktu cukup lama untuk ditemukan, atau saya mungkin menyerah dan kembali menonton video kucing. (Mereka sangat imut, benar kan?)

Jadi saya pikir tahun ini saya akan mencoba mengelola playlist untuk developer Android, untuk mencoba mengategorikan apa yang kami sampaikan di konferensi untuk membantu Anda menemukan hal-hal yang mungkin ingin Anda tonton, dan menautkan konten terkait lainnya jika diperlukan. Mungkin saya terlambat masuk ke permainan ini, dengan I/O sudah dua bulan berlalu, tetapi mudah-mudahan hal ini masih berguna bagi penunda (atau bahkan penunda amatir) di antara Anda yang belum sempat menonton I/O.

Jika memang membantu, kita bisa mencoba melakukan ini di masa mendatang. Jika tidak, mungkin saya akan terus membuat playlist untuk hiburan saja; lagi pula, saya akan mengelola semua daftar video, lebih baik saya juga mengetahui di mana tempat menonton yang asyik sambil makan popcorn di masa mendatang.

Jadi inilah dia, Playlist Android I/O 2019 saya, sudah dikategorikan. Beberapa sesi muncul beberapa kali, karena kontennya tumpang tindih dengan kategori lain atau saya tidak bisa memutuskan. Beberapa sesi memiliki keterangan ketika saya merasa hal itu dibutuhkan, tetapi sebagian besar sesi sudah memiliki judul yang jelas.

Playlist
  • Semua Sesi Google I/O 2019Bagi developer yang bukan hanya membahas tentang Android
  • Android & Play di Google I/O 2019Semua sesi Android

Keynote
  • Google Keynote
  • Secara internal, kami menyebutnya Consumer Keynote
  • Developer Keynote
  • Highlight developer untuk Android… dan yang lainnya

Ringkasan
Biasanya, Anda menginginkan detail teknis dan lebih mendalam, tetapi sesi ringkasan membantu menjelaskan Gambaran Umum tentang apa yang terjadi, dan ke mana harus mencari kepingan-kepingan terperinci itu.

  • What’s New in AndroidSaya coba untuk tidak melewatkan yang satu ini, terutama karena pembicara bersama ini akan sangat marah jika saya melakukannya.
  • Kami mencoba memberikan gambaran yang sangat luas tentang sebagian besar hal yang harus diperhatikan developer dalam platform dan library Jetpack, lengkap dengan link ke pembicaraan terkait dan sumber daya lainnya.
  • What’s New in Android Development Tools
  • Ada banyak sesi Fitur (di bawah), tetapi sesi ini memberikan ringkasan luas tentang fitur-fitur baru.
  • What’s New in Google Play
  • Berbagai perubahan kebijakan dan fitur distribusi, seperti update dalam aplikasi.
lihat selengkapnya di sini https://developers-id.googleblog.com/2019/07/sekarang-di-android.html

Wednesday, October 16, 2019

Yang Baru di Android Q Untuk Teks

Ditulis oleh Florina Muntenescu, Android Developer Advocate

Menampilkan teks adalah tugas penting dalam sebagian besar aplikasi, jadi di Android Q kami terus menghadirkan fitur baru untuk meningkatkan kinerja dan mendukung kebutuhan Anda. Kami secara default menonaktifkan hyphenation, yang memungkinkan pembuatan jenis huruf menggunakan beberapa font atau jenis font, menampilkan daftar font yang terinstal pada perangkat, dan meningkatkan beberapa API penataan gaya teks yang paling sering digunakan.

Hyphenation secara default dinonaktifkan di Android Q dan AppCompat v1.1.0
Pengujian kinerja kami menunjukkan bahwa ketika hyphenation diaktifkan, 70% dari waktu yang dipakai untuk mengukur teks adalah pemrosesan hyphenation.



Hyphenation membutuhkan waktu hingga 70% untuk mengukur teks
Mengingat bahwa hyphenation sering kali tidak dibutuhkan untuk semua TextViews dalam aplikasi, dan karena dampaknya pada kinerja, kami memutuskan untuk menonaktifkan hyphenation secara default di Android Q dan AppCompat v1.1.0. Jika Anda ingin menggunakan hyphenation, Anda harus mengaktifkannya secara manual di aplikasi dengan menyetel frekuensi hyphenation ke normal. Anda bisa menyetelnya dengan beberapa cara:

Sebagai atribut TextAppearance dalam styles.xml:
<style name="MyTextAppearance" parent="TextAppearance.AppCompat">
    <item name="android:hyphenationFrequency">normal</item>
</style>
Sebagai atribut TextView:
<TextView android:hyphenationFrequency="normal" />
Langsung dalam kode:
textView.hyphenationFrequency = Layout.HYPHENATION_FREQUENCY_NORMAL
Cari tahu selengkapnya tentang cara kerja hyphenation dari pembahasan di Android Dev Summit 2018.

Menggunakan beberapa font khusus dalam TextView yang sama
Pertimbangkan tombol yang memadukan font khusus (Lato dalam contoh ini) dengan font ikon:



Tombol dengan ikon dan font Latin
Class Button hanya menerima satu instance jenis huruf yang akan ditetapkan pada teks. Pra-Android Q, Anda bisa membuat Typeface menggunakan satu jenis font. Android Q memungkinkan pembuatan jenis huruf dari beberapa jenis font dengan API baru, Typeface.CustomFallbackBuilder, yang memungkinkan penambahan hingga 64 jenis font per jenis huruf.

Contoh font ikon kami bisa diimplementasikan seperti ini:
button.typeface = Typeface.CustomFallbackBuilder(
    // add the Latin font
    FontFamily.Builder(
        Font.Builder(assets, "lato.ttf").build()
    ).build()
).addCustomFallback(
    // add the icon font
    FontFamily.Builder(
        Font.Builder(assets, "icon_font.ttf").build()
    ).build()
).build()
Saat membuat jenis font, pastikan Anda tidak memasukkan font dari jenis yang berbeda ke dalam objek jenis font yang sama atau model font yang sama ke dalam jenis font yang sama. Misalnya, memasukkan Lato, Kosugi, dan Material ke dalam jenis font yang sama akan menciptakan konfigurasi yang tidak valid, seperti halnya memasukkan dua font bold ke dalam jenis font yang sama.
Untuk menetapkan jenis font umum (serif, sans-serif, atau monospace) agar digunakan ketika teks dirender menggunakan font sistem, gunakan metode setSystemFallback() untuk menyetel font pengganti sistem:
Typeface.CustomFallbackBuilder(
    FontFamily.Builder(
       ...
    ).build()
).setSystemFallback("sans-serif")
.build() 

lihat sumber lengkap nya di https://developers-id.googleblog.com/2019/08/yang-baru-untuk-teks-di-android-q.html