Temos hoje diversas categorias de dispositivos, que podemos considerar de computação móvel.
O primeiro grupo é dos laptop (ou notebooks), que são computadores portáteis, com capacidade computacional equivalente a um desktop.
Diminuindo de capacidade computacional, temos os PDAs. Eles possuem
telas pequenas, mas seu poder de processamento é bem alto, se comparado com um telefone celular, mas baixo, se comparado aos notebooks. Têm suporte a aplicativos desenvolvidos com linguagens de programação de alto nível, recursos multimídia, acesso à rede entre outros .
O terceiro grupo é o de telefones celulares.Antigamente, diríamos que os celulares têm telas minúsculas e quase nenhum recurso. Hoje, contudo, existem aparelhos com memória expansível, acesso à rede Bluetooth, rede WiFi suporte a Java etc. A tecnologia não pára, alguns celulares mais avançados também são chamados de Smartphone. Além dos recursos de telefones, eles incorporam diversos recursos dos PDAs.
Como os aparelhos de mesma categoria de dispositivo têm características em comum, o desenvolvimento de aplicativos para uma mesma categoria também pode variar de uma para outra. Veremos que existem diversos tipos de sistemas que operam nos variados tipos aparelhos Smartphone.