Configurar o Eclipse para o Android

O Plugin

“Android oferece um plugin personalizado para o IDE Eclipse, chamado Android Development Tools (ADT). Este plugin é concebido para lhe fornecer um ambiente integrado poderoso, que permite desenvolver aplicativos para Android. Ela estende as capacidades do Eclipse para que você rapidamente possa criar novos projetos Android, construir uma interface de usuário do aplicativo, depurar seu aplicativo, e exportação de app (APKs) para distribuição assinados (ou não assinado).

Certifique-se que você tem uma versão adequada do Eclipse instalado em seu computador, conforme descrito pelos requisitos do sistema.

Se você precisa instalar o Eclipse, você pode baixá-lo http://www.eclipse.org/downloads/ . Recomendamos o “Eclipse Classic” versão. Caso contrário, você deve usar uma versão Java ou RCP do Eclipse.”
Continue reading

Banco de dados para Android

Banco de dados para android sqlite3

SQLite3

Um Banco de dados é muito útil para qualquer sistema de grande ou pequeno porte, a não ser que seu sistema lida apenas com dados simples, não utilizando de um banco para armazenar informações.

O Android usa o banco de dados SQLite que é open-source, o SQLite é muito utilizado em aplicações populares. Outros exemplo de quem utiliza o SQLite é Mozilla Firefox e iPhone.

No Android o banco de dados que você cria em uma aplicação só é acessível para si mesma, a não ser que você utiliza um provedor de conteúdo (assunto a ser discutido em outro post), uma vez criado o banco de dados, ele é armazenado no diretório “/data/data/{nome do pacote}/databases/{nome do banco}”, alem de gerenciar o banco por código você pode faze-lo pelo adb(clique para saber mais) utilizando a ferramenta sqlite3.

Exemplo:
Continue reading

Android – Tocar Alarme com o MediaPlayer

Android Audio

MediaPlayer

A classe MediaPlayer pode ser usada para controlar a reprodução de áudio/vídeo ou stream.

Diagrama de Estado

O diagrama a seguir mostra o ciclo de vida e os estados de um objeto MediaPlayer impulsionado pelas operações de controle de reprodução.  As ovais representam os estados de um objeto MediaPlayer podem residir dentro. Os arcos representam as operações de controlo de reprodução que conduzem a transição de estado do objeto. Existem dois tipos de arcos. Os arcos com uma ponta de seta única são chamadas de métodos síncronos, enquanto que aqueles com uma ponta de seta dupla representa chamadas de método assíncrono.
Continue reading

AsyncTask – Executando tarefas em segundo plano.

Android AsyncTask

AsyncTask um Substituto de Threads e Handles

Como todo desenvolvedor Android sabe, é bem chato mexer com Threads, ainda mais quando há necessidade de atualizar a interface, para isso atualmente usamos a famosa ThreadUI ou Handler.

Pesquisando, encontrei uma maneira de trabalhar com essas Threads distintas facilmente utilizando a classe AsyncTask, com ela nos não precisamos nos preocupar com o tal de Handler. Nela executamos qualquer processo paralelamente e temos um método responsável por atualizar a interface.

Quando estendemos a AsyncTask ele nos obriga a definir três tipos de classes:

(defini esses tipos como exemplo)

Continue reading

Android – Verificar serviços em execução

Os serviços são executados em segundo plano por tempo indeterminado , geralmente eles tem um alto consumo de recursos, memoria e CPU. Não há interação com o usuário e não precisa de interface gráfica.

Eles podem ser utilizados para fazer download de alguma informação, fazer verificações no sistema, um reprodutor de MP3 entre outros processos demorados sem que o usuário perceba.

Atravez deste método o sistema verifica os serviços que estão rodando:

   public boolean isServiceRunning(String servicoClassName) {
        ActivityManager activityManager = (ActivityManager) getSystemService(ACTIVITY_SERVICE);
        List<RunningServiceInfo> services = activityManager.getRunningServices(Integer.MAX_VALUE);
        Log.d(TAG,"Procurando Serviços");
        for (int i = 0; i < services.size(); i++) {
            Log.d(TAG,"Service Nr. " + i + " class name : " + services.get(i).service.getClassName());
	    if(services.get(i).service.getClassName().compareTo(servicoClassName)==0){
	    	return true;
	    }
        }
        return false;
    }

Fonte imagem: http://images.mylot.com/userImages/images/postphotos/2521292.jpg

Android Criando um ListView Personalizado (Create a custom listview)

Custom ListView

Para criar um listView personalizado não é difícil porem é um trabalho chato de se fazer.
O conceito é, preencher uma lista de objetos que contem os dados de seu item e passar essa lista para um adapter que irá preencher o ListView, através desse adapter nós poderemos ter o controle sobre a lista, podendo remover item adicionar e pegar o selecionado.

Primeiro crie o layout de onde ficara seu listView, para isso criei o “main.xml”:
Continue reading

Android – Criando uma notificação

A notificação no android é muito utilizada, quando temos uma aplicação rodando em segundo plano por exemplo e essa aplicação necessita informar algo para o usuário a melhor maneira é exibindo uma notificação, nós não podemos simplismente abrir uma tela na frente, pois pode atrapalhar o que o usuário está fazendo no momento.

Abaixo segue um exemplo prático de como implementar uma aplicação que execute uma notificação.

Continue reading

Android Iniciar emulador no Fedora 64bits

Olá tive o seguinte problema ao iniciar o android no Fedora 64bits:

“SDL init failure, reason is: No available video device”

Antes ocorreu um erro informando que faltava um .so “libstdc++”.

Bom para resolver esses e outros problemas ao iniciar a maquina virtual do android em x64 basta rodar o seguinte comando no terminal:
Continue reading

Android Aplicações Fullscreen

Olá pessoal, para fazer sua aplicação fullscreen no android é bem simples, há duas maneiras.
Segue os exemplos abaixo:

A primeira maneira basta colocar o código no método onCreate de sua Activity:

public void onCreate(Bundle savedInstance) {
	super.onCreate(savedInstance);

	requestWindowFeature(Window.FEATURE_NO_TITLE);
	getWindow().addFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN);

	setContentView(R.layout.main);
}

A segunda maneira é inserir no Manifest.xml uma tag de theme como abaixo:

<activity android:name="LibraryActivity"
	android:theme="@android:style/Theme.NoTitleBar.Fullscreen">
	<intent-filter>
		<action android:name="android.intent.action.MAIN" />
		<category android:name="android.intent.category.LAUNCHER" />
	</intent-filter>
</activity>

Obrigado.
Guilherme Biff Zarelli