Honeycomb MR1

Bem-vindo ao Android 3.1!

O Android 3.1 é uma versão incremental da plataforma que refina muitos dos recursos introduzidos no Android 3.0. Ele se baseia na mesma IU otimizada para tablets e nos recursos oferecidos no Android 3.0 e adiciona vários novos recursos para usuários e desenvolvedores. Este documento fornece uma visão geral dos novos recursos e tecnologias introduzidos no Android 3.1. Para uma visão mais detalhada das novas APIs para desenvolvedores, consulte o documento Visão geral da API.

Para uma introdução de alto nível ao Android 3.0, consulte Destaques da plataforma Android 3.0.

Novos recursos de Usuário

Figura 1. Uma tela inicial do Android 3.1.

Refinamentos da interface

A plataforma Android 3.1 adiciona vários refinamentos para tornar a interface do usuário mais intuitiva e eficiente.

As transições da IU são melhoradas em todo o sistema e em todos os apps padrão. A animação na tela de início é otimizada para transições mais rápidas e suaves de e para a lista de apps. Os ajustes de cor, posicionamento e texto facilitam a visualização, a compreensão e o uso dos elementos da IU. A acessibilidade foi melhorada com feedback audível consistente em toda a interface e uma nova configuração para permitir que os usuários personalizem o intervalo de toque para atender às necessidades deles.

A navegação de e para as cinco telas iniciais ficou mais fácil: agora, tocar no botão "Página inicial" na barra do sistema leva você à tela inicial usada mais recentemente. As Configurações oferecem uma visualização aprimorada do armazenamento interno, mostrando o armazenamento usado por um conjunto maior de tipos de arquivo.

Conectividade para acessórios USB

O Android 3.1 adiciona compatibilidade com plataformas amplas para diversos periféricos e acessórios conectados via USB. Os usuários podem conectar vários tipos de dispositivos de entrada (teclados, mouses, controles de jogos) e câmeras digitais. Os aplicativos podem ser criados com base no suporte a USB da plataforma para estender a conectividade a quase qualquer tipo de dispositivo USB.

A plataforma também adiciona novo suporte a acessórios USB, que são dispositivos de hardware externos projetados para serem conectados a dispositivos com tecnologia Android como hosts USB. Quando um acessório é anexado, o framework procura um aplicativo correspondente e se oferece para iniciá-lo para o usuário. O acessório também pode apresentar um URL ao usuário para fazer o download de um app apropriado caso ainda não tenha instalado. Os usuários podem interagir com o aplicativo para controlar acessórios alimentados, como controladores robóticos, bases de encaixe, equipamentos musicais e de diagnóstico, quiosques, leitores de cartão e muito mais.

Os recursos USB da plataforma dependem de componentes no hardware do dispositivo. Portanto, a compatibilidade com USB em dispositivos específicos pode variar e é determinada pelos fabricantes do dispositivo.

Figura 2. Agora é possível abrir e rolar o menu "Apps recentes".

Lista aberta de apps recentes

Para melhorar a multitarefa e o acesso visual instantâneo a um número muito maior de apps, a lista "Apps recentes" agora pode ser aberta. Agora, os usuários podem rolar a lista de apps recentes verticalmente para ver imagens em miniatura de todas as tarefas em andamento e apps usados recentemente e, em seguida, tocar em uma miniatura para voltar à tarefa.

Widgets redimensionáveis da tela inicial

Para uma personalização mais flexível da tela inicial, os usuários agora podem redimensionar os widgets da tela inicial usando as barras de arrastar fornecidas pelo sistema. Os usuários podem expandir os widgets na horizontal e/ou vertical para incluir mais conteúdo, sempre que houver suporte de cada widget.

Suporte a teclados externos e dispositivos apontadores

Os usuários agora podem conectar quase qualquer tipo de teclado ou mouse externo a dispositivos com tecnologia Android para criar um ambiente familiar e trabalhar com mais eficiência. Um ou mais dispositivos de entrada podem ser conectados ao sistema simultaneamente por USB e/ou Bluetooth HID, em qualquer combinação. Na maioria dos casos, nenhuma configuração especial ou driver é necessário. Quando vários dispositivos estão conectados, os usuários podem gerenciar convenientemente o teclado e o IME ativos usando as configurações de teclado disponíveis na barra do sistema.

Para dispositivos apontadores, a plataforma oferece suporte à maioria dos tipos de mouse com um único botão e, opcionalmente, uma roda de rolagem, além de dispositivos semelhantes, como trackballs. Quando eles estão conectados, os usuários podem interagir com a IU usando apontar, selecionar, arrastar, rolar, passar o cursor e outras ações padrão.

Compatibilidade com joysticks e gamepads

Para tornar a plataforma ainda melhor para jogos, o Android 3.1 adiciona suporte à maioria dos joysticks e gamepads de PC conectados por USB ou HID Bluetooth.

Por exemplo, os usuários podem conectar controles de jogos PlayStation®3 e Xbox 360® por USB (mas não Bluetooth), gamepads e bastões de voo da Logitech Dual ActionTM ou um controle de corrida de carro. Controles de jogos que usam rede ou pareamento reservados não têm suporte por padrão, mas, em geral, a plataforma oferece suporte à maioria dos joysticks e gamepads conectados a PC.

Rede Wi-Fi robusta

O Android 3.1 adiciona recursos robustos de Wi-Fi para garantir que os usuários e os aplicativos possam aproveitar ao máximo o acesso ao Wi-Fi de alta velocidade em casa, no trabalho e fora de casa.

Um novo bloqueio de Wi-Fi de alto desempenho permite que os aplicativos mantenham conexões Wi-Fi de alto desempenho mesmo quando a tela do dispositivo estiver desligada. Os usuários podem aproveitar esse recurso para reproduzir serviços de música, vídeo e voz de streaming contínuo por longos períodos, mesmo quando o dispositivo está inativo e a tela está desligada.

Agora os usuários podem configurar um proxy HTTP para cada ponto de acesso Wi-Fi mantendo o ponto de acesso pressionado nas Configurações. O navegador usa o proxy HTTP ao se comunicar com a rede pelo ponto de acesso, e outros apps também podem fazer isso. A plataforma também oferece backup e restauração das configurações de IP e proxy definidas pelo usuário.

A plataforma adiciona suporte ao Preferred Network Desload (PNO), um recurso de verificação em segundo plano que economiza energia da bateria nos casos em que o Wi-Fi precisa estar disponível continuamente por longos períodos.

Conjunto atualizado de apps padrão

A plataforma Android 3.1 inclui um conjunto atualizado de aplicativos padrão otimizados para uso em dispositivos de tela maior. As seções abaixo destacam alguns dos novos recursos.

Figura 3. Menu "Controles rápidos" no navegador.

Navegador

O app de navegação inclui uma variedade de novos recursos e melhorias na IU que tornam a visualização de conteúdo da Web mais simples, rápida e conveniente.

A IU dos controles rápidos, que pode ser acessada nas configurações do navegador, foi estendida e reformulada. Agora os usuários podem usar os controles para visualizar miniaturas das guias abertas e fechar a guia ativa, bem como acessar o menu flutuante para acesso instantâneo a configurações e outros controles.

Para garantir uma experiência de visualização consistente, o navegador estende a compatibilidade com padrões conhecidos da Web, como CSS 3D, animações e posicionamento fixo de CSS para todos os sites, dispositivos móveis ou computadores. Ele também adiciona suporte à reprodução incorporada de conteúdo de vídeo HTML5. Para facilitar o gerenciamento do conteúdo favorito, agora os usuários podem salvar uma página da Web localmente para visualização off-line, incluindo todos os estilos e imagens. Para sua comodidade ao visitar sites do Google, uma IU de login automático aprimorada permite que os usuários façam login rapidamente e gerenciem o acesso quando vários usuários estiverem compartilhando um dispositivo.

Para um melhor desempenho, o navegador adiciona suporte a plug-ins que usam renderização acelerada por hardware. O desempenho do zoom também foi significativamente aprimorado, tornando mais rápido a navegação e visualização de páginas da Web.

Galeria

O app Galeria agora oferece suporte ao protocolo de transferência de imagens (PTP, na sigla em inglês), para que os usuários possam conectar as câmeras via USB e importar imagens para a Galeria com um único toque. O app também copia as imagens para o armazenamento local e fornece um indicador para permitir que os usuários vejam quanto espaço está disponível.

Figura 4. Os widgets da tela inicial agora podem ser redimensionados.

Agenda

As grades da agenda são maiores, para melhor legibilidade e segmentação por toque mais precisa. Além disso, os usuários podem ocultar os controles da lista de agendas para criar uma área de visualização maior para grades. Os controles no seletor de data foram reformulados, facilitando a visualização e o uso.

Contatos

O app Contatos agora permite localizar contatos com mais facilidade usando a pesquisa de texto completa. A pesquisa retorna resultados correspondentes de todos os campos armazenados para um contato.

E-mail

Ao responder ou encaminhar uma mensagem HTML, o app de e-mails agora envia corpos de texto simples e HTML como uma mensagem MIME de várias partes. Isso garante que a mensagem seja formatada corretamente para todos os destinatários. Os prefixos de pasta para contas IMAP agora são mais fáceis de definir e gerenciar. Para economizar bateria e minimizar o uso de dados móveis, o app agora faz a pré-busca de e-mails do servidor somente quando o dispositivo está conectado a um ponto de acesso Wi-Fi.

Um widget atualizado na tela inicial oferece aos usuários acesso rápido a mais e-mails. Os usuários podem tocar no ícone "E-mail" na parte superior do widget para navegar pelos marcadores, como "Caixa de entrada", "Não lidas" e "Com estrela". O próprio widget agora é redimensionável na horizontal e na vertical.

Suporte empresarial

Agora os usuários podem configurar um proxy HTTP para cada ponto de acesso Wi-Fi conectado. Isso permite que os administradores trabalhem com os usuários para definir um nome do host de proxy, uma porta e todos os subdomínios ignorados. Essa configuração de proxy é usada automaticamente pelo navegador quando o ponto de acesso Wi-Fi está conectado e pode, opcionalmente, ser usada por outros apps. A configuração de proxy e IP agora é salva em backup e restaurada nas atualizações e redefinições do sistema.

Para atender às necessidades dos usuários de tablets, a plataforma agora permite que uma política de dispositivo de "cartão de armazenamento criptografado" seja aceita em dispositivos com cartões de armazenamento emulados e armazenamento principal criptografado.

Novos recursos para desenvolvedores

A plataforma Android 3.1 adiciona refinamentos e novos recursos que os desenvolvedores podem usar para criar experiências de aplicativo avançadas e envolventes em tablets e outros dispositivos de tela grande.

API Open Accessory para uma interação avançada com periféricos

O Android 3.1 introduz uma nova API para integrar acessórios de hardware a aplicativos em execução na plataforma. A API oferece uma maneira de interagir com uma ampla variedade de periféricos, desde controles robóticos até equipamentos musicais, bicicletas para exercícios e muito mais.

A API é baseada em uma nova pilha USB (Universal Serial Bus) e em serviços integrados à plataforma. A plataforma oferece serviços para descobrir e identificar hardware conectado, além de notificar os aplicativos interessados de que o hardware está disponível.

Quando um usuário conecta um acessório USB, a plataforma recebe informações de identificação, como nome do produto, tipo de acessório, fabricante e versão. A plataforma configura a comunicação com o acessório e usa as informações para notificar e iniciar um app-alvo, se houver um disponível. Opcionalmente, um acessório pode fornecer um URL que permite aos usuários encontrar e fazer o download de um app que funcione com o acessório. Esses recursos de descoberta facilitam a configuração inicial para o usuário e garantem que um aplicativo adequado esteja disponível para interagir com o hardware conectado.

Para desenvolvedores de apps e fabricantes de acessórios, o modo de acessório oferece muitas maneiras novas de engajar os usuários e criar experiências de interação avançadas com hardware conectado.

Para saber mais sobre como desenvolver aplicativos que interagem com acessórios, consulte a documentação do Acessório USB.

API de host USB

O Android 3.1 oferece suporte a plataforma integrada para o modo de host USB e expõe uma API que permite que aplicativos gerenciem periféricos conectados. Em dispositivos com suporte ao modo host, os aplicativos podem usar a API para identificar e se comunicar com dispositivos conectados, como de áudio, de entrada, de comunicação, hub, câmeras e muito mais.

Para saber mais sobre como desenvolver aplicativos que interagem com dispositivos USB, consulte a documentação do Host USB.

Entrada de mouse, joysticks e gamepads

O Android 3.1 estende o sistema de eventos de entrada para oferecer suporte a várias novas origens de entrada e eventos de movimento em todas as visualizações e janelas. Os desenvolvedores podem aproveitar esses recursos para permitir que os usuários interajam com os aplicativos usando mouses, trackballs, joysticks, gamepads e outros dispositivos, além de teclados e touchscreen.

Para entrada por mouse e trackball, a plataforma oferece suporte a duas novas ações de evento de movimento: rolar (horizontal ou vertical), como em uma roda de rolagem, e passar o cursor, que informa a localização do mouse quando nenhum botão é pressionado. Os aplicativos podem processar esses eventos da maneira necessária.

Para joysticks e gamepads, a plataforma fornece um grande número de eixos de movimento que os aplicativos podem usar de uma determinada origem de entrada, como X, Y, Hat X, Hat Y, rotação, limitação, pressão, tamanho, toque, ferramenta, orientação, entre outros. Os desenvolvedores também podem definir eixos personalizados, se necessário, para capturar movimento de outras maneiras. A plataforma fornece eventos de movimento a aplicativos em lote, e os aplicativos podem consultar os detalhes dos movimentos incluídos no lote para um gerenciamento de eventos mais eficiente e preciso.

Os aplicativos podem consultar a lista de dispositivos de entrada conectados e os intervalos de movimento (eixos) compatíveis com cada dispositivo. Os aplicativos também podem processar vários eventos de entrada e movimento de um único dispositivo de entrada. Por exemplo, um aplicativo pode usar fontes de eventos de mouse, joystick e mouse de um único dispositivo de entrada.

Widgets redimensionáveis da tela inicial

Agora, os desenvolvedores podem criar widgets da tela inicial que os usuários podem redimensionar na horizontal, na vertical ou em ambos. Basta adicionar um atributo à declaração de um widget, que se torna redimensionável na horizontal, na vertical ou em ambos. Isso permite que os usuários personalizem a exibição do conteúdo do widget e mostrem mais dele nas telas iniciais.

API MTP para integração com câmeras externas

No Android 3.1, uma nova API MTP (Protocolo de transferência de mídia) permite que os desenvolvedores programem apps que interajam diretamente com câmeras conectadas e outros dispositivos PTP. A nova API facilita o recebimento de notificações de aplicativos quando dispositivos são anexados e removidos, o gerenciamento de arquivos e o armazenamento nesses dispositivos e a transferência de arquivos e metadados para eles. A API MTP implementa o subconjunto PTP (Protocolo de transferência de imagens) da especificação MTP.

API RTP, para controle de sessões de streaming de áudio

O Android 3.1 expõe uma API à pilha de RTP (protocolo de transporte em tempo real) integrado, que os aplicativos podem usar para gerenciar diretamente o streaming de dados sob demanda ou interativo. Em especial, apps que fornecem VOIP, push-to-talk, conferência e streaming de áudio podem usar a API para iniciar sessões e transmitir ou receber fluxos de dados em qualquer rede disponível.

Otimizações de desempenho

O Android 3.1 inclui várias otimizações de desempenho que ajudam a tornar os aplicativos mais rápidos e responsivos. Algumas das otimizações incluem:

  • Uma nova classe de cache LRU permite que os aplicativos se beneficiem de um armazenamento em cache eficiente. Os aplicativos podem usar a classe para reduzir o tempo gasto na computação ou no download de dados da rede, mantendo um consumo considerável de memória para os dados armazenados em cache.
  • O framework da IU agora oferece suporte a invalidações parciais em visualizações aceleradas por hardware, o que torna as operações de desenho mais eficientes
  • Um novo método gráfico, setHasAlpha(), permite que os apps indiquem que um determinado bitmap é opaco. Isso proporciona um aumento extra de desempenho para alguns tipos de blits e é especialmente útil para aplicativos que usam bitmaps ARGB_8888.