De Britse ontwikkelaar Al Sutton is erin geslaagd om een Android applicatie te ontwikkelen waarbij een versie voor smartphones en een versie voor tablets in één bestand verpakt is. Het is daardoor niet langer nodig om twee versies van een applicatie aan te bieden in de Android market, zoals nu vaak gebeurt.

Enkele regels code

De vondst van de Brit werkt door enkele regels code aan de applicatie toe te voegen waardoor het programma de schermgrootte kan herkennen. De grafische interface van de app wordt vervolgens op die grootte aangepast. Ontwikkelaars kunnen op die manier meerdere interfaces in één installatiepakket voor Android plaatsen waardoor dezelfde applicatie er goed uitziet op verschillende smartphones en tablets.

Sutton legt op zijn weblog uit, dat zijn code gebruik maakt van de ‘schermgroottedefinitie’ die in de ontwikkelomgeving van Android is ingebakken. Hij gebruikt vervolgens twee directories voor de interface: In een demonstratieapplicatie staat zo bijvoorbeeld in de directory ‘layout’ de standaardinterface van de app, terwijl de directory ‘layout-large-land’ (waarbij ‘land’ voor landscape staat) de interface voor tablets bevat.

Verborgen element

Om te bepalen welke resolutie een apparaat aan kan, heeft de ontwikkelaar in de standaardinterface een verborgen element geplaatst. De applicatie kan controleren of het apparaat van de gebruiker dat element toont. Door die controle ziet de applicatie wat de schermresolutie en de pixeldichtheid van de tablet of smartphone is.

De vondst van Sutton werkt overigens alleen nog met Android 2.3, die maandag uitkwam. Sinds die versie ondersteunt het mobiele platform van Google pas ‘extra large’ schermen voor tabletcomputers. Tot en met versie 2.2 is de maximale grootte in de ontwikkelomgeving ‘large’, wat neerkomt op een resolutie van 800x480 pixels. Er zijn overigens wel apparaten met die versie van Android die met een hogere resolutie werken. De Samsung Galaxy Tab heeft bijvoorbeeld een oplossend vermogen van 1024x600 pixels.