Posts com a tag ‘Android’

Como usar banco de dados em uma aplicação android

Um dos grandes diferenciais da plataforma android é a grande quantidade de módulos e APIsSQLite que as aplicações tem à  disposição para usar. Eles dão muito poder ao desenvolvedores, permitindo que estes façam coisas que eram impossíveis em outras plataformas móveis.

Um dos mais importantes módulos é o SQLite. Sim, amigos, já temos um SGDB (Sistema gerenciador de bancos de dados) instalado e pronto para usar! E é exatamente o que faremos no artigo de hoje.

No artigo anterior vimos como criar um Content Provider. Usaremos este provider para acessar o banco de dados.

Para fazer isso, precisamos implementar os métodos da classe ContentProvider que vimos no artigo passado (query(), delete(), update(), etc…)  para prover ao usuário os métodos para criar, atualizar, deletar e recuperar os dados. Além disso, usaremos a classe SQLiteOpenHelper para gerenciar a conexão com o banco de dados.

A classe SQLiteOpenHelper

A classe SQLiteOpenHelper, como dito anteriormente, será…

Google anuncia o Froyo (Android 2.2) e a GoogleTV!

Hoje dou uma pequena pausa na série Desenvolvendo para Android para falar sobre dois anúncios que o google fez ontem no “GoogleIO”.

Froyo (Android 2.2)

O primeiro anúncio foi o Froyo – a nova versão do sistema operacional do robozinho verde.

Essa nova versão traz várias melhorias, mas as que me chamaram mais atenção foram as melhorias de performance, entre elas:

  • JIT – ou Just In Time, uma tecnologia que mapeia as intruções de código Java para código de máquina, tornando a performance destes um pouco mais parecida com código nativo. (Quer saber mais de JIT? a Wikipedia é um bom começo)
  • Browser – A engine do bowser foi trocado para a “V8 Engine“, mais rápida e com um suporte melhor a Javascript.

Além das melhorias de performance, a nova release contém nova APIs e uma feature que particularmente acho fundamental: A possibilidade de instalação de aplicativos no SD card.

A descrição completa da release está…

Criando uma Activity secundária

No post passado vimos como lançar uma Activity a partir de outra, usando as funções startActivity() e startActivityForResult().

Hoje usaremos esta técnica para mostrar ao usuário uma tela de “Boas Vindas” na nossa aplicação de exemplo, o QuickNotes.

Para criar essa nova Activity, usaremos alguma funções do Motodev. Se você não está usando a IDE da Motorola,  não tem problema – é só criar os arquivos manualmente. Porém recomendo o uso da IDE, por facilitar bastante a nossa vida.

Vamos começar criando a Activity que dará “Boas Vindas” ao usuário.

Vá até o menu “MOTODEV” >”New” > “New Android Activity”. Na tela de configuração, entre com o nome da Activity a ser criada:

Após clicar em “Finish”, já haverá a classe “WelcomeActivity” no diretório src do nosso projeto.

Com a Activity criada, o próximo passo é criar o arquivo XML que definirá o seu layout. Crie o arquivo ‘welcome.xml’ no diretorio res/layout com o seguinte conteúdo:

Activity – o que é isso?

Hoje iremos conhecer uma das mais importantes classes de uma aplicação Android: A classe Activity.

No post “Criando um projeto Android (Helloworld!)” comecei a falar sobre ela:

Uma Activity é basicamente uma classe gerenciadora de UI (Interface com o usuário). Todo aplicativo android começa por uma Activity.

Ou seja, quando uma aplicação android é executada, na verdade é a sua Activity principal que é lançada.

Ciclo de vida de uma Activity

Uma das coisas que é importante conhecer sobre a Activity é o seu ciclo de vida. E para explicá-lo, nada melhor do que o seguinte diagrama*:


Este diagrama é de fundamental importância para o correto entendimento do funcionamento de uma aplicação android. Ele introduz, implicitamente, os estados que uma Activity pode estar,  os quais explico no desenho abaixo:

Voltando ao diagrama do ciclo de vida, temos as seguintes funções:

  • onCreate() É a primeira função a ser executada quando uma Activity

Trabalhando com layouts XML em Android (II)

Olá a todos!

No post passado aprendemos como criar um documento XML que define o layout de uma aplicação Android.

Hoje iremos adicionar um botão a este layout, que permita ao usuário inserir novas anotações.

Adicionando um botão a um layout android

Para adicionar um botão clicável ao nosso layout, usaremos o widget Button.

Queremos que ele fique ao lado esquerdo da caixa de texto. Como fazer isso?

  1. Diminuir o tamanho da caixa de texto. Para fazer isso, é só alterar a propriedade  android:layout_width. Originalmente o valor dela  era “fill_parent” – isso quer dizer: “ocupe todo o espaço disponível”. Ao invés disso, vamos usar 240 pixels.
  2. Inserir o botão logo após a caixa de texto.
  3. Inserir um novo LinearLayout que irá conter a caixa de texto e o botão. Isso é necessário porque o LinearLayout que definimos anteriormente (e que ocupa toda a tela) tem a propriedade android:orientation=”vertical”. Essa propriedade faz

Trabalhando com layouts XML em Android

Olá pessoal, hoje vou falar sobre a definição do layout de sua aplicação Android usando XML.

Definir os layouts através dessa técnica é a forma mais comum de se começar o desenvolvimento de uma aplicação.

Para exemplificar os estudos que faremos a partir de agora, usaremos uma aplicação de exemplo, que construiremos juntos, a partir dos próximos posts.

A idéia é fazer uma aplicação onde o usuário poderá entrar com algumas anotações, e visualizar as últimas entradas.

O layout será mais ou menos assim:

Criando o main.xml

Para novos projetos android, o arquivo main.xml já é automaticamente criado. Ele fica no diretório res/layout, com o conteúdo:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
 android:orientation="vertical"
 android:layout_width="fill_parent"
 android:layout_height="fill_parent"
 >
<TextView
 android:layout_width="fill_parent"
 android:layout_height="wrap_content"
 android:text="@string/hello"
 />
</LinearLayout>

Neste arquivo temos contato com os primeiros elementos de um arquivo de layout XML:

  • LinearLayout, que é apenas um container.
  • TextView, que é um elemento de texto. Nesse caso está imprimindo a string cujo id é