TuneWiki: Aplicativo une Wiki + Media Player

Achei a idéia desse aplicativo bem interessante: O TUneWiki!

A idéia dele é integrar um player de arquivos multimídia com recursos como letras de música e redes sociais. Para que isso funcione, todo o conteúdo (letras e outros dados) são gerados pela própria comunidade, utilizando a tecnologia wiki.

Logo, você pode obter informações como posições geográficas de outros usuários escutando músicas e artistas específicos. Informações em tempo-real sobre a lista das principais músicas tocadas em um país ou estado. Ou até escutar músicas estrangeiras e ter suas letras traduzidas automaticamente para a sua lingua favorita.

A idéia é bem interessante, especialmente porque integra a essência coloborativa do Wiki com arquivos multimídia. Penso que podemos extender para outros tipos de aplicação. Informações sobre previsão de tempo, notícias, eventos, guias, etc. Até com o uso de algum localizador que poderia permitir também a sugestão de opções de artistas locais (O telefone saberia onde você está). Esses artistas iriam aparecer com biografia, discografias, sugestoes de novas faixas (Aí entraria o wiki) tudo que pudesse ampliar o leque de músicas novas baseado na posição do usuário. Algo interessante a se analisar!

O tuneWiki foi um dos aplicativos vencedores do Code Challenge for Android da Google e agora venceu GSMA's 2009 Mobile Innovation Global Award Competition (melhor aplicativo em inovação). Não é por acaso! De acordo com a empresa desenvolvedora, em breve ele estará disponível para Mobile Linux, Android, iPhone, Moblin, WinMobile, J2ME e Symbian.


Vejam um pequeno vídeo demonstrativo:






Fonte: EMediaWire
MOTODEV Challenge. Calling All Widget Developers


Pessoal,
A Motorola anunciou uma competição para desenvolvedores mobile para sua plataforma de Widgets : Widget Developer Challenge. Os vencedores podem ganhar até $25,000 dólares distribuído em diversas categorias como esportes, finanças, clima, shopping. O desafio é aberto para todos os membros registrados no MOTODEV e as submissões dos aplicativos devem ser feitas até 27 de fevereiro do próximo ano. As principais categorias a serem julgadas são: Melhor Widget, Melhor conteúdo e melhor uso das APIS.
Para quem não sabe , o novo toolkit de desenvolvimento da motorola chamado WebUi permite a construção de aplicativos rápidos utilizando a engine nativa do browser do aparelho móvel. A diversidade de APis é grande que permite o acesso à camera, calendários e contatos através da tecnologia Web 2.0 incluindo XHTML, javaScript , CSS e ajax.

Mais informações sobre o WebUi da Motorola aqui.
Encontrei um post muito interessante falando sobre o futuro da especificação MSA (JSR-249) - Mobile Service Architecture 2 - que permite tornar os aparelhos com plataforma JavaME mais robustos e consistentes , reduzindo problemas como fragmentação.


De acordo com o autor do blog, o JSR 249 já está na fase de revisão, onde agora os desenvolvedores da comunidade irão avaliar o mesmo.


MSA 2 Stack

Entre as principais diferenças do MSA 01, estão as inclusoões de algumas APIs como:
  • JSR 304: Mobile Telephony API version 2 -or- JSR 253 MTA version 1
  • JSR 266: Unified Message Box Access API (UMBA-API)
  • JSR 307: Network Mobility and Mobile Data API

Espero que o JCP possa rapidamente levar isso para uma versão final.

Mais informações sobre a especificação: http://jcp.org/en/jsr/detail?id=249.

Fonte: C.Enrique Ortiz

Olá pessoal,

Gostaria de recomendar um blog sobre tecnologia móvel, com assuntos técnicos relacionados à plataforma JavaMe. O blog é mantido pelo colega Ricardo Ogliari, mantenedor do blog Mobilidade é tudo e por Robison Cris (Escritor de diversos artigos e tutoriais sobre JavaME). O blog está começando agora, mas tende a ser uma grande promessa para os interessados sobre JavaME e derivados.

Segue o link : jmeBrasil .

Netbeans com suporte a Python

Ótima notícia para os desenvolvedores de Python!

Mais uma ferramenta que suporta a linguagem Python. O Netbeans!

Na versão 6.5, pronta para download!

Irei fazer experimentos para verificar se é válido substituí-lo pelo Pydev (Eclipse).


Fonte: Code Snakes

Vida Moderna!
Pessoal,

Achei essa série de artigos uma excelente fonte de pesquisa sobre experiências com desenvolvimento mobile. Através de gráficos, o autor demonstra quais plataformas são as mais fragmentadas, quais as mais solicitadas para desenvolvimento e quais as mais difíceis para iniciar o desenvolvimento.

Realmente não me surpreendi muito, já que saiu como esperava. JavaME como a plataforma que sofre de fragmentação (devido à diversidade de aparelhos e implementações próprias pelas fabricantes do KVM) e o Symbian (especificamente C++) a mais difícil para aprendizado (Vai fazer interface UI sem Carbide UI Designer , é fumo!).
E a mais procurada, geralmente o cliente não sabe! Acho até óbvio, o cliente quer o aplicativo rodando e quais são os requisitos dele. O desenvolvedor e arquiteto é que irão decidir baseado nos seus requisitos e plataforma-alvo qual melhor tecnologia se adequa para atender as demandas do projeto do aplicativo.


Recomendo a leitura!

Device Fragmentation Across Platforms

On Which Platforms are People Seeking to Develop ?

Platform Development Comparisons




Fonte: Mobile Phone Development
Pessoal, especialmente estudiosos da plataforma Android.

Para download:

Garage-Door-Opener for Android Phones. (Open-source).

Fonte: AndroidGuys
Não poderia deixar de comentar sobre essa notícia:

VMware MVP is a thin layer of software that is embedded on a mobile phone to decouple the applications and data from the underlying hardware. It is optimized to run efficiently on low power consuming and memory constrained mobile phones. The MVP currently supports a wide range of real-time and rich operating systems including Windows CE 5.0 and 6.0, Linux 2.6.x, Symbian 9.x, eCos, µITRON NORTi and µC/OS-II.

VMware Mobile Virtualization Platform will help handset vendors reduce development time and get mobile phones to market faster. In addition, end users will benefit by being able to run multiple personalities—for example, one for personal use and one for work use on the same phone.

Para resumir: Imagine um celular rodando 2 plataformas como Android e o Symbian?! Bem interessante!

Link: VMWARE

Achei um post muito interessante publicado pelo blog Developing, sobre o futuro de java para dispositivos móveis. Recomendo a leitura!

O link para o artigo: aqui !





imagesEu acho que, como o autor falou, um dos problemas existentes em JavaME, é que ele ainda é muito burocrático (seu processo depende muito das fabricantes e membros da comunidade JCP para aprovação.) Podemos citar o MIDP 3, há quantos anos que o mesmo está em fase de especificação ? 4 anos ? O que para minha opinião faz com que o JavaME aos poucos perca seu brilho.
Mas ainda acho que Java ainda tem muito que mostrar em dispositivos móveis: seja com JavaME ou outro tipo de subset de plataforma. O poder do processamento dos celulares está aumentando de forma vertiginosa, e logo logo a razão de JavaME existir, que seria devido ao poder limitado de processamento dos aparelhos móveis perderá sentido.
Vocês querem um exemplo concreto?
Não preciso ir longe não, o Android está aí pronto e é feito em Java. Vamos esperar para ver, acho que ano que vem promete. Espero eu que seja para o bem dos milhões de desenvolvedores fãs do Java!
Para os desenvolvedores de Symbian que gostariam de saber como desenvolver um aplicativo utilizando FlashLite (UI) + Python (Core), achei esse exemplo simples (com código-fonte disponível) para download.

A idéia do aplicativo é bem simples: Todo texto digitado pelo usuário é depois falado pelo viva-voz do celular.

O aplicativo, mesmo sendo simples, demonstra como funciona o framework SWF2Go(Responsável pela integração entre o flash (.swf) com o python (.py).

Algumas fotos:

By My Lips - Screenshot1By My Lips - Screenshot2


PS: Existe já há bastante tempo um projeto brasileiro alternativo a este chamado: Flyer! E é open-source criado pelo meu colega Felipe Andrade. Dêem uma olhada!

Fonte: Nokia Blogs
Para os corredores ou para aqueles que gostam de dar caminhadas ou voltas de bike, essa série de aplicativos para celular pode ajudar muito o monitoramento dessas atividades. Os aplicativos estão disponíveis apenas para celulares Symbian S60, mas quem sabe isso não poderia ser portado para o Android, ein ?!

O que são esses aplicativos ?

O Nokia Step Counter é a evolução do Activity Monitor, um programa que mostra gráficos e estatísticas sobre seus movimentos quando estiver andando ou correndo, determinando a distância percorrida e a energia gasta. Ele funciona “lendo” as variações do acelerômetro interno, e você configura a distância média do seu passo, além de idade e peso (para previsão de energia gasta). Confira as telas:

Nokia.Step.Counter.1.jpg Nokia.Step.Counter.2.jpg


O segundo aplicativo é o Wellness Diary. Com ele, você grava todas as suas atividades e registros físicos, determina metas e ele automaticamente importa informações do Nokia Sports Tracker e do Nokia Step Counter. Além disso ele mostra gráficos de sua evolução, é uma ferramenta muito interessante para quem quer “policiar” a sua dieta e quer detalhes sobre a evolução dos seus exercícios. Vale a pena testar. Confira as telas:
Wellness.Diary.1.jpg Wellness.Diary.2.jpg Wellness.Diary.3.jpg Wellness.Diary.4.jpg
















O Nokia Sports Tracker faz uso da função GPS, gravando o trajeto, acelerações e paradas, marcação de voltas, além de contador de passos. Em aparelhos que não possuem GPS é possível usar um módulo externo.

Nokia.Sports.Tracker.01.jpg Nokia.Sports.Tracker.08.jpg






O mais legal é que é possível todo o trajeto percorrido até no Google Maps! São aplicativos realmente muito interessantes!


Para mais informações, ver o blog do Vínicius Martins que postou sua experiência com tais aplicativos.

[Updates] PySchart: Gráfico de Pizza (PieChart) versão 0.1

Pequena prévia do PySChart agora com o gráfico de pizza (PieChart). Em breve, melhorias e o lançamento da versão oficial 1.0. =D Fiquem de olho!




Mais informações: http://code.google.com/p/pyschart/
Achei algumas dicas interessantes que gostaria de divulgar aqui especialmente para os desenvolvedores de Flash Lite. Tais dicas foram dadas por Alessandro P, Darren O, Scott J, e Dale R em uma palestra sobre Flash Lite. Algumas dicas aí, em negrito, são válidas para desenvolvimento de quaisquer aplicativos móveis, independente de plataforma.

  • Make the app work first (before making it pretty) - remember to also add Exit button (Todos esquecem do botão de saída do aplicativo!)
  • Stay below 70% memory
  • Remote Data and Flash Lite - remember data costs, name-value pairs are still powerful, remember getURL, 3gp for video and aac for audio, for FL 3 use flv, avoid using XML whenever possible for large amounts of data, SWX
  • A challenge with Flash Lite and firmware updates, as there are differences between FL2 qand FL3 - WURFL (as you would need to know about which FL version you are running on)
  • Optimize your loops - negative while-loops are fastest of all, avoid function calls in loop condition (instead run it once before loop if value does not change)
  • Join the deprecation appreciation society - even though the some old FL1.1 functions are deprecated, they might still be faster than the new replacements from AS2
  • Use the keypad on the phone for navigation (an remap your numeric keypad on the PC to "simulate" phone keypad, which is reversed, meaning 2 is up and not down... this means both device central and PC's Web browser)
  • Test automation through Device Central- create a device set, and run the same test on all devices (you could also take a screenshot of every test run for examination)
  • Remote on-device testing - leverage Nokia RDA and Mobile Complete by Device Anywhere
  • Device profiling - test the devices with FPS monitors or use the Device Central profiling features
  • Extending Flash Lite (will be available Adobe MAX) - possibilities: KuneriLite, Janus, Flyer, Sony-Ericsso's Capuchin, SWF2Go, there is also an article
  • Business tip #1: Know where your content is going to end up, regional differences, differences between manufacturers, etc.
  • Business tip #2: Know the market - what kind of content is popular in your target markets?
  • Business tip #3: Grab your customer in less than 60 seconds - spend time in making sure you get the customer to download your content, it has to stand out from the competition
  • Business tip #4: Use Flash for its strengths
  • Business tip #5: Becoming a mobile millionaire takes time

Dica: Nivel da bateria celulares Symbian 3rd Nokia

Para os desenvolvedores da plataforma nokia Symbian 3rd, especificamente para os desenvolvedores de JavaME, a Nokia introduziu uma propriedade "com.nokia.mid.batterylevel" que permite acessar o nível atual da bateria através da chamada do método System.getProperty("com.nokia.mid.batterylevel") a partir do seu midlet.

Segue um exemplo de código tirado do blog MobilePit:

Download source code and sample midlet : NokiaBattery_midlet.zip

Sistema de controle de trafégo auxiliado por celulares com GPS

A Nokia em parceria com a universidade da Califórnia está desenvolvendo um sistema gratuito que permite agilizar a vida dos motoristas e reduzir a quantidade de rotas congestionadas. Batizado de Mobile Millenium, o projeto consiste no uso de dispositivos móveis equipados com GPS indicarão rotas menos congestionadas ao usuário. A empresa está com pretensões para realizar testes com cerca de milhares de pessoas a partir do próximo ano, onde o sistema coletará informações em tempo real sobre o trafégo de estradas e vias de acesso a partir de sensores no asfalto, radares ou câmeras.

Agora, pense um projeto desse portado aqui para o Brasil! Quanto iria ajudar os motoristas de trânsito que se irritam ou ficam agoniados quando ficam presos em engarrafamentos de km! Até eu mesmo aqui em Recife, que procuro sempre rotas alternativas em busca de chegar ao lugar desejado pegando o mínimo de trânsito possível.

Um aplicativo ficaria em background rodando coletando informações. Agora como ele distinguiria se meu carro estava parado porque eu realmente estacionei ou parei o carro , ou porque estou preso em um engarrafamento de trafégo ??

Porém, existe no Brasil um projeto liderado pela UFSC que está em andamento há mais de 8 anos, no desenvolvimento de tecnologias capazes de controlar o trânsito em tempo real.

O Projeto de Controle de Tráfego por Área em Tempo Real (Contreal), coordenado pelo professor Werner Kraus Junior, criou softwares que adaptam os semáforos ao fluxo de veículos de forma automática e instantânea, com base na medição do tráfego feita por sensores instalados nas vias. O sistema evita retenções desnecessárias, proporcionando economia de combustível e tempo, e ajusta-se de forma autônoma a situações inesperadas, como acidentes de trânsito.

Enfim, um sistema que ajuda o motorista a evitar o engarrafamento ou um que evita o engarrafamento ao motorista ? Qual seria o mais apropriado ? Penso eu, que esse sistema de controle de trafégo real combinado com a situação do trânsito conseguiria mapear situações específicas como uma batida de carros no local ou uma rua enlagada em que possivelmente acarreta no surgimento de engarrafamentos.






[Update]: Um vídeo com o lançamento do Mobile Millenium, foi disponibilizado no YouTube com mais informações:




Fonte: MeioBit

Olá pessoal,

Acabei de lançar mais um update no framework PySChart (Charts for PyS60). Nesta nova versão beta 0.2, além de consertar alguns pequenos bugs do gráfico de linhas (LineChart), adicionei mais um gráfico: gráfico de barras (BarsChart). Segue um screenshot do gráfico de barras em execução:





Esse framework disponibizado em formao open-source é destinado para construção de gráficos para celulares Symbian S60 sobre a plataforma Python para S60 (PyS60).

Um dos problemas identificados na construção desses gráficos é a forma de visualização das legendas dos gráficos. Como a tela dos aparelhos móveis são bastante reduzidas, é necessário que possamos aproveitar ao máximo a tela para a exibição do gráfico. Para isto, uma solução seria construir um esquema de navegação, em que apertando alternadamente (esquerda/direita) é possível navegar entre os itens e apresentar, assim, a legenda do item em destaque. Em JavaME, utilizando um coponente denominado CustomItem ou até usando o framework de baixo nível como Canvas com tratamento de eventos é possível a solução.


Em python, isso também é possível, através do tratamento de eventos utilizando um método de resposta (callback) à eventos do teclado do aparelho móvel. Abaixo um pequeno exemplo de código demonstrando a facilidade de python para tratamento de eventos como de teclado:


import appuifw, e32, key_codes

def left():
appuifw.note("Tecla Esquerda foi pressionada")

def right():
appuifw.note("Tecla Direita foi pressionada")

def quit():
app_lock.signal()

canvas = appuifw.Canvas()
appuifw.app.body = canvas


canvas.bind(key_codes.EKeyLeftArrow,left)
canvas.bind(key_codes.EKeyRightArrow,right)

appuifw.app.exit_key_handler = quit
app_lock = e32.Ao_lock()
app_lock.wait()


O método responsável para associar qual método deve ser chamado em resposta à um determinado evento, por exemplo o pressionamento do botão Esquerda ou direita do celular é o metodo do módulo Canvas bind. Ele recebe 2 parâmetros: Um keycode (refere-se a tecla o qual vai ser tratada quando tiver algum evento associado a ela) e o método callback o qual vai ser chamado pela máquina virtual a partir do evento associado. Enfim, Pressionando as teclas esquerda ou direita, vão aparecer mensagens pop-up em seguida informando que apertou as teclas esquerda ou direita respectivamente.

Como podemos ver, é bem simples o uso de tratamento de eventos com o python! Há outras maneiras mais sofisticadas, mas esse método consegue reproduzir os casos mais comuns.

Aplicativos musicais no Iphone com reconhecimento de som

Coisas que o Iphone pode fazer por você.

Muito legal deve ser o SDK que permite fazer reconhecimento de voz e som por trás... Espero ver essas coisas em plataformas como JavaME, Symbian C++ , Python!! =DD

O aplicativo Ocarina em ação:








Fonte: GizModo
Olá pessoal,

Iniciando a saga de posts sobre alguns trabalhos pessoais que venho realizando, o primeiro a ser apresentado é um framework chamado PySChart (Charts for PyS60) . Especificamente, esse framework disponibilizado em formato open-source é voltado para construção de gráficos para celulares Symbian S60. Desenvolvido em Python (especificamente python para symbian S60 -PyS60) , o framework é composto de 3 gráficos: retas (linhas), barras e pizza.

O framework vem como uma opção para desenvolvedores mobile que precisam plotar gráficos em seus aplicativos, livrando os mesmos de desenvolverem do zero a construção dos gráficos.

Esse framework que começou por diversão, acabou se tornando um framework mais sério, o qual após alguns ajustes chegou ao estado atual.Atualmente, ele está em fase de construção, logo apenas o gráfico de linha (LineChart) está disponível (download) para uso em projetos. Ele, óbvio, é disponibilizado sobre licença Open-Source GNU (GPLv2) com todo código-fonte acessível.

Em breve, estarei adicionando os 2 outros gráficos: de barras e de pizza. Para acompanharem o andamento do mesmo, visitem a página oficial do projeto PySChart (Charts for PyS60) - http://code.google.com/p/pyschart - hospedado no Google Code. A documentação também em breve estará disponível no site do projeto.

Claro, que dúvidas, sugestões e até a possibilidade de adição de novos gráficos está aberta para todos os interessados no uso desse framework.

Acho que embora seja um framework simples, ele preenche uma lacuna no desenvolvimento de aplicativos especialmente atendendo os desenvolvedores que usam python como linguagem para codificação dos seus produtos para celulares Symbian S60.

Para que ele possa ser executado, é necessário ter o Emulador do Symbian + SDK do Python (Versão 1.4.4) (Roda apenas no Windows ) ou um celular Symbian com a máquina virtual do Python. Instruções aqui de como instalar o PyS60.


Seguem alguns screenshots do framework em ação:




PS: Para construção desse gráfico do LineChart, para a versão final, levei apenas 2 horas e meia!! Python mostrando ser intuitivo, produtivo e ágil para prototipação de aplicativos! Íncrivel!!

PS2: Gostaria de agradecer pela inspiração, ao desenvolvedor Ricardo Ogliari, responsável pelo framework - irmão em JavaME: MEChart.


[]'s

O Retorno!

Olá pessoal,

Desculpem a ausência temporária... estava com alguns trabalhos pendentes, mas agora estou de volta com gás todo.
Alguns tutoriais saindo do forno e muito conteúdo sobre mobile e convergência.

As boas notícias é que estou ultimamente trabalhando em um framework de gráficos para Python para celulares Symbian S60: PySchart. Em breve, apresentarei aqui mesmo mais sobre esse trabalho!

Alguns tutoriais que também estou também produzindo na área de desenvolvimento de Android (Sistema operacional patrocinado pela Google), aplicativos utilizando sensores e Acelerômetros (Com PyS60 e JavaME) , aplicativos demonstração utilizando bluetooth para Python S60, e outras surpresas que estou preparando para rechear esse blog.

Fiquem de olho!
Agora com toda força..
top