Foldable Device (perangkat lipat) — adalah kelas gadget mobile dengan layar fleksibel yang mengubah faktor bentuk saat dilipat dan dibuka. Perangkat semacam itu berfungsi baik sebagai telepon kompak maupun tablet — tergantung pada posisi layar. Menurut Android Developers (2025), pasar global perangkat lipat tumbuh 42% pada tahun 2024, dan adaptasi aplikasi terhadap faktor bentuk ini menjadi wajib untuk proyek besar.
Poin utama
Foldable Device — perangkat mobile dengan layar OLED fleksibel yang dapat dilipat tanpa merusak matriks. Dalam keadaan terlipat, perangkat semacam itu kompak dan muat di saku, dalam keadaan terbuka menyediakan layar seukuran tablet. Perangkat lipat massal pertama adalah Royole FlexPai (2018), tetapi kategori ini dipopulerkan oleh Samsung Galaxy Fold (2019) dan Huawei Mate X.
Perbedaan utama antara perangkat lipat dan tradisional adalah adanya engsel (hinge) dan layar fleksibel. Saat dilipat, layar tidak pecah, melainkan melengkung mengikuti radius yang ditentukan oleh konstruksi engsel. Teknologi modern (UTG — Ultra Thin Glass, 2020+ dan Samsung Infinity Flex) mampu bertahan hingga 200.000 siklus lipatan tanpa kerusakan terlihat.
Bagi pengembang, perangkat lipat menciptakan tiga tantangan: perubahan ukuran layar saat dibuka, adanya lipatan (crease), dan bekerja dalam keadaan setengah terbuka (tabletop mode), saat perangkat berdiri di permukaan dengan sudut.
Buku (book-style) — Galaxy Z Fold, Google Pixel Fold, OnePlus Open. Layar eksternal (cover screen) untuk penggunaan dalam keadaan terlipat, layar fleksibel internal (inner screen) untuk mode tablet. Rasio aspek layar eksternal sekitar 22:9, layar internal — sekitar 6:5 atau 4:3.
Flip (flip-style) — Galaxy Z Flip, Motorola Razr, Oppo Find N2 Flip. Lipatan vertikal, layar eksternal untuk notifikasi (1.5–3.5 inci), layar internal — ponsel standar (6.7–7 inci). Fitur utama — saat setengah terbuka (flex mode), aplikasi dapat membagi layar menjadi dua zona: kontrol di atas, konten di bawah.
Layar ganda — Microsoft Surface Duo, Lenovo ThinkPhone. Dua layar terpisah dengan engsel di tengah. Saat dibuka, membentuk area bersama, tetapi dengan celah fisik di antara layar. API mempertimbangkan sudut engsel dan memungkinkan aplikasi meregang di kedua layar.
Google menyediakan Jetpack WindowManager untuk bekerja dengan perangkat lipat. API mencakup tiga komponen utama: WindowLayoutInfo — informasi tentang lokasi lipatan (fold), WindowPosture — posisi fisik perangkat, dan FoldingFeature — deskripsi area lipatan: orientasi, status, dan sudut.
FoldingFeature berisi tipe lipatan (hinge — engsel, fold — layar fleksibel), status (flat — terbuka, half-opened — setengah terbuka, folded — terlipat) dan sudut lipatan (dari 0 hingga 180 derajat). Sudut tersedia pada perangkat dengan sensor sudut (Galaxy Z Fold, Pixel Fold).
val windowInfoRepository =
WindowInfoTracker.getOrCreate(context)
windowInfoRepository.windowLayoutInfo(context)
.collect { layoutInfo ->
layoutInfo.displayFeatures
.filterIsInstance<FoldingFeature>()
.forEach { feature ->
// menangani lipatan
}
}
Untuk menentukan apakah perangkat dapat dilipat, gunakan PackageManager.hasSystemFeature("android.hardware.sensor.hinge_angle"). Pada perangkat dengan engsel, sensor ini ada — pada ponsel biasa tidak ada.
Adaptasi antarmuka — tugas utama pengembang saat mendukung perangkat lipat. Saat dibuka, lebar jendela bisa berlipat ganda dan antarmuka harus beralih dari satu kolom ke banyak kolom. Gunakan Window Size Class untuk beralih antar tata letak — saat dibuka, kelas berubah dari Compact ke Expanded.
Berikan perhatian khusus pada penanganan perubahan konfigurasi. Saat pengguna membuka perangkat, Activity dapat dibuat ulang. Jika aplikasi tidak menyimpan status, pengguna akan kehilangan data yang dimasukkan atau posisi gulir. Gunakan ViewModel untuk data layar dan onSaveInstanceState untuk status UI.
Untuk flex mode (tabletop mode), desain harus membagi layar menjadi dua zona fungsional. Bagian atas — melihat konten (video, galeri, daftar), bagian bawah — kontrol (tombol, pengontrol, keyboard). Pola ini digunakan di pemutar video: YouTube di Galaxy Z Flip menampilkan video di atas, rekomendasi dan tombol di bawah.
Pengujian — salah satu aspek tersulit dalam pengembangan untuk perangkat lipat. Android Emulator memungkinkan simulasi perangkat lipat melalui AVD dengan konfigurasi "Foldable" (layar internal 7.6 inci, layar eksternal 4.6 inci). Emulator mendukung peralihan antara keadaan terlipat dan terbuka.
Untuk pengujian di emulator digunakan ADB. Perintah adb shell am broadcast -a android.intent.action.VIEW -e mode expand membuka perangkat, adb shell am broadcast -a android.intent.action.VIEW -e mode fold melipatnya. Juga dapat mengubah sudut lipatan di jendela emulator.
Pengujian nyata pada perangkat fisik direkomendasikan untuk memeriksa sensasi transisi, kualitas engsel, dan visibilitas lipatan. Model utama untuk pengujian: Samsung Galaxy Z Fold 6 (buku), Samsung Galaxy Z Flip 6 (flip), Google Pixel Fold, Motorola Razr 50.
Jangan tempatkan elemen penting di area lipatan. Tombol, bidang input, dan elemen interaktif harus berada pada jarak minimal 24 dp dari garis lipatan. Lipatan (crease) — properti melekat layar fleksibel, visibilitasnya berkurang setiap generasi, tetapi tidak hilang sepenuhnya.
Gunakan kelanjutan alih-alih jeda. Saat dibuka, konten harus mengalir mulus dari layar eksternal ke internal atau meluas ke seluruh area. Hindari memuat Activity baru — gunakan perhitungan ulang tata letak di dalam layar yang sama. Jetpack WindowManager melacak perubahan dan memberi tahu aplikasi melalui WindowLayoutInfo.
Pertimbangkan sudut engsel untuk skenario kreatif. Di aplikasi foto dan video, posisi setengah terbuka (90°) mengubah perangkat menjadi dudukan: kamera merekam, bagian bawah layar menampilkan panel kontrol. Skenario ini sangat populer di Samsung Camera dan aplikasi asli.
Pertanyaan yang sering diajukan
Periksa keberadaan PackageManager.FEATURE_SENSOR_HINGE_ANGLE. Jika true — perangkat dapat dilipat dengan sensor sudut engsel. Periksa juga DisplayFold API.
Berlangganan ke WindowInfoTracker.windowLayoutInfo(). Saat status FoldingFeature berubah, atur ulang antarmuka sesuai dengan Window Size Class dan posisi lipatan.
Jetpack WindowManager berfungsi pada API 14+. Tetapi untuk FoldingFeature.HALF_OPENED diperlukan API 24+ (Android 7.0). Sensor sudut engsel tersedia di Android 10+.
Tidak. Gunakan Window Size Class dan Layoutomization dari Jetpack WindowManager. Kode tunggal dengan pemeriksaan kelas ukuran akan menggantikan tata letak sumber daya terpisah.
Sebagian besar perangkat lipat memiliki perlindungan IP48 atau IP58 — ketahanan air terbatas. Di bawah air, layar fleksibel dapat rusak, oleh karena itu perendaman tidak disarankan oleh produsen.
Kesimpulan
Kami akan mengembangkan aplikasi seluler turnkey
IT Sectr membuat aplikasi iOS dan Android untuk startup dan bisnis sejak 2017. Kami akan memberi saran dan mengusulkan solusi terbaik.
Baca juga