manuel santo e miguel araújo

1
O Projecto Este projecto tem como objectivo a criação de uma aplicação para Android que possibilite a visualização de imagens bem como algumas opções de edição das mesmas. Ecrã de Pré-visualização de imagens Opção de edição recorte Android? Android é um sistema operativo open source para dispositivos móveis. Foi inicialmente desenvolvido pela Google e posteriormente pela Open Handset Alliance. De acordo com a empresa de consultoria, Gartner, o Android actualmente ocupa cerca de 33% da conta de mercado, mas prevê-se que atinja quase 50% nos próximos 4 anos. *dados referentes a 7 de Abril de 2011 Arquitectura do Sistema Operativo Linux Kernel - A camada mas baixa do sistema operativo é o kernel Linux que funciona como uma camada de abstracção entre o hardware do dispo- sitivo e software que usa estes recursos Libraries - Todo um conjunto de bibliotecas C/C++ que implementam as funcionalidades básicas do sistema operativo. Android Runtime - Contém uma máquina virtual java optimizada para pequenos dispositivos (Dalvik VM). Application Framework - Framework de alto nível, em Java, para a cria- ção das aplicações Android. Applications and Widget - Todo o conjunto de programas disponíveis para o utilizador. Objectivos Abrir imagens; Navegar, aumentar e reduzir a área de visualização; Recortar parte da imagem; Gravar a imagem alterada. Tecnologias Usadas Para desenvolver a aplicação recorremos essencialmente a três ferramentas: Android SDK (IDE Eclipse) - conjunto de emulador, ferramentas e Framework de desenvolvimento para a plataforma; OpenCV - conjunto de bibliotecas em C/C++ usadas para edição de imagem e tratamento de imagem em tempo real. Android NDK - conjunto de ferramentas necessárias para a criação e compila- ção de bibliotecas nativas. A ferramenta Opencv foi uma opção alternativa pois, para a edição da imagem, poderíamos simplesmente ter usado Android SDK. As potencialidade do Opencv e o facto de podermos criar as nossas próprias bibliotecas nativas foram as razões que nos levaram a escolher Opencv para a edição de imagem. APP_IMG - Resultados Ecrã inicial Galeria para selecção de fotos Dificuldades Uma vez que tínhamos poucos conhecimentos em Java e foi o nosso primeiro contacto com desenvolvimento para Android, uma das dificuldades foi a adapta- ção à linguagem e adaptação às exigências da arquitectura. Este problema foi facilmente superado recorrendo a tutoriais e algum estudo da arquitectura. Posteriormente, e uma das maiores dificuldades do projecto foi a criação de bibliotecas nativas, uma vez que este processo envolve algum conhecimento em JNI (Java Native Interface). Mas apesar da dificuldade acrescida também conse- guimos superar este problema. Conclusões É com satisfação que ao concluirmos este projecto vemos todos os objectivos concluídos e alguns pontos até superados pois, para além dos objectivos iniciais, conseguimos adicionar funcionalidade extra à aplicação. Outro ponto forte da elaboração do projecto foi o aprofundar do nosso já exis- tente interesse pelo desenvolvimento para Android, pois concluímos que vale a pena investir no desenvolvimento para esta plataforma tão cheia de oportunida- des. Projecto: Android APP_IMG ORIENTADOR: Paula Oliveira CO-ORIENTADORES: João Paulo Moura, Carlos Serôdio, Pedro Mestre Alunos: Manuel Santo e Miguel Araújo

Upload: leonel-morgado

Post on 22-Mar-2016

216 views

Category:

Documents


1 download

DESCRIPTION

OpenCV - conjunto de bibliotecas em C/C++ usadas para edição de imagem e tratamento de imagem em tempo real. Android SDK (IDE Eclipse) - conjunto de emulador, ferramentas e Framework de desenvolvimento para a plataforma; Android Runtime - Contém uma máquina virtual java optimizada para pequenos dispositivos (Dalvik VM). Application Framework - Framework de alto nível, em Java, para a cria- ção das aplicações Android. Ecrã inicial Galeria para selecção de fotos Abrir imagens; 

TRANSCRIPT

Page 1: Manuel Santo e Miguel Araújo

O Projecto Este projecto tem como objectivo a criação de uma aplicação para Android

que possibilite a visualização de imagens bem como algumas opções de edição

das mesmas.

Ecrã de Pré-visualização de imagens

Opção de edição recorte

Android? Android é um sistema operativo open source para dispositivos móveis. Foi

inicialmente desenvolvido pela Google e posteriormente pela Open Handset

Alliance.

De acordo com a empresa de consultoria, Gartner, o Android actualmente

ocupa cerca de 33% da conta de mercado, mas prevê-se que atinja quase 50%

nos próximos 4 anos. *dados referentes a 7 de Abril de 2011

Arquitectura do Sistema Operativo

Linux Kernel - A camada mas baixa do sistema operativo é o kernel Linux que funciona como uma camada de abstracção entre o hardware do dispo-sitivo e software que usa estes recursos

Libraries - Todo um conjunto de bibliotecas C/C++ que implementam as funcionalidades básicas do sistema operativo.

Android Runtime - Contém uma máquina virtual java optimizada para pequenos dispositivos (Dalvik VM).

Application Framework - Framework de alto nível, em Java, para a cria-ção das aplicações Android.

Applications and Widget - Todo o conjunto de programas disponíveis para o utilizador.

Objectivos Abrir imagens;

Navegar, aumentar e reduzir a área de visualização;

Recortar parte da imagem;

Gravar a imagem alterada.

Tecnologias Usadas Para desenvolver a aplicação recorremos essencialmente a três ferramentas:

Android SDK (IDE Eclipse) - conjunto de emulador, ferramentas e Framework

de desenvolvimento para a plataforma;

OpenCV - conjunto de bibliotecas em C/C++ usadas para edição de imagem e

tratamento de imagem em tempo real.

Android NDK - conjunto de ferramentas necessárias para a criação e compila-

ção de bibliotecas nativas.

A ferramenta Opencv foi uma opção alternativa pois, para a edição da imagem,

poderíamos simplesmente ter usado Android SDK. As potencialidade do Opencv

e o facto de podermos criar as nossas próprias bibliotecas nativas foram as

razões que nos levaram a escolher Opencv para a edição de imagem.

APP_IMG - Resultados Ecrã inicial Galeria para selecção de fotos

Dificuldades Uma vez que tínhamos poucos conhecimentos em Java e foi o nosso primeiro

contacto com desenvolvimento para Android, uma das dificuldades foi a adapta-

ção à linguagem e adaptação às exigências da arquitectura. Este problema foi

facilmente superado recorrendo a tutoriais e algum estudo da arquitectura.

Posteriormente, e uma das maiores dificuldades do projecto foi a criação de

bibliotecas nativas, uma vez que este processo envolve algum conhecimento em

JNI (Java Native Interface). Mas apesar da dificuldade acrescida também conse-

guimos superar este problema.

Conclusões É com satisfação que ao concluirmos este projecto vemos todos os objectivos

concluídos e alguns pontos até superados pois, para além dos objectivos iniciais,

conseguimos adicionar funcionalidade extra à aplicação.

Outro ponto forte da elaboração do projecto foi o aprofundar do nosso já exis-

tente interesse pelo desenvolvimento para Android, pois concluímos que vale a

pena investir no desenvolvimento para esta plataforma tão cheia de oportunida-

des.

Projecto: Android APP_IMG

ORIENTADOR: Paula Oliveira

CO-ORIENTADORES: João Paulo Moura, Carlos Serôdio, Pedro Mestre

Alunos: Manuel Santo e Miguel Araújo