Favo de mel 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 ter 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 os Destaques da Plataforma Android 3.0.

Novos recursos de Usuário

Figura 1. Uma tela inicial do Android 3.1.

Refinamentos de interface

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

As transições de interface são aprimoradas em todo o sistema e em todos os apps padrão. A animação da tela de início é otimizada para uma transição mais rápida e suave de e para a lista de apps. Ajustes na cor, no posicionamento e no texto facilitam a visualização, a compreensão e o uso dos elementos da interface. A acessibilidade foi aprimorada 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 agora está mais fácil: tocar no botão home na barra do sistema agora 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 arquivos.

Conectividade para acessórios USB

O Android 3.1 adiciona ampla compatibilidade de plataforma a uma variedade de periféricos e acessórios conectados por 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 o 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, 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 um instalado. Os usuários podem interagir com o aplicativo para controlar acessórios ligados, como controladores de robótica, estações de acoplamento, 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, o suporte para USB em dispositivos específicos pode variar e é determinado pelos fabricantes do dispositivo.

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

Lista expandida de apps recentes

Para melhorar a multitarefas 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, quando compatível com cada widget.

Suporte a teclados externos e dispositivos apontadores

Agora, os usuários podem conectar quase qualquer tipo de teclado ou mouse externo aos dispositivos 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, não é necessário nenhum driver ou configuração especial. Quando vários dispositivos estão conectados, os usuários podem gerenciar de forma conveniente 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 interface 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 por Bluetooth.

Por exemplo, os usuários podem conectar os controles de jogos PlayStation®3 e Xbox 360® por USB (mas não por Bluetooth), gamepads Logitech Dual ActionTM e sticks de voo ou um controle de corrida de carro. Os 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 apps deles possam aproveitar ao máximo o acesso ao Wi-Fi de maior 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 está desligada. Os usuários podem aproveitar esse recurso para reproduzir serviços de música, vídeo e voz transmitidos continuamente 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 para 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 do IP e configurações de proxy definidas pelo usuário.

A plataforma adiciona suporte ao Preferred Network Desload (PNO), um recurso de busca 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

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

A interface dos controles rápidos, que pode ser acessada nas configurações do navegador, foi estendida e reformulada. Os usuários agora podem usar os controles para ver miniaturas das guias abertas e fechar a guia ativa, além de acessar o menu flutuante com acesso instantâneo a configurações e outros controles.

Para garantir uma experiência de visualização consistente, o navegador estende sua compatibilidade com padrões comuns da Web, como CSS 3D, animações e posicionamento fixo de CSS em todos os sites, dispositivos móveis ou computadores. Ele também adiciona suporte para 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. Por conveniência ao visitar sites Google, uma interface 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 melhorou significativamente, tornando mais rápido a navegação e a visualização de páginas da Web.

Galeria

O app Galeria agora oferece suporte ao protocolo de transferência de imagem (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. Ele 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 facilitar a leitura e ter uma segmentação por toque mais precisa. Além disso, os usuários podem criar uma área de visualização maior para grades ocultando os controles da lista de agendas. 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 completo. 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-mail agora envia texto simples e corpo HTML como uma mensagem MIME de várias partes. Isso garante que a mensagem seja formatada corretamente para todos os destinatários. Prefixos de pastas 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 alternar entre os marcadores, como "Caixa de entrada", "Não lidas" e "Com estrela". O 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 qualquer subdomínio ignorado. 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. Agora, a configuração de proxy e IP é salva em backup e restaurada após 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 aplicativos avançadas e envolventes em tablets e outros dispositivos de tela grande.

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

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

A API é baseada em uma nova pilha USB (Universal Serial Bus) e nos serviços integrados à plataforma. Ela oferece serviços para descobrir e identificar o 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 dele para notificar e iniciar um app de destino, 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 de Acessório USB.

API de host USB

O Android 3.1 oferece suporte de plataforma integrada para o modo host USB e expõe uma API que permite que os 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, hubs, câmeras e muito mais.

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

Entrada de mouses, 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 entradas de mouse e trackball, a plataforma oferece suporte a duas novas ações de eventos 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 que for 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 fonte 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 movimentos de outras maneiras. A plataforma fornece eventos de movimento aos aplicativos como um lote, e os aplicativos podem consultar os detalhes dos movimentos incluídos no lote, para um manuseio mais eficiente e preciso dos eventos.

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 do mouse, joystick e mouse de um único dispositivo de entrada.

Widgets redimensionáveis da tela inicial

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

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

No Android 3.1, uma nova API do protocolo de transferência de mídia (MTP, na sigla em inglês) permite que os desenvolvedores criem apps que interajam diretamente com câmeras conectadas e outros dispositivos PTP. A nova API torna mais fácil para os aplicativos receberem notificações quando dispositivos forem anexados e removidos, gerenciar arquivos e o armazenamento nesses dispositivos e transferir arquivos e metadados para eles. A API do MTP implementa o subconjunto do protocolo de transferência de imagem (PTP, na sigla em inglês) da especificação do MTP.

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

O Android 3.1 expõe uma API à pilha do protocolo de transporte em tempo real (RTP, na sigla em inglês) integrado, que os aplicativos podem usar para gerenciar diretamente o streaming de dados sob demanda ou interativo. Em especial, apps que oferecem 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 por 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 interface agora oferece suporte a invalidações parciais em visualizações aceleradas por hardware, o que torna as operações de desenho nessas visualizações mais eficientes.
  • Um novo método gráfico, setHasAlpha(), permite que os apps sugiram que um determinado bitmap é opaco. Isso proporciona um aumento extra no desempenho para alguns tipos de blits e é especialmente útil para aplicativos que usam bitmaps ARGB_8888.