Foldable Device (opvouwbaar apparaat) — is een klasse mobiele gadgets met een flexibel scherm dat van vormfactor verandert bij het vouwen en openvouwen. Dergelijke apparaten werken zowel als compacte telefoon als tablet — afhankelijk van de schermpositie. Volgens Android Developers (2025) is de wereldwijde markt voor opvouwbare apparaten in 2024 met 42% gegroeid en wordt het aanpassen van apps aan deze vormfactor verplicht voor grote projecten.
Belangrijkste punten
Foldable Device — is een mobiel apparaat met een flexibel OLED-scherm dat kan worden gevouwen zonder de matrix te beschadigen. In gevouwen toestand is zo’n apparaat compact en past in een zak, in uitgevouwen toestand biedt het een scherm van tabletformaat. Het eerste massa-opvouwbare apparaat was de Royole FlexPai (2018), maar de categorie werd gepopulariseerd door de Samsung Galaxy Fold (2019) en Huawei Mate X.
Het belangrijkste verschil tussen opvouwbare en traditionele apparaten is de aanwezigheid van een scharnier (hinge) en een flexibel scherm. Bij het vouwen breekt het scherm niet, maar buigt het mee met een straal die wordt bepaald door de constructie van het scharnier. Moderne technologieën (UTG — Ultra Thin Glass, 2020+ en Samsung Infinity Flex) zijn bestand tegen tot 200.000 vouwcycli zonder zichtbare schade.
Voor ontwikkelaars creëren opvouwbare apparaten drie uitdagingen: verandering van schermgrootte bij het openvouwen, aanwezigheid van een vouw (crease) en werken in halfopen toestand (tabletop mode), wanneer het apparaat onder een hoek op een oppervlak staat.
Boekstijl (book-style) — Galaxy Z Fold, Google Pixel Fold, OnePlus Open. Extern scherm (cover screen) voor gebruik in gevouwen toestand, intern flexibel scherm (inner screen) voor tabletmodus. De beeldverhouding van het externe scherm is ongeveer 22:9, van het interne — ongeveer 6:5 of 4:3.
Flipstijl (flip-style) — Galaxy Z Flip, Motorola Razr, Oppo Find N2 Flip. Verticaal vouwen, extern scherm voor meldingen (1.5–3.5 inch), intern scherm — standaard telefoon (6.7–7 inch). Belangrijkste kenmerk — bij halfopen (flex mode) kan de app het scherm in twee zones verdelen: bediening boven, inhoud onder.
Dubbel scherm — Microsoft Surface Duo, Lenovo ThinkPhone. Twee aparte schermen met een scharnier in het midden. Bij het openvullen vormen ze een gemeenschappelijk oppervlak, maar met een fysieke opening tussen de schermen. De API houdt rekening met de scharnierhoek en laat de app over beide schermen uitstrekken.
Google biedt Jetpack WindowManager voor het werken met opvouwbare apparaten. De API omvat drie hoofdcomponenten: WindowLayoutInfo — informatie over de vouwlocatie (fold), WindowPosture — fysieke positie van het apparaat en FoldingFeature — beschrijving van het vouwgebied: oriëntatie, status en hoek.
FoldingFeature bevat het type vouw (hinge — scharnier, fold — flexibel scherm), de status (flat — open, half-opened — halfopen, folded — gesloten) en de vouwhoek (van 0 tot 180 graden). De hoek is beschikbaar op apparaten met een hoeksensor (Galaxy Z Fold, Pixel Fold).
val windowInfoRepository =
WindowInfoTracker.getOrCreate(context)
windowInfoRepository.windowLayoutInfo(context)
.collect { layoutInfo ->
layoutInfo.displayFeatures
.filterIsInstance<FoldingFeature>()
.forEach { feature ->
// vouwen beheren
}
}
Om te bepalen of een apparaat opvouwbaar is, gebruikt u PackageManager.hasSystemFeature("android.hardware.sensor.hinge_angle"). Op een apparaat met een scharnier is deze sensor aanwezig — op gewone telefoons ontbreekt deze.
Interface aanpassing — de hoofdtaak van de ontwikkelaar bij ondersteuning van opvouwbare apparaten. Bij het openvouwen kan de vensterbreedte verdubbelen en moet de interface overschakelen van enkele naar meerdere kolommen. Gebruik Window Size Class om te schakelen tussen lay-outs — bij het openvouwen verandert de klasse van Compact naar Expanded.
Besteed speciale aandacht aan het verwerken van configuratiewijzigingen. Wanneer de gebruiker het apparaat openvouwt, kan de Activity opnieuw worden aangemaakt. Als de app de status niet opslaat, verliest de gebruiker ingevoerde gegevens of de scrollpositie. Gebruik ViewModel voor schermgegevens en onSaveInstanceState voor de UI-status.
Voor flex mode (tabletop mode) moet het ontwerp het scherm in twee functionele zones verdelen. Bovenste — inhoud bekijken (video, galerij, lijst), onderste — bediening (knoppen, controllers, toetsenbord). Dit patroon wordt gebruikt in videospelers: YouTube op Galaxy Z Flip toont video boven, aanbevelingen en knoppen onder.
Testen — een van de moeilijkste aspecten van ontwikkeling voor opvouwbare apparaten. Android Emulator maakt simulatie van opvouwbare apparaten mogelijk via AVD met configuratie "Foldable" (intern 7.6-inch scherm, extern 4.6-inch scherm). De emulator ondersteunt schakelen tussen gevouwen en uitgevouwen toestand.
Voor testen in de emulator wordt ADB gebruikt. Het commando adb shell am broadcast -a android.intent.action.VIEW -e mode expand vouwt het apparaat open, adb shell am broadcast -a android.intent.action.VIEW -e mode fold vouwt het dicht. Ook kan de vouwhoek worden gewijzigd in het emulatorvenster.
Echt testen op fysieke apparaten wordt aanbevolen om het overgangsgevoel, de scharnierkwaliteit en zichtbaarheid van de vouw te controleren. Belangrijkste testmodellen: Samsung Galaxy Z Fold 6 (boekstijl), Samsung Galaxy Z Flip 6 (flipstijl), Google Pixel Fold, Motorola Razr 50.
Plaats geen kritieke elementen in het vouwgebied. Knoppen, invoervelden en interactieve elementen moeten zich op minimaal 24 dp van de vouwlijn bevinden. De vouw (crease) — een inherente eigenschap van flexibele schermen, de zichtbaarheid neemt af met elke generatie, maar verdwijnt niet volledig.
Gebruik continuïteit in plaats van onderbreking. Bij het openvouwen moet de inhoud vloeiend overgaan van het externe naar het interne scherm of zich uitstrekken over het hele oppervlak. Vermijd het laden van een nieuwe Activity — gebruik herberekening van de lay-out binnen hetzelfde scherm. Jetpack WindowManager volgt wijzigingen en stelt de app op de hoogte via WindowLayoutInfo.
Houd rekening met de scharnierhoek voor creatieve scenario’s. In foto- en video-apps verandert de halfopen positie (90°) het apparaat in een standaard: de camera neemt op, het onderste deel van het scherm toont het bedieningspaneel. Dit scenario is vooral populair in Samsung Camera en native apps.
Veelgestelde vragen
Controleer de aanwezigheid van PackageManager.FEATURE_SENSOR_HINGE_ANGLE. Indien true — is het apparaat opvouwbaar met een scharnierhoeksensor. Controleer ook de DisplayFold API.
Abonneer u op WindowInfoTracker.windowLayoutInfo(). Bij wijziging van de FoldingFeature-status herschikt u de interface volgens Window Size Class en vouwpositie.
Jetpack WindowManager werkt op API 14+. Maar voor FoldingFeature.HALF_OPENED is API 24+ (Android 7.0) vereist. De scharnierhoeksensor is beschikbaar op Android 10+.
Nee. Gebruik Window Size Class en Layoutomization van Jetpack WindowManager. Één code met controle van de grootteklasse vervangt aparte bronlay-outs.
De meeste opvouwbare apparaten hebben IP48- of IP58-bescherming — beperkte waterdichtheid. Onder water kan het flexibele scherm beschadigd raken, daarom wordt onderdompeling niet aanbevolen door fabrikanten.
Samenvatting
We ontwikkelen een mobiele applicatie turnkey
IT Sectr creëert sinds 2017 iOS- en Android-applicaties voor startups en bedrijven. We adviseren u en stellen de beste oplossing voor.
Lees ook