Arquivo por categoria aplicativos

Uma atualização no Blockout

No primeiro texto sobre o jogo eu falei que um bom projeto sempre começa com a documentação. O motivo disso é simples: é através da documentação que você percebe diversos detalhes e, muitas vezes, evita armadilhas.

A armadilha do momento é: como fixar as peças no tabuleiro? Pode parecer simples, mas há duas situações. A primeira é quando a peça está acima de qualquer outra. Aí é fácil, pois basta ela ir “descendo” até que não possa mais. Isso estava funcionando perfeitamente.

Até o momento em que tentei fazer uma coisa: ir descendo com uma peça até ser possível encaixá-la no vão deixado entre outras duas. Isso não funciona! Pelo menos não com a lógica que estava usando. E para descobrir a lógica correta? Algumas horas quebrando a cabeça….

Como se pode ver nas figuras acima a interface progrediu um pouco. E comparando com uma imagem anterior dá pra ver que um dos controles sumiu!!

Pois é…..caiu a ficha de que não são necessários dois controles! Apenas um já resolve meu problema. Pressionando qualquer uma das setas a peça se move no sentido dela (cima, baixo, direita, esquerda). Pressionando o círculo no centro a peça “desce” um nível ou, se pressionando por um tempo mais prolongado, ela é fixada.

Para rodar a peça no sentido horário ou anti-horário basta pressionar uma das setas e mover o dedo em direção a outra! Por exemplo, para rodar uma peça no sentido horário, basta pressionar a seta para cima e deslizar o dedo para a seta para a direita. Para o sentido anti-horário, basta ir no sentido oposto: da seta pra cima para a seta para a esquerda.

E para rotacionar a peça no próprio eixo (ou girá-la), basta fazer o mesmo processo, porém usando as setas opostas. Se eu quero girar uma peça “para cima”, basta pressionar a seta para baixo e deslizar o dedo até a seta para cima.

Um controle simples, e funcional. E ainda permite que tanto destros quanto canhotos joguem sem problemas, já que basta apenas mudar o lado dele.

Já há também o placar, e mais dois botões ali embaixo: um para o som (que por enquanto está desativado pois, claro, não há som), e outro para pausar o jogo. Tocar o “tabuleiro” também o pausa.

A tela como um todo ainda está bem pobre. Mas a minha prioridade é deixar o jogo jogável, e sem bugs. Só depois melhorar a aparência.

Imagens do MeeGo no N900

Estas são algumas imagens do MeeGo rodando no N900. Até pensei em fazer um vídeo, mas vou poupar a todos de ouvir minha maravilhosa voz! :)



A primeira foto está ruim, mas optei por deixá-la para mostrar como é a tela “normal” dele. A segunda foto é o menu, onde se chega ao pressionar “quadrado vermelho” no rodapé central da tela. A terceira foto é a continuação do menu, movendo a tela para a esquerda. Os dois pequenos quadrados no topo central acredito que informem a quantidade de telas que há…no caso, duas.

A quarta foto é a tela de configurações. Na quinta vemos as redes wireless localizadas. E a última seriam as configurações de aparência. Dá para perceber nitidamente que o trabalho atual é fazer as coisas funcionarem, e não deixá-las utilizáveis.

Nenhum dos programas existe. Na verdade há apenas o ícone. Para os poucos ícones de programas que fazem algo é exibida apenas uma tela branca com um texto dizendo “espaço a ser utilizado pelo programa XYZ” (onde o XYZ é o nome do programa em si).

Eu consegui fazer o Multiboot iniciar o MeeGo, mas infelizmente não consegui fazer dar boot novamente no Maemo sem utilizar o Flasher (não perdi nada, tive apenas que rodar o Flasher para reinstalar o kernel). Ainda vou tentar ver se o Multiboot conseguiria se recuperar, mas sem pressa.

Alterando a versão do Flash

O Flash é aquele plugin que permite o navegador exibir páginas animadas, e também rodar vários jogos nele, só para citar alguns exemplos. É em Flash também que os vídeos do Youtube são exibidos.

O N900 vem de fábrica com a versão 9.0. Só que já está no mercado a versão 10. E alguns sites não permitem que suas animações sejam exibidas na versão anterior, mesmo sendo isso possível.

Não há o menor sinal de que a Adobe e a Nokia, em algum momento, façam uma atualização do Flash no N900.

Mas há um programa, no repositório extras-devel, que permite alterar a versão que o plugin informa para os sites, permitindo que as animações possam ser exibidas. Claro que nem sempre funcionará, já que se a animação usa algo específico da versão 10 ocorrerá algum problema…..afinal de contas, você não está usando a última versão!! Apenas está enganando o site dizendo que está.

O nome dele é Tweak Flash plugin version. A tela não poderia ser mais simples e auto-explicativa.

Basta dizer qual é a versão que ele deve informar aos sites, e mandar salvar. Para voltar à configuração original basta selecionar a devida opção no menu do programa.

Infelizmente eu não consegui testar efetivamente o programa pois desconheço qualquer site que obrigue a ter a versão mais recente do Flash….

fonte: Nokia N900 Applications

MeeGo no N900

A Nokia disponibilizou imagens do MeeGo para instalação no N900.

São dois arquivos, encontrados aqui:
- meego-handset-armv5tel-n900-nokia-proprietary-1.0.80.13.20100803.2-mmcblk0p.raw.bz2: o arquivo que contém a imagem em si
- meego-handset-armv5tel-n900-nokia-proprietary-1.0.80.13.20100803.2-vmlinuz-2.6.35~rc6-133.2-n900: o kernel necessário para iniciar o aparelho no MeeGo

Há um guia para instalação do sistema no cartão de memória, de forma a que o Maemo não seja tocado. Eu vou tentar fazer a instalação, no cartão de memória, porém usando o esquema de multi-boot implantado com o Android.

Mas convém salientar que o sistema ainda não é utilizável no N900! Ou seja, é provável que o Android rode mais redondo que o MeeGo neste estágio. Para o usuário comum, não vale a pena.

Mais tarde este texto será atualizado com o sucesso (ou não) da empreitada!

Atualização: não obtive muito sucesso. Instalando o kernel através do Flasher o aparelho não deu boot, e com o Multiboot também não deu certo. Talvez novamente outra hora…

Nova atualização: consegui fazer o N900 dar boot no MeeGo. Realmente foi o que imaginei: neste ponto o Android está mais avançado que o próprio MeeGo no N900. O touch está terrível…é preciso apertar consideravelmente a tela para reconhecer o toque. A navegação pelo sistema também está bem ruim e muitos ícones não está aparecendo (fica apenas um quadrado vermelho).

O wi-fi funcionou, reconhecendo minha rede doméstica (que possui criptografia WPA2), mas não consegui rodar o navegador (ou aquilo que eu acho que deveria abrir um). Tentarei tirar algumas fotos ou fazer um vídeo do aparelho rodando o MeeGo.

Realmente não recomendo, pois não há praticamente nada a ser fazer nele, a menos que você seja curioso.

Identificando músicas com o Instinctiv

Há algum tempinho apareceu na Ovi Store o Instinctiv, que era apenas um substituto ao Mídia Player padrão do aparelho.

Eu não dei muita atenção pois, mesmo não sendo muito prático, o programa nativo cumpria sua função. Mas agora o programa conta com um recurso que o deixa interessantíssimo, e que certamente já deu pra perceber pelo título ali em cima.

Antes a carinha dele.

A primeira coisa a notar é que ele funciona APENAS no modo retrato! Pois é….mesmo que você abra o teclado, ele continuará “em pé”! A forma de adicionar listas de execução é simples: pressione a opção na tela, acesse o menu e escolha nova lista, selecione a lista, vá no menu de novo e adicione as músicas que quer.

Agora a parte que deixa o programa extremamente interessante. Ao pressionar a opção identificar, esta sequência acontecerá:

É preciso uma conexão ativa com a internet para a identificação funcionar! O programa não abrirá essa conexão por si, pelo menos nesta versão que instalei. Fiz inicialmente 3 testes, com 3 músicas: Born to be Wild (numa versão cantada pelo Ozzy Osbourne e pela Miss Piggy…sim, aquela dos Muppets), Anti-pop (do Primus) e Creeping Death (uma música do Metallica tocada pelo Apocalyptica, que é um grupo composto de 4 violoncelistas). A música do Ozzy não foi reconhecida, mas as outras duas mostraram estes resultados:

Eu tentei outras músicas mais “complicadas”, como a Learning to Fly, do Pink Floyd, na versão ao vivo do disco Pulse, que foi reconhecida. Mas tentei duas músicas cover do Dream Theater: The Thing That Should Not Be (original do Metallica) e Tears (original do Rush). Não foram reconhecidas.

A impressão que tive é que o programa funciona bem para músicas e grupos mais conhecidos. Mas isso também é questão deles alimentarem o banco de dados. E também temos que considerar que a versão do programa que faz o reconhecimento ainda é beta! A versão que está na Ovi Store não faz isso.

Para instalá-lo é preciso baixar o arquivo .deb. A versão mais recente até a publicação deste texto está aqui. Mas convém acompanhar as mensagens sobre ele no T.M.O. para ver se não há uma versão mais nova.

fonte: T.M.O.

Aplicativos criminosos

As lojas de aplicativos trouxeram uma grande facilidade para os usuários, e uma mina de ouro para os desenvolvedores. Já teve muita gente ganhando bastante dinheiro com eles. Obviamente com o tempo a receita vai caindo, pois a concorrência vai aumentando.

O problema das lojas é que normalmente os programas que estão nelas são fechados. Você não tem acesso ao código-fonte deles. Mas pra que isso importa para a maioria dos usuários, que sequer saberia como abrir o código? E muito menos ver o que está fazendo??

Para essa maioria, nada! Mas para uma minoria que se preocupa com segurança importa muito.

Há algum tempo o Google usou uma característica presente no Android que lhe permite apagar programas instalados no equipamento remotamente. Sim, você leu certo!! Ao pressionar um botão o Google pode apagar um programa que está instalado no SEU aparelho. Assim como a Amazon pode apagar um livro que está no seu Kindle.

Mas por que isso? Porque não se tem como saber tudo o que um programa de código fechado faz. Simples assim.

Foi descoberta na loja do Android um aplicativo que pegava as informações pessoais do usuário (IMEI, telefone, lista de contatos, etc.) e enviava para um servidor qualquer na internet. Ele estava disfarçado de protetor de tela.

E hoje surgiu a bomba de que um aplicativo da AppStore (a loja da Apple), também rouba informações do usuário.

Eu já escrevi sobre o que penso das lojas online.

Um exemplo de preocupação veio de um usuário do pySafe, pouco antes que eu publicasse o código-fonte, questionando onde ele (o código) estaria, pois ele queria ter certeza que suas informações pessoais não seriam roubadas.

Como garantir isso numa aplicação fechada? Confiar numa empresa é possível (até porque do contrário ficaremos malucos), mas e num cara que faz o programa num final de semana sentado na cama enquanto assiste televisão?

Deixar essa confiança nas mãos de quem cuida das lojas é inviável. Assim como o usuário, eles também não tem acesso ao código-fonte.

Esse é um problema para o qual dificilmente teremos uma solução. E uma nova frente se abrirá para as empresas que ganham dinheiro às custas de criminosos e usuários desatenciosos….leia-se empresas que fazem antivirus.

Procura-se designer

Estranho o título do texto, não? Mas faz todo o sentido.

Para 90% dos usuários de aparelhos celulares, ele deve ser bonito. Mas não bonito apenas estruturalmente, mas também na tela e nos seus programas. A esmagadora maioria dos usuários não está interessada em poder de processamento, apenas em velocidade de resposta. Não se importa com um programa que nada faça, contanto que seja bonito.

E na minha opinião é isso que falta para o Maemo (e provavelmente faltará para o MeeGo).

Existem programas muito bons para o N900, mas feios. Você olha o programa e ele não te chama a atenção! Você o usa porque precisa dele. E isso faz uma grande diferença para muitos usuários!

Veja o exemplo do TweeGo. Mesmo em suas versões alpha ele já chamava muito a atenção! Não pelo seu funcionamento (o Witter fazia, e ainda faz, mais coisas que ele), mas porque é bonito, é agradável, é prazeroso usá-lo.

O próprio aparelho fica muito mais bonito ao instalar um tema mais agradável que o original, com efeitos de transição e ícones novos.

A comunidade de código aberto é extremamente competente, e muitas vezes faz coisas que nem se espera dela. Mas peca na usabilidade e na apresentação. O pySafe na sua primeira versão era horrível. Hoje em dia é apenas feio.

O pessoal do TweeGo, até onde entendi, tem uma pessoa responsável pela parte visual do programa. Não é todo mundo que pode contar com uma ajuda assim.

Se você acha que não tem como colaborar com um programa por não saber nada de programação, pense que talvez possa ajudar criando um ícone, dando uma ideia para melhorar a usabilidade, fazendo uma imagem para um botão, ou um desenho para uma tela de fundo, até mesmo criando um esboço de tela!

O exemplo mais claro e nítido de que uma tela bonita é muito mais interessante é o fato de um programa gráfico ser muito mais usado do que o correspondente (e muitas vezes absurdamente mais potente) na linha de comando.

Esboço da interface da Nokia para o MeeGo?

É a sensação que eu tenho ao ver este vídeo.

Por que esboço?? Porque isso não me pareceu, em momento algum, um uso real da interface. Tive a nítida impressão de que é um filme, criado no computador, mostrando um conceito. Nada além disso.

E pra ser sincero, não impressionou.

fonte: The MeeGo Blog

N9Profile, mais perfis pro N900

Eu já tinha falado sobre como criar novos perfis no aparelho, e como fazer para que eles sejam trocados de forma um pouco automática. O “pouco” é pelo fato de apenas poder trocar marcando horários para isso.

Mas agora há um programa que permite trocas de perfis muito mais sofisticados (até mais do que os programas semelhantes que eu tinha no Symbian). Ele se chama, como é de se esperar, N9Profile, e está no repositório extras-devel.


O funcionamento do programa é igual ao do Tweakr: ele altera o perfil “general” do aparelho e o deixa com as configurações definidas no próprio programa. Isso é obrigatório já que por “construção” o N900 só possui dois perfis.

Mas para alternar entre um perfil e outro há muitas opções! Você pode configurar levando em consideração a torre de telefonia em que está (por exemplo, sempre que estiver na torre perto do seu trabalho fica o perfil “escritório”), por rede conectada (pode ter um perfil para quando está conectado à sua rede de casa), por tempo, e um que eu achei muito interessante: baseado em palavras-chaves nos eventos que estão na sua agenda!!!

Você configura o programa para sempre que aparecer a palavra “cinema” na sua agenda particular (vamos lembrar que você pode ter infinitas agendas no N900), o perfil seja alterado para silencioso automaticamente. Ao terminar o evento, o perfil volta ao anterior.

Também é possível alterar o perfil dependendo de qual número está ligando pra você. Provavelmente neste caso teremos os mesmos problemas que ocorrem com o Custom Ringtones (demora pro aparelho começar a tocar, além de provavelmente poder não ocorrer a troca do toque de chamada).

Progredindo no Blockout

Como comentei aqui, estou fazendo um joguinho pro N900.

Fiz uma melhoria no desenho do tabuleiro para aumentar a sensação de profundidade. Antes cada camada tinha um tamanho fixo, mas agora elas ficam maiores conforme vão ficando mais próximas do jogador. A princípio isso pode parecer algo fácil de fazer, mas não é tão simples pois essa perspectiva também afeta o desenho dos blocos.

No texto anterior tinha comentado que achava que seria complicado fazer as peças se encaixarem no fundo, como devem, obedecendo a perspectiva e também o formato dos blocos. Isso já está feito. E no meio do processo também me lembrei de um detalhe que tinha passado em branco: ao mover a peça (direita/esquerda/cima/baixo) é necessário verificar se, na nova posição, ela não colide com algum bloco já fixo, assim como ao rotacioná-la ela também caberá.

O controle que move os blocos (o da direita na imagem acima) acredito que tenha ficado bom e funcional. Talvez um pouco pequeno….

Já o controle para rotacionar os blocos está um pouco distante do que imaginei! A minha intenção era fazer um controle que se comportasse da seguinte forma:
- ao deslizar o dedo, em linha reta, a peça seria rotacionada nesse sentido
- deslizar o dedo num movimento circular faria a peça rodar num ângulo de 90 graus no sentido horário ou anti-horário (dependendo da direção na qual o dedo se moveu)

No emulador a coisa funcionou direitinho, mas no aparelho……aí também notei que não é necessário fazer o movimento, mas apenas pressionar o controle no local correto. Só que isso traz outro problema: num jogo em que as peças já estejam caindo muito rápido, um toque no local errado provocará a perda do jogo, pois pode não haver tempo de corrigir o movimento. Talvez se conseguir identificar a pressão com a qual a tela foi tocada…..

Além, claro, da própria imagem que está terrível! :)

O desenho dos blocos ainda não está perfeito, principalmente os blocos já fixos ainda estão com problemas.

Mas pelo menos a coisa toda está andando!