De grootste gebruikersgerichte functie van Android Nougat moet de nieuwe native ondersteuning voor meerdere vensters zijn. Het concept is niet nieuw. Samsung doet het al een tijdje, Microsoft verandert de manier waarop ze het doen voor kleinere apparaten en zelfs Apple doet het op tablets. Nu is het de beurt aan Google.
Het is ook geen geheel nieuw concept voor Google. Het basis Android-framework heeft altijd toegestaan dat wat je op je scherm ziet in bijna elke grootte kan worden getekend, en het idee om meer dan één weergave tegelijkertijd te laten zien werd in Google I / O 2011 in meerdere sessies rondgedraaid van de "volgende stap" voor Android-tablets op Honeycomb. Vijf jaar later is het eindelijk klaar.
Een goed deel van de reden waarom het langer duurde, was omdat het bakken op Android op systeemniveau lastig kan zijn. Android is ontworpen om op vrijwel alles te werken met een processor. Het voedt magnetrons, wasmachines, koelkasten, sprinklersystemen en meer. Het kan zelfs een Rubik's Cube gemakkelijk oplossen. De dingen die Android draaien en een display hebben - zoals je telefoon - komen ook in veel verschillende formaten. Nadat u het besturingssysteem hebt gewijzigd zodat elke app in een omgeving met meerdere vensters kan worden uitgevoerd, moet deze overal werken.
En dat is wat Google deed. Android 7.0 ondersteunt native drie typen multi-window views. Dat betekent dat elke app die u downloadt, deze kan gebruiken, tenzij de ontwikkelaar van de app het zo schrijft dat het het systeem nee vertelt wanneer u probeert het naar een weergave met meerdere vensters te verplaatsen. En het is niet alleen een systeem met gesplitst scherm - de andere weergaven maken het nog ingewikkelder.
Android Nougat heeft drie verschillende soorten multi-window-modus.
De weergave op gesplitst scherm is bijna hetzelfde als wat we nu op Samsung-telefoons zien. Je kunt in de overzichtsmodus lang op een miniatuur drukken of lang op de overzichtsknop drukken en je kunt twee afzonderlijke vensters met elk afzonderlijke apps hebben. U kunt gegevens tussen hen slepen en neerzetten, en de scheidingslijn is verplaatsbaar zodat u de ene app groter kunt maken dan de andere. Ontwikkelaars kunnen hun apps optimaliseren door dingen te doen zoals het declareren van een minimale grootte voor het venster waarin het zich bevindt, maar zelfs als ze niets doen, zal hun app proberen te draaien in de modus voor meerdere vensters met gesplitst scherm. Google zegt dat de modus voor gesplitst scherm is ontworpen voor handheld-apparaten, wat betekent dat tablets en de meeste telefoons.
Multi-window kan ook worden weergegeven in een beeld-in-beeld-modus. We hebben al gesproken over hoe het werkt en hoe het Android TV beter zal maken. Wanneer een app een afbeeldingsvenster opent, moeten zaken als de bedieningselementen en interface-elementen worden verborgen en wordt het inhoudsgedeelte verkleind tot een grootte op basis van de puntafstand van het gebruikte scherm. Apps kunnen ook de tweede weergave weergeven en een afbeeldingvenster van een deel van de app hebben, terwijl een ander deel van de app zich op volledig scherm bevindt. De nieuwe API's ondersteunen de nieuwe vensterweergave en een ontwikkelaar kan deze zonder al te veel problemen in zijn app gebruiken. Dit is ontworpen voor Android TV en de mensen die de daadwerkelijke hardware hebben gebouwd, moeten dit inschakelen. Een app die is ontworpen voor de beeld-in-beeld-modus zal niets doen als de gebruiker deze in een andere modus probeert te plaatsen, tenzij de ontwikkelaar ook ondersteuning voor hen heeft opgenomen.
Multi-venster heeft een derde weergave - vrije vorm modus. Tot nu toe bestaat het alleen officieel in de documentatie. Het werd gehackt op de eerste Android N-preview, maar sinds we het niet hebben gezien. De Android Developer-website zegt:
Fabrikanten van grotere apparaten kunnen ervoor kiezen om de freeform-modus in te schakelen, waarbij de gebruiker het formaat van elke activiteit vrij kan wijzigen. Als de fabrikant deze functie inschakelt, biedt het apparaat naast de modus voor gesplitst scherm de freeform-modus.
Merk op dat ze niet specificeren wat een groter apparaat is. Tot nu toe lijkt het erop dat dit geen tablets zoals de Pixel C omvat, maar het zou kunnen worden ingeschakeld op grotere apparaten met 12-inch schermen of Chromebooks die Android-apps uitvoeren. Het is aan de fabrikant om te beslissen of ze ondersteuning willen opnemen.
De korte tijd dat we tijdens de Nougat Developer Preview met de freeform-modus moesten spelen, toonde aan dat het apps in zwevende vensters plaatst die kunnen worden aangepast, verplaatst, geminimaliseerd of gemaximaliseerd. Dit is net zoals hoe de software op uw laptop of desktopcomputer werkt. De apps ondersteunen het delen van gegevens via slepen en neerzetten en elke app weet wanneer deze naar de bovenste laag is verplaatst en we gebruiken deze actief. Apps kunnen zelfs worden geopend in een 'gekrompen' weergave, mits de ontwikkelaar ervoor kiest dit te doen. De apps draaien elk in hun eigen proces en zijn echter onafhankelijk van elkaar.
Als een ontwikkelaar zijn app voor Android 7.0 target, hebben ze een paar opties voor een weergave met meerdere vensters. Ze kunnen de grootte en de lay-out van de app bepalen wanneer deze niet het volledige scherm gebruikt en het gemakkelijker maken om te gebruiken nadat deze is verkleind. Omdat dat een echt probleem is - sommige apps zien er gewoon niet goed uit of zijn niet erg bruikbaar als ze slechts de helft van een al klein scherm gebruiken - ontwikkelaars kunnen ook besluiten de functie niet te ondersteunen.
Als apps niet worden bijgewerkt, worden ze gedwongen in een weergave met meerdere vensters door het systeem zelf - soms met slechte resultaten.
Als een ontwikkelaar zijn app niet bijwerkt, wordt deze "geforceerd" aangepast door het systeem na een dialoogvenster om ons te laten weten dat het een oudere app is die de functie niet ondersteunt, dus dingen kunnen kapot zijn. Als de app is geschreven om alleen een vaste grootte te ondersteunen, wordt de modus voor meerdere vensters gesloten en neemt die app het hele scherm in beslag.
Bij het hacken van de Multi-Window-functie van Samsung wisten we al dat de meeste apps zonder veel gedoe naar de ene of de andere kant krimpen als ze niet officieel worden ondersteund, en onze tijd met de Nougat Developer Preview laat dezelfde resultaten zien. Hoewel de code die wordt gebruikt om dingen te doen, een beetje anders is als een native Android-functie, blijft het basisconcept en apps die best practices gebruiken in de code zien eruit en werken hetzelfde, alleen kleiner. Maar niet elke app speelt leuk en we hopen dat ontwikkelaars deze binnenkort zullen bijwerken om dingen netjes af te handelen, zelfs als ze niets anders veranderen.
Tot slot, als u geen multi-window op uw telefoon wilt gebruiken, hoeft u dat ook niet te doen. Alle Android-apps worden nog steeds op volledig scherm uitgevoerd totdat u hen vertelt hun weergave te wijzigen.