Arquivo para a categoria 'N800'

N800 de volta

No dia 29/10/2009, meu N800 voltou da assistência técnica para onde eu o havia mandado no dia 16/10/2009, pois ele apresentou um defeito de ficar com a tela rolando de cima para baixo, que pode ser visto na imagem abaixo:

N800 com defeito

N800 com defeito

Agora ele está como novo :) . Assim, resolvi seguir os passos do Mauro Martins, e, com ele recém formatado, instalar somente os aplicativos que pretendo fazer uso:
- GPodder (para podacasts);
- MPlayer (para os vídeos);
- Evince (para a leitura de PDF);
- Rapier (para a leitura da Bíblia);
- FBReader (para a leitura de eBooks).
Bom, por enquanto, só estes :) .

Executando Java no Maemo (Nokia N800) – Parte 3 – AWT

Dando continuidade aos artigos sobre Java no Maemo, abordaremos, neste, o uso da biblioteca gráfica AWT para desenvolvimento de aplicações Java.

Antes de mais nada, aconselho a leitura dos dois artigos anteriores [1] [2]. Se você já os leu, e estava ansiosamente esperando pela continuação :) , vamos lá.

Antes de executarmos nosso exemplo no N800, temos de instalar a biblioteca AWT. Mas, para isso, temos de ter acesso ao root no Maemo, para poder instalar o AWT utilizando o apt-get. Para isso, pode-se ler este tópico do wiki do próprio Maemo ou seguir os passos abaixo:

  1. O repositório maemo Extras esteja habilitado;
  2. Instale o aplicativo rootsh;
  3. Depois de instalado, abra o X Terminal e digite: sudo gainroot, para obter acesso de root;
  4. Execute agora o apt-get: apt-get classpath-common, para instalar o pacote com suporte ao AWT.

Agora vamos criar o nosso exemplo.

import java.awt.*;
import java.awt.event.*;

public class Primeiro extends Frame implements ActionListener
{
    private Button btnSair;
    private Label lblTexto;

    public Primeiro()
    {
        initComponents();
    }

    private void initComponents()
    {
        lblTexto = new Label("Bem-vindo ao Java com AWT no Maemo");
	btnSair = new Button("Sair");

        setLayout(null);
	setTitle("Primeiro");
        //labels
        addComponent(lblTexto, 20, 40, lblTexto.getText().length() * 10, 20);
        //botoes
        btnSair.addActionListener(this);
        addComponent(btnSair, 160, 230, 57, 24);
    }

    private void exitForm()
    {
        System.exit(0);
    }

    private void addComponent(Component obj, int x, int y, int width, int height)
    {
    	obj.setBounds(x, y, width, height);
    	add(obj);
    }

    public void actionPerformed(ActionEvent evt)
    {
	if(evt.getActionCommand().equals("Sair"))
    	{
    	    exitForm();
    	}
    }

    public static void main(String args[])
    {
        new Primeiro().setVisible(true);
    }
}

Digite o exemplo em seu edito de texto preferido, salve-o como Primeiro.java e compile-o (no computador):

javac Primeiro.java

Após a compilação será criado o arquivo Primeiro.class que deve ser copiado para o cartão de memória que será usado no N800 (em meu caso, é um cartão de 4 GB, e copiei o arquivo para o diretório java). Insira o cartão no N800 e abra mais uma vez o X Terminal. Digite:

cd /media/mmc1/java
java Primeiro

Uma tela, como a da figura abaixo, deve aparecer agora no N800.

Java AWT

Java AWT

Nada mais é que uma tela em que são exibidos um label contendo um texto e um botão de Sair de programa. Pronto, agora já podemos desenvolver aplicações em Java com AWT para  Maemo.

Bons códigos :) !

Lançada nova versão do emulador de Palm OS (Garnet VM) para o N800 (Maemo)

A ACCESS, que desenvolve a Garnet VM para o Maemo, acaba de lançar mais uma versão, a Garnet VM Beta 4 for Nokia Series. O download pode ser feito pelo próprio site, escolhendo qual a versão do seu sistema operacional e preechendo-se um formulário para recebimento, por email, do link para o download ou você pode baixar diretamente deste link (observe que esta versão da Garnet VM é para o N800 rodando o OS2008).

Aproveite também para ver meu tutorial de instalação do Bible+ juntamente com o roadlingua no N800.

Executando Java no Maemo (Nokia N800) – Parte 2 – SWT

Bom, como eu havia dito, voltamos com a segunda parte do tutorial Executando Java no Maemo, mas agora focando no uso de interface gráfica, que é o que mais desejamos :) .

Conforme o site do Jalimo, eles recomendam o uso do Eclipse SWT. No caso do OpenMoko (segundo o mesmo site) este também executa aplicações com o AWT e Swing.

O SWT (Standard Widget Toolkit) é uma biblioteca de classes de interface gráfica desenvolvidas pela fundação Eclipse, a mesma que mantém a IDE Eclipse, e está disponível para vários sistemas operacionais, entre eles, Windows, Linux, MacOS etc.

Antes de criar o exemplo para teste, vamos baixar o pacote do SWT para o computador, pois, para compilar o exemplo no computador, precisaremos desta biblioteca. Vá ao site do SWT e procure por Releases, versão Stable (Figura 01).

Figura 01

Figura 01

Clique no link do seu sistema operacional (escolhi o Windows) que uma nova página se abrirá (Figura 02).

Figura 02

Figura 02

Clique na seta verde para baixar o arquivo (swt-3.4-win32-win32-x86.zip, para Windows; swt-3.4-gtk-linux-x86.zip, para Linux). Após baixado, descompacte o arquivo no diretório de sua escolha (exemplo, C:\javaN800\swt). Dentro do diretório, haverá um arquivo com nome swt.jar, este é a biblioteca SWT que será utilizada para compilar nosso exemplo.

Agora vamos criar a classe que será executada no N800. Digite o texto abaixo no editor de sua preferência:

import org.eclipse.swt.*;
import org.eclipse.swt.layout.*;
import org.eclipse.swt.widgets.*;

public class SimpleSwtSample
{
	public static void main(String[] args)
	{
		// pega o display
		Display display = Display.getDefault();
		// cria a janela principal da aplicacao
		final Shell shell = new Shell(display);
		shell.setLayout(new RowLayout(SWT.VERTICAL));
		// cria e adiciona um Label
		Label label = new Label(shell, SWT.CENTER);
		label.setText("Ola Maemo N800!");
		// cria e adiciona um Label para
		// motrar as informacoes do sistema
		Label lblSistema = new Label(shell, SWT.CENTER);
		lblSistema.setText(info());
		// cria e adiciona um Button
		Button button = new Button(shell, SWT.CENTER);
		button.setText("Fechar");
		// adicionar um Listener para fechar a aplicação
		button.addListener(SWT.Selection, new Listener()
		{
			public void handleEvent(Event arg0)
			{
				shell.dispose();
			}
		});
		// abre a janela principal
		shell.open();
		// inicia a interface grafica
		while(!shell.isDisposed())
		{
			(!display.readAndDispatch())
			{
				display.sleep();
			}
		}
	}

	public static String info()
	{
		String versaoJava = System.getProperty("java.version");
		String nomeSO = System.getProperty("os.name");
		String versaoSO = System.getProperty("os.version");
		return "Versao Java: " + versaoJava + "\nS.O.: " + nomeSO + " " + versaoSO;
	}
}

Salve-o como SimpleSwtSample.java, no diretório onde foi descompactado o SWT baixado e execute o comando abaixo:

javac -cp swt.jar SimpleSwtSample.java

Serão gerados dois arquivos, SimpleSwtSample.class e SimpleSwtSample$1.class, que devem ser copiados para um diretório no cartão de memória que será inserido no N800 (em meu caso o cartão que foi usado no primeiro tutorial, no diretório java).

Insira o cartão no N800, abra o X Terminal e digite:

cd /media/mmc1/java
java -cp /usr/share/java/swt-gtk.jar: SimpleSwtSample

O resultado deverá ser a tela abaixo:

Figura 01

Figura 03

A aplicação só faz escrever na tela uma mensagem de Olá Mundo e algumas informações sobre o sistema onde está instalado o Java. Ao se clicar no botão Fechar ou no X no canto superior direito a aplicação será fechada. Ah, e se você acha que é somente isso que dá para fazer com Java no Maemo, veja as telas do segundo exemplo, disponível no site do Jalimo.

Estes dois exemplos foram retirados do site do Jalimo, o primeiro eu modifiquei só um pouco e o segundo é tal como está lá. Estou disponibilizando para download o arquivo JavaMaemoSWT.zip (disponível no Box.net  e no Mediafire), tanto os arquivos já compilados como os fontes. Fiquem a vontada para se divertir.

Ah, e antes que em me esqueça, na próxima parte deste tutorial, irei mostrar como rodar aplicativos com o toolkitt grático AWT.

Até lá.

Executando o Bible+ no emulador Palm OS do N800

Atendendo ao pedido do leitor Telson escrevi este tutorial, que mostra basicamente como instalar o Garnet VM (emulador de Palm OS para Maemo), bem como os aplicativos Bible+, PPI e RoadLingua, pois assim os arquivos que disponibilizo aqui, da Bíblia ACF e do Dicionário Bíblico, poderiam ser utilizados no emulador.

Primeiro vamos baixar o Garnet VM no endereço da ACCESS. Clique na versão do SO que está instala em seu N800 (em meu caso foi OS 2008) e preencha o formulário para receber o link para download da Garnet VM. Para poupar alguns deste trabalho :) , pode clicar aqui também.

Depois baixamos o Bible+ (baixei a última versão disponibilizada no fórum do site e que pode ser acessado neste link; a versão que peguei foi a 3.4 RC 11), o PPI (Plucker Plugin Interface) que permite que possamos fazer a linkagem do Bible+ com o RoadLingua, neste link e, para terminar, o RoadLingua para Palm OS, neste link (neste aqui baixei o arquivo zipado, então precisa ser descompactado).

Tendo baixado todos estes arquivos, copie-os para um diretório num cartão de memória para serem instadlso no N800 (no meu caso, copiei para o diretório palm num cartão de memória SDHC de 4 GB). E não esqueça de copiar também a Bíblia ACF para o Bible+ e o Dicionário Bíblico para o Roalingua, aqui mesmo no blog :) .

Agora vamos para o N800. Abra um gerenciador de arquivos e navegue até o diretório palm (Figura 1). Primeiro vamos começar com a instalação do Garnet VM. Dê dois cliques no arquivo garnet-vm_1.0.2b_ITOS2008.deb e o Gerenciador de aplicativos será aberto pedindo a confirmação da instalação do Garnet VM (Figura 2), clique em OK para instalar e na tela seguinte (Figura 3) clique em OK novamente. Quando a instalação terminar será mostrada uma tela de escolha para o local da aplicação (Figura 4), deixe como está ou escolha um local de sua preferência e clique em OK. E finalmente será mostrado um botão de instalação bem sucedida (Figura 5). Clique em OK e feche o Gerenciador.

Agora vamos instalar os aplicativos no emulador. Clique no Menu de aplicativos, vá até a opção onde você instalou o atalho para a Garnet VM e clique nela (meu caso Menu de aplicativos->Extras->Garnet VM). Aparecerá uma tela com os termos de licença da aplicação, clique em Accept. Pronto, agora temos a tela inicial do Garnet VM funcionando (Figura 6). Note que ele já tem as aplicações nativas do Palm OS. Agora vamos instalar as aplicações.

Para instalar cada aplicativo basta clicar no botão Install e procure pelos arquivos que estão no cartão memória dentro do diretório criado (palm). Instale os aplicativos: PalmBible_en.prc, ppi_en.prc, RoadLingua.prc; e os arquivos: ACF.pdb e DicBiblico.pdb. Para instalar cada um deles, clique no arquivo desejado e pressione Selecionar. Após cada arquivo instalado uma tela de instalação bem sucedida é mostrada (Figura 7). Com todos os aplicativos instalados (Figura 8), clique em PPI e depois no botão Launch. Quando o PPI for aberto, na opção Lookup word in, selecione RoadLingua e depois clique em Save (Figura 9).
Agora abra o RoadLingua e escolha o DicBiblico (Figura 10). E agora é só testar o Bible+ (Figura 11). Pronto, se tudo tiver dado certo, você já pode usar o Bible+ como se estivesse num dispositivo com Palm OS.

9.04

9.04

Executando Java no Maemo (Nokia N800) – Parte 1

Depois de haver comprado o Nokia N800, procurei alguma forma de desenvolver para ele. A primeira coisa que pensei foi desenvolver algo em Java, pois além de ser a linguagem em que eu mais programei, queria testar se uma das minhas aplicações rodaria nele. A outra linguagem em que pensei foi Python, pois estou estudando-a e já fiz até alguns scripts que me foram bem úteis no notebook.

Após a escolha pelo Java inicialmente, resolvi procurar uma JVM para o N800 (na realidade que rode no Maemo, que é o sistema operacional que roda tanto no N800 quanto no N810).

A JVM que encontrei foi a Jalimo, que é um projeto com o intuito de disponibilizar uma JVM para dispositivos rodando Maemo ou OpenMoko. É baseada nos projetos CacaoJVM, JamVM e GNU Classpath.

Instalando no N800

Antes de instalar, devemos colocar o N800 no modo “Red Pill” ou “Pílula Vermelha” [1] que permite a instalação destes pacotes adicionais que pulam certos requisitos de segurança do sistema. Para ativar, proceda assim:

  1. Abra o Gerenciador de aplicativos;
  2. Clique em Menu->Ferramentas->Catálogo de aplicativos;
  3. Clique em Novo e preencha Endereço da Web com matrix e clique em Cancelar (Figura 1);
  4. Clique no botão Red e depois em Fechar (Figura 2).
screenshot06

Figura 1

screenshot07

Figura 2

Agora, vamos à instalação do Jalimo. Abrimos o navegador do N800 e digitamos o endereço https://wiki.evolvis.org/jalimo/index.php/Maemo.

Figura 3

Figura 3

No site aparecem várias setinhas verdes com o texto Click to install (Figura 3). Clicamos na primeira que está no início da página; esta irá instalar o Jalimo e mais o SWT bem como uma aplicação gráfica de exemplo. Na tela que aparecer (Figura 4) clique em Abrir e espere o Gerenciador de aplicativos ser aberto.

Figura 4

Figura 4

Assim que o Gerenciador for aberto basta aguardar um pouco que uma outra tela irá aparecer (Figura 5) informando que, para o software ser instalado, o catálogo correspondente precisa ser instalado. Se desejar saber qual catálogo está sendo adicionado basta clicar em Detalhes.

Figura 5

Figura 5

Clicamos em OK e o software começará a ser instalado. Outra tela se abrirá agora perguntando se o aplicativo jalimo-swt-example 0.1.3-0maemo~chinook-r0 pode ser instalado (Figura 6). Clicamos em OK para confirmar a instalação.

Figura 6

Figura 6

Aparecerá uma tela de aviso (Figura 7) e mais uma vez clicamos em OK e esperamos o processo de instalação ser concluído. Quando terminado aparecerá uma tela de confirmação de sucesso da instalação (Figura 8), basta clicar em OK e o Jalimo já estará instalado.

FIgura 7

FIgura 7

Figura 8

Figura 8

Testando com uma aplicação a ser executada no terminal

Para este teste criei uma classe que nada mais faz além de mostrar uma mensagem de texto e mais algumas informações sobre o sistema onde o java está instalado. Copie o texto abaixo no editor de sua preferência, salve-o como Teste.java e depois compile-o: javac Teste.java.

public class Teste
{
	public static void main(String args[])
	{
		String versaoJava = System.getProperty("java.version");
		String nomeSO = System.getProperty("os.name");
		String versaoSO = System.getProperty("os.version");

		System.out.println("Ola mundo Maemo!");
		System.out.println("Versao Java: " + versaoJava);
		System.out.println("S.O.: " + nomeSO + " " + versaoSO);
	}
}

Copie o arquivo gerado, Teste.class, para o N800 (eu copiei para um cartão de memória, dentro de um diretório java). Insira o cartão no N800 e execute o X Terminal (Menu de aplicativos->Utilitários->X Terminal). Quando o terminal abrir (Figura 9) digite:

cd /media/mmc1/java
java Teste

Figura 9

Figura 9

A saída será (Figura 10):

Ola mundo Maemo!
Versao Java: 1.5.0
S.O.: Linux 2.6.21-omap1

Figura 10

Figura 10

Onde mmc1 é o cartão de memória que fica no slot externo (o outro é o que fica na parte interna, junto da bateria do N800). Somente uma observação: ao invés de se digitar java Teste, podemos digitar também: cacao Teste, que é o nome interno da JVM da Jalimo.

Na segunda parte irei explicar como rodar uma aplicação gráfica em Java utilizando para isso o SWT. Até lá então.

Fontes:
[1] http://wiki.maemo.org/Red_Pill_mode

8.108.10

The Ubuntu Counter Project - user number # 21175
Livros só mudam pessoas

Atualizações Twitter

Comentários

The Greek New Testam… em Livros – ePub
Ezequiel em Quem sou eu
Fábio Medeiros em Quem sou eu
Ezequiel em Quem sou eu
Fábio Medeiros em Livros – ePub

Arquivos

Categorias


Seguir

Obtenha todo post novo entregue na sua caixa de entrada.

Junte-se a 115 outros seguidores

%d bloggers like this: