TRABALHO DE CONCLUSÃO DE CURSO

Tamanho: px
Começar a partir da página:

Download "TRABALHO DE CONCLUSÃO DE CURSO"

Transcrição

1 1 UNIVERSIDADE ESTADUAL PAULISTA Faculdade de Ciências Departamento de Computação Campus de Bauru TRABALHO DE CONCLUSÃO DE CURSO BACHARELADO EM CIÊNCIA DA COMPUTAÇÃO Desenvolvimento de um Game para Android O.S. Aluno: Francisco Mariani Guariba Filho Orientador: Prof. Dr. Eduardo Morgado Bauru 2012.

2 2 Francisco Mariani Guariba Filho Desenvolvimento de um Game para Android OS Orientador: Prof. Dr. Eduardo Morgado Monografia apresentada junto à disciplina Projeto e Implementação de Sistemas II, do curso de Bacharelado em Ciência da Computação, Faculdade de Ciências, Unesp, campus de Bauru, como parte do Trabalho de Conclusão de Curso. UNESP 2012

3 3 Francisco Mariani Guariba Filho Desenvolvimento de um Game para Android OS Monografia apresentada junto à disciplina Projeto e Implementação de Sistemas II, do curso de Bacharelado em Ciência da Computação, Faculdade de Ciências, Unesp, campus de Bauru, como parte do Trabalho de Conclusão de Curso. BANCA EXAMINADORA Prof. Dr. Eduardo Morgado Professor Doutor DCo FC - UNESP Bauru Orientador Profª. Drª. Simone das Graças Domingues Prado Professora Doutora DCo FC - UNESP Bauru Prof. Dr. Antonio Carlos Sementille Professor Doutor DCo FC - UNESP Bauru Bauru, 12 de Novembro de 2012.

4 4 Dedico esse trabalho a minha família, por me apoiar incondicionalmente em todos os momentos importantes da minha vida e da minha formação.

5 5 RESUMO FILHO, F. M. G. Desenvolvimento de um Game para Android OS. Monografia Curso de Bacharelado em Ciência da Computação, Universidade Estadual Paulista "Júlio de Mesquita Filho". Bauru, Com o avanço da tecnologia, os dispositivos móveis têm se tornado cada vez mais potentes e passaram a ter funções que vão além de realizar chamadas telefônicas. Novos aplicativos, que desempenham estas novas funções foram lançados. O mercado de entretenimento digital passou a ser um dos mais beneficiados com isso, já que os games passaram a ser um dos aplicativos mais utilizados por diversos tipos de usuários. Esta monografia apresenta o desenvolvimento de um game para a plataforma Android, levando em consideração aspectos relevantes, tais como: física, cenários e animação de personagens. PALAVRAS-CHAVE: GAME, ANDROID OS, DISPOSITIVOS MÓVEIS, ANDENGINE.

6 6 ABSTRACT FILHO, F. M. G. A Game Development for Android OS. Monografia Curso de Bacharelado em Ciência da Computação, Universidade Estadual Paulista "Júlio de Mesquita Filho". Bauru, With the technology advancement, mobile devices have become increasingly more powerful and have started to have functions beyond of making phone calls. New applications, which perform these new functions, have been launched. The digital entertainment market has become one of the most benefited with this, once the games have become one of the most used applications for various types of users. This monograph presents the development of a game for Android OS, considering concepts like: physics, scenarios/views and character animation. KEY-WORDS: GAME, ANDROID O.S., MOBILE DEVICES, ANDENGINE.

7 7 LISTA DE FIGURAS Figura 1 Arquitetura da plataforma Android (SCHEMBERGER; FREITAS; VANI, 2009)...19 Figura 2 Exemplo de um Spritesheet...26 Figura 3 Figura 4 Tela de carregamento inicial...38 Tela do menu principal...39 Figura 5 Sprite de um coração para representar a vida do personagem...40 Figura 6 Texto que representa a pontuação...41 Figura 7 Figura 8 Conceito da primeira fase...42 Primeira fase com todos os elementos do cenário...42 Figura 9 Conceito da segunda fase...43 Figura 10 Tela do cenário final...43 Figura 11 Figura 12 Fluxograma da mudança de telas...44 Hierarquia das classes dos personagens...45

8 8 LISTA DE CÓDIGOS Código 1 Código 2 Criação de um objeto do tipo Text...40 Algoritmo de perseguição...41 Código 3 Controle do personagem...47 Código 4 Adição de inimigos a cada 10 segundos...48 Código 5 Código 6 Atualização da engine...48 Animação dos personagens...48

9 9 LISTA DE SIGLAS ADT SDK IDE API OpenGL WAP J2ME BREW OHA EDGE JVM DVM SIP JSR ASF UML Android Development Tools Software Development Kit Integrated Development Environment Application Programming Interface Open Graphics Library Wireless Application Protocol Java Plataform Micro Edition Binary Runtime Enviroment For Wireless Open Handset Alliance Enhanced Data rates for GSM Evolution Java Virtual Machine Dalvik Virtual Machine Session Initiation Protocol Java Specification Request Apache Software Foundation Unified Modeling Language

10 10 SUMÁRIO 1. INTRODUÇÃO Objetivos do Trabalho FUNDAMENTAÇÃO TEÓRICA Android O.S OHA O Projeto Android Arquitetura Máquina Virtual Código Aberto e Livre Funcionamento de uma Aplicação Android Ambiente Eclipse e Android SDK AndEngine Principais Conceitos da AndEngine Engine Política de Resolução Câmera Cenas Entidades Sprites Texturas e Regiões de Texturas PhysicsBox2D Conceitos de Engenharia de Software Modelagem de Sistema Diagramas de Classe Generalização PROPOSTA DO TRABALHO MATERIAL E MÉTODOS Softwares e Hardwares Utilizados Etapas do Projeto Atividades Desenvolvidas Divisão de Tarefas Estruturação do Projeto Controle de Eventos Estudo e Definição da Game Engine Tema e Enredo do Jogo História Desenvolvimento do Protótipo Desenvolvimento do Game Testes Utilizados EXPERIMENTOS RESULTADOS CONCLUSÃO Trabalhos Futuros...52

11 REFERÊNCIAS BIBLIOGRÁFICAS

12 12 1 INTRODUÇÃO O avanço da tecnologia requer respostas imediatas, facilidade de interação com os novos dispositivos e uma resposta audiovisual que agrade e corresponda às expectativas das novas gerações. A geração Z, as pessoas nascidas desde o início dos anos 1990 até hoje, amadureceu imersa nesta tecnologia digital e não necessita de papel e lápis para se comunicar. Segundo Liu (2012), particularmente, os telefones móveis percorreram um longo caminho desde o seu início em Os aparelhos de hoje são uma fração de seus antepassados quanto ao tamanho, com aumento exponencial de desempenho. Os dispositivos modernos são capazes de suportar softwares cada vez mais complexos, interfaces inovadoras e capacidades de rede, sendo o setor de games o mais beneficiado com isso. O primeiro jogo com grande repercussão no cenário mundial foi o Serpente Nokia (Snake Nokia) no ano de Como todos os telefones móveis da época, o jogo consistia em nada mais do que pontos e linhas, mas foi certamente o mais viciante jogo portátil desde Tetris. Apesar de sua abordagem minimalista, Snake mudou a funcionalidade do telefone celular para sempre. Uma série de jogos foi seguida por ele, contudo os programadores foram prejudicados por uma geração limitada de hardware fornecida na época. O avanço da tecnologia WAP (wireless application protocol) teve grande impacto no desenvolvimento de jogos para dispositivos móveis. Foi possível não apenas realizar o download dos tradicionais games pela internet, como também foi oferecido suporte ao modo multiplayer (múltiplos jogadores). Os primeiros títulos WAP geralmente tomaram aventuras na forma de texto. A partir de então a tecnologia avançou rapidamente e os jogos tiveram um grande impulso no mercado global. Serviços como J2ME (plataforma Java para embarcados), BREW (Binary Runtime Environment for Wireless) e séries de sistemas operacionais da Nokia como 40 e 60 tomaram corpo através do protocolo wireless. Essas plataformas permitiram distribuir programas mais complexos, atraindo a atenção de empresas de grande cunho na área de games. Na virada do milênio, os novos

13 13 aparelhos invadiram o mercado, suportando Java, Flash e outros recursos robustos on-line. Empresas famosas de jogos eletrônicos como Sega, Namco, THQ, EA e Gameloft deram o primeiro passo, destacaram-se pelo recurso antes inexplorado, desenvolvendo conteúdo exclusivo para dispositivos móveis. Em 2003, a Nokia lançou o N-Gage, um dispositivo móvel, a fim de atrair os usuários do Gameboy Advance, um videogame portátil lançado pela Nintendo na época. Apesar de ser consideravelmente mais potente, ao oferecer comunicação e suporte on-line, foi um fracasso comercial. O design e os botões pouco agradáveis e adequados para os games foram alguns dos motivos. No entanto, o serviço on-line que a Nokia lançou como apoio ao dispositivo estava à frente do seu tempo e serviu para que a geração de smartphones seguinte anunciasse uma nova era de jogos para celulares. Aparelhos como o BlackBerry e o N5 Nokia elevaram a geração de smartphones para um novo nível, suportando gráficos 3D, interfaces inovadoras e capacidades de rede extensiva. Em 2007, a Apple lançou sua primeira geração, o iphone. Com a funcionalidade do sistema touch-screen e o suporte acelerômetro ativado, os desenvolvedores aproveitaram os controles de movimento e desenvolveram interfaces a partir do zero. Apesar disso, as setas direcionais virtuais (virtual d-pads) e interfaces de inclinação foram implementadas com variados graus de sucesso. Essa flexibilidade pavimentou o caminho para os desenvolvedores trazerem todos os gêneros de games para a plataforma. Um dos principais fatores para o sucesso do iphone como plataforma de jogos é a App Store. Lançada no verão de 2008, a loja digital agora abriga os jogos de todas as formas e tamanhos. O serviço facilitou aos editores de jogos distribuírem seus produtos. No entanto, não são apenas os grandes estúdios que têm colhido os frutos de especificações do iphone e base de usuários. Desenvolvedores independentes descobriram um grande público para seus títulos livres de orçamento. A Rovio, desenvolvedora do jogo Angry Birds, é um bom exemplo de empresa que cresceu devido ao destaque do mercado ios. Segundo De Cássia (2012), no inicio de 2012, a desenvolvedora finlandesa de games Rovio afirmou que seu principal jogo, o Angry Birds, foi baixado mais de um bilhão de vezes desde o lançamento, em dezembro de

14 Isso inclui usuários que utilizam smartphones e tablets. Andrew Stalbow, vice-presidente da companhia, voltou a público para divulgar novos números do título: mensalmente, 200 milhões de pessoas jogam Angry Birds. O iphone não é o único smartphone equipado para jogos. Google Nexus One, Motorola DEXT, o Windows Phone 7 da Microsoft e a linha Samsung Galaxy são exemplos de smartphones que são igualmente capazes de lidar com os títulos high-end. A inauguração da pilha de software Android e o Android Market em 2008 abriram novas possibilidades para os programadores, oferecendo mais flexibilidade do que a loja da Apple desde que os desenvolvedores poderiam distribuir seus jogos através de qualquer plataforma que desejar. Em dezembro de 2011, o Android Market atingiu a marca de aplicações. Jogos móveis já percorreram um longo caminho desde os dias de Snake. O surgimento da interface touch-screen; um display ou campo que capta a presença e a localização do toque em sua superfície; o suporte de redes e os serviços on-line ajudaram a tornar a atividade um dos setores de maior crescimento da indústria. Consequentemente empresas de todos os tamanhos têm investido no ramo e a diferença entre as ferramentas de comunicação e as plataformas de jogos tem diminuído desde que os prestadores de serviço decidiram incluir jogos em seus celulares. Ao considerar este avanço na tecnologia e no mercado de aplicativos para dispositivos móveis, foi amadurecida a ideia de desenvolver um jogo de plataforma bidimensional que seguisse o padrão dos jogos lançados para dispositivos móveis. O projeto se baseia, portanto, em um jogo para o sistema operacional Android, no qual o usuário controla um personagem por cenários com inimigos, o que permite a exploração dos principais conceitos no desenvolvimento de jogos e de aplicativos para Android. Será melhor explicado nos próximos itens Objetivos do Trabalho Conforme mencionado anteriormente pode-se dizer que devido ao forte crescimento do mercado móbile e à ascensão de empresas desenvolvedoras de games, o objetivo principal do trabalho pôde ser definido.

15 15 Explicitamente, o objetivo deste trabalho consiste em desenvolver um jogo eletrônico de plataforma bidimensional para o sistema operacional Android. Portanto, pode-se dizer mais especificamente que se trata de desenvolver um projeto a partir de uma ideia para criação de um jogo e aprender sobre as principais técnicas e ferramentas para o desenvolvimento de jogos e aplicativos a este sistema operacional.

16 16 2 FUNDAMENTAÇÃO TEÓRICA Neste item serão apresentadas as principais características e teorias referentes ao sistema operacional Android e ao desenvolvimento de jogos em duas dimensões. Inicia-se com uma explicação sobre o funcionamento do sistema operacional do Google e, então, explicam-se os princípios teóricos e técnicos que foram utilizados ao desenvolver o jogo eletrônico. Assim, considera-se as características da AndEngine, uma engine própria ao desenvolvimento de jogos bidimensionais para Android, que conta com uma série de extensões, dentre elas, a extensão AndEnginePhysicsBox2D, que também foi utilizada no desenvolvimento do jogo. Por fim, explicam-se alguns conceitos de engenharia de software relacionados à modularização de sistemas e ao uso de UML que também foram utilizados no projeto. 2.1 Android O.S. A seguir serão tratados o surgimento do sistema operacional Android, os principais recursos que ele oferece e a sua estrutura OHA O Android surgiu da parceria da Google com a Open Handset Alliance (OHA), aliança na qual figuram os principais atores do mercado móvel mundial (SCHEMBERGER; FREITAS; VANI, 2009, p.2). A OHA consiste em um grupo de todas as estruturas envolvidas no processo de telefonia móvel: Operadoras de celular: responsáveis pela conexão. Fornecem o serviço para o usuário final; Fabricantes de aparelhos: responsáveis pela criação do hardware;

17 17 Empresas de semicondutores: criam os chips dos aparelhos de celulares; Empresas de software: desenvolvem os softwares que serão executados no Android; Empresas de comercialização: são as empresas responsáveis pela divulgação, marketing e comercialização dos produtos para o usuário. (Pereira; Da Silva; 2009 p.2) O Projeto Android O Android é uma plataforma completa para tecnologia móvel, envolvendo um pacote com programas para celulares, já com um sistema operacional, middleware, aplicativos e interface do usuário. É o primeiro projeto de uma plataforma open source para dispositivos móveis em conjunto para construir aplicações móveis inovadoras (Pereira; Da Silva; 2009 p.3). Conforme Schemberger, Freitas e Vani (2009, p.2) demonstram, o Android conta também com um SDK que disponibiliza as ferramentas e APIs necessárias para o desenvolvimento na plataforma Android, usando a linguagem JAVA. As principais funcionalidades da plataforma são: Framework de desenvolvimento de aplicações: reutilização de código e facilidade de acesso a recursos exclusivos e manutenção; Nova máquina virtual (dalvik): criada e otimizada para dispositivos móveis e as suas limitações; Navegador web integrado: baseado no projeto open source webkit o mesmo do iphone e Nokia série 60; Biblioteca de gráficos otimizada para dispositivos móveis: exclusiva biblioteca para gráficos 2D e 3D baseada na especificação OpenGL ES 1.0, com aceleração por hardware como opcional; SQLite: armazenamento de dados estruturados;

18 18 Suporte multimídia: compatibilidade com os principais formatos existentes, entre eles mpeg4, h.264, mp3,.aac,.amr,.jpg,.png e.gif; Telefonia com tecnologia GSM: as aplicações podem manipular operações telefônicas, caso o fabricante permita esse acesso; Bluetooth, EDGE, 3G e WiFi: foco nas principais tecnologias de transmissão de dados sem fio, também depende da permissão do fabricante para acesso; Câmera e GPS: ter o celular como uma ferramenta para interação com redes sociais, também dependente da permissão do fabricante para acesso; Ambiente de desenvolvimento com plug-in para Eclipse: inclui emulador, ferramentas para debug e supervisão de memória e desempenho Arquitetura A arquitetura da plataforma Android é dividida em quatro camadas: Kernel GNU Linux, bibliotecas, framework para aplicações e as próprias aplicações além da porção runtime, necessária para a execução dos aplicativos no dispositivo. Segundo Schemberger, Freitas e Vani (2009, p.3), a camada mais baixa da arquitetura, Kernel Linux, é a responsável por gerenciar os processos, threads, arquivos e pastas, além de redes e drivers dos dispositivos. É responsável por gerenciar todos os processos e a memória. A camada Libraries possui as bibliotecas C/C++ que são utilizadas pelo sistema, e também bibliotecas de multimídia, funções para navegadores web, para gráficos e fontes, além de funções de aceleradores de hardware, de renderização 3D e de acesso a banco de dados SQLite. A camada de aplicação é o local dos aplicativos executados sobre o sistema operacional. Enquanto a camada Runtime é responsável por instanciar a máquina virtual, Dalvik, criada para cada aplicação executada no Android e explicada melhor no próximo item.

19 19 A figura 1, a seguir, apresenta a organização da arquitetura Android. Figura 1: Arquitetura da Plataforma Android Máquina Virtual Própria A base de desenvolvimento do Android é realizada normalmente em Java. Porém, no seu sistema operacional não existe uma Máquina Virtual Java (JVM), mas sim outra, a DVM (Dalvik Virtual Machine), otimizada para interpretar códigos em dispositivos móveis. Ao desenvolver aplicações para o Android, utiliza-se a linguagem Java e todos os recursos que esta oferece. Mas, ao compilar o bytecode (.class), este é convertido para o formato específico da máquina virtual Dalvik, o.dex (Dalvik Executable), que representa a aplicação do Android compilada. De modo análogo aos aplicativos em Java, depois da aplicação Android ter sido compilada, juntamente com outras bibliotecas e possíveis imagens utilizadas é gerado um arquivo único. Neste caso com a extensão APK (Android Package File), que é a aplicação pronta para ser instalada.

20 20 Se o ambiente de desenvolvimento utilizado for o Eclipse, toda essa compilação e geração do arquivo APK acontece automaticamente (SCHEMBERGER; FREITAS; VANI, 2009, p.3). De acordo com o artigo escrito por Alípio (2011), a J2ME é limitada pelo motivo de alguns aparelhos não suportarem tecnologias como: gráfico 3D, SIP e Bluetooth. Isso se torna um incômodo para desenvolvedores da plataforma, visto que, dependendo do aplicativo, o mesmo não será compatível com alguns aparelhos. Outro fator importante que a Google destacou sobre não ter adotado o J2ME foi a especificação JSR (Java Specification Request) que é um processo bastante burocrático e necessário para que sejam inseridos novos recursos na plataforma. Em contrapartida, através da sua própria máquina virtual a Google possui o controle completo e pode impulsionar a adoção de novas funcionalidades em uma forma mais rápida e simples Código Aberto e Livre Conforme Schemberger, Freitas e Vani explicitam (2009, p.3), o Google Android é a primeira plataforma completamente livre para aplicações móveis e de código aberto (open-source). Para operadoras, fabricantes e usuários avançados isso é muito vantajoso, pois é possível utilizar gratuitamente o sistema operacional além da facilidade em personalizá-los. A licença de uso é a Apache Software Foundation (ASF), que permite que alterações efetuadas no código-fonte não sejam obrigatoriamente compartilhadas. O código fonte do Android está disponível no site do projeto: Funcionamento de uma Aplicação Android Antes de mostrar uma aplicação Android, é preciso conhecer e entender a anatomia de aplicações para esta plataforma, já que estas não seguem os formatos conhecidos de aplicações Java ou de um Midlet para Java ME.

21 21 A aplicação é dividida em quatro módulos descritos abaixo, conforme Schemberger, Freitas e Vani (2009, p.6) discutem: activity: é o módulo mais comum de uma aplicação Android. Refere-se a uma tela da aplicação e é implementada como uma única classe que deriva da classe base activity. Essa classe deve exibir uma interface com o usuário e tratar os eventos a ela relacionados; intent receiver: usado quando se deseja que a aplicação reaja a algum evento externo (o toque do telefone, internet disponível ou um alarme). Este módulo não exibe interface com o usuário, mas pode através da classe Notificationmanager avisar o usuário que tal evento ocorreu; service: um service é o código que é executado durante toda a aplicação, sem a necessidade de uma interface com o usuário (tocadores de música ou players de vídeo). Após o usuário escolher qual música deseja ouvir ele não quer que sua música pare por causa de algum outro evento; content provider: uma aplicação pode armazenar dados através de uma base SQLite. Este módulo permite que as diversas aplicações no dispositivo compartilharem informações. Qualquer aplicação não precisa necessariamente implementar todos os módulos, mas provavelmente ela terá uma combinação entre dois ou mais deles. 2.2 O Ambiente Eclipse e o Android SDK O Eclipse é um IDE que segue o modelo open source de desenvolvimento de software. O projeto Eclipse foi iniciado pela IBM que desenvolveu a primeira versão do produto, mas em novembro de 2001 teve seu código-fonte aberto. Atualmente, o Eclipse é controlado por uma organização sem fins lucrativos independente, chamada Eclipse Foundation. A forte orientação ao desenvolvimento baseado em plug-ins, programas de computador geralmente pequenos e leves utilizados para adicionar funções a outros programas maiores, e o amplo suporte ao desenvolvedor com centenas de plug-ins que procuram atender as diferentes necessidades de

22 22 diferentes programadores, são fatores decisivos que induzem milhares de programadores a escolher esse ambiente de desenvolvimento, já que é possível a instalação do ADT, o plug-in do Android. Além do Eclipse e do ADT instalados no computador, é também necessária a instalação do Android SDK, o kit de desenvolvimento necessário para desenvolver aplicações em Android. O download também pode ser feito gratuitamente. Assim, com os três programas instalados no computador, pode-se iniciar o desenvolvimento de aplicativos para Android. 2.3 AndEngine Criada em junho de 2012 e mantida por Nicolas Gramlich; engenheiro de software da Zynga (reconhecida empresa de jogos casuais), a AndEngine é uma game engine, ou seja, um programa e/ou conjunto de bibliotecas utilizado no desenvolvimento de jogos ou outras aplicações com gráficos em tempo real. No caso desta engine, sua função é simplificar e abstrair a criação de jogos para a plataforma Android. É totalmente gratuita e livre, e baseia-se na OpenGL, uma API especificação utilizada como uma interface para diferentes componentes de software se comunicarem - open-source utilizada para suporte à computação gráfica e para desenvolvimento de aplicativos gráficos, ambientes tridimensionais, jogos, entre outros. Esta engine cobre os aspectos mais importantes da biblioteca OpenGL quanto ao desenvolvimento de jogos bidimensionais, o que permite a criação de excelentes aplicativos ao utilizá-la, portanto não exige um prévio conhecimento sobre OpenGL e provê recursos para praticamente qualquer tipo de jogo a ser desenvolvido. Um exemplo disto é o jogo Angry Birds criado pela Rovio, já mencionado na introdução desta monografia, no qual foi utilizada a AndEnginePhysicsBox2D para o seu desenvolvimento, uma das extensões da AndEngine explicada melhor no item 2.6. A AndEngine conta também com suporte à detecção de colisões, implementa diversas propriedades físicas, auxilia no desenvolvimento de

23 23 modos de multijogadores, de partículas e tem suporte a multi touch. Além de existir uma grande comunidade ativa que trocam constantemente informações sobre o uso desta engine. A AndEngineExamples é outro projeto criado por Nicolas Gramlich que mostra o funcionamento de vários exemplos que utilizam os mais variados recursos da AndEngine, revelando assim o potencial desta engine. Obviamente, pode ser instalado nos dispositivos que possuem o Android como sistema operacional. E, o código pode ser visualizado, modificado e copiado conforme o desenvolvedor achar necessário. A AndEngine não possui restrições quanto ao sistema operacional no qual será executada. Para utilizar esta engine é necessário: Realizar o download do código fonte; Gerar o arquivo.jar do projeto; Incluir a engine no caminho da localização do projeto; Estender GameActivity ao invés de Activity. Uma desvantagem da AndEngine é a falta de documentação tanto no código, quanto em documentos que poderiam ser encontrados na internet ou em outro veículo de acesso à informação, como artigos ou sites explicativos. Isso dificulta inicialmente o entendimento do código por parte dos desenvolvedores. Apesar disso e devido à série de benefícios que esta engine oferece, a AndEngine foi o conjunto de bibliotecas escolhido para desenvolver o presente trabalho. 2.4 Principais Conceitos da AndEngine Neste item serão explicados os conceitos fundamentais sobre a AndEngine, conceitos que são utilizados em qualquer tipo de jogo que seja desenvolvido por esta engine Engine Como mencionado anteriormente, a engine é um programa utilizado no desenvolvimento de jogos. Tem como função permitir ao jogo prosseguir em pequenos espaços de tempo. É responsável por sincronizar periodicamente as

24 24 imagens e sons do jogo conforme se alteram, além de atualizar o cenário, que abrange todo o conteúdo sendo processado pelo o jogo Política de Resolução A política de resolução de imagens é uma parte das opções da engine. É responsável por tratar os diversos tamanhos de tela de diferentes dispositivos. Pode ser definida por dois tipos distintos definidos como segue: Política de Resolução de Proporção: procura maximizar a visão da cena do jogo até o limite da tela do dispositivo, enquanto mantém a proporção especificada dos elementos do cenário. Isso significa que o os objetos não vão ficar distorcidos na tela, pois a visão do jogo ocupará o maior tamanho possível. Uma possível desvantagem é que a tela poderá apresentar algum espaço negro. Política de Resolução de Suficiência: procura preencher toda a resolução do dispositivo, sem levar em consideração a proporção dos elementos que estiverem no cenário, o que impede que espaços negros fiquem na tela. No entanto, as imagens podem ficar distorcidas Câmera Uma câmera define o tamanho do cenário desenhado na tela, de modo que nem todo o cenário precise ficar visível o tempo todo. Pode, por exemplo, ser maior que a resolução do dispositivo, no qual o jogo será executado. Frequentemente é criada uma câmera para cada cena e existem duas subclasses com mais funções, descritas abaixo: BoundCamera: permite que haja mais de uma câmera no mesmo cenário; ZoomCamera: permite que o jogador possa aumentar ou diminuir o tamanho do cenário conforme desejar Cenas Cada cenário é definido por uma classe denominada Scene, que funciona como um recipiente para todos os objetos a serem inseridos em um determinado cenário. A Scene contém uma quantidade específica de camadas, as quais podem conter uma quantia fixa ou dinâmica de entidades, e contém

25 25 subclasses como a HUD e a MenuScene que são desenhadas na mesma posição da cena, sem haver influência da posição da câmera do jogo. Abaixo segue uma melhor explicação sobre em quais partes do jogo estas subclasses são mais utilizadas: HUD: nos cenários do jogo é muito comum utilizar esta Scene para conter a pontuação do jogador e a quantidade de vidas de um personagem, por exemplo. MenuScene: é comum ser usada nas telas de menu, por exemplo, para conter uma lista de opções, as quais o jogador pode escolher Entidades Uma entidade é um objeto que pode ser desenhado como imagens de sprites (explicados no próximo item), retângulos, textos ou linhas, as quais são representadas pelas classes Sprite, Rectangle, Text e Line respectivamente. Possui, também, diversas propriedades que podem ser previamente definidas, como posição, rotação, escala, cor e etc Sprites Os sprites são objetos que representam praticamente todas as imagens adicionadas em um jogo e podem pertencer a três tipos de classes distintas explicadas a seguir: Classe Sprite: utilizada quando se quer adicionar uma imagem com um único estado, que não tenha nenhum tipo de animação, como por exemplo, uma pedra, uma árvore ou um cenário de fundo; Classe TiledSprite: utilizada quando se quer adicionar uma imagem que possui múltiplos estados. Um exemplo disso poderia ser um botão com dois estados: pressionado e normal; Classe AnimatedSprite: é uma subclasse da TiledSprite e possui, portanto, mais funções que possibilitam a realização de animação desses estados. Os exemplos seriam os personagens adicionados no jogo, os quais possuem diferentes estados como atacando, andando, pulando e etc.

26 26 No caso de utilizar a classe AnimatedSprite, deve- se adicionar uma imagem, denominada sprite sheet, que é representada por uma série de quadros, cada um contendo uma imagem diferente do mesmo objeto a ser adicionado. Assim, as diferentes ações desse objeto poderão ser representadas quando o programador desejar. No caso da figura 2, representada a seguir, os quadros de 0 a 5 podem indicar o caminhar do personagem no sentido de cima para baixo, enquanto os quadros de 6 a 11 representam o caminhar da direita para a esquerda e assim por diante. Portanto, o programador pode definir os quadros mostrados conforme uma determinada ação e vale mencionar que nem todos os quadros precisam necessariamente ser utilizados. Figura 2: Exemplo de um sprite sheet Texturas e Regiões de Texturas Uma textura é a imagem armazenada na memória do chip gráfico do dispositivo, enquanto as regiões de texturas são recipientes para conter as texturas. Portanto, as regiões de texturas são utilizadas pelos sprites para permitir que o sistema entenda qual parte da textura se deseja mostrar, ou seja, qual tile do tilesheet deve ser mostrado.

27 PhysicsBox2D Além da AndEngine, foram criadas diversas extensões para oferecer mais recursos no desenvolvimento de jogos, as quais dão suporte, dentre outros recursos, à realidade aumentada, à física do jogo e ao modo de multijogadores. Portanto o desenvolvedor passou a poder adicionar estas extensões conforme a sua necessidade. Dentre as extensões criadas, foi necessário utilizar no projeto a AndEnginePhysicsBox2DExtension, a extensão que permite a adição de física ao jogo. Com esta extensão é possível adicionar gravidade aos cenários do jogo e criar corpos e associá-los às entidades presentes na cena. Os corpos podem ser de três tipos distintos descritos abaixo: Corpo Estático: esse tipo não se move de modo algum. Seu movimento não pode ser simulado e se comporta como se tivesse uma massa infinita, ou seja, não reage a qualquer tipo de força aplicada a ele. É usado normalmente para definir o solo e, em alguns casos, paredes, dependendo do cenário. Corpo Cinemático: esse tipo de corpo pode ter sua velocidade simulada, mas não reage a nenhuma força aplicada a ele. Não interage com os corpos dinâmicos por exemplo. Um exemplo de uso seria uma plataforma móvel, que se movimenta constantemente em um cenário. Corpo Dinâmico: esse tipo tem sua movimentação completamente simulada e pode colidir com todos os tipos de corpo. Pode ser usados nos personagens do cenário e, em algumas situações, em projéteis. As entidades poderão ter seu tipo de corpo alterado, mesmo após já estarem associadas. E após todos os corpos de um cenário estarem criados, é importante nomeá-los com um identificador, que terá grande utilidade ao verificar as colisões que ocorrerem entre eles.

28 Conceitos de Engenharia de Software Neste item serão explicados alguns conceitos de engenharia de software referentes à modelagem de sistemas com o uso de diagramas de classe e o conceito de generalização, muito utilizado em linguagens orientadas a objetos Modelagem de Sistemas Sommerville (2011, p.82) define a modelagem de sistemas como o processo de desenvolvimento de modelos abstratos de um sistema, em que cada modelo apresenta uma visão ou perspectiva, diferente do sistema. Essa modelagem geralmente representa o sistema com alguma notação gráfica, sendo que normalmente é baseada em notações de UML. Ao desenvolver modelos de sistema, pode-se ser flexível quanto ao uso da notação gráfica. O detalhe e o rigor dependem de como se pretende usar o modelo. Os modelos gráficos podem ser comumente usados de três formas: 1. Como forma de facilitar a discussão sobre um sistema existente ou proposto; 2. Como forma de documentar um sistema já existente; 3. Como uma descrição detalhada de um sistema, que pode ser usada para gerar uma implementação do sistema. Dentre os diversos tipos de modelagem de sistemas, os modelos estruturais de software exibem a organização de um sistema em termos de seus componentes e seus relacionamentos. Tem-se como exemplo disso os diagramas de classe, descritos no item Diagramas de Classe Conforme Sommerville (2011) menciona, os diagramas de classe são usados no desenvolvimento de um modelo de sistema orientado a objetos para mostrar as classes de um sistema e as associações entre essas classes. Uma classe normalmente é definida da seguinte maneira: 1. O nome da classe de objeto está na seção superior;

29 29 2. Os atributos de classe estão na seção do meio. O que deve incluir os nomes dos atributos e, opcionalmente, seus tipos; 3. As operações (chamadas métodos, em Java e em outras linguagens de programação orientadas a objetos) associadas à classe de objeto estão na seção inferior do retângulo Generalização A generalização é uma técnica normalmente usada no dia a dia. Ao invés de aprender as características detalhadas de cada entidade, colocam-se essas entidades em classes mais gerais e aprendem-se suas características. Dessa forma, é permitido inferir que os diferentes membros dessas classes têm algumas características em comum e se pode fazer afirmações genéricas que sejam aplicáveis a todos os membros da classe. A UML tem um tipo específico de associação para denotar a generalização: representação de uma seta apontando para a classe mais geral. As classes de nível mais baixo são subclasses que herdam os atributos e as operações de suas superclasses. Essas classes de nível mais baixo, em seguida, adicionam mais atributos e operações específicas.

30 30 3 PROPOSTA DO TRABALHO Conforme os conceitos descritos no capítulo 2, neste trabalho é proposta a implementação de um jogo eletrônico para o sistema operacional Android. Para tanto, foram realizados estudos prévios sobre o desenvolvimento de aplicativos para este sistema e para o desenvolvimento de jogos. Devido à escolha do Android e às facilidades já explicadas que o Eclipse oferece para o desenvolvimento de aplicações deste sistema através do ADT, foi decidido que o desenvolvimento seria realizado na linguagem de programação Java. Também, através de pesquisas à procura de uma engine que fosse mais adequada ao desenvolvimento de jogos para Android, a AndEngine foi escolhida, devido às facilidades já mencionadas no item 2.3 desta monografia. Ao decidir que tipo de jogo poderia ser produzido, optou-se que o jogo seria do tipo plataforma bidimensional e utilizaria conceitos de física como gravidade, velocidade linear, colisão e propriedades de corpos como massa, densidade, atrito e elasticidade. Para tanto foi utilizada uma extensão de AndEngine, a AndEnginePhysicsBox2DExtension. Tal extensão pode ser simplificadamente explicada como sendo a responsável por simular um ambiente onde são aplicadas as principais leis da física. Com o foco dado principalmente no aprendizado, é proposta a criação de um jogo simples que utilize somente os conceitos fundamentais do desenvolvimento de um game, sendo que o projeto pode ser ainda continuado mesmo depois de avaliado, e com a possibilidade de se tornar um projeto ainda mais ambicioso. O jogo terá classificação livre, porém terá como foco o público jovem. Para obter um melhor resultado final, foi definido que terá um enredo original com personagens característicos de uma determinada época, um design fiel ao enredo e que utilize bem a capacidade de processamento dos principais portáteis que utilizam o Android OS, uma jogabilidade fácil ao usuário e o uso de algum conceito de Inteligência Artificial voltada a jogos. Dessa forma, tem a finalidade de garantir um maior desafio aos jogadores e, consequentemente, um maior entretenimento.

31 31 4 MATERIAL E MÉTODOS Neste capítulo serão descritos os materiais e os métodos utilizados para o desenvolvimento do game. No item 4.1 serão apresentados todos os materiais utilizados. No item 4.2 é apresentada a metodologia, ou seja, a forma pela qual os procedimentos necessários ao desenvolvimento do projeto foram realizados, desde os estudos até a parte prática. 4.1 Softwares e Hardwares Utilizados A seguir é apresentada a função de cada aplicativo e a descrição dos dispositivos móveis utilizados no projeto. Vale ressaltar que devido ao fato de a AndEngine não oferecer suporte a emuladores de dispositivos, muito comum no desenvolvimento de diversos outros aplicativos para Android, o uso de um hardware como material foi obrigatório (no caso um smartphone). Samsung Galaxy SII Lite: smartphone com sistema operacional Android 2.3, processador Dual Core de 1 Ghz. Tela de 4 polegadas com resolução de 800x480; Samsung Galaxy SII: smartphone com sistema operacional Android 2.3, processador Dual Core de 1.2 Ghz. Tela de 4.3 polegadas com resolução de 800x480; Eclipse: o Eclipse é a IDE mais adequada para o desenvolvimento de aplicativos para Android, pois oferece um ambiente que pode ser configurado através da instalação do Android SDK e do plug-in ADT, que serão explicados adiante; Android SDK: é o kit de desenvolvimento que deve ser instalado para permitir o desenvolvimento de aplicativos para o sistema Android. Vale observar que necessita ter o Java SDK previamente instalado; ADT: o ADT é um plug-in do Eclipse que facilita a criação de projetos Android e cria o debug das aplicações; AndEngine: foi a game engine escolhida. Uma game engine consiste em um conjunto de bibliotecas utilizado no desenvolvimento de jogos, cuja

32 32 função é simplificar e abstrair o desenvolvimento de jogos para a plataforma Android; AndEnginePhysicsBox2DExtension: extensão da AndEngine que trata todos os conceitos relacionados à física, como gravidade, velocidade, colisão de corpos e propriedades dos corpos como massa, elasticidade, atrito e densidade; Pixillion Image Converter: Devido ao fato de a AndEngine suportar apenas imagens do tipo PNG, ao pesquisar imagens relacionadas ao tema do jogo para adicionar ao projeto, necessitou-se deste conversor de imagens para converter outros tipos de imagens em PNG; PhotoPad Image Editor: este editor de imagens foi muito utilizado para adequar o tamanho das imagens, mudar as cores e deixar o plano de fundo transparente (utilizado principalmente nos spritesheets); WavePad Sound Editor: com a finalidade de deixar o som o mais leve possível e compatível com a AndEngine, foi utilizado este editor de som para converter arquivos de diferentes tipos. Assim, arquivos de som do tipo WAVE e do tipo MP3 puderam ser convertidos para OGG, o único tipo de arquivo aceito pela AndEngine. PhysicsEditor: editor que define a forma, a densidade, a elasticidade e o atrito dos objetos adicionados aos cenários do jogo; Além da utilização dos programas descritos acima, na parte de estudos foram pesquisados em artigos e livros os conceitos relacionados à física e à engenharia de software. 4.2 Etapas do Projeto Ao considerar que o design de um game é um dos itens fundamentais para garantir um bom produto final ao usuário de um jogo e o curso de Bacharelado em Ciência da Computação não oferece formação neste quesito, o design de algumas imagens foi, portanto, produzido com a ajuda de dois estudantes que cursam esta área de conhecimento. Neste tópico serão apresentadas as atividades realizadas e a divisão de tarefas executadas pelos estudantes do projeto.

33 Atividades Realizadas Abaixo segue uma descrição resumida das atividades realizadas, a fim de revelar como o projeto foi produzido, sendo estas ordenadas abaixo conforme a evolução do projeto: 1. Pesquisa sobre o desenvolvimento de aplicativos para o sistema operacional Android; 2. Pesquisa sobre os atuais jogos para dispositivos móveis que obtiveram sucesso, a fim de promover ideias e obter modelos para o jogo desenvolvido; 3. Pesquisa sobre as principais ferramentas de desenvolvimento em games; 4. Seleção das ferramentas que foram utilizadas no projeto; 5. Treinamento com o objetivo de desenvolver aplicativos para Android, a fim de facilitar posteriormente o desenvolvimento do jogo; 6. Escolha do enredo, dos personagens, dos cenários, da trilha sonora e do tempo e do espaço no qual o jogo ocorrerá, com a finalidade de garantir uma identidade ao jogo; 7. Desenvolvimento de um protótipo do game, utilizando as ferramentas pesquisadas de desenvolvimento em jogos, no qual são priorizadas a mudança de cenários e a jogabilidade; 8. Desenvolvimento do projeto final, com a adição de inimigos, som e música; 9. Realização de testes; 10. Aplicação de arte gráfica desenvolvida por designers ao jogo, com a finalidade de torná-lo o mais amigável possível ao usuário e condizer com o enredo escolhido; 11. Realização de testes finais; 12. Conclusão e apresentação do projeto final.

34 Divisão de Tarefas Ao considerar as atividades mencionadas no item anterior, as tarefas foram divididas pelos alunos participantes do projeto. Em suma, foi definida a divisão do projeto em três partes distintas: 1) Estruturação do projeto e controle dos eventos: realizadas pelo aluno Francisco Mariani Guariba Filho; 2) Mecânica dos movimentos e testes: realizadas pelo aluno Ivo Rodrigues de Freitas Neto; 3) Arte gráfica e ilustração: realizadas pelos designers Henrique Fernandes Erdei e César Rosolino Pasqualinotto Estruturação do Projeto A estruturação deste projeto consistiu em definir a melhor arquitetura do projeto, além do uso de alguns conceitos relacionados à geometria analítica, necessários ao seu desenvolvimento, como a disposição das imagens e dos objetos nos cenários e a implementação das telas. O projeto de arquitetura está preocupado com a compreensão de como um sistema deve ser organizado e com a estrutura geral desse sistema. O resultado do processo de projeto de arquitetura é um modelo de arquitetura que descreve como o sistema está organizado em um conjunto de componentes de comunicação (SOMMERVILLE, 2011, p. 103). Para tal, foram utilizados alguns conceitos de engenharia de software como o diagrama de classes, com a função de mostrar as classes do sistema e a associação entre elas. A descrição se encontra nos itens e 4.2.6, relativos às fases de implementação do aplicativo Controle de Eventos O controle de eventos se concentra nos resultados em que cada evento do projeto produz.

35 35 Isso abrange a mudança de cenários, o tempo ideal pelo qual cada adversário do jogador aparece no primeiro cenário. Além das escolhas que jogador faz ao tocar na tela tanto na escolha de opções do menu principal, como no uso do controle touch screen ou ao tocar em algum dos dois botões do dispositivo utilizado Estudo e Definição da Game Engine A fase de estudo foi a etapa que propiciou a base de conhecimento necessária para o desenvolvimento do jogo e subdividiu-se, nesta ordem, em pesquisar sobre o desenvolvimento de aplicativos para o sistema operacional Android, pesquisar sobre os atuais jogos que obtiveram sucesso para dispositivos móveis e pesquisar e selecionar as principais ferramentas de desenvolvimento de games para Android. Ao pesquisar sobre os jogos lançados que obtiveram o maior número de downloads, pôde-se perceber que os melhores jogos baseavam-se em temas simplistas, mas que poderiam garantir um entretenimento contínuo. Não são tipos de jogos longos e com enredos complexos, como são os jogos de consoles caseiros mais potentes como Xbox360 e Playstation 3, nos quais o usuário deve normalmente estar em casa e com tempo dedicado a este tipo de entretenimento. Devido a essa simplicidade, o usuário pode jogar em diversas situações do dia a dia como na rua, no ônibus ou numa sala de espera sem se cansar do jogo. Através dessa observação e do tempo de alguns meses para finalizar o projeto, optou-se por desenvolver um jogo simples que servisse para o aprendizado dos principais conceitos de jogos pelos alunos, mas ainda assim pudesse garantir um certo entretenimento. Esta etapa não consistiu apenas na pesquisa teórica sobre o tema, como também, num estudo prático, através da implementação de pequenos aplicativos para Android, como exemplos para facilitar o entendimento sobre o tema. Primeiramente foram implementados aplicativos somente referentes ao sistema operacional, a fim de se familiarizar e compreender o funcionamento de uma aplicação. Após esse estudo, desenvolveu-se pequenos projetos que utilizam a AndEngine, para a compreensão do funcionamento dos métodos que

36 36 esta engine utiliza. Ao desenvolver esses pequenos projetos, o uso do AndEngineExamples, um outro projeto criado também por Nicolas Gramlich, teve grande valia na compreensão dos métodos e parâmetros que a AndEngine possui Tema e Enredo do Jogo Através do que foi enunciado nos objetivos, a escolha do enredo, dos principais personagens e do tempo e espaço em que ocorrerá o desenrolar do jogo foi realizada, para conferir uma identidade ao jogo. Com isso, foi possível focar nas informações referentes ao enredo para produzir todo o design, o controle, os cenários e tudo o mais necessário à produção do jogo História A redação de uma história tem a função de ajudar a definir o enredo e, consequentemente, o funcionamento, além de restringir os elementos que o jogo contém. Ao definir um tempo, um espaço, personagens e um enredo; é possível saber quais imagens, qual jogabilidade o jogo terá, qual o tipo de público o jogo deve agradar. A seguir é reproduzida a história referente ao jogo, cujo tema foi escolhido através de pesquisas relacionadas à história do Japão para garantir uma verossimilhança. Hikari no Ken O período Sengoku foi uma das fases mais conturbadas e instáveis da história do Japão. Ocorreu entre a metade do século XV e o início do século XVII. Aquela região encontrava-se em uma grande instabilidade política. As disputas de poder e de terras entre os daimiôs (senhores feudais) ocasionaram uma onda sangrenta de guerras civis. Essas guerras contribuíram para desestruturar o poder central do Xogunato Muromachi, deixando o país à mercê da lei do mais forte e das constantes tentativas dos daimiôs de unificar o Japão sob seu controle, resultando sempre em fracassos.

37 37 Foi nesta época que nasceu Jinchuu. Ele fora encontrado abandonado em uma cesta na porta do Dojo Genki, onde fora acolhido pelo sensei Tairo, que passou a ensiná-lo o Kobudo, artes marciais samurais, e o Bushido, caminho do guerreiro. Naquela época ambos eram considerados o alicerce para um indivíduo tornar-se samurai. O Dojo Genki era o lugar onde se revelava a maior quantidade de samurais para defender o clã Musashi, um dos clãs que também estava em conflito e era seriamente ameaçado pelo clã Akuma, um dos mais temidos da região. O medo dominava todas as classes dos feudos, desde camponeses inocentes até a corte. Os senhores feudais contavam tanto com os seus samurais, como também com mercenários e agentes secretos conhecidos como ninjas. Em determinada noite alguns ninjas ordenados pelo clã inimigo Akuma invadiram o Dojo Genki, a fim de eliminar todos os possíveis samurais que habitavam ali. A discrição dos ninjas não foi suficiente para impedir o sensei Tairo de perceber a aproximação do bando. E, ele ordenou Jinchuu a se esconder e com a ajuda dos seus discípulos se preparou para o combate. Jinchuu, preocupado, correu para ficar atrás de uns arbustos e dali tinha uma pequena visão do que poderia acontecer. Após uma intensa batalha Tairo, já muito ferido, sofreu um golpe fatal por Baka, o único ninja que havia sobrevivido e, que, após cumprir sua missão, incendiou o Dojo Genki, fugindo em seguida. Caso alguém aparecesse em poucos minutos, encontraria ali apenas o lar de Jinchuu destruído pelo fogo. O pequeno Jinchuu, apavorado, correu em direção ao seu mestre que lhe disse as últimas palavras. Lembrou-lhe o quanto precisava ser forte, pois logo seria a última esperança para manter o clã Musashi vivo, para isso precisava seguir o Bushido rigorosamente. Jinchuu prometeu ser o melhor samurai de todos e preservar o clã Musashi a qualquer preço. Além de ter a missão de proteger as pessoas do feudo do seu daimo, para Jinchuu, o sensei Tairo e seus discípulos eram considerados a sua família, algo de extrema importância a um samurai ou futuro samurai. E só a vitória sobre Akuma poderia resgatar a sua honra de volta.

38 Desenvolvimento do Protótipo Após a fase de pesquisa, teve início o desenvolvimento do protótipo. O protótipo se baseou em fazer o personagem se movimentar em um cenário e realizar a mudança entre as principais telas do jogo. Antes de implementar a mudança de cenários, deve-se saber que a maioria dos smartphones possuem sempre dois botões, descritos a seguir: Voltar: utilizado normalmente para retornar aos menus anteriores do sistema Android ou de aplicativos instalados e para, possivelmente, encerrar chamadas; Menu: utilizado normalmente para abrir algum menu de opções tanto do sistema, como de aplicativos instalados. Como a preocupação inicial foi em relação às mudanças de cenários, foi criada uma tela de carregamento inicial que apresenta o jogo e dura um tempo determinado. Após isso a tela de menu principal é carregada, nela há uma MenuScene com as opções de jogar e sair. Ao tocar na opção de sair, o jogo é fechado, retornando ao sistema operacional. Ao tocar na opção de jogar é carregada a tela da primeira fase do game e nela foi dada a possibilidade de o jogador pausar o jogo ao tocar no botão Menu do dispositivo. As telas de carregamento inicial e de menu principal, além dos os elementos usados nela estão representados a seguir, na figura 3 e figura 4, respectivamente: Figura 3: Tela de Carregamento Inicial

Introdução a Computação Móvel

Introdução a Computação Móvel Introdução a Computação Móvel Computação Móvel Prof. Me. Adauto Mendes adauto.inatel@gmail.com Histórico Em 1947 alguns engenheiros resolveram mudar o rumo da história da telefonia. Pensando em uma maneira

Leia mais

Pré-Projeto do Trabalho de Conclusão de Curso Tiago Garcia Pereira 1. INTRODUÇÃO

Pré-Projeto do Trabalho de Conclusão de Curso Tiago Garcia Pereira 1. INTRODUÇÃO UM PADRÃO ABERTO DE SOFTWARE PARA COMPUTAÇÃO MÓVEL: UM ESTUDO SOBRE GOOGLE ANDROID 1. INTRODUÇÃO O aumento do número usuários de dispositivos móveis atrai cada vez os desenvolvedores a produzir aplicações

Leia mais

Visão geral Estrutura do sistema Ferramentas de desenvolvimento Uma aplicação. Android. Universidade Federal de Santa Catarina. 17 de dezembro de 2008

Visão geral Estrutura do sistema Ferramentas de desenvolvimento Uma aplicação. Android. Universidade Federal de Santa Catarina. 17 de dezembro de 2008 Android José João Junior Universidade Federal de Santa Catarina 17 de dezembro de 2008 Agenda 1 Visão geral 2 Estrutura do sistema 3 Ferramentas de desenvolvimento 4 Uma aplicação Visão geral Histórico

Leia mais

A plataforma Android: Uma Introdução

A plataforma Android: Uma Introdução A plataforma Android: Uma Introdução Android Iniciativa da Google de prover uma plataforma aberta para Web móvel Open Handset Alliance Associação de um grupo bastante heterogêneo de empresas (operadoras,

Leia mais

Introdução Dalvik Linux 2.6. Android. Diogo de Campos, João Paulo Pizani Flor, Maurício Oliveira Haensch, Pedro Covolan Bachiega

Introdução Dalvik Linux 2.6. Android. Diogo de Campos, João Paulo Pizani Flor, Maurício Oliveira Haensch, Pedro Covolan Bachiega Android Diogo de Campos, João Paulo Pizani Flor, Maurício Oliveira Haensch, Pedro Covolan Bachiega Universidade Federal de Santa Catarina November 18, 2008 Agenda 1 Introdução 2 Dalvik 3 Linux 2.6 Introdução

Leia mais

Aula 1 - Introdução e configuração de ambiente de desenvolvimento

Aula 1 - Introdução e configuração de ambiente de desenvolvimento Aula 1 - Introdução e configuração de ambiente de desenvolvimento Olá, seja bem-vindo à primeira aula do curso para desenvolvedor de Android, neste curso você irá aprender a criar aplicativos para dispositivos

Leia mais

Dispositivos móveis e o mercado Android Open Handset Alliance Informações sobre Android Arquitetura

Dispositivos móveis e o mercado Android Open Handset Alliance Informações sobre Android Arquitetura Dispositivos móveis e o mercado Android Open Handset Alliance Informações sobre Android Arquitetura Dispositivos móveis e o mercado Mercado cresce a cada ano Muitos recursos Múltiplas plataforma Symbian

Leia mais

Android. Marcelo Quinta @mrquinta

Android. Marcelo Quinta @mrquinta Android Marcelo Quinta @mrquinta Oi, eu sou o Marcelo Quinta Pública Público-privada Privada Próprio negócio Voluntariado Parabéns à organização do GO-GTUG Tablets 160% de aumento em 2011 Smartphones

Leia mais

Introdução a programação de dispositivos móveis. Prof. Me. Hélio Esperidião

Introdução a programação de dispositivos móveis. Prof. Me. Hélio Esperidião Introdução a programação de dispositivos móveis. Prof. Me. Hélio Esperidião Windows Mobile O Windows Mobile é um sistema operacional compacto, desenvolvido para rodar em dispositivos móveis como Pocket

Leia mais

PLATAFORMA ANDROID. Ariel Soares Teles arielsoaresteles@gmail.com

PLATAFORMA ANDROID. Ariel Soares Teles arielsoaresteles@gmail.com Universidade Federal do Maranhão UFMA Programa de Pós-graduação em Engenharia de Eletricidade PPGEE Área de Concentração: Ciência da Computação Disciplina: Introdução a Computação Móvel Professor: Dr.

Leia mais

Programação para Dispositivos Móveis

Programação para Dispositivos Móveis Programação para Dispositivos Móveis Fatec Ipiranga Análise e Desenvolvimento de Sistemas Aula 02 História do desenvolvimento de software para dispositivos móveis Dalton Martins dmartins@gmail.com São

Leia mais

Sistemas Embarcados Android

Sistemas Embarcados Android Engenharia Elétrica UFPR 7 de março de 2013 Outline Desenvolvido para sistemas móveis pelo Google: Android Open Source Project (AOSP) Grande sucesso, devido a combinação de: open source licensing aggressive

Leia mais

Sistemas Embarcados Android

Sistemas Embarcados Android Engenharia Elétrica UFPR 13 de novembro de 2014 Desenvolvido para sistemas móveis pelo Google: Android Open Source Project (AOSP) Grande sucesso, devido a combinação de: open source licensing aggressive

Leia mais

OpenGL. Uma Abordagem Prática e Objetiva. Marcelo Cohen Isabel Harb Manssour. Novatec Editora

OpenGL. Uma Abordagem Prática e Objetiva. Marcelo Cohen Isabel Harb Manssour. Novatec Editora OpenGL Uma Abordagem Prática e Objetiva Marcelo Cohen Isabel Harb Manssour Novatec Editora Capítulo 1 Introdução A Computação Gráfica é uma área da Ciência da Computação que se dedica ao estudo e ao desenvolvimento

Leia mais

Módulo I - Introdução. Faculdade Christus Sistemas de Informação 17/09/2010. Carlos Eugênio Torres Engenheiro de Informática http://cetorres.

Módulo I - Introdução. Faculdade Christus Sistemas de Informação 17/09/2010. Carlos Eugênio Torres Engenheiro de Informática http://cetorres. Módulo I - Introdução Aula 2 Carlos Eugênio Torres Engenheiro de Informática http://cetorres.com Faculdade Christus Sistemas de Informação 17/09/2010 Graduado em Ciência da Computação pela UFC, Brasil

Leia mais

Desenvolvimento de um aplicativo básico usando o Google Android

Desenvolvimento de um aplicativo básico usando o Google Android Desenvolvimento de um aplicativo básico usando o Google Android (Organização do Ambiente) Programação de Dispositivos Móveis Mauro Lopes Carvalho Silva Professor EBTT DAI Departamento de Informática Campus

Leia mais

Manual de instalação e configuração da Ferramenta Android SDK

Manual de instalação e configuração da Ferramenta Android SDK Trabalho de Programação para Dispositivos Móveis Turma: 1011 Camila Botelho camilacunhabotelho@gmail.com Manual de instalação e configuração da Ferramenta Android SDK Introdução O Android é uma ferramenta

Leia mais

O conjunto é composto por duas seções: o App Inventor Designer e o App Inventor Blocks Editor, cada uma com uma função específica.

O conjunto é composto por duas seções: o App Inventor Designer e o App Inventor Blocks Editor, cada uma com uma função específica. Google App Inventor: o criador de apps para Android para quem não sabe programar Por Alexandre Guiss Fonte: www.tecmundo.com.br/11458-google-app-inventor-o-criador-de-apps-para-android-para-quem-naosabe-programar.htm

Leia mais

Android. 10 vantagens do sistema Android em relação ao iphone

Android. 10 vantagens do sistema Android em relação ao iphone Android Android é um sistema operacional do Google para smartphones, TVs e tablets. Baseado em Linux e de código aberto, o sistema móvel é utilizado em aparelhos da Samsung, LG, Sony, HTC, Motorola, Positivo,

Leia mais

O que é o Android? O que é o Android

O que é o Android? O que é o Android O que é o Android? O Android é um sistema operacional para dispositivos móveis, baseado em uma plataforma de código aberta sob a licença apache, permitindo que os fabricantes possam modificar seu código

Leia mais

Fundamentos da Computação Móvel

Fundamentos da Computação Móvel Fundamentos da Computação Móvel (Plataformas Sistemas Operacionais e Desenvolvimento) Programação de Dispositivos Móveis Mauro Lopes Carvalho Silva Professor EBTT DAI Departamento de Informática Campus

Leia mais

AULA 2. Aspectos Técnicos. Luciano Roberto Rocha. www.lrocha.com. MBA em Marketing Digital SOCIAL GAMES

AULA 2. Aspectos Técnicos. Luciano Roberto Rocha. www.lrocha.com. MBA em Marketing Digital SOCIAL GAMES MBA em Marketing Digital SOCIAL GAMES AULA 2 Luciano Roberto Rocha Aspectos Técnicos Ponta Grossa, 31 de agosto de 2013 ROTEIRO Papéis Processos Plataformas Ferramentas 2 PAPÉIS O desenvolvimento de um

Leia mais

Desenvolvimento de um Framework de Jogos 3D para Celulares

Desenvolvimento de um Framework de Jogos 3D para Celulares Desenvolvimento de um Framework de Jogos 3D para Celulares Fabrício Brasiliense Departamento de Informática e Estatística(INE) Universidade Federal de Santa Catarina (UFSC) Campus Universitário Trindade-

Leia mais

O SISTEMA ANDROID NO UNIVERSO DOS DISPOSITIVOS MÓVEIS

O SISTEMA ANDROID NO UNIVERSO DOS DISPOSITIVOS MÓVEIS O SISTEMA ANDROID NO UNIVERSO DOS DISPOSITIVOS MÓVEIS Gilberto Sadao OTSUKA 1 Ana Paula Ambrósio ZANELATO 2 RESUMO: Com o advento da popularização e maior uso da internet por meio da utilização de dispositivos

Leia mais

2ª Edição Ricardo R. Lecheta

2ª Edição Ricardo R. Lecheta Google Aprenda a criar aplicações para dispositivos móveis com o Android SDK 2ª Edição Ricardo R. Lecheta Novatec capítulo 1 Introdução ao Android 1.1 Introdução O mercado de celulares está crescendo cada

Leia mais

Guia. PDA e SmartPhones. Windows Mobile, Pocket PC e CE.

Guia. PDA e SmartPhones. Windows Mobile, Pocket PC e CE. Guia PDA e SmartPhones Windows Mobile, Pocket PC e CE. Referência completa para o integrador do sistema Module. Aborda os recursos necessários para a itulização, instalação do software e importação das

Leia mais

11/3/2009. Software. Sistemas de Informação. Software. Software. A Construção de um programa de computador. A Construção de um programa de computador

11/3/2009. Software. Sistemas de Informação. Software. Software. A Construção de um programa de computador. A Construção de um programa de computador Sistemas de Informação Prof. Anderson D. Moura Um programa de computador é composto por uma seqüência de instruções, que é interpretada e executada por um processador ou por uma máquina virtual. Em um

Leia mais

DESENVOLVIMENTO DE UM APLICATIVO DO TIPO SECRETÁRIO VIRTUAL PARA A PLATAFORMA ANDROID

DESENVOLVIMENTO DE UM APLICATIVO DO TIPO SECRETÁRIO VIRTUAL PARA A PLATAFORMA ANDROID DESENVOLVIMENTO DE UM APLICATIVO DO TIPO SECRETÁRIO VIRTUAL PARA A PLATAFORMA ANDROID Maik Olher CHAVES 1 ; Daniela Costa Terra 2. 1 Graduado no curso de Tecnologia em Análise e Desenvolvimento de Sistemas

Leia mais

Programação para Android

Programação para Android Programação para Android Aula 01: Visão geral do android, instalação e configuração do ambiente de desenvolvimento, estrutura básica de uma aplicação para Android Objetivos Configurar o ambiente de trabalho

Leia mais

Manual do Usuário Nextel Cloud. Manual do Usuário. Versão 1.0.0. Copyright Nextel 2014. http://nextelcloud.nextel.com.br

Manual do Usuário Nextel Cloud. Manual do Usuário. Versão 1.0.0. Copyright Nextel 2014. http://nextelcloud.nextel.com.br Manual do Usuário Versão 1.0.0 Copyright Nextel 2014 http://nextelcloud.nextel.com.br 1 Nextel Cloud... 4 2 Nextel Cloud Web... 5 2.1 Página Inicial... 6 2.1.1 Meu Perfil... 7 2.1.2 Meu Dispositivo...

Leia mais

Inicialização Rápida do Novell Vibe Mobile

Inicialização Rápida do Novell Vibe Mobile Inicialização Rápida do Novell Vibe Mobile Março de 2015 Introdução O acesso móvel ao site do Novell Vibe pode ser desativado por seu administrador do Vibe. Se não conseguir acessar a interface móvel do

Leia mais

Linguagem de Programação JAVA. Professora Michelle Nery Nomeclaturas

Linguagem de Programação JAVA. Professora Michelle Nery Nomeclaturas Linguagem de Programação JAVA Professora Michelle Nery Nomeclaturas Conteúdo Programático Nomeclaturas JDK JRE JEE JSE JME JVM Toolkits Swing AWT/SWT JDBC EJB JNI JSP Conteúdo Programático Nomenclatures

Leia mais

Sistemas Operacionais Aula 03: Estruturas dos SOs. Ezequiel R. Zorzal ezorzal@unifesp.br www.ezequielzorzal.com

Sistemas Operacionais Aula 03: Estruturas dos SOs. Ezequiel R. Zorzal ezorzal@unifesp.br www.ezequielzorzal.com Sistemas Operacionais Aula 03: Estruturas dos SOs Ezequiel R. Zorzal ezorzal@unifesp.br www.ezequielzorzal.com OBJETIVOS Descrever os serviços que um sistema operacional oferece aos usuários e outros sistemas

Leia mais

Manual do Usuário Android Neocontrol

Manual do Usuário Android Neocontrol Manual do Usuário Android Neocontrol Sumário 1.Licença e Direitos Autorais...3 2.Sobre o produto...4 3. Instalando, Atualizando e executando o Android Neocontrol em seu aparelho...5 3.1. Instalando o aplicativo...5

Leia mais

PÓS GRADUAÇÃO LATO SENSU. Desenvolvimento de Aplicações Em Dispositivos Móveis Com Android, Java, IOs (Iphone).

PÓS GRADUAÇÃO LATO SENSU. Desenvolvimento de Aplicações Em Dispositivos Móveis Com Android, Java, IOs (Iphone). 1 Desenvolvimento de Aplicações Em Dispositivos Móveis Com Android, Java, IOs (Iphone). Requisitos e Especificação de Software Tópicos sobre análise requisitos; Requisitos Funcionais e não funcionais;

Leia mais

Entenda os formatos mais populares de vídeo

Entenda os formatos mais populares de vídeo Entenda os formatos mais populares de vídeo Com o grande crescimento da internet banda larga no país muitos internautas estão cada vez mais tendo contato com arquivos de vídeo, tanto na visualização online

Leia mais

Introdução ao Android SDK. Prof. Me. Hélio Esperidião

Introdução ao Android SDK. Prof. Me. Hélio Esperidião Introdução ao Android SDK Prof. Me. Hélio Esperidião Android SDK O Android SDK permite que os desenvolvedores elaborem as aplicações a partir de um dispositivo virtual para os aparelhos de celular e tablet,

Leia mais

DESENVOLVIMENTO EM DISPOSITIVOS MÓVEIS UTILIZANDO BANCO DE DADOS

DESENVOLVIMENTO EM DISPOSITIVOS MÓVEIS UTILIZANDO BANCO DE DADOS DESENVOLVIMENTO EM DISPOSITIVOS MÓVEIS UTILIZANDO BANCO DE DADOS Leandro Guilherme Gouvea 1, João Paulo Rodrigues 1, Wyllian Fressatti 1 1 Universidade Paranaense (Unipar) Paranavaí PR Brasil leandrog.gouvea@gmail.com,

Leia mais

Sistemas Operacionais

Sistemas Operacionais UNIVERSIDADE BANDEIRANTE DE SÃO PAULO INSTITUTO POLITÉCNICO CURSO DE SISTEMAS DE INFORMAÇÃO Sistemas Operacionais Notas de Aulas: Tópicos 7 e 8 Estrutura do Sistema Operacional São Paulo 2009 1 Sumário

Leia mais

Manual do Aplicativo - Rastreamento Veicular

Manual do Aplicativo - Rastreamento Veicular Manual do Aplicativo - Rastreamento Veicular Sumário Apresentação... 2 Instalação do Aplicativo... 2 Localizando o aplicativo no smartphone... 5 Inserindo o link da aplicação... 6 Acessando o sistema...

Leia mais

COMPUTAÇÃO MÓVEL. Prof. M.Sc Sílvio Bacalá Jr www.facom.ufu.br/~bacala/android

COMPUTAÇÃO MÓVEL. Prof. M.Sc Sílvio Bacalá Jr www.facom.ufu.br/~bacala/android COMPUTAÇÃO MÓVEL Prof. M.Sc Sílvio Bacalá Jr www.facom.ufu.br/~bacala/android O que é computação Móvel Acesso à informação a qualquer lugar, a qualquer momento. O que é computação Móvel Tecnicamente: Processamento

Leia mais

Arquiteturas para implantação de aplicações móveis wireless

Arquiteturas para implantação de aplicações móveis wireless Arquiteturas para implantação de aplicações móveis wireless Este tutorial apresenta uma visão geral da arquitetura para implantação de aplicações móveis wireless. Eduardo Tude Engenheiro de Teleco (IME

Leia mais

Introdução ao Android. Prof. Fellipe Aleixo (fellipe.aleixo@ifrn.edu.br)

Introdução ao Android. Prof. Fellipe Aleixo (fellipe.aleixo@ifrn.edu.br) Introdução ao Android Prof. Fellipe Aleixo (fellipe.aleixo@ifrn.edu.br) Conteúdo Introdução Mercado Versões Ambiente de Desenvolvimento Configuração das Máquinas Virtuais Referências Introdução Android

Leia mais

6/06/2012 09h26 - Atualizado em 26/06/2012 12h30 Boot to Gecko: o futuro celular da Mozilla

6/06/2012 09h26 - Atualizado em 26/06/2012 12h30 Boot to Gecko: o futuro celular da Mozilla 6/06/2012 09h26 - Atualizado em 26/06/2012 12h30 Boot to Gecko: o futuro celular da Mozilla O mercado brasileiro de dispositivos móveis em breve ganhará mais uma grande plataforma. Anunciado oficialmente

Leia mais

DESENVOLVIMENTO DE APLICATIVOS PARA CELULAR JAVA 2 MICRO EDITION

DESENVOLVIMENTO DE APLICATIVOS PARA CELULAR JAVA 2 MICRO EDITION DESENVOLVIMENTO DE APLICATIVOS PARA CELULAR JAVA 2 MICRO EDITION Robison Cris Brito Centro Federal de Educação Tecnológica do Paraná Unidade de Pato Branco robison@pb.cefetpr.br RESUMO Engana-se quem acha

Leia mais

DESENVOLVIMENTO PARA DISPOSITIVOS MÓVEIS. PROFª. M.Sc. JULIANA H Q BENACCHIO

DESENVOLVIMENTO PARA DISPOSITIVOS MÓVEIS. PROFª. M.Sc. JULIANA H Q BENACCHIO DESENVOLVIMENTO PARA DISPOSITIVOS MÓVEIS PROFª. M.Sc. JULIANA H Q BENACCHIO Links importantes http://www.android.com/ Site oficial de toda a documentação, downloads e informações sobre a plataforma. http://developer.android.com/

Leia mais

MEGAFREE MANUAL DO USUÁRIO

MEGAFREE MANUAL DO USUÁRIO MEGAFREE MANUAL DO USUÁRIO VERSÃO: Julho, 2013. DIREITOS DE USO: Publicação de uso exclusivo, classificada quanto ao nível de sigilo como RESERVADA. A presente documentação é propriedade da Tellfree Brasil

Leia mais

X3DOM E WEBGL: O 3D INDEPENDENTE NA WEB

X3DOM E WEBGL: O 3D INDEPENDENTE NA WEB X3DOM E WEBGL: O 3D INDEPENDENTE NA WEB Augusto Francisco Ferbonink¹, Willian Barbosa Magalhães 1 Universidade Paranaense (UNIPAR) Paranavaí PR Brasil aferbonink@gmail.com wmagalhães@unipar.com Resumo.

Leia mais

GuiBi: Um aplicativo para plataforma Android com um guia comercial da cidade de Bambuí MG

GuiBi: Um aplicativo para plataforma Android com um guia comercial da cidade de Bambuí MG GuiBi: Um aplicativo para plataforma Android com um guia comercial da cidade de Bambuí MG Bruno Alberto Soares Oliveira 1,3 ; Lucas Vieira Murilo 1,3 ; Maik Olher Chaves 2,3 1 Estudante de Engenharia de

Leia mais

Processos (Threads,Virtualização e Migração de Código)

Processos (Threads,Virtualização e Migração de Código) Processos (Threads,Virtualização e Migração de Código) Roteiro Processos Threads Virtualização Migração de Código O que é um processo?! Processos são programas em execução. Processo Processo Processo tem

Leia mais

OBJETIVO Criação e execução de um projeto Android dentro da IDE IntelliJ.

OBJETIVO Criação e execução de um projeto Android dentro da IDE IntelliJ. Técnico em Informática Turma 10 Programação para Dispositivos Móveis Roteiro Parcial de Projeto Guilherme Cruz OBJETIVO Criação e execução de um projeto Android dentro da IDE IntelliJ. FERRAMENTA IntelliJ

Leia mais

INTRODUÇÃO E CONFIGURAÇÃO DO PRIMEFACES MOBILE EM APLICAÇÕES JSF

INTRODUÇÃO E CONFIGURAÇÃO DO PRIMEFACES MOBILE EM APLICAÇÕES JSF INTRODUÇÃO E CONFIGURAÇÃO DO PRIMEFACES MOBILE EM APLICAÇÕES JSF Guilherme Macedo, Jaime Willian Dias Universidade Paranaense (Unipar) Paranavaí PR Brasil guilhermemacedo28@gmail.com, jaime@unipar.br Resumo.

Leia mais

Manual Vivo Sync. Manual do Usuário. Versão 1.0.0. Copyright Vivo 2013. http://vivosync.com.br

Manual Vivo Sync. Manual do Usuário. Versão 1.0.0. Copyright Vivo 2013. http://vivosync.com.br Manual do Usuário Versão 1.0.0 Copyright Vivo 2013 http://vivosync.com.br 1 1 Índice 1 Índice... 2 2 Vivo Sync... 5 3 Vivo Sync Web... 6 3.1 Página Inicial... 6 3.1.1 Novo Contato... 7 3.1.2 Editar Contato...

Leia mais

Como configurar e-mails nos celulares. Ebook. Como configurar e-mails no seu celular. W3alpha - Desenvolvimento e hospedagem na internet

Como configurar e-mails nos celulares. Ebook. Como configurar e-mails no seu celular. W3alpha - Desenvolvimento e hospedagem na internet Ebook Como configurar e-mails no seu celular Este e-book irá mostrar como configurar e-mails, no seu celular. Sistemas operacionais: Android, Apple, BlackBerry, Nokia e Windows Phone Há muitos modelos

Leia mais

SISTEMAS OPERACIONAIS ABERTOS Prof. Ricardo Rodrigues Barcelar http://www.ricardobarcelar.com

SISTEMAS OPERACIONAIS ABERTOS Prof. Ricardo Rodrigues Barcelar http://www.ricardobarcelar.com - Aula 9-1. O KERNEL DO LINUX Nos sistemas GNU/Linux, todas as distribuições baseadas nos sistemas GNU/Linux existentes são compatíveis, graças ao uso de um kernel único desenvolvido por uma equipe de

Leia mais

Índice de ilustrações

Índice de ilustrações Sumário 1Dez novos recursos do windows 8...2 1.1Interface Metro...2 1.2Internet Explorer 10...4 1.3Gerenciador de Tarefas...5 1.4Painel de Controle...5 1.5Interface Ribbon...6 1.6Menu Iniciar...7 1.7Windows

Leia mais

10 DICAS PARA TURBINAR SEU PACOTE DE DADOS. 1 - Desative os Dados do Celular. 2 Remova as notificações e atualizações automáticas

10 DICAS PARA TURBINAR SEU PACOTE DE DADOS. 1 - Desative os Dados do Celular. 2 Remova as notificações e atualizações automáticas 10 DICAS PARA TURBINAR SEU PACOTE DE DADOS 1 - Desative os Dados do Celular Sempre que você não estiver usando a conexão, desligue a internet do seu aparelho. Mesmo em espera, os programas do celular ou

Leia mais

UM FRAMEWORK PARA DESENVOLVIMENTO DE

UM FRAMEWORK PARA DESENVOLVIMENTO DE UNIVERSIDADE FEDERAL DE PERNAMBUCO GRADUAÇÃO EM CIÊNCIA DA COMPUTAÇÃO CENTRO DE INFORMÁTICA UM FRAMEWORK PARA DESENVOLVIMENTO DE APLICATIVOS EM WINDOWS MOBILE. PROPOSTA DE TRABALHO DE GRADUAÇÃO Aluno:

Leia mais

Programação de Computadores - I. Profª Beatriz Profº Israel

Programação de Computadores - I. Profª Beatriz Profº Israel Programação de Computadores - I Profª Beatriz Profº Israel A linguagem JAVA A linguagem Java O inicio: A Sun Microsystems, em 1991, deu inicio ao Green Project chefiado por James Gosling. Projeto que apostava

Leia mais

SISTEMAS OPERACIONAIS. Apostila 03 Estrutura do Sistema Operacional UNIBAN

SISTEMAS OPERACIONAIS. Apostila 03 Estrutura do Sistema Operacional UNIBAN SISTEMAS OPERACIONAIS Apostila 03 Estrutura do Sistema Operacional UNIBAN 1.0 O Sistema Operacional como uma Máquina Virtual A arquitetura (conjunto de instruções, organização de memória, E/S e estrutura

Leia mais

EA998/MC933 Guido Araujo e Sandro Rigo

EA998/MC933 Guido Araujo e Sandro Rigo EA998/MC933 Guido Araujo e Sandro Rigo 1 Introdução Livros adotados (e-books) Learning Android, Marco Gargenta, O Reilly Media (livro texto) Professional Android Application, Reto Meier, Wrox Abordagem

Leia mais

Capitulo 11 Multimídias

Capitulo 11 Multimídias Capitulo 11 Multimídias Neste capítulo são exploradas as ferramentas multimídias presentes no SO Android customizadas para o Smartphone utilizado neste manual. É inegável o massivo uso destas ferramentas,

Leia mais

CTRL-SHIFT DOCUMENTO DE GAME DESIGN DESENVOLVIDO POR HILGAMES

CTRL-SHIFT DOCUMENTO DE GAME DESIGN DESENVOLVIDO POR HILGAMES CTRL-SHIFT DOCUMENTO DE GAME DESIGN DESENVOLVIDO POR HILGAMES 1. Introdução CTRL-SHIFT é um jogo de puzzle, plataforma 2D e 3D ao mesmo tempo. O jogador navega por um cenário de plataformas 2D, e quando

Leia mais

Windows Phone: Acesse Configurações > Rede celular + SIM > Ativada/Desativada. Android: Deslize a tela para baixo e desmarque a opção de dados.

Windows Phone: Acesse Configurações > Rede celular + SIM > Ativada/Desativada. Android: Deslize a tela para baixo e desmarque a opção de dados. Sempre que você não estiver usando a conexão, desligue a internet do seu aparelho. Mesmo em espera, os programas do celular ou tablet ficarão atualizando com redes sociais, e-mails, entre outros. Com isso

Leia mais

Linguagem de Programação JAVA

Linguagem de Programação JAVA Linguagem de Programação JAVA Curso Técnico em Informática Modalida Integrado Instituto Federal do Sul de Minas, Câmpus Pouso Alegre Professora: Michelle Nery Agenda JAVA Histórico Aplicações Pós e Contras

Leia mais

Relatório do GPES. Descrição dos Programas e Plugins Utilizados. Programas Utilizados:

Relatório do GPES. Descrição dos Programas e Plugins Utilizados. Programas Utilizados: Relatório do GPES Relatório referente à instalação dos programas e plugins que estarão sendo utilizados durante o desenvolvimento dos exemplos e exercícios, sendo esses demonstrados nos próximos relatórios.

Leia mais

5 Mecanismo de seleção de componentes

5 Mecanismo de seleção de componentes Mecanismo de seleção de componentes 50 5 Mecanismo de seleção de componentes O Kaluana Original, apresentado em detalhes no capítulo 3 deste trabalho, é um middleware que facilita a construção de aplicações

Leia mais

12 Razões Para Usar. Lightroom. André Nery

12 Razões Para Usar. Lightroom. André Nery 12 Razões Para Usar Lightroom André Nery André Nery é fotógrafo em Porto Alegre. Arquitetura e fotografia outdoor, como natureza, esportes e viagens, são sua área de atuação. Há dez anos começou a ministrar

Leia mais

EIMOBILE INSTITUIÇÕES DE ENSINO MOBILE

EIMOBILE INSTITUIÇÕES DE ENSINO MOBILE UNIVERSIDADE CATÓLICA DE PELOTAS CENTRO POLITÉCNICO TECNOLOGIA EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS EIMOBILE INSTITUIÇÕES DE ENSINO MOBILE por Miguel Aguiar Barbosa Trabalho de curso II submetido como

Leia mais

OFICINA ANDROID COMO COMEÇAR A DESENVOLVER!

OFICINA ANDROID COMO COMEÇAR A DESENVOLVER! OFICINA ANDROID COMO COMEÇAR A DESENVOLVER! QUEM SOU EU? REGILAN MEIRA SILVA Professor de Informática do Campus Ilhéus Formação em Ciência da Computação com Especialização em Sistemas de Informação e Mestrado

Leia mais

Guia ineocontrol. iphone e ipod Touch

Guia ineocontrol. iphone e ipod Touch Guia ineocontrol iphone e ipod Touch Referência completa para o integrador do sistema Module. Aborda os recursos necessários para a itulização, instalação do software e importação das interfaces criadas

Leia mais

Agência digital especializada na consultoria, design e desenvolvimento de projetos de internet

Agência digital especializada na consultoria, design e desenvolvimento de projetos de internet Agência digital especializada na consultoria, design e desenvolvimento de projetos de internet Oferecemos ao mercado nossa experiência e metodologia amplamente desenvolvidas ao longo de 15 anos de experiência

Leia mais

APLICATIVO MOBILE CATÁLOGO DE PÁSSAROS - PLATAFORMA ANDROID/MYSQL/WEBSERVICE

APLICATIVO MOBILE CATÁLOGO DE PÁSSAROS - PLATAFORMA ANDROID/MYSQL/WEBSERVICE APLICATIVO MOBILE CATÁLOGO DE PÁSSAROS - PLATAFORMA ANDROID/MYSQL/WEBSERVICE MARCOS LEÃO 1, DAVID PRATA 2 1 Aluno do Curso de Ciência da Computação; Campus de Palmas; e-mail: leão@uft.edu.br PIBIC/UFT

Leia mais

TECNÓLOGO EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS PROGRAMAÇÃO DE COMPUTADORES I Aula 01: Conceitos Iniciais / Sistema Operacional

TECNÓLOGO EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS PROGRAMAÇÃO DE COMPUTADORES I Aula 01: Conceitos Iniciais / Sistema Operacional TECNÓLOGO EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS PROGRAMAÇÃO DE COMPUTADORES I Aula 01: Conceitos Iniciais / Sistema Operacional O conteúdo deste documento tem por objetivo apresentar uma visão geral

Leia mais

J2ME PLATAFORMA DE DESENVOLVIMENTO JAVA PARA DISPOSITIVOS MÓVEIS

J2ME PLATAFORMA DE DESENVOLVIMENTO JAVA PARA DISPOSITIVOS MÓVEIS J2ME PLATAFORMA DE DESENVOLVIMENTO JAVA PARA DISPOSITIVOS MÓVEIS Ana Paula Carrion 1, Késsia Rita da Costa Marchi 1, Jaime Willian Dias 1 1 Universidade Paranaense (Unipar) Paranavaí PR Brasil anapaulacarrion@hotmail.com,

Leia mais

Manual TIM PROTECT BACKUP. Manual do Usuário. Versão 1.0.0. Copyright TIM PROTECT BACKUP 2013. http://timprotect.com.br/

Manual TIM PROTECT BACKUP. Manual do Usuário. Versão 1.0.0. Copyright TIM PROTECT BACKUP 2013. http://timprotect.com.br/ Manual do Usuário Versão 1.0.0 Copyright TIM PROTECT BACKUP 2013 http://timprotect.com.br/ 1 1 Índice 1 Índice... 2 2 TIM PROTECT BACKUP...Erro! Indicador não definido. 3 TIM PROTECT BACKUP Web... 6 3.1

Leia mais

Produção de aplicativo de catálogo de cursos da UTFPR para o sistema Android

Produção de aplicativo de catálogo de cursos da UTFPR para o sistema Android Produção de aplicativo de catálogo de cursos da UTFPR para o sistema Android Wenner S. Santos*, Marcos Silvano Orita Almeida* *COINT / UTFPR, Campo Mourão, Brasil e-mail: wenner.santos@hotmail.com Resumo/Abstract

Leia mais

UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ. Campus Ponta Grossa ANDRÉ LUIS CORDEIRO DE FARIA RELATÓRIO DE ESTÁGIO

UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ. Campus Ponta Grossa ANDRÉ LUIS CORDEIRO DE FARIA RELATÓRIO DE ESTÁGIO UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ Campus Ponta Grossa ANDRÉ LUIS CORDEIRO DE FARIA RELATÓRIO DE ESTÁGIO Ponta Grossa 2012 ANDRÉ LUIS CORDEIRO DE FARIA RELATÓRIO DE ESTÁGIO Trabalho elaborado pelo

Leia mais

CADERNO DE QUESTÕES WINDOWS 8

CADERNO DE QUESTÕES WINDOWS 8 CADERNO DE QUESTÕES WINDOWS 8 1) No sistema operacional Microsoft Windows 8, uma forma rápida de acessar o botão liga/desliga é através do atalho: a) Windows + A. b) ALT + C. c) Windows + I. d) CTRL +

Leia mais

1 UML (UNIFIED MODELING LANGUAGE)

1 UML (UNIFIED MODELING LANGUAGE) 1 UML (UNIFIED MODELING LANGUAGE) Segundo Tonsig (2003), para conseguir desenvolver um software capaz de satisfazer as necessidades de seus usuários, com qualidade, por intermédio de uma arquitetura sólida

Leia mais

Game Design e Tecnologia na Incubadora

Game Design e Tecnologia na Incubadora Game Design e Tecnologia na Incubadora INCUBADORA versão final Introdução Inspirado em jogos de simulação como The Sims, INCUBADORA versão final é um espetáculo-jogo, que promove a reflexão sobre os modos

Leia mais

MAPEAMENTO E LOCALIZAÇÃO DE REGIÕES DE INTERESSE UTILIZANDO REALIDADE AUMENTADA EM DISPOSITIVOS MÓVEIS COM PLATAFORMA ANDROID

MAPEAMENTO E LOCALIZAÇÃO DE REGIÕES DE INTERESSE UTILIZANDO REALIDADE AUMENTADA EM DISPOSITIVOS MÓVEIS COM PLATAFORMA ANDROID MAPEAMENTO E LOCALIZAÇÃO DE REGIÕES DE INTERESSE UTILIZANDO REALIDADE AUMENTADA EM DISPOSITIVOS MÓVEIS COM PLATAFORMA ANDROID Alessandro Teixeira de Andrade¹; Geazy Menezes² UFGD/FACET Caixa Postal 533,

Leia mais

Frameworks para criação de Web Apps para o Ensino Mobile

Frameworks para criação de Web Apps para o Ensino Mobile 393 Frameworks para criação de Web Apps para o Ensino Mobile Lucas Zamim 1 Roberto Franciscatto 1 Evandro Preuss 1 1 Colégio Agrícola de Frederico Westphalen (CAFW) Universidade Federal de Santa Maria

Leia mais

Estratégias para o Desenvolvimento de Aplicações Móveis HP Enterprise Services CMT - Cloud, Mobility and Transformation Março, 2013

Estratégias para o Desenvolvimento de Aplicações Móveis HP Enterprise Services CMT - Cloud, Mobility and Transformation Março, 2013 Estratégias para o Desenvolvimento de Aplicações Móveis HP Enterprise Services CMT - Cloud, Mobility and Transformation Março, 2013 Copyright 2012 Hewlett-Packard Development Company, L.P. The information

Leia mais

CARTEIRA VIRTUAL C A R D B O A R D CAMINHOS PONTOMOBI EDU

CARTEIRA VIRTUAL C A R D B O A R D CAMINHOS PONTOMOBI EDU CARTEIRA VIRTUAL G O O G L E C A R D B O A R D APLICAÇÕES E CAMINHOS!1 PONTOMOBI EDU INDICE CARACTERÍSTICAS PRINCIPAIS 4 OUTRAS CARACTERÍSTICAS 5 CUSTOMIZAÇÕES 6 EXEMPLOS DE APLICAÇÃO 8 DISTRIBUIÇÃO DOS

Leia mais

Técnicas para Animação de Imagens em Jogos 2D Utilizando Java

Técnicas para Animação de Imagens em Jogos 2D Utilizando Java Técnicas para Animação de Imagens em Jogos 2D Utilizando Java Silvano Maneck Malfatti 1 1 Faculdade Católica do Tocantins (FACTO) Palmas TO Brasil Malfatti@catolica-to.edu.br Resumo. Um dos recursos que

Leia mais

Sincronização do Catálogo de Endereços no MDaemon 6.x com o uso do ComAgent, LDAP, MAPI e WAB

Sincronização do Catálogo de Endereços no MDaemon 6.x com o uso do ComAgent, LDAP, MAPI e WAB Sincronização do Catálogo de Endereços no MDaemon 6.x com o uso do ComAgent, LDAP, MAPI e WAB Alt-N Technologies, Ltd 1179 Corporate Drive West, #103 Arlington, TX 76006 Tel: (817) 652-0204 2002 Alt-N

Leia mais

LEAS ONLINE: PROTÓTIPO DE UM JOGO DE MMORPG

LEAS ONLINE: PROTÓTIPO DE UM JOGO DE MMORPG LEAS ONLINE: PROTÓTIPO DE UM JOGO DE MMORPG Wesllen de Oliveira Delfino, Larissa Pavarini da Luz wesllendelfino@hotmail.com,larissa.luz01@fatec.sp.gov.br Projeto de Iniciação Científica Larissa Pavarini

Leia mais

V O C Ê N O C O N T R O L E.

V O C Ê N O C O N T R O L E. VOCÊ NO CONTROLE. VOCÊ NO CONTROLE. O que é o Frota Fácil? A Iveco sempre coloca o desejo de seus clientes à frente quando oferece ao mercado novas soluções em transportes. Pensando nisso, foi desenvolvido

Leia mais

GUIA UNITY 3D E SKETCHUP

GUIA UNITY 3D E SKETCHUP GUIA UNITY 3D E SKETCHUP Existe uma demanda pela utilização de modelos tridimensionais estereoscópicos para simular relações presenciais. Os projetos relacionados à esses modelos são conhecidos como CAVES.

Leia mais

Mapas e Localização. Programação de Dispositivos Móveis. Mauro Lopes Carvalho Silva

Mapas e Localização. Programação de Dispositivos Móveis. Mauro Lopes Carvalho Silva Programação de Dispositivos Móveis Mauro Lopes Carvalho Silva Professor EBTT DAI Departamento de Informática Campus Monte Castelo Instituto Federal de Educação Ciência e Tecnologia do Maranhão Objetivos

Leia mais

CA Nimsoft Monitor Mobile

CA Nimsoft Monitor Mobile CA Nimsoft Monitor Mobile Guia do Usuário 7.0 Histórico da revisão do documento Versão do documento Data Alterações 1.0 Setembro 2013 Versão inicial do Nimsoft Mobile 7.0. Avisos legais Copyright 2013,

Leia mais

DESENVOLVIMENTO DE JOGOS DIGITAIS. Desmistificando o desenvolvimento de games e mercado de trabalho

DESENVOLVIMENTO DE JOGOS DIGITAIS. Desmistificando o desenvolvimento de games e mercado de trabalho DESENVOLVIMENTO DE JOGOS DIGITAIS Desmistificando o desenvolvimento de games e mercado de trabalho 2 Caravieri Modesto Professor de Programação e Banco de Dados I IFSP (SALTO Analise e Desenvolvimento

Leia mais

A computação na nuvem é um novo modelo de computação que permite ao usuário final acessar uma grande quantidade de aplicações e serviços em qualquer

A computação na nuvem é um novo modelo de computação que permite ao usuário final acessar uma grande quantidade de aplicações e serviços em qualquer A computação na nuvem é um novo modelo de computação que permite ao usuário final acessar uma grande quantidade de aplicações e serviços em qualquer lugar e independente da plataforma, bastando para isso

Leia mais

VIRTUALIZAÇÃO DO MUSEU DO AUTOMÓVEL DE BRASÍLIA

VIRTUALIZAÇÃO DO MUSEU DO AUTOMÓVEL DE BRASÍLIA VIRTUALIZAÇÃO DO MUSEU DO AUTOMÓVEL DE BRASÍLIA Rafael R. Silva¹, João P. T. Lottermann¹, Mateus Rodrigues Miranda², Maria Alzira A. Nunes² e Rita de Cássia Silva² ¹UnB, Universidade de Brasília, Curso

Leia mais

Qlik Sense Desktop. Qlik Sense 1.1 Copyright 1993-2015 QlikTech International AB. Todos os direitos reservados.

Qlik Sense Desktop. Qlik Sense 1.1 Copyright 1993-2015 QlikTech International AB. Todos os direitos reservados. Qlik Sense Desktop Qlik Sense 1.1 Copyright 1993-2015 QlikTech International AB. Todos os direitos reservados. Copyright 1993-2015 QlikTech International AB. Todos os direitos reservados. Qlik, QlikTech,

Leia mais

Digifort Mobile Manual Version 1.0 Rev. A

Digifort Mobile Manual Version 1.0 Rev. A Digifort Mobile Manual Version 1.0 Rev. A 2 Digifort Mobile - Versão 1.0 Índice Parte I Bem vindo ao Manual do Digifort Mobile 1.0 5 1 Screen... Shots 5 2 A quem... se destina este manual 5 3 Como utilizar...

Leia mais

RELATÓRIO FINAL DE PROJETO DE INICIAÇÃO CIENTÍFICA (PIBIC/CNPq/INPE)

RELATÓRIO FINAL DE PROJETO DE INICIAÇÃO CIENTÍFICA (PIBIC/CNPq/INPE) DESENVOLVIMENTO DE APLICAÇÕES PARA DISPOSITIVOS MÓVEIS PARA COLETA E DISSEMINAÇÃO DE DADOS (VERSÃO CLIENTE- SERVIDOR) RELATÓRIO FINAL DE PROJETO DE INICIAÇÃO CIENTÍFICA (PIBIC/CNPq/INPE) Victor Araújo

Leia mais

I N T R O D U Ç Ã O W A P desbloqueio,

I N T R O D U Ç Ã O W A P desbloqueio, INTRODUÇÃO Para que o Guia Médico de seu Plano de Saúde esteja disponível em seu celular, antes de mais nada, sua OPERADORA DE SAÚDE terá de aderir ao projeto. Após a adesão, você será autorizado a instalar

Leia mais

Bem-vindo à apresentação do SAP Business One.

Bem-vindo à apresentação do SAP Business One. Bem-vindo à apresentação do SAP Business One. Neste tópico, responderemos à pergunta: O que é o Business One? Definiremos o SAP Business One e discutiremos as opções e as plataformas disponíveis para executar

Leia mais