O documento apresenta a plataforma Maemo, usada para desenvolvimento de aplicações para dispositivos móveis da Nokia. Descreve os principais componentes da plataforma como o kernel Linux, GTK+, Hildon e ferramentas de desenvolvimento. Também lista exemplos de aplicações nativas e portadas para a plataforma e dicas para desenvolvedores se envolverem com a comunidade Maemo.
2. Apresentação
•Eduardo Lima <eduardo.lima@indt.org.br>
• Trabalha com Linux desde 1999
• Pesquisador do Instituto Nokia de Tecnologia (INdT)
• Equipe de Plataforma/SDK
• Porte de aplicações GNOME/GTK+ para Maemo
• Abiword, Evince, Gnumeric, LeafPad, Rhythmbox, Tapioca,
Xournal, ....
• etrunko @ IRC
• irc.freenode.net (#maemo, #tapioca-voip)
• irc.gimp.net (#gnome-br, #gnome-hackers, #gnumeric)
• http://etrunko.blogspot.com
3. O Instituto Nokia de Tecnologia
• Instituição sem fins lucrativos, fundada
pela nokia em outubro de 2001 com
investimentos da Lei de Informática.
• 3 escritórios - Manaus, Brasília e Recife
• Foco em pesquisa e desenvolvimento
• Mecânica e produtos eletrônicos
• Open Source
• Software e Multimídia
• Telecomunicações
• Excelência em operações e logística
http://www.indt.org.br
4. INdT - Estrutura
• Parceiros
Área Técnica
• Quatro áreas principais para
execução dos projetos
Área Administrativa
• Suporte para a área técnica
(Governança, RH, Administração e
Finanças, Escritório de Projetos, TI)
• Cerca de 150 funcionários
5. A Plataforma Maemo
•Usada para o desenvolvimento de aplicações para o Nokia
770 e outros dispositivos portáteis compatíveis
•Criada para desenvolvedores com interesse na criação de
aplicações pessoais ou comerciais para Internet Tablets
•Formada por componentes populares de SL largamente
utilizados e presentes nas principais distribuições
7. Nokia 770 Internet Tablet
•OMAP 1710 DSP
•Texas ARM 220 MHz
•Tela 4.13'' widescreen
•Touchscreen
•Resolução 800x480
•65 mil cores (16 bpp)
•WLAN 802.11 b/g
•Bluetooth 1.2
•USB
•64 MB RAM 128 MB Flash
•MMC-RS de até 1GB
http://nokia.com/770
8. Desenvolvendo para Maemo
•Muito semelhante ao desenvolvimento para desktop
•Mesmas bibliotecas
•Algumas contam com pequenas otimizações
•Mesmas ferramentas
•GNU Toolkit (gcc, gdb, make, autotools, ...)
•Scratchbox – Ambiente para cross-compiling
•Laika – Plugin para o Eclipse
9. •Linguagem principal: C
•Linguagens alternativas: C++ e Python
•Bindings desenvolvidos pela comunidade
•Python para Maemo desenvolvido e mantido pelo
INdT Recife
•Linguagens ainda não disponíveis (em andamento)
•Mono (.NET)
•Java
Desenvolvendo para Maemo
10. •Toolkit para desenvolvimento de aplicações gráficas
•GTK+ 2.0 (versão 2.6.10)
•Hildon Application Framework
•Conjunto especializado de widgets derivados da GTK
•E a Qt (Qtopia)?
•Muita discussão e pouco interesse
•wxWidgets já disponível
Desenvolvendo para Maemo
11. •Jogos
•Maemo Games Startup
•Projeto mantido pelo INdT Recife
•Suporte a jogos multiplayer
•Bibliotecas SDL disponíveis
•PyGame
•Distribuição de aplicações
•Pacotes debian (.deb)
•Repositórios apt
Desenvolvendo para Maemo
12. •Criar aplicações específicas para a plataforma
•Portar aplicações já existentes
•Jogos
•Plugins e Applets
•Personalização
Algumas Possibilidades
22. Como Se Envolver?
•Divulgando a plataforma
•Desenvolvendo
•Novas aplicações
•Portando aplicações já existentes
•Documentando
•Utilizando e reportando bugs
23. Links Importantes
•Web
•http://www.maemo.org (.br em breve)
•Documentação - API's, Tutoriais, How-To's, etc.
•Download da toolkit de desenvolvimento (SDK)
•Wiki
•Planet - agregador de blogs
•Garage - hospedagem de projetos
•Catálogo de aplicações
•https://www.maemo.org/bugzilla/
•http://pymaemo.sourceforge.net
24. Links Importantes
•Listas de discussão
•maemo-users@maemo.org
•maemo-developers@maemo.org
•IRC
•#maemo @ irc.freenode.net