Biscoito de gengibre

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

Novos recursos de Usuário

Refinamentos de interface para simplicidade e velocidade

A interface do usuário é refinada de várias maneiras em todo o sistema, tornando 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 à barra de notificações, menus e outras partes da interface. Mudanças nos menus e nas configurações facilitam a navegação e o controle do usuário pelos 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 próprias 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 caracteres e dicionários em um estilo maior e mais vívido para que seja mais fácil de ler.

O teclado adiciona o recurso de corrigir palavras inseridas com base nas sugestões do dicionário. À medida que o usuário seleciona uma palavra já inserida, o teclado mostra sugestões 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. A partir de algumas teclas, os usuários também podem acessar um menu pop-up de caracteres acentuados, números e símbolos segurando a tecla e deslizando para selecionar um caractere.

Seleção de palavras com apenas 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 tocar e manter pressionada, 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 em qualquer lugar da área de seleção. Para entrada de texto, o usuário pode pressionar o cursor 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.

Melhor gerenciamento de energia

O sistema Android tem um papel mais ativo no gerenciamento de apps que mantêm o dispositivo ativado por muito tempo ou que consomem CPU durante a execução em segundo plano. Ao gerenciar esses apps e fechar se necessário, 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 fornecem uma visão geral precisa de como a bateria está sendo usada, com detalhes sobre o uso e a energia relativa consumida por cada componente ou app.

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 "Manage Applications", uma nova guia "Running" mostra uma lista de aplicativos ativos e o armazenamento e a memória que estão sendo usados por cada um deles. 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 use 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 iniciar uma chamada usando o contato rápido ou o discador. Para usar a chamada pela Internet, o usuário precisa criar uma conta no provedor SIP que escolher. As contas SIP não são fornecidas como parte do recurso de chamada pela Internet. Além disso, o suporte aos 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

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 ser incorporada em um pôster, adesivo ou anúncio e, em seguida, agir com base nos dados lidos 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, o suporte para os recursos de NFC da plataforma em dispositivos específicos é determinado pelos fabricantes deles.

Gerenciamento de downloads

O aplicativo Downloads oferece ao usuário acesso fácil a qualquer arquivo transferido por download do navegador, do e-mail ou de outro aplicativo. Os downloads são criados em um recurso de gerenciador de downloads completamente novo no sistema, que qualquer outro app 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 têm especialmente interesse:

  • Coletor de lixo simultâneo: a VM Dalvik introduz um novo coletor de lixo simultâneo que minimiza as pausas de aplicativos, 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 com mais rapidez e eficiência, minimizando a utilização da CPU durante a distribuição de eventos. As mudanças melhoram a capacidade de resposta para todos os aplicativos, mas beneficiam principalmente os jogos que usam eventos de toque em combinação com gráficos 3D ou outras operações que consomem muita CPU.
  • Drivers de vídeo atualizados: a plataforma usa drivers de vídeo de terceiros atualizados que melhoram a eficiência das operações do OpenGL ES para proporcionar um desempenho geral de gráficos 3D mais rápido.

Eventos de entrada e sensor nativa

Os aplicativos 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 processem os mesmos tipos de eventos de entrada que aqueles disponíveis pelo framework. Os aplicativos podem receber eventos de todos os tipos de sensores compatíveis, ativar/desativar sensores específicos e gerenciar a taxa de entrega e o enfileiramento de eventos.

Giroscópio e outros sensores novos, para melhorar o processamento do 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 do barômetro. Os aplicativos podem usar os novos sensores em combinação com qualquer outro sensor disponível 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 poderosos 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 fornece uma interface para a biblioteca Khronos EGL, que permite que os 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 com callbacks de ciclo de vida 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. Eles são executados no processo do sistema do aplicativo e na linha de execução de interface principal do aplicativo e recebem os mesmos callbacks de ciclo de vida que 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 conseguir 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, armazenamento

Os aplicativos agora podem acessar uma API Asset Manager nativa para extrair os recursos do aplicativo diretamente do código nativo sem precisar passar pelo 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 funcionar 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 versões mais recentes) 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 ver mais informações ou fazer o download do NDK, consulte a página Android NDK.

Novas formas de comunicação

Telefonia da Internet

Os desenvolvedores agora podem adicionar recursos de telefonia pela 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 facilmente chamadas de voz enviadas e recebidas, sem precisar gerenciar sessões, comunicação no nível de transporte ou gravação ou reprodução de áudio diretamente.

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

Comunicação a curta distância (NFC)

O suporte da plataforma a comunicações a curta distância (NFC, na sigla em inglês) 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 habilitado para NFC em 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, o suporte para os recursos de NFC da plataforma em dispositivos específicos é determinado pelos fabricantes.

Rich multimídia

Efeitos de áudio misí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 a faixas de áudio e sons. Os desenvolvedores podem combinar 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 para os formatos de compactação de vídeo aberto VP8 e WebM. A plataforma também adiciona suporte para codificação AAC e codificação AMR de banda larga (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 quanto ao número de câmeras no dispositivo e os tipos e características delas e, em seguida, abrir a câmera necessária. Por exemplo, um aplicativo de chat por vídeo pode querer acessar uma câmera frontal com menor resolução, enquanto um aplicativo de foto pode preferir uma câmera traseira que ofereça maior resolução.

Novas tecnologias de plataforma

Framework 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 codificação AAC e codificação de banda larga AMR

Kernel do Linux

  • Upgrade feito 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

Tempo de execução Dalvik

  • VM Dalvik:
    • Coletor de lixo simultâneo (pausas de sub-3 ms desejados)
    • Acrescenta mais 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:
    • Compatibilidade com I18N ampliada (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.
    • Por padrão, as respostas HTTP são compactadas em gzip. Os tamanhos de resposta 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 de desenvolvedor, consulte as notas da versão do Android 2.3 e o Relatório de diferenças da API.