Biscoito de gengibre

A plataforma Android 2.3 apresenta muitos recursos novos e empolgantes para usuários e desenvolvedores. Este documento fornece um panorama de alguns dos novos recursos e tecnologias do Android 2.3. Para informações detalhadas sobre as novas APIs para desenvolvedores, consulte as notas da versão do Android 2.3.

Novos recursos de Usuário

Refinamentos de IU para simplicidade e velocidade

A interface do usuário é refinada de várias maneiras em todo o sistema, tornando-a mais fácil de aprender, mais rápida de usar e mais eficiente em termos de energia. Um tema visual simplificado de cores contra o preto traz vívida e contraste com a barra de notificações, os menus e outras partes da IU. Mudanças nos menus e nas configurações facilitam a navegação e o controle dos recursos do sistema e do dispositivo.

Entrada de texto mais rápida e intuitiva

O teclado de software do Android foi reformulado e otimizado para entrada e edição de texto mais rápidas. As teclas são reformuladas e reposicionadas para melhorar a segmentação, facilitando a visualização e o pressionamento delas com precisão, mesmo em alta velocidade. O teclado também mostra as sugestões atuais de personagens e dicionários em um estilo maior e mais vívido para facilitar a leitura.

O teclado adiciona a capacidade de corrigir palavras inseridas a partir de sugestões do dicionário. À medida que o usuário seleciona uma palavra já inserida, o teclado mostra sugestões que o usuário pode escolher para substituir a seleção. O usuário também pode alternar para o modo de entrada de texto por voz para substituir a seleção. As sugestões inteligentes permitem que o usuário aceite uma sugestão e volte para corrigi-la mais tarde, se necessário, do conjunto original de sugestões.

O novo acorde de teclas multitoque permite que o usuário insira números e símbolos rapidamente pressionando Shift+<letra> e ?123+<símbolo>, sem precisar alternar manualmente os modos de entrada. Em determinadas teclas, os usuários também podem acessar um menu pop-up de caracteres acentuados, números e símbolos mantendo a tecla pressionada e deslizando para selecionar um caractere.

Seleção de palavras com um toque e função copiar/colar

Ao inserir texto ou visualizar uma página da Web, o usuário pode selecionar rapidamente uma palavra pressionando e segurando, copiar para a área de transferência e colar. Pressionar uma palavra entra em um modo de seleção livre. O usuário pode ajustar a área de seleção conforme necessário, arrastando um conjunto de setas delimitadoras para novas posições e, em seguida, copiar a área delimitada pressionando qualquer lugar da área de seleção. Para entrada de texto, o usuário pode pressionar para entrar em um modo de cursor e reposicionar o cursor com facilidade e precisão arrastando a seta. Com os modos de seleção e cursor, não é necessário usar um trackball.

Gerenciamento de energia melhorado

O sistema Android tem um papel mais ativo no gerenciamento de apps que mantêm o dispositivo ativado por muito tempo ou que estão consumindo CPU durante a execução em segundo plano. Ao gerenciar esses apps (fechando-os se apropriado), o sistema ajuda a garantir o melhor desempenho possível e a duração máxima da bateria.

O sistema também oferece ao usuário mais visibilidade sobre a energia consumida pelos componentes do sistema e pelos apps em execução. As configurações do aplicativo oferecem uma visão geral precisa de como a bateria está sendo usada, com detalhes do uso e da energia relativa consumida por cada componente ou aplicativo.

Controle dos aplicativos

Um atalho para o controle "Gerenciar aplicativos" agora aparece no menu "Opções" da tela inicial e do acesso rápido, facilitando a verificação e o gerenciamento da atividade do aplicativo. Quando o usuário acessa a seção "Gerenciar aplicativos", uma nova guia "Em execução" mostra uma lista dos aplicativos ativos, o armazenamento e a memória usados por cada um. O usuário pode ler mais detalhes sobre cada aplicativo e, se necessário, interrompê-lo ou enviar feedback ao desenvolvedor.

Novas formas de se comunicar, organizar

Um conjunto atualizado de aplicativos padrão permite que o usuário tenha novas abordagens para gerenciar informações e relacionamentos.


Chamadas pela Internet

O usuário pode fazer chamadas de voz pela Internet para outros usuários que tenham contas SIP. O usuário pode adicionar um número de chamada pela Internet (um endereço SIP) a qualquer contato e pode iniciar uma chamada pelo contato rápido ou pelo Telefone. Para usar a chamada pela Internet, o usuário precisa criar uma conta no provedor SIP que quiser. As contas SIP não são fornecidas como parte do recurso de chamada pela Internet. Além disso, o suporte para os recursos de chamada pela Internet e SIP da plataforma em dispositivos específicos é determinado pelos fabricantes e operadoras associadas.

Comunicações a curta distância

Um aplicativo leitor de NFC permite que o usuário leia e interaja com tags de comunicação a curta distância (NFC, na sigla em inglês). Por exemplo, o usuário pode “tocar” ou “deslizar” uma tag NFC que possa estar incorporada em um pôster, adesivo ou anúncio e agir com base nos dados lidos a partir da tag. Um uso típico seria ler uma tag em um restaurante, loja ou evento e, em seguida, classificar ou se registrar acessando um site cujo URL esteja incluído nos dados da tag. A comunicação NFC depende da tecnologia sem fio no hardware do dispositivo. Portanto, a compatibilidade com os recursos NFC da plataforma em dispositivos específicos é determinada pelos fabricantes.

Gerenciamento de downloads

O aplicativo Downloads oferece ao usuário acesso fácil a qualquer arquivo transferido por download do navegador, de e-mail ou de outro aplicativo. Os downloads são criados em um gerenciador de downloads completamente novo no sistema, que qualquer outro aplicativo pode usar para gerenciar e armazenar os downloads com mais facilidade.

Câmera

O aplicativo agora permite que o usuário acesse várias câmeras no dispositivo, incluindo uma câmera frontal, se disponível.

Novos recursos para desenvolvedores

O Android 2.3 oferece uma variedade de recursos e APIs que permitem que os desenvolvedores levem novos tipos de aplicativos para a plataforma Android.

Melhorias para jogos

Desempenho

O Android 2.3 inclui uma variedade de melhorias em todo o sistema que tornam as operações comuns mais rápidas e eficientes para todos os aplicativos. Os desenvolvedores de jogos são especialmente interessantes:

  • Coletor de lixo simultâneo: a VM Dalvik introduz um novo coletor de lixo simultâneo que minimiza as pausas do aplicativo, ajudando a garantir uma animação mais suave e maior capacidade de resposta em jogos e aplicativos semelhantes.
  • Distribuição mais rápida de eventos: a plataforma agora processa eventos de toque e teclado de forma mais rápida e eficiente, minimizando o uso da CPU durante a distribuição de eventos. As mudanças melhoram a capacidade de resposta para todos os apps, mas beneficiarão principalmente jogos que usam eventos de toque combinados com gráficos 3D ou outras operações que consomem muita CPU.
  • Drivers de vídeo atualizados: a plataforma usa drivers de vídeo atualizados de terceiros que melhoram a eficiência das operações do OpenGL ES, para um desempenho geral mais rápido de gráficos 3D.

Eventos de entrada e sensor nativo

Os apps que usam código nativo agora podem receber e processar eventos de entrada e sensor diretamente no código nativo, o que melhora muito a eficiência e a capacidade de resposta.

As bibliotecas nativas expostas pela plataforma permitem que os aplicativos lidem com os mesmos tipos de eventos de entrada que os disponíveis no framework. Os aplicativos podem receber eventos de todos os tipos de sensores com suporte, além de ativar/desativar sensores específicos e gerenciar a taxa de entrega de eventos e o enfileiramento.

Giroscópio e outros sensores novos para melhorar o processamento de movimento 3D

O Android 2.3 adiciona suporte à API para vários novos tipos de sensores, incluindo giroscópio, vetor de rotação, aceleração linear, gravidade e sensores de barômetro. Os aplicativos podem usar os novos sensores em combinação com quaisquer outros sensores disponíveis no dispositivo para rastrear o movimento tridimensional e a mudança de orientação do dispositivo com alta precisão e precisão. Por exemplo, um aplicativo de jogo pode usar leituras de um giroscópio e acelerômetro no dispositivo para reconhecer gestos e movimentos complexos do usuário, como inclinação, rotação, empurrão e fatia.

API aberta para áudio nativo

A plataforma oferece uma implementação de software do Khronos OpenSL ES, uma API padrão que dá aos aplicativos acesso a controles e efeitos de áudio avançados provenientes do código nativo. Os aplicativos podem usar a API para gerenciar dispositivos de áudio e controlar a entrada, a saída e o processamento de áudio diretamente do código nativo.

Gerenciamento de gráficos nativos

A plataforma oferece uma interface para a biblioteca Khronos EGL, que permite que aplicativos gerenciem contextos gráficos e criem e gerenciem texturas e superfícies do OpenGL ES a partir do código nativo.

Acesso nativo ao ciclo de vida da atividade e ao gerenciamento de janelas

Aplicativos nativos podem declarar um novo tipo de classe de atividade, NativeActivity, cujos callbacks de ciclo de vida são implementados diretamente no código nativo. O NativeActivity e o código nativo dele são executados no sistema da mesma forma que outras atividades. Elas são executadas no processo do sistema do aplicativo e na linha de execução de IU principal do aplicativo e recebem os mesmos callbacks de ciclo de vida que as outras atividades.

A plataforma também expõe APIs nativas para gerenciar janelas, incluindo a capacidade de bloquear/desbloquear o buffer de pixels para desenhar diretamente nele. Com a API, os apps podem receber um objeto de janela nativo associado a um objeto de superfície de framework e interagir com ele diretamente no código nativo.

Acesso nativo a recursos e armazenamento

Os aplicativos agora podem acessar uma API Asset Manager nativa para recuperar os recursos do aplicativo diretamente do código nativo, sem precisar passar pela JNI. Se os recursos forem compactados, a plataforma vai fazer a descompactação por streaming enquanto o aplicativo lê os dados do recurso. Não há mais limite para o tamanho dos recursos .apk compactados que podem ser lidos.

Além disso, os aplicativos podem acessar uma API Storage Manager nativa para trabalhar diretamente com arquivos OBB transferidos por download e gerenciados pelo sistema. Embora o suporte da plataforma para OBB esteja disponível no Android 2.3, as ferramentas de desenvolvimento para criar e gerenciar arquivos OBB não estarão disponíveis até o início de 2011.

Ambiente robusto de desenvolvimento nativo

O Android NDK (r5 ou mais recente) oferece um conjunto completo de ferramentas, conjuntos de ferramentas e bibliotecas para desenvolver apps que usam o ambiente nativo avançado oferecido pela plataforma Android 2.3. Para saber mais ou fazer o download do NDK, consulte a página Android NDK.

Novas formas de comunicação

Telefonia da Internet

Agora, os desenvolvedores podem adicionar recursos de telefonia na Internet baseados em SIP aos aplicativos. O Android 2.3 inclui uma pilha completa de protocolos SIP e serviços integrados de gerenciamento de chamadas que permitem que os aplicativos configurem com facilidade chamadas de voz realizadas e recebidas, sem precisar gerenciar sessões, comunicação a nível de transporte ou gravação ou reprodução de áudio diretamente.

O suporte para os recursos de SIP e de chamada pela Internet da plataforma em dispositivos específicos é determinado pelos fabricantes e operadoras associadas.

Comunicações a curta distância (NFC)

O suporte a comunicações a curta distância (NFC, na sigla em inglês) da plataforma permite que os desenvolvedores comecem a criar uma classe totalmente nova de apps para Android. Os desenvolvedores podem criar novos aplicativos que oferecem informações e serviços baseados em proximidade para usuários, organizações, comerciantes e anunciantes.

Com a API NFC, os aplicativos podem ler e responder a tags NFC "descobertas" quando o usuário "toca" em um dispositivo compatível com NFC a elementos incorporados em adesivos, pôsteres inteligentes e até mesmo outros dispositivos. Quando uma tag de interesse é coletada, os aplicativos podem responder a ela, ler mensagens e armazenar as mensagens, avisando o usuário conforme necessário.

A partir do Android 2.3.3, os aplicativos também podem gravar em tags e configurar conexões ponto a ponto com outros dispositivos NFC.

A comunicação NFC depende da tecnologia sem fio no hardware do dispositivo. Portanto, a compatibilidade com os recursos NFC da plataforma em dispositivos específicos é determinada pelos fabricantes.

Multimídia avançada

Efeitos de áudio combináveis

Uma nova API de efeitos de áudio permite que os desenvolvedores criem facilmente ambientes de áudio avançados adicionando equalização, intensificação de graves, virtualização de fones de ouvido (fase sonora ampliada) e reverberação para faixas de áudio e sons. Os desenvolvedores podem misturar vários efeitos de áudio em uma faixa local ou aplicar efeitos globalmente em várias faixas.

Suporte a novos formatos de mídia

A plataforma agora oferece suporte integrado ao formato de compactação de vídeo aberto VP8 e ao formato de contêiner aberto WebM. A plataforma também adiciona suporte à codificação AAC e de banda larga AMR (em software), para que os aplicativos possam capturar áudio de maior qualidade do que a banda estreita.

Acesso a várias câmeras

A API Camera agora permite que os desenvolvedores acessem qualquer câmera disponível em um dispositivo, incluindo uma câmera frontal. Os aplicativos podem consultar a plataforma para conferir o número de câmeras no dispositivo e os tipos e características delas, depois abrir a câmera necessária. Por exemplo, um aplicativo de chat por vídeo pode querer acessar uma câmera frontal com resolução mais baixa, enquanto um aplicativo de fotos pode preferir uma câmera traseira que ofereça maior resolução.

Novas tecnologias de plataforma

Estrutura de mídia

  • O novo framework de mídia substitui totalmente o OpenCore, mantendo todo o suporte a codec/contêiner anterior para codificação e decodificação.
  • Suporte integrado ao formato de compactação de vídeo aberto VP8 e ao formato de contêiner aberto WebM
  • Adiciona a codificação AAC e de banda larga AMR

Kernel do Linux

  • Upgrade para a versão 2.6.35

Redes

  • Pilha SIP, configurável pelo fabricante do dispositivo
  • Suporte a comunicações a curta distância (NFC, na sigla em inglês), configurável pelo fabricante do dispositivo
  • Pilha BlueZ atualizada

Ambiente de execução Dalvik

  • VM Dalvik:
    • Coletor de lixo simultâneo (pausas de sub-3 ms de destino)
    • Adiciona outras otimizações JIT (geração de código)
    • Verificação de código aprimorada
    • Depuração StrictMode para identificar problemas de desempenho e memória
  • Bibliotecas principais:
    • Suporte expandido à I18N (codificações mundiais completas, mais localidades)
    • Formatador e formatação de números mais rápidos. Por exemplo, a formatação flutuante é 2,5x mais rápida.
    • As respostas HTTP são compactadas em gzip por padrão. Os tamanhos das respostas das APIs XML e JSON podem ser reduzidos em 60% ou mais.
    • Novas APIs de coleções e utilitários
    • APIs de rede aprimoradas
    • Controles de leitura e gravação de arquivos aprimorados
    • JDBC atualizado
  • Atualizações de projetos upstream:
    • OpenSSL 1.0.0a
    • BouncyCastle 1.45
    • ICU 4.4
    • zlib 1.2.5

Para mais informações sobre as novas APIs para desenvolvedores, consulte as notas da versão do Android 2.3 e o Relatório de diferenças da API.