terça-feira, 29 de maio de 2012

Desenvolvendo aplicações Android Parte III: Iniciando no Android 4.0


Desenvolvimento com Android e Eclipse



Este tutorial descreve como criar aplicativos Android com o Eclipse. Ele é baseado no Eclipse 3.7 (Indigo), Java 1.6 e 4.0 do Android (Ice Cream Sandwich).

Nesta Parte, iremos aprender sobre os seguintes ítens:


1. Componentes Android

A seguir dá um breve resumo dos componentes mais importantes do Android.

1.1. Atividade

Activity representa a camada de apresentação de uma aplicação Android. Uma descrição simplificada é que uma Activity representa uma tela na sua aplicação Android. Isso é um pouco incorreto como Activities podem ser exibidos como caixas de diálogo ou pode ser transparente.
Um aplicativo Android pode ter várias Activities .

1.2. Visto e ViewGroups

Views são widgets de interface de usuário, por ex campos de texto. A classe base para todos os Views é android.view.View . Views muitas vezes têm atributos que podem ser usados ​​para alterar sua aparência e comportamento.
ViewGroup é responsável por organizar outras Views . A ViewGroup também é chamado de gerenciador de layout. A classe base para um gerenciador de layout é android.view.ViewGroups que se estende View .
ViewGroups pode ser aninhado para criar layouts complexos. Você não deve nestle ViewGroups muito profundamente, pois isso tem um impacto negativo sobre o desempenho.

1.3. Intenções

Intents são mensagens assíncronas que permitem a aplicação de solicitar a funcionalidade de outros componentes do sistema Android, por exemplo, de Services ou Activities . Um aplicativo pode chamar um componente direta (explícita Intent ) ou pedir o sistema Android para avaliar componentes registrados para um determinado Intent (implícitos Intents ). Por exemplo, o aplicativo poderia implementar o compartilhamento de dados através de uma Intent e todos os componentes que permitem o compartilhamento de dados estará disponível para o usuário selecionar. Aplicações registar-se para um Intent via um IntentFilter .
Intents permitem combinar componentes fracamente acoplados para executar determinadas tarefas.

1.4. Serviços

Services realizar tarefas em segundo plano, sem fornecer uma interface de usuário. Eles podem notificar o usuário por meio da estrutura de notificação no Android.

1.5. ContentProvider

ContentProvider fornece uma interface estruturada para dados do aplicativo. Através de um ContentProvider seu aplicativo pode compartilhar dados com outras aplicações. Android contém uma base de dados SQLite que é frequentemente usado em conjunto com um ContentProvider . O banco de dados SQLite iria armazenar os dados, que pode ser acessada através do ContentProvider .

1.6. BroadcastReceiver

BroadcastReceiver podem ser registrados para receber mensagens do sistema e Intents . O BroadcastReceiver será notificado pelo sistema Android, se a situação referida acontece. Por exemplo, um BroadcastReceiver poderia ter chamado uma vez que o sistema Android concluído o processo de inicialização ou se uma chamada é recebida.

1.7. (HomeScreen) Widgets

Widgets são componentes interativos que são utilizados principalmente na homescreen Android. Eles normalmente apresentam algum tipo de dados e permitir ao usuário executar ações através deles. Por exemplo, um Widget pode exibir um breve resumo dos novos e-mails e se o usuário seleciona um e-mail, ele pode iniciar o aplicativo de e-mail com o e-mail selecionado.

1.8. Outro

Android fornecer muitos componentes mais, mas a lista acima descreve os mais importantes. Outros componentes do Android são "pastas ao vivo" e "Papéis de parede vivo". Pastas ao vivo exibir dados na tela inicial, sem lançar o aplicativo correspondente.

2. Android Development Tools

2.1. Quais são as Ferramentas de desenvolvimento Android?

Google fornece as Android Development Tools (ADT) para desenvolver aplicativos para Android com o Eclipse. ADT é um conjunto de componentes (plug-ins) que se estendem a IDE Eclipse com capacidades de desenvolvimento do Android.
ADT contém todas as funcionalidades necessárias para criar, compilar, depurar e implantar aplicativos do Android a partir do IDE do Eclipse e da linha de comando. Outros IDE, por exemplo, IntellJ, são também reutilizar componentes de ADT.
ADT também fornece um emulador de dispositivo Android, para que os aplicativos do Android pode ser testado sem um telefone Android real.

2.2. Dalvik Virtual Machine

O sistema Android usa uma máquina virtual especial, ou seja, a máquina virtual Dalvik para executar aplicações baseadas em Java. Dalvik utiliza um formato de código de bytes própria, que é diferente de bytecode Java.
Portanto, você não pode executar diretamente os arquivos de classe Java no Android, eles precisam são convertidos no formato bytecode Dalvik.

2.3. Como desenvolver aplicativos para Android

Os aplicativos Android são primeiramente escrito na linguagem de programação Java. Os arquivos de origem Java são convertidos para arquivos de classe Java, o compilador Java.
Android fornece uma ferramenta chamada "dx" "que converte arquivos de classe Java em um dex arquivo (Executável Dalvik). Todos os arquivos de classe de um aplicativo são colocadas em um arquivo comprimido dex.. Durante este processo de conversão de informação redundante nos arquivos de classe são otimizados no arquivo de dex.. Por exemplo, se a mesma seqüência é encontrada em arquivos de classes diferentes, o arquivo. dex contém apenas uma referência, uma vez desta String.
Esses arquivos são, portanto, dex muito menores em tamanho do que os arquivos de classe correspondentes.
O arquivo. Dex e os recursos de um projeto Android, por exemplo, as imagens e arquivos XML, são embalados em um .apk arquivo (pacote Android). O programa aapt (Android Packaging Tool Ativos) realiza esta embalagem.
A resultante. Arquivo APK contém todos os dados necessários para executar o aplicativo Android e pode ser implantado em um dispositivo Android por meio da ferramenta "adb".
O Android Development Tools (ADT) permite que todas essas etapas são realizadas de forma transparente para o usuário; tanto dentro do Eclipse ou via linha de comando.
Se você usar a ferramenta ADT você pressiona um botão ou executar um script ea aplicação Android todo (. Arquivo APK) será criado e implantado.

2.4. Os editores de recursos

A ADT permite ao desenvolvedor definir certos artefatos, cordas, por exemplo e os arquivos de layout, de duas maneiras: através de um editor rico, e diretamente via XML. Isto é feito através de várias páginas em editores Eclipse. Nestes editores você pode alternar entre as duas representações, clicando na guia na parte inferior da tela.
Por exemplo, se você abrir a "res / layout / main.xml" arquivo no Package Explorer, você pode alternar entre as duas representações, conforme ilustrado na imagem seguinte.



2.5. Log

Android usa o android.util.Log classe para a exploração madeireira com o Log.i() , Log.w() eLog.e() e Log.wtf() métodos para registro. Esta lista é ordenada por Separação.
O primeiro parâmetro de estes método é a categoria eo segundo é a mensagem.
Normalmente, você cria um Constants classe em seu aplicativo para Android e fornecer sua bandeira log como um campo final estático público.
                              
 pacote de.vogella.android.first;

 públicos constantes da classe {
         LOG public static String final = "de.vogella.android.first";
 }

                      
Android informa que um aplicativo implantado não deve conter código de registro. As ferramentas de desenvolvimento Android fornecer o BuildConfig.DEBUG bandeira para esta finalidade. Esta bandeira será automaticamente definida para false , se você exportar o aplicativo Android para implantação.Durante o desenvolvimento que será definido como true , portanto, permitir que você veja as suas declarações de registo durante o desenvolvimento.
O exemplo a seguir mostra como escrever uma mensagem de log de erro. Esta mensagem é visível no "LogCat" vista em Eclipse.
                              
 if (BuildConfig.DEBUG) {
         Log.e (Constants.LOG ", onCreate chamado");
 }
                       

Espero que tenham gostado. Continuaremos este Post em breve.





8 comentários:

  1. Estou tendo problemas para instalar a sdk do facebook para Android, ja vi vários tutoriais mas não vai, algume pode dar uma ajudinha.

    ResponderExcluir
    Respostas
    1. Olá Giovani! Como assim o sdk do facebook? Você esta querendo programar para facebook via android? não entendi sua pergunta, se puder ser mais claro poderemos lhe ajudar.
      Abraços!

      Excluir
  2. Na verdade eu quero fazer um aplicativo, aonde será digitado um texto que será postado na conta de quem tiver digitado o texto.

    ResponderExcluir
  3. Bom nesse meio tempo, ja consegui logar no facebook que estava sendo a coisa mais dificil de acontecer se quiser eu posso postar o código e explicar como se faz !!

    ResponderExcluir
    Respostas
    1. Se quiser compartilhar este conhecimento, seja bem vindo!

      Excluir
  4. http://www.easyfacebookandroidsdk.com/

    Neste site tem .jar que simplifica a implementação da API do facebook e tem uma documentação boa para se entender e nesse outro,

    http://kodefun.junian.net/2011/10/easy-facebook-android-sdk-simple.html

    tem um exemplo de como usar esta API, porém tem um passo que acredito não deve ser obrigatório, porque não precisei fazer e funcionou direito pelo menos no emulador.

    ResponderExcluir
  5. Quando der você poderia postar um tutorial de consulta web service que retorna JSON e exibe os resultados na tela.

    ResponderExcluir

Admin: Bruno

Olá Galera! muito grato por estarem acessando nosso blog. Espero que seja possível transmitir de forma compreensível um pouco de meus conhecimentos em programação, para esta comunidade de desenvolvedores que cresce cada vez mais! Espero que Gostem! Abraço! E meu enorme obrigado à Renato Simões, Átila Soares,Wanderson Quinto, Emerson e a toda galera que sempre ajudou meu sincero obrigado....
Especialmente a Natalia Failache e Rita de Cassia que sempre apoiaram este sonho....

De seu amigo Bruno Rafael.