BOA GRAVIDEZ: APLICATIVO ANDROID PARAfateclins.edu.br/v4.0/trabalhoGraduacao/tEeTDocEWHoYAR78... ·...

114
CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA SOUZA FACULDADE DE TECNOLOGIA DE LINS PROF. ANTONIO SEABRA CURSO SUPERIOR DE TECNOLOGIA EM BANCO DE DADOS ELISANGELA SANCHES PINHEIRO MARIANA BONIFÁCIO NAVARRO BOA GRAVIDEZ: APLICATIVO ANDROID PARA ACOMPANHAMENTO DE GESTAÇÃO LINS – SP 2º SEMESTRE/2013

Transcript of BOA GRAVIDEZ: APLICATIVO ANDROID PARAfateclins.edu.br/v4.0/trabalhoGraduacao/tEeTDocEWHoYAR78... ·...

Page 1: BOA GRAVIDEZ: APLICATIVO ANDROID PARAfateclins.edu.br/v4.0/trabalhoGraduacao/tEeTDocEWHoYAR78... · 2019-04-03 · CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA SOUZA FACULDADE

CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA

PAULA SOUZA

FACULDADE DE TECNOLOGIA DE LINS PROF. ANTONIO SEABRA

CURSO SUPERIOR DE TECNOLOGIA EM BANCO DE DADOS

ELISANGELA SANCHES PINHEIRO

MARIANA BONIFÁCIO NAVARRO

BOA GRAVIDEZ: APLICATIVO ANDROID PARA ACOMPANHAMENTO DE GESTAÇÃO

LINS – SP 2º SEMESTRE/2013

Page 2: BOA GRAVIDEZ: APLICATIVO ANDROID PARAfateclins.edu.br/v4.0/trabalhoGraduacao/tEeTDocEWHoYAR78... · 2019-04-03 · CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA SOUZA FACULDADE

CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA

PAULA SOUZA

FACULDADE DE TECNOLOGIA DE LINS PROF. ANTONIO SEABRA

CURSO SUPERIOR DE TECNOLOGIA EM BANCO DE DADOS

ELISANGELA SANCHES PINHEIRO

MARIANA BONIFÁCIO NAVARRO

BOA GRAVIDEZ: APLICATIVO ANDROID PARA ACOMPANHAMENTO DE GESTAÇÃO

Trabalho de Conclusão de Curso apresentado à Faculdade de Tecnologia de Lins para obtenção do Título de Tecnólogo em Banco de Dados.

Orientador: Prof. Dr. Paulo Augusto Nardi

LINS – SP 2º SEMESTRE/2013

Page 3: BOA GRAVIDEZ: APLICATIVO ANDROID PARAfateclins.edu.br/v4.0/trabalhoGraduacao/tEeTDocEWHoYAR78... · 2019-04-03 · CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA SOUZA FACULDADE

ELISANGELA SANCHES PINHEIRO

MARIANA BONIFÁCIO NAVARRO

BOA GRAVIDEZ: APLICATIVO ANDROID PARA ACOMPANHAMENTO DE

GESTAÇÃO

Trabalho de Conclusão de Curso apresentado à Faculdade de Tecnologia de Lins, como parte dos requisitos necessários para a obtenção do título de Tecnólogo em Banco de Dados sob orientação do Prof. Dr. Paulo Augusto Nardi.

Data de aprovação:____/____/____

___________________________________ Orientador (Prof. Dr. Paulo Augusto Nardi)

___________________________________

Examinador 1

___________________________________

Examinador 2

Page 4: BOA GRAVIDEZ: APLICATIVO ANDROID PARAfateclins.edu.br/v4.0/trabalhoGraduacao/tEeTDocEWHoYAR78... · 2019-04-03 · CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA SOUZA FACULDADE

Aos meus pais e irmã, que sempre estiveram presentes, incentivando e acreditando em meus sonhos. Ao meu namorado, Mauricio, por todo apoio, paciência, força e coragem, me auxiliando nos momentos de dificuldade e compartilhando de todas as conquistas.

Elisangela

Page 5: BOA GRAVIDEZ: APLICATIVO ANDROID PARAfateclins.edu.br/v4.0/trabalhoGraduacao/tEeTDocEWHoYAR78... · 2019-04-03 · CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA SOUZA FACULDADE

Aos meus pais e irmão, que sempre me apoiaram em minhas decisões e não mediram esforços para que esse sonho se realizasse. Ao meu noivo, Daniel, por toda paciência e compreensão durante minha ausência.

Mariana

Page 6: BOA GRAVIDEZ: APLICATIVO ANDROID PARAfateclins.edu.br/v4.0/trabalhoGraduacao/tEeTDocEWHoYAR78... · 2019-04-03 · CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA SOUZA FACULDADE

AGRADECIMENTOS

A Deus, que nos deu o dom da vida, nos capacitou e nos proporcionou a

oportunidade de realizar esse sonho, concluindo com êxito essa jornada.

Aos professores, Mário Pardo, Rodrigo Ayres, Adriana de Bortoli, Luciane

Noronha e Fábio Lúcio pela dedicação, paciência e amplo apoio. Queremos

agradecer especialmente ao nosso orientador Professor Doutor Paulo Augusto Nardi

pelo incentivo e ajuda tão necessária ao desenvolvimento e realização desse

trabalho.

Aos colegas de turma, que se tornaram parte integrante de nosso crescimento

pessoal e profissional. Aos grandes amigos conquistados durante a faculdade,

Leonardo, Márcio, Everaldo e Matheus, pela amizade e companheirismo.

Nossos agradecimentos a todos os professores, que foram tão importantes

em nossa vida acadêmica e no desenvolvimento deste trabalho.

Certamente iremos carregar as experiências aqui vividas para sempre. Iremos

praticar os conselhos e esbanjar do conhecimento que aqui foi adquirido.

Page 7: BOA GRAVIDEZ: APLICATIVO ANDROID PARAfateclins.edu.br/v4.0/trabalhoGraduacao/tEeTDocEWHoYAR78... · 2019-04-03 · CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA SOUZA FACULDADE

RESUMO

O objetivo deste trabalho é desenvolver um aplicativo móvel que visa o acompanhamento da gravidez pela gestante. Esta fase é um estágio da vida da mulher no qual surgem dúvidas e expectativas. Desta forma procurou-se apresentar referências quanto aos aspectos biológicos de uma gravidez e o desenvolvimento do bebê, por meio de utilitários para uso da gestante. Devido à popularização da utilização de smartphones e tablets, optou-se por desenvolver um aplicativo Android para dispositivos móveis visando contribuir para trazer mais informações e até mesmo entretenimento à gestante. No presente trabalho é feita uma abordagem das fases do período gestacional e cuidados em uma gestação e apresentados aspectos sobre dispositivos móveis, com ênfase no sistema operacional Google Android OS, suas características e arquitetura. Para a implementação do aplicativo são utilizados as linguagens de programação Java combinada com Xtensible Markup Language (XML), bancos de dados SQLite e a API Graph do Facebook.

Palavras–Chave: gravidez, dispositivos móveis, aplicações móveis, Android.

Page 8: BOA GRAVIDEZ: APLICATIVO ANDROID PARAfateclins.edu.br/v4.0/trabalhoGraduacao/tEeTDocEWHoYAR78... · 2019-04-03 · CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA SOUZA FACULDADE

ABSTRACT

The objective of this work is to develop an app (mobile application) aimed at monitoring the pregnancy by pregnant women. This is a stage of a woman's life where expectations and doubts arise, so we tried to give references to the biological aspects of pregnancy and baby's development through utilities for use by pregnant women. Due to the popularization of the use of smartphones and tablets, it was decided to develop an app Android for these mobile devices to contribute more information and entertainment to pregnant women. The present work displays a mapping of the pregnancy phases and care in a pregnancy and presents aspects of mobile devices, with an emphasis on operating system Google Android OS, its features and architecture. For the implementation of the application, the programming languages Java combined with Xtensible Markup Language (XML), SQLite databases and the Facebook Graph API are used. Keywords: pregnancy, mobile devices, mobile applications, Android.

Page 9: BOA GRAVIDEZ: APLICATIVO ANDROID PARAfateclins.edu.br/v4.0/trabalhoGraduacao/tEeTDocEWHoYAR78... · 2019-04-03 · CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA SOUZA FACULDADE

LISTA DE ILUSTRAÇÕES

Figura 2.1 - Taxa de crescimento acessos via dispositivos móveis IVC........ 30

Figura 2.2 - Crescimento de mercado para tablets e notebooks................... 31

Figura 2.3 - Evolução de acessos à internet através de smartphones por

Sistema Operacional......................................................................................

33

Figura 2.4 - Evolução de acessos à internet através de tablets por Sistema

Operacional....................................................................................................

34

Figura 2.5 – Etapas Certificação Android....................................................... 36

Figura 2.6 – lustração da camada HAL ......................................................... 37

Figura 2.7 – Arquitetura do Android............................................................... 38

Figura 3.1 – Diagrama de Caso de Uso ........................................................ 51

Figura 3.2– Diagrama de Classes.................................................................. 52

Figura 3.3 – Diagrama Atividade. Manter Perfil............................................. 53

Figura 3.4 – Diagrama de Sequência. Manter Perfil...................................... 53

Figura 3.5 – MVC. Manter Perfil..................................................................... 54

Figura 3.6 – Diagrama de Atividades. Manter Enxoval.................................. 54

Figura 3.7 – Diagrama de Sequência. Manter Enxoval.................................. 55

Figura 3.8 – MVC. Manter Enxoval................................................................ 55

Figura 3.9 – Diagrama de Atividades. Manter Nomes Bebê.......................... 56

Figura 3.10 – Diagrama de Sequência. Manter Nomes Bebê........................ 57

Figura 3.11 – MVC. Manter Nomes Bebê...................................................... 57

Figura 3.12 – Diagrama de Atividades. Consultar Calendário Semanal ....... 58

Figura 3.13 – Diagrama de Sequência. Consultar Calendário Semanal........ 59

Figura 3.14 – MVC. Consultar Calendário Semanal...................................... 59

Figura 3.15 – Diagrama de Atividades. Manter Consulta Médica.................. 60

Figura 3.16 – Diagrama de Sequência Manter Consulta Médica................... 61

Figura 3.17 – MVC. Manter Consulta Médica................................................ 61

Figura 3.18 – Diagrama de Atividades. Consultar Dados da Gestação......... 62

Figura 3.19 – Diagrama de Sequência Consultar Dados da Gestação......... 62

Figura 3.20 – MVC. Consultar Dados da Gestação....................................... 63

Page 10: BOA GRAVIDEZ: APLICATIVO ANDROID PARAfateclins.edu.br/v4.0/trabalhoGraduacao/tEeTDocEWHoYAR78... · 2019-04-03 · CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA SOUZA FACULDADE

Figura 3.21 – Diagrama de Dados................................................................. 64

Figura 3.22 – Mapeamento Relacional.......................................................... 64

Figura 4.1 – Tela de Cadastro........................................................................ 65

Figura 4.2 – Tela Principal............................................................................. 66

Figura 4.3 – Perfil – Informações da Gestante............................................... 66

Figura 4.4 – Perfil – Atualizar Dados.............................................................. 67

Figura 4.5 – Dados da Gestação................................................................... 67

Figura 4.6 – Consulta..................................................................................... 68

Figura 4.7 – Minhas Consultas....................................................................... 68

Figura 4.8 – Semana Atual Gestante............................................................. 69

Figura 4.9 – Semanal Geral........................................................................... 69

Figura 4.10 – Enxoval.................................................................................... 70

Figura 4.11 – Enxoval – Lista Geral............................................................... 70

Figura 4.12 – Enxoval – Novo Produto.......................................................... 71

Figura 4.13 – Enxoval – Lista Especial.......................................................... 71

Figura 4.14 – Nomes de Bebê....................................................................... 72

Figura 4.15 – Nomes de Bebê – Por sexo..................................................... 72

Figura 4.16 – Nomes de Bebê – Adicionar novo............................................ 72

Figura 4.17 – Nomes de Bebê – Favoritos..................................................... 73

Figura 4.18 – Facebook................................................................................. 73

Page 11: BOA GRAVIDEZ: APLICATIVO ANDROID PARAfateclins.edu.br/v4.0/trabalhoGraduacao/tEeTDocEWHoYAR78... · 2019-04-03 · CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA SOUZA FACULDADE

LISTA DE QUADROS

Quadro 1.1 – Avaliação do estado nutricional da gestante acima de 19

anos, segundo índice de massa corporal por semana

gestacional.....................................................................................................

26

Quadro 1.2 – Ganho de peso recomendado (KG) na gestação, segundo

estado nutricional inicial.................................................................................

27

Page 12: BOA GRAVIDEZ: APLICATIVO ANDROID PARAfateclins.edu.br/v4.0/trabalhoGraduacao/tEeTDocEWHoYAR78... · 2019-04-03 · CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA SOUZA FACULDADE

LISTA DE ABREVIATURAS E SIGLAS

3G – 3ª Geração

4G – 4ª Geração

ADV – Android Virtual Device

ADT – Android Development Tools

APK – Android Package File

APP – Mobile Application

ANATEL – Agência Nacional de Telecomunicações

AOSP – Android Open Source Project

API – Application Programming Interface

ARM – Advanced RISC Machine

DDL – Data Definition Language

DEV – Dalvik Executable

DML – Data Manipulation Language

DUM – Data da Última Menstruação

EN – Estado Nutricional

GSMA – Global para Comunicações Móveis

GPS – Global Positioning System

HAL – Hardware Abstraction Layer

IBM – International Business Machines

IDE – Integrated Development Environment

IMC – Índice de Massa Corpórea

IVC – Instituto Verificador de Circulação

IPV6 – Internet Protocol Version6

JDK – Java Runtime Environment

JVM – Máquina Virtual Java

MER – Modelo de Entidades e Relacionamentos

MP3 – MPEG-1/2 Audio Layer 3

MVC – Model-View-Controller

OHA – Open Handset Alliance

ONU – Organização das Nações Unidas

Page 13: BOA GRAVIDEZ: APLICATIVO ANDROID PARAfateclins.edu.br/v4.0/trabalhoGraduacao/tEeTDocEWHoYAR78... · 2019-04-03 · CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA SOUZA FACULDADE

OMS – Organização Mundial da Saúde

OS – Operation System

PDA – Personal Digital Assistant

RIM – Research in Motion

SDK – Software Development Kit

SGBD – Sistemas de Gerenciamento de Banco de Dados

SO – Sistema Operacional

SQL – Structured Query Language

UML – Unified Modeling Language

USB – Universal Serial Bus

WI-FI – Wireless Fidelity

XML – Xtensible Markup Language

Page 14: BOA GRAVIDEZ: APLICATIVO ANDROID PARAfateclins.edu.br/v4.0/trabalhoGraduacao/tEeTDocEWHoYAR78... · 2019-04-03 · CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA SOUZA FACULDADE

LISTA DE SÍMBOLOS

% - Porcentagem

Page 15: BOA GRAVIDEZ: APLICATIVO ANDROID PARAfateclins.edu.br/v4.0/trabalhoGraduacao/tEeTDocEWHoYAR78... · 2019-04-03 · CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA SOUZA FACULDADE

SUMÁRIO

INTRODUÇÃO.............................................................................. 17

1 GRAVIDEZ E DISPOSITIVOS MÓVEIS.................................... 20

1.1 PERÍODO GESTACIONAL...................................................................... 20

1.1.1 Cuidados durante a gravidez................................................................ 21

1.1.2 A importância do pré-natal.................................................................... 22

1.1.3 Cálculo da idade gestacional................................................................ 24

1.1.4 Cálculo da data provável do parto......................................................... 24

1.1.5 Cálculo do IMC da gestante.................................................................. 25

1.2 VIABILIDADE E IMPORTÂNCIA DE APLICATIVO MÓVEL PARA

ACOMPANHAMENTO DE GRAVIDEZ..........................................................

27

2 CONCEITOS E TECNOLOGIAS UTILIZADAS PARA

DESENVOLVIMENTO DO APLICATIVO......................................

29

2.1 DISPOSITIVOS MÓVEIS......................................................................... 29

2.1.1 Conectividade/Mobilidade..................................................................... 29

2.1.2 Smartphones e tablets.......................................................................... 30

2.1.3 Principais sistemas operacionais para dispositivos móveis.................. 31

2.2 GOOGLE ANDROID OS.......................................................................... 32

2.2.1 Versões do Google Android OS para tablets........................................ 34

2.2.2 Portabilidade......................................................................................... 36

2.2.3 Arquitetura............................................................................................. 38

2.3 ANDROID SDK........................................................................................ 39

2.4 FACEBOOK SDK..................................................................................... 40

2.5 JAVA........................................................................................................ 40

2.6 XML.......................................................................................................... 41

2.7 ECLIPSE.................................................................................................. 41

2.8 SQLITE..................................................................................................... 41

2.9 ANDROID MARKET – GOOGLE PLAY................................................... 43

2.10 APLICATIVOS ANDROID PARA TABLETS.......................................... 43

3 ANÁLISE E PROJETO DE SISTEMA............................................... 47

Page 16: BOA GRAVIDEZ: APLICATIVO ANDROID PARAfateclins.edu.br/v4.0/trabalhoGraduacao/tEeTDocEWHoYAR78... · 2019-04-03 · CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA SOUZA FACULDADE

3.1 ANÁLISE DE NEGÓCIO.......................................................................... 47

3.1.1 Instrução do problema........................................................................... 47

3.1.2 Análise de Mercado............................................................................... 48

3.1.3 Atores e Envolvidos no Processo.......................................................... 48

3.1.4 Descrição do Ambiente Atual................................................................ 49

3.2 VISÃO GERAL DO PRODUTO................................................................ 49

3.2.1 Perspectiva do Produto (Análise de Mercado)...................................... 49

3.2.2 Premissas e Dependências................................................................... 50

3.2.3 Características e Funcionalidades........................................................ 50

3.3 ANÁLISE DE REQUISITOS..................................................................... 51

3.3.1 Caso de Uso.......................................................................................... 51

3.3.2 Diagrama de Classes............................................................................ 51

3.3.3 Especificações de Histórias e Diagramas............................................. 52

3.3.3.1 Manter Perfil....................................................................................... 52

3.3.3.2 Manter Lista Enxoval.......................................................................... 54

3.3.3.3 Selecionar nomes de bebê................................................................. 56

3.3.3.4 Consultar Calendário Semanal.......................................................... 58

3.3.3.5 Manter Consulta Médica.................................................................... 60

3.3.3.6 Consultar Dados da Gestação........................................................... 62

3.3.3.7 Conexão com o Facebook................................................................. 63

3.3.4 Projeto de Banco de Dados.................................................................. 63

3.3.4.1 Diagrama de Dados (MER)................................................................ 64

3.3.4.2 Mapeamento para Modelo Relacional e Projeto Físico...................... 64

4 IMPLEMENTAÇÃO.................................................................... 65

4.1 TELA DE CADASTRO............................................................................. 65

4.2 TELA PRINCIPAL.................................................................................... 65

4.3 PERFIL..................................................................................................... 66

4.4 MEUS DADOS......................................................................................... 67

4.5 CONSULTA.............................................................................................. 67

4.6 MINHAS CONSULTAS............................................................................ 68

4.7 SEMANAS................................................................................................ 68

4.8 ENXOVAL................................................................................................ 69

Page 17: BOA GRAVIDEZ: APLICATIVO ANDROID PARAfateclins.edu.br/v4.0/trabalhoGraduacao/tEeTDocEWHoYAR78... · 2019-04-03 · CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA SOUZA FACULDADE

4.9 NOMES DE BEBÊ.................................................................................... 71

4.10 FACEBOOK........................................................................................... 73

CONCLUSÃO............................................................................... 74

REFERÊNCIAS BIBLIOGRÁFICAS.............................................. 76

APÊNDICE A – Configuração do Ambiente.................................. 80

APÊNDICE B – Conexão com Facebook..................................... 86

APÊNDICE C – Código Listview .................................................. 105

Page 18: BOA GRAVIDEZ: APLICATIVO ANDROID PARAfateclins.edu.br/v4.0/trabalhoGraduacao/tEeTDocEWHoYAR78... · 2019-04-03 · CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA SOUZA FACULDADE

17

INTRODUÇÃO

Pensar em processos e tarefas que não possam ser informatizados é quase

impossível, pois para todas as áreas de negócio existe algum tipo de software que

pode ser utilizado para trazer eficiência e qualidade. O uso de softwares para

melhorar processos pode compreender desde sistemas inteligentes para grandes

corporações, até o uso de uma planilha do Excel para controle de finanças pessoais.

O mundo tem passado por transformações nos últimos anos, principalmente

as ocasionadas pelo uso das tecnologias. A chegada das tecnologias da informação

e comunicação à casa das pessoas, a mobilidade proporcionada por elas e o meio

de acesso a uma vida com muito mais informação, tem transformado o pensar e o

viver de grande parte da população. (SANTAREM SEGUNDO, 2010)

De acordo com Lecheta (2012), estamos na década da mobilidade, na qual

smartphones e tablets farão cada vez mais parte de nosso dia a dia. Dessa maneira

existe uma grande necessidade por aplicativos comerciais e coorporativos para os

mais diversos setores, como varejo, saúde, economia e jogos.

Ainda segundo Lecheta (2012), diversas pesquisas apontam o Android como

o sistema operacional para smartphones que mais cresce no mundo. Sua arquitetura

simples, flexível e ao mesmo tempo poderosa permite com que ele seja a base para

muitos produtos, que se beneficiam de sua plataforma.

O setor da saúde apresenta diversos aspectos para os quais é possível a

utilização de aplicativos móveis. Um desses é o período gestacional, no qual surgem

muitas dúvidas sobre os sinais e sintomas, transformações no corpo da mulher,

alimentação e exercícios recomendados, entre outras mudanças que acontecem

com a gestante.

O ambiente e as situações que envolvem o contexto de cada gestação são

determinantes para o seu desenvolvimento, bem como para a relação que a mulher

e a família estabelecerão com a criança desde as primeiras horas após o

nascimento. Interferem, também, no processo de amamentação e nos cuidados com

a criança e com a mulher. Um contexto favorável fortalece os vínculos familiares,

condição básica para o desenvolvimento saudável do ser humano. (MINISTÉRIO,

2006)

Desta forma, neste trabalho, optou-se por desenvolver um aplicativo para

Page 19: BOA GRAVIDEZ: APLICATIVO ANDROID PARAfateclins.edu.br/v4.0/trabalhoGraduacao/tEeTDocEWHoYAR78... · 2019-04-03 · CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA SOUZA FACULDADE

18

dispositivos móveis utilizando a plataforma Android, que permitisse o

acompanhamento de gravidez por uma gestante. O aplicativo não pretende substituir

o acompanhamento médico, ou fornecer qualquer tipo de diagnóstico; os objetivos

do aplicativo são oferecer referências quanto aos aspectos biológicos de uma

gravidez, como as mudanças no corpo da gestante e desenvolvimento do bebê,

oferecendo dicas e utilitários para as gestantes.

Com a possibilidade de ter um aplicativo móvel com utilitários e informações

para acompanhamento da gestação, as mulheres contariam com uma ferramenta

que as auxiliasse durante o período e as primeiras semanas de vida do bebê.

O aplicativo desenvolvido chama-se Boa Gravidez e possui um calendário

semanal com informações sobre o período da gestação, acompanhando a gestante

a cada semana que se passa e fornecendo dicas e sugestões para uma boa

gravidez. Isso é possível através do cálculo que fornece a previsão do nascimento

do bebê e a semana atual do período gestacional.

Possui também um utilitário para enviar mensagens e fotos para o Facebook,

isso é possível por meio de conexão com a rede social.

O Boa Gravidez traz um utilitário para facilitar o controle dos itens do enxoval,

sendo possível adicionar os itens pré-definidos a uma lista feita exclusivamente pela

gestante.

Também conta com uma lista pré-definida de nomes de bebês, separados por

sexo, podendo ser adicionados novos nomes a lista e, através do utilitário Favoritos,

é possível escolher os nomes preferidos da gestante.

Para o desenvolvimento deste trabalho foi utilizado o kit Android SDK,

disponibilizado pela Google. O kit contém as ferramentas e APIs necessárias para

desenvolver aplicações para a plataforma Android, utilizando a linguagem de

programação Java.

A metodologia utilizada foi revisão literária para obtenção de conhecimento do

domínio de aplicação e estudo da tecnologia. Para tanto foi utilizada referência

bibliográfica de LECHETA (2012), que aborda o desenvolvimento de aplicativos

Android para smartphones e tablets. As informações sobre período gestacional, e

desenvolvimento da gravidez são embasadas em publicações do Ministério da

Saúde do Brasil. (MINISTÉRIO, 2013) (MINISTÉRIO, 2006) (MINISTÉRIO 2004)

O presente trabalho está estruturado em quatro capítulos. No primeiro

capítulo, é feita uma abordagem das fases do período gestacional e cuidados em

Page 20: BOA GRAVIDEZ: APLICATIVO ANDROID PARAfateclins.edu.br/v4.0/trabalhoGraduacao/tEeTDocEWHoYAR78... · 2019-04-03 · CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA SOUZA FACULDADE

19

uma gestação. Ainda nesse capítulo, é apresentada a relevância do

desenvolvimento de um aplicativo para acompanhamento do período gestacional por

uma gestante, bem como a descrição de suas funcionalidades.

No segundo capítulo, são abordados os conceitos e tecnologias necessárias

para o desenvolvimento do aplicativo e apresentação dos componentes do kit

Android SDK.

No terceiro capítulo, são descritas as análises e os diagramas utilizados para

o desenvolvimento do aplicativo.

No quarto capítulo são apresentadas as interfaces gráficas do aplicativo com

descrição de suas funcionalidades.

Por último, constam as considerações finais, seguidas das referências.

Page 21: BOA GRAVIDEZ: APLICATIVO ANDROID PARAfateclins.edu.br/v4.0/trabalhoGraduacao/tEeTDocEWHoYAR78... · 2019-04-03 · CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA SOUZA FACULDADE

20

1 GRAVIDEZ E DISPOSITIVOS MÓVEIS

A gravidez é um estágio da vida da mulher no qual surgem diversas dúvidas e

expectativas e é uma fase carregada de sentimentos e momentos únicos.

Um aplicativo para acompanhamento de gravidez poderia contribuir para

trazer mais informação e até mesmo entretenimento à gestante.

Neste capítulo, é feita uma abordagem das fases do período gestacional e

cuidados em uma gestação. É apresentada a relevância do desenvolvimento de um

aplicativo para acompanhamento do período gestacional por uma gestante, bem

como a descrição de suas funcionalidades.

1.1 PERÍODO GESTACIONAL

A gestação é composta por quarenta semanas, aproximadamente nove

meses. O início do período é calculado de acordo com o primeiro dia de

sangramento do último ciclo menstrual.

De acordo com Ministério (2006), o diagnóstico de gravidez baseia-se na

história, no exame físico e nos testes laboratoriais. Na ocorrência de sintomas como

atraso, irregularidade menstrual e náuseas ou sinais, como aumento de volume

abdominal, deve-se suspeitar da possibilidade de uma gestação. A confirmação do

diagnóstico da gravidez pode ser feita por meio de um Teste Imunológico para

Gravidez, que é feito através da análise do sangue ou urina.

As fases do período gestacional mês a mês serão descritas a seguir de

acordo com o Ministério da Saúde. (MINISTÉRIO, 2013)

No primeiro mês, quando ocorre a união entre óvulo e espermatozoide dá-se

origem ao zigoto, que se instala no útero após uma série de divisões celulares até se

tornar um embrião. Nesse momento começa a se formar a placenta, envolvendo o

embrião com o liquido amniótico, que auxilia na sua alimentação e proteção. Ao fim

do primeiro mês, ele mede entre 0,4 cm e 0,5 cm.

No segundo mês, o coração bate de forma acelerada, sendo, nessa fase, que

se inicia a formação do sistema nervoso e dos aparelhos digestivo, circulatório e

respiratório. Os olhos, a boca, o nariz, os braços e as pernas também começam a se

desenvolver.

Page 22: BOA GRAVIDEZ: APLICATIVO ANDROID PARAfateclins.edu.br/v4.0/trabalhoGraduacao/tEeTDocEWHoYAR78... · 2019-04-03 · CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA SOUZA FACULDADE

21

O embrião passa a ser considerado um feto no terceiro mês. É também nesse

mês que se inicia o desenvolvimento dos ossos e, ao final todos os órgãos internos

estarão formados.

No quarto mês, o bebê começa a se movimentar, sugar e engolir. Ele também

é capaz de perceber alterações de luz e diferenciar gostos amargos e doces.

A partir do quinto mês, nascem os primeiros fios de cabelo, os cílios e as

sobrancelhas. Formam-se as trompas e o útero nas meninas e os órgãos genitais

dos meninos podem ser vistos no exame de ultrassom. O bebê consegue realizar

movimentos como franzir a testa e chupar o dedo.

O bebê mede cerca de 32 cm no sexto mês e consegue reconhecer sons

externos, especialmente a voz e a respiração da mãe.

No sétimo mês, o bebê mede entre 35 e 40 cm. Dentro do útero, boceja, abre

os olhos, dorme e se movimenta. Os órgãos internos continuam crescendo e ele

ouve e reage a estímulos sonoros, como músicas e conversas.

Ao oitavo mês, o bebê mede entre 40 a 45 cm e começa a se preparar para

ficar em posição de parto, que é de cabeça para baixo. Para ajudar a manter a

temperatura do bebê depois do nascimento, uma camada de gordura se forma sob a

pele. Os pulmões estão quase prontos e os ossos ficam mais resistentes.

No último mês, todos os órgãos estão completamente formados, e em torno

da 40ª semana, o bebê está preparado para nascer.

1.1.1 Cuidados durante a gravidez

De acordo com Ministério (2013), para garantir uma boa gestação são

necessários alguns cuidados essenciais, como fazer o acompanhamento do pré-

natal e adotar um estilo de vida mais saudável, alimentando-se de forma balanceada

e praticando exercícios físicos. Após a confirmação da gravidez, o primeiro passo é

começar o acompanhamento do pré-natal, que é realizado periodicamente e, a

mulher passa por uma série de exames indispensáveis para uma boa gestação.

A alimentação da gestante também é primordial para um bom

desenvolvimento do feto. Para suprir as necessidades diárias do organismo durante

a formação do bebê é importante manter uma alimentação balanceada.

Page 23: BOA GRAVIDEZ: APLICATIVO ANDROID PARAfateclins.edu.br/v4.0/trabalhoGraduacao/tEeTDocEWHoYAR78... · 2019-04-03 · CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA SOUZA FACULDADE

22

Durante a gravidez é necessário tomar muita água, pois todo o corpo

depende dela. Segundo o Instituto de Medicina, recomenda-se que as mulheres

grávidas tomem 3 litros diariamente (3,8 litros por dia durante a amamentação).

(IOM, 2011)

A prática de exercícios físicos também é recomendada durante a gestação e

é um grande benefício para o desenvolvimento do feto e para o suprimento de leite

na amamentação. Os exercícios devem ser leves e de baixo impacto, como

caminhadas, natação e hidroginástica.

Segundo Ministério (2013), é importante a consulta prévia com o médico, para

as grávidas que nunca realizaram atividades físicas anteriormente. Nesse caso,

recomenda-se iniciar a atividade após o primeiro trimestre de gravidez, período que

requer maior cuidado por conta da formação do embrião.

Ainda de acordo com Ministério (2013), outro ponto de atenção é evitar

situações de estresse, que podem ocasionar o parto prematuro e agravar casos de

hipertensão e diabetes.

Todos esses cuidados ajudam a garantir maior bem-estar e saúde para a mãe

e o bebê durante a gestação.

1.1.2 A importância do pré-natal

Segundo o Ministério de Saúde, o acompanhamento pré-natal é essencial

para garantir uma gestação saudável, um parto seguro e, também, para esclarecer

as dúvidas das futuras mães. (MINISTÉRIO, 2013)

A gestação, embora constituindo um fenômeno fisiológico que na maior parte dos casos tem sua evolução sem intercorrências, requer cuidados especiais mediante assistência pré-natal. Essa, por sua vez, tem como objetivo principal acolher e acompanhar a mulher durante sua gestação, período caracterizado por mudanças físicas e emocionais vivenciado de forma distinta pelas gestantes. (LANDERDAHL, M.C. et AL, 2007, p.106)

O período de acompanhamento pré-natal compreende a gestação, o parto, o

nascimento e o puerpério. O puerpério é o período de acompanhamento pós-parto

e, recomenda-se que a consulta ocorra até o 42º dia após a realização do parto.

O principal objetivo da atenção pré-natal e puerperal é acolher a mulher desde o início da gravidez, assegurando, no fim da gestação, o nascimento de uma criança saudável e a garantia do bem-estar materno e neonatal. (MINISTÉRIO, 2013)

Page 24: BOA GRAVIDEZ: APLICATIVO ANDROID PARAfateclins.edu.br/v4.0/trabalhoGraduacao/tEeTDocEWHoYAR78... · 2019-04-03 · CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA SOUZA FACULDADE

23

O Programa de Humanização do Pré-Natal e Nascimento (PHPN) do

Ministério da Saúde, por exemplo, incentiva as gestantes a buscarem o Sistema

Único de Saúde (SUS) e estabelece que sejam realizadas, no mínimo, seis

consultas: uma no primeiro trimestre de gravidez, duas no segundo e três no

terceiro. Em todas elas, o médico deve medir a pressão arterial, o tamanho da

barriga, o peso da gestante e, também escutar o coração do bebê.

No acompanhamento pré-natal, a gestante recebe informações sobre

cuidados como aleitamento materno, alimentação balanceada e a prática de

exercícios físicos.

Segundo o Ministério de Saúde durante o período pré-natal, os exames

indicados para uma para uma gravidez sem complicações são os testes de sangue,

glicemia, urina, sorologia anti-HIV, sífilis, hepatites B e C, toxoplasmose, rubéola e

estreptococo. (MINISTÉRIO, 2013)

Durante o pré-natal, o médico também pode indicar a necessidade de a

grávida tomar vacinas contra hepatite, gripe e DT (dupla adulto contra difteria e

tétano) e realizar exames de sangue para verificar os níveis dos hormônios da

tireoide, que regulam o organismo da mãe e o desenvolvimento do feto.

No caso das gestantes com fator Rh negativo, também é importante realizar o

exame de sangue Coombs indireto, que verifica se há possibilidade de manifestação

de eritroblastose fetal. Eritroblastose fetal é uma doença hemolítica causada pela

incompatibilidade do sistema Rh do sangue materno e fetal, onde o organismo da

gestante Rh negativo passa a produzir anticorpos contra o sangue de bebês Rh

positivos. (VARELLA, 2013)

É possível ainda que sejam solicitados outros exames mais específicos, se a

gestação for de alto risco, ou seja, quando a mãe apresenta condições como

obesidade, diabetes e histórico de aborto, por exemplo. Segundo Ministério (2006),

nesses casos o pré-natal requer maior atenção e, solicitações de novos exames ou

procedimentos específicos devem ser avaliadas pelo médico.

Ainda, de acordo com Ministério (2006), é cada vez mais frequente a

participação do pai no pré-natal, devendo sua presença ser estimulada durante as

consultas. A gestação, o parto, o nascimento e o puerpério são eventos carregados

de sentimentos profundos, momentos de crises construtivas, com forte potencial

positivo para estimular a formação de vínculos e provocar transformações pessoais.

Page 25: BOA GRAVIDEZ: APLICATIVO ANDROID PARAfateclins.edu.br/v4.0/trabalhoGraduacao/tEeTDocEWHoYAR78... · 2019-04-03 · CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA SOUZA FACULDADE

24

1.1.3 Cálculo da Idade Gestacional

Para o cálculo da idade gestacional, é necessário saber a data da última

menstruação (DUM), que corresponde ao primeiro dia de sangramento do último

período menstrual.

Os procedimentos técnicos descritos pelo Ministério da Saúde, para cálculo

da idade gestacional variam de acordo com a informação da gestante quanto a

DUM. (MINISTÉRIO, 2006)

Quando a DUM é conhecida e de certeza, nos casos de mulheres com ciclos

menstruais regulares e sem uso de métodos anticoncepcionais hormonais, o cálculo

pode ser feito de duas formas:

Calendário: somar o número de dias do intervalo entre a DUM e a data da

consulta, dividindo o total por sete - resultado em semanas;

Disco - gestograma: colocar a seta sobre o dia e mês correspondente ao

primeiro dia da última menstruação e observar o número de semanas

indicado no dia e mês da consulta atual.

Para os casos em que a DUM é desconhecida, mas se conhece o período do

mês em que ela ocorreu, deve-se verificar se o período foi no início, meio ou fim do

mês. A data da última menstruação será então considerada como nos dias 5, 15 e

25, respectivamente. Com a definição da data aproximada poderão ser utilizados os

mesmos métodos de calendário e disco já descritos.

Se a data e o período do mês não forem conhecidos, a idade gestacional será

determinada por aproximação, basicamente pela medida da altura do fundo do útero

e pelo toque vaginal, além da informação sobre a data de início dos movimentos

fetais, habitualmente ocorrendo entre 16 e 20 semanas.

Quando não for possível determinar a idade gestacional clinicamente, está

deverá ser feita através de exame de ultrassonografia obstétrica, por meio de

solicitação do médico.

1.1.4 Cálculo da data provável do parto

A data provável do parto é calculada levando-se em conta a duração média

da gestação normal, que compreende o período de 280 dias ou 40 semanas a partir

da DUM, mediante a utilização de calendário. (MINISTÉRIO, 2006)

Page 26: BOA GRAVIDEZ: APLICATIVO ANDROID PARAfateclins.edu.br/v4.0/trabalhoGraduacao/tEeTDocEWHoYAR78... · 2019-04-03 · CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA SOUZA FACULDADE

25

Com o gestograma, deve-se colocar a seta sobre o dia e mês correspondente

ao primeiro dia da última menstruação e observar a seta na data, dia e mês,

indicada como data provável do parto.

Outra forma de cálculo é a utilização da Regra de Näegele: deve-se somar

sete dias ao primeiro dia da última menstruação e subtrair três meses ao mês em

que ocorreu a última menstruação, ou adicionar nove meses, se corresponder aos

meses de janeiro a março. Se o número de dias encontrado for maior do que o

número de dias do mês, passar os dias excedentes para o mês seguinte,

adicionando 1 ao final do cálculo do mês.

1.1.5 Cálculo do IMC da gestante

O cálculo e acompanhamento do Índice de Massa Corpórea (IMC) é uma

ferramenta utilizada na avaliação do estado nutricional e do ganho de peso

gestacional. De acordo com Ministério (2006), a avaliação irá contribuir na

prevenção e controle de agravos à saúde e nutrição.

Segundo MINISTÉRIO (2004), estado nutricional é o resultado do equilíbrio

entre o consumo de nutrientes e o gasto energético do organismo para suprir as

necessidades nutricionais. O estado nutricional pode ter três tipos de manifestação

orgânica: adequação nutricional, carência nutricional e distúrbio nutricional.

É recomendado que seja feito o cálculo do IMC da gestante na primeira

consulta pré-natal e após, nas consultas seguintes, seja feito o controle através de

um gráfico de acompanhamento nutricional da gestante.

Na primeira consulta de pré-natal, a avaliação nutricional da gestante permite

conhecer seu estado nutricional atual e estimar o ganho de peso até o final da

gestação.

Para cada situação nutricional inicial, que pode estar entre baixo peso,

adequado, sobrepeso ou obesidade, há uma faixa de ganho de peso recomendada.

Cada gestante deverá ter um ganho de peso de acordo com seu IMC inicial.

Desta forma, já na primeira consulta, podem-se estimar quantos gramas a

gestante deverá ganhar no 1º (primeiro) trimestre, assim como o ganho por semana

até o final da gestação.

Para o 1º (primeiro) trimestre, o ganho de peso é agrupado para todo período,

enquanto que, para o 2º (segundo) e o 3º (terceiro) trimestre, é previsto

Page 27: BOA GRAVIDEZ: APLICATIVO ANDROID PARAfateclins.edu.br/v4.0/trabalhoGraduacao/tEeTDocEWHoYAR78... · 2019-04-03 · CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA SOUZA FACULDADE

26

semanalmente.

Quadro 1.1 – Avaliação do estado nutricional da gestante acima de 19 anos, segundo índice de massa corporal por semana gestacional

Semana Gestacional

Baixo Peso IMC ≤

Adequado IMC entre

Sobrepeso IMC entre

Obesidade IMC ≥

6 19,9 20,0 24,9 25,0 30,0 30,1 8 20,1 20,2 25,0 25,1 30,1 30,2

10 20,2 20,3 25,2 25,3 30,2 30,3 11 20,3 20,4 25,3 25,4 30,3 30,4 12 20,4 20,5 25,4 25,5 30,3 30,4 13 20,6 20,7 25,6 25,7 30,4 30,5 14 20,7 20,8 25,7 25,8 30,5 30,6 15 20,8 20,9 25,8 25,9 30,6 30,7 16 21,0 21,1 25,9 26,0 30,7 30,8 17 21,1 21,2 26,0 26,1 30,8 30,9 18 21,2 21,3 26,1 26,2 30,9 31,0 19 21,4 21,5 26,2 26,3 30,9 31,0 20 21,5 21,6 26,3 26,4 31,0 31,1 21 21,7 21,8 26,4 26,5 31,1 31,2 22 21,8 21,9 26,6 26,7 31,2 31,3 23 22,0 22,1 26,8 26,9 31,3 31,4 24 22,2 22,3 26,9 27,0 31,5 31,6 25 22,4 22,5 27,0 27,1 31,6 31,7 26 22,6 22,7 27,2 27,3 31,7 31,8 27 22,7 22,8 27,3 27,4 31,8 31,9 28 22,9 23,0 27,5 27,6 31,9 32,0 29 23,1 23,2 27,6 27,7 32,0 32,1 30 23,3 23,4 27,8 27,9 32,1 32,2 31 23,4 23,5 27,9 28,0 32,2 32,3 32 23,6 23,7 28,0 28,1 32,3 32,4 33 23,8 23,9 28,1 28,2 32,4 32,5 34 23,9 24,0 28,3 28,4 32,5 32,6 35 24,1 24,2 28,4 28,5 32,6 32,7 36 24,2 24,3 28,5 28,6 32,7 32,8 37 24,4 24,5 28,7 28,8 32,8 32,9 38 24,5 24,6 28,8 28,9 32,9 33,0 39 24,7 24,8 28,9 29,0 33,0 33,1 40 24,9 25,0 29,1 29,2 33,1 33,2 41 25,0 25,1 29,2 29,3 33,2 33,3 42 25,0 25,1 29,2 29,3 33,2 33,3

Fonte: Ministério, 2006, p.45

Os passos para calculo do IMC da gestante, de acordo com Ministério da

Saúde (2006) são:

Calcular o IMC por meio da fórmula:

Peso (kg)

Altura² (m)

Page 28: BOA GRAVIDEZ: APLICATIVO ANDROID PARAfateclins.edu.br/v4.0/trabalhoGraduacao/tEeTDocEWHoYAR78... · 2019-04-03 · CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA SOUZA FACULDADE

27

Realizar o diagnóstico nutricional, utilizando o Quadro 1.1: calcular a semana

gestacional e após, localizar na primeira coluna do Quadro 1.1 a semana

gestacional calculada e, identificar em qual faixa está situado o IMC da

gestante;

Classificar o estado nutricional (EN) da gestante, segundo o IMC por semana

gestacional;

Estimar o ganho de peso para gestantes utilizando o Quadro 1.2.

Quadro 1.2 – Ganho de peso recomendado (KG) na gestação, segundo estado nutricional inicial.

Estado

nutricional

(IMC)

Ganho de peso

total (kg) no 1º

trimestre

Ganho de peso

semanal médio (kg) no

2º e 3º trimestres

Ganho de peso

total (kg)

Baixo Peso 2,3 0,5 12,5 – 18,0

Adequado 1,6 0,4 11,2 – 16,0

Sobrepeso 0,9 0,3 7,0 – 11,5

Obesidade - 0,3 7,0

Fonte: Ministério, 2006, p. 46

Para as consultas subsequentes deve ser iniciado um Gráfico de

Acompanhamento Nutricional da Gestante. O gráfico irá possibilitar analisar a curva

de índice de massa corporal de acordo com a semana de gestação, permitindo

acompanhar a evolução do ganho de peso e, examinar se esse ganho está

adequado em função do estado nutricional da gestante no início do pré-natal.

Para este trabalho, não será analisado o gráfico de acompanhamento

nutricional, pois o objetivo do aplicativo é apenas fornecer valores e referências para

a gestante, não apresentando qualquer tipo de diagnóstico médico.

1.2 VIABILIDADE E IMPORTÂNCIA DE APLICATIVO MÓVEL PARA

ACOMPANHAMENTO DE GRAVIDEZ

O aplicativo Boa Gravidez é voltado para a mulher que está aguardando a

chegada de um bebê. O mesmo possui dicas semanais, que são importantes para

uma boa gravidez, além de diversos utilitários. Dentre eles, é possível realizar uma

conexão com o Facebook, onde se pode enviar mensagens e fotos para a rede

social.

Page 29: BOA GRAVIDEZ: APLICATIVO ANDROID PARAfateclins.edu.br/v4.0/trabalhoGraduacao/tEeTDocEWHoYAR78... · 2019-04-03 · CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA SOUZA FACULDADE

28

Esta ferramenta também possui uma lista pré-definida para os produtos que

são necessários na hora da chegada do bebê. A grávida poderá visualizar uma lista

geral com vários produtos, podendo adicionar novos itens ou criar uma lista com

apenas os produtos que ela selecionar. Este utilitário pode atender, por exemplo,

quem pretende fazer um chá de bebê, pois é possível criar uma lista com os

produtos que faltam ser comprados.

As informações mudam de semana a semana, mostrando dicas sobre a

semana atual de gestação, cuidados durante a gravidez, exames necessários, pré-

natal e desenvolvimento do bebê.

Acredita-se que pela fácil mobilidade dos smartphones e tablets, as grávidas

poderão ter acesso às informações a qualquer momento, por meio do uso do

aplicativo.

Este aplicativo poderá ser usado pelas gestantes que querem estar

conectadas com diversas informações. Acredita-se que com o aplicativo, as

mulheres contarão com uma ferramenta para que o período gestacional e as

primeiras semanas de vida do bebê possam ser conduzidos com tranquilidade.

Page 30: BOA GRAVIDEZ: APLICATIVO ANDROID PARAfateclins.edu.br/v4.0/trabalhoGraduacao/tEeTDocEWHoYAR78... · 2019-04-03 · CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA SOUZA FACULDADE

29

2 CONCEITOS E TECNOLOGIAS UTILIZADAS PARA

DESENVOLVIMENTO DO APLICATIVO

Neste capítulo são apresentados alguns aspectos sobre dispositivos móveis,

com ênfase no sistema operacional Google Android OS, suas características e

arquitetura. Também são apresentados os conceitos e demais tecnologias utilizadas

para o desenvolvimento do aplicativo Boa Gravidez.

2.1 DISPOSITIVOS MÓVEIS

Os dispositivos móveis são pequenos, leves, portáteis e úteis, não só para se

comunicar, mas para ler, acessar internet, consumir aplicativos, jogar e acessar

redes sociais. (DISPOSITIVOS, 2010)

A popularização dos celulares, smartphones e tablets está ampliando as

possibilidades de negócios e lazer e, consequentemente, aumentando os usuários.

O crescimento dos serviços móveis é uma das principais tendências da década.

Nesta seção serão apresentados dados sobre o crescimento da conectividade

e mobilidade, uso de smartphones e tablets, além de descrever os principais

sistemas operacionais para estes dispositivos.

2.1.1 Conectividade/Mobilidade

A função primária de um dispositivo móvel é conectar as pessoas e/ou

sistemas e transmitir e receber informações. (LEE et al., 2005)

O mundo está mais dinâmico e exigente no que diz respeito à capacidade das

pessoas de se manterem conectadas e disponíveis o tempo todo.

O gráfico apresentado na figura 2.1 exibe um comparativo de taxa de

crescimento de acesso à Internet através de dispositivos móveis, divulgado pelo

Instituto Verificador de Circulação (IVC). (SILVA, 2013)

Pode-se observar que o crescimento de acesso a internet via dispositivos

móveis apresenta uma evolução expressiva em comparação com o acesso realizado

através de outros canais.

Page 31: BOA GRAVIDEZ: APLICATIVO ANDROID PARAfateclins.edu.br/v4.0/trabalhoGraduacao/tEeTDocEWHoYAR78... · 2019-04-03 · CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA SOUZA FACULDADE

30

Figura 2.1 – Taxa de crescimento acessos via dispositivos móveis IVC Fonte: Silva, 2013

A Internet passa a ser indispensável para o uso de qualquer dispositivo móvel

e a expansão da conexão não para de aumentar. A tecnologia wireless foi

incorporada aos dispositivos móveis e, traz consigo maior mobilidade em relação ao

seu predecessor, as redes cabeadas. Atualmente vários modelos de smartphones e

tablets dispõem de tal tecnologia. (PINTO; GOMES, 2011)

Assim como a rede wireless teve uma grande incorporação nos dispositivos

móveis, houve também outras expansões em relação à conectividade, como por

exemplo, o uso da Internet 3G. Esta tecnologia, caracterizada como a 3ª geração,

proporciona serviços como transferência de dados com alta velocidade.

O futuro próximo no Brasil será a conexão 4G, a 4ª geração de telefone

móvel, que garante um aumento significante de velocidade comparada a outras

tecnologias.

Observa-se que a busca pela conectividade e mobilidade contribuiu para a

melhoria e crescimento da tecnologia para dispositivos móveis, além do

desenvolvimento e popularização de diversos aplicativos para smartphones e

tablets.

2.1.2 Smartphones e tablets

Os tablets e smartphones ganharam espaço no mercado por oferecer

inovação e interatividade a todo tipo de usuário, são fáceis de usar, rápidos e leves

para transportar.

Page 32: BOA GRAVIDEZ: APLICATIVO ANDROID PARAfateclins.edu.br/v4.0/trabalhoGraduacao/tEeTDocEWHoYAR78... · 2019-04-03 · CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA SOUZA FACULDADE

31

Esta realidade traz um avanço tecnológico e uma gama de possibilidades

para as empresas, como novos canais de comunicação com seus clientes e

ferramentas de trabalho. (FLIP STUDIO, 2011)

As vendas de tablets no Brasil devem atingir o patamar de 5,1 milhões de

unidades este ano, o que representaria um crescimento de 67% sobre o

desempenho verificado em 2012, segundo projeção divulgada pela consultoria do

mercado de tecnologia IT Data. (DIAS, 2013)

O perfil dos consumidores de tablets é de pessoas que já possuem um

computador pessoal. Ou seja, elas não substituíram seu computador, e sim

compraram mais uma opção de produto tecnológico, por sua mobilidade. De acordo

com Dias (2013), os analistas preveem que a fatia de mercado dos notebooks

também ficará cada vez menor. A figura 2.2 ilustra o crescimento do mercado para

tablets e notebooks.

Figura 2.2 – Crescimento de mercado para tablets e notebooks Fonte: Dias, 2013

2.1.3 Principais sistemas operacionais para dispositivos móveis

Existem diversos sistemas operacionais para dispositivos móveis que serão

apresentados a seguir.

O Windows Phone é um sistema operacional para celulares baseado no

kernel do Windows CE6, foi desenvolvido pela Microsoft, e utiliza os mesmos

padrões de aplicações usadas na versão computador sendo compatível com os

aplicativos desenvolvidos a princípio para o Windows do computador, como por

exemplo, Word e Excel. (NÚCLEO TREINAMENTOS, 2011)

Page 33: BOA GRAVIDEZ: APLICATIVO ANDROID PARAfateclins.edu.br/v4.0/trabalhoGraduacao/tEeTDocEWHoYAR78... · 2019-04-03 · CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA SOUZA FACULDADE

32

Outro sistema operacional disponível no mercado é o BlackBerry OS que foi

desenvolvido pela empresa Research in Motion, conhecida como RIM. Este sistema

integra diversas funções, como por exemplo, editor de texto, e-mail e tecnologia

Internet Protocol Version6 (IPv6). Suporta também todas as funções necessárias

para criar documentos, planilhas e apresentações. (BLACKBERRY, 2013)

Symbian OS é um sistema operacional para dispositivos móveis, com

bibliotecas associadas, interface, frameworks e implementações com referência em

ferramentas comuns. Ele descende do EPOC 32 da inglesa Psion e funciona

exclusivamente em processadores ARM. Originalmente nascido como um sistema

proprietário, após dez anos de parceria, em 2008, a Nokia que detinha 56,3% das

ações da empresa, comprou o restante da Symbian e anunciou a abertura do código

fonte e a transferência do desenvolvimento do Symbian para uma fundação neutra,

a Symbian Foundation. (BUDAG, 2010)

Existe também o Mac OS X, que originou o iOS, desenvolvido pela Apple.

Este sistema funciona somente em aparelhos da Apple como iPhone, iPad, iPod

Touch, iPod e Apple TV. Não é compatível com todos os tipos de aplicativos,

podendo instalar somente aplicativos disponibilizados pela Apple. (LOWE, 2010)

Dentre os sistemas operacionais, destaca-se o Google Android OS,

desenvolvido pela Google, que possui diversos aplicativos como leitores de e-books,

tocadores de mp3, bússolas digitais e inúmeros jogos. Conta também integração

com redes sociais e sistema multitarefas. (ANDROID 1.5, 2009)

2.2 GOOGLE ANDROID OS

Popularmente conhecido somente como Android, o Google Android OS

consiste em uma plataforma de desenvolvimento, baseada em um sistema

operacional Linux, com diversas aplicações já instaladas. (LECHETA, 2010)

De acordo com o mesmo autor, este sistema operacional foi baseado no

kernel 2.6 do Linux, e é responsável por gerenciar a memória, os processos, threads

e a segurança dos arquivos e pastas, além de redes e drivers.

Em 2005 a Google comprou a Android INC, uma pequena empresa onde

futuramente a Google começaria a trabalhar. O sistema Android foi inicialmente

lançado pela Google e posteriormente pela Open Handset Alliance (OHA).

Page 34: BOA GRAVIDEZ: APLICATIVO ANDROID PARAfateclins.edu.br/v4.0/trabalhoGraduacao/tEeTDocEWHoYAR78... · 2019-04-03 · CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA SOUZA FACULDADE

33

A OHA é um grupo formado por empresas do mercado de telefonia celulares

liderados pela Google. Entre os integrantes estão HTC, LG, Motorola, Samsumg,

Sony Ericson, Toshiba, Sprint Nextel, China Mobile, T-Mobile, ASUS, Intel, Garmim,

entre outros.

No ano de 2008 foi apresentado pela Google o primeiro telefone móvel

comercialmente disponível para rodar a plataforma Android, o HTC Dream. Após

foram lançadas diversas versões, sempre com melhorias e novos recursos. Em 2011

foi lançado o primeiro tablet comercialmente disponível a utilizar o sistema Android

3.0, o Motorola Xoom nos Estado Unidos. (TECNOINFOBRASIL, 2011)

Pesquisa realizada pelo IVC representada pela Figura 2.3 e Figura 2.4

compreende dados de janeiro de 2011 a dezembro de 2012, e conclui que o sistema

operacional Android para smartphones assumiu a liderança e continua com trajetória

de crescimento. Já para os tablets, o iOS, da Apple ainda possui a liderança com o

iPad, porém os acessos via Android também já apresentam crescimento. (SILVA,

2013)

Figura 2.3 – Evolução de acessos à internet através de smartphones por Sistema Operacional Fonte: SILVA, 2013

Page 35: BOA GRAVIDEZ: APLICATIVO ANDROID PARAfateclins.edu.br/v4.0/trabalhoGraduacao/tEeTDocEWHoYAR78... · 2019-04-03 · CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA SOUZA FACULDADE

34

Figura 2.4 – Evolução de acessos à internet através de tablets por Sistema Operacional Fonte: SILVA, 2013

De acordo com Lecheta(2010), o fato de o Android possuir código aberto

contribui para seu aperfeiçoamento, uma vez que desenvolvedores de todos os

lugares do mundo podem contribuir para seu código-fonte, adicionando novas

funcionalidades ou simplesmente corrigindo falhas.

A plataforma Android traz vantagens também para os fabricantes e o usuário

final. A licença é flexível e permite que cada fabricante possa realizar alterações no

código-fonte para customizar seu produto e, o usuário final tem a possibilidade de

encontrar diversos recursos em um único aparelho.

O crescimento de usuários que possuem um aparelho com o sistema

operacional Android motivou o estudo da tecnologia. Soma-se ainda a esta escolha

a característica de possuir código livre e, a licença para desenvolvimento possuir

somente uma taxa inicial de cadastro.

2.2.1 Versões do Google Android OS para tablets

Desde o Android 1.0, foram lançadas várias verses do Google Android OS. A

partir da versão 1.5, passaram a ser nomeadas com nomes de doces, cujas iniciais

seguem as letras do alfabeto. As versões do Android são: Android 1.0, Android 1.1,

Android 1.5 – Cupcake, Android 1.6 – Donut, Android 2.0 e Android 2.1 – Eclair,

Page 36: BOA GRAVIDEZ: APLICATIVO ANDROID PARAfateclins.edu.br/v4.0/trabalhoGraduacao/tEeTDocEWHoYAR78... · 2019-04-03 · CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA SOUZA FACULDADE

35

Android 2.2 – Froyo, Android 2.3 – Gingerbread, Android 3.0 – Honeycomb, Android

4.0 – Ice Cream Sandwich, Android 4.1, 4.2 e 4.3 – Jelly Bean.

A primeira versão criada, em princípio, somente para tablets é a 3.0

Honeycomb. Não é embarcada em novos modelos, porém ainda existem alguns

modelos à venda no mercado.

Com a popularização dos tablets e a busca dos usuários por esses

equipamentos surgiu necessidade de otimizar e customizar o Android para que se

usufrua ao máximo do tamanho de tela disponível nesses aparelhos. (LECHETA,

2012)

As seções a seguir destacam alguns dos recursos adicionados, segundo

Honeycomb (2013):

Navegador: inclui novos recursos e navegação anônima. Favoritos e

históricos são apresentados e geridos em uma única visão unificada. Novo

suporte multitouch disponível para JavaScritp e plugins. Navegação em sites

não móveis com um zoom melhor;

Câmera: foi redesenhada para aproveitar uma tela maior;

Contatos: oferece melhor formatação de números de telefones

internacionais, tipo de usuários, com base no país de origem e em uma

biblioteca de análise de número internacional. As informações de contato são

apresentadas em um cartão como interface do usúario.

Segundo Monteiro (2012), a versão 3.0 introduziu novos recursos como a

ActionBar e os Fragments, que são componentes de interface gráfica modulares,

possuindo ciclo de vida próprio, criados para facilitar o desenvolvimento de

aplicativos com layouts diferentes para cada tipo de dispositivo. Para trazer alguns

destes recursos para as versões anteriores do Android, o Google lançou um pacote

de compatibilidade.

Após, foi lançada a versão Android 4.0 Ice Cream Sandwich, que visa unir as

plataformas de desenvolvimento dos smartphones e tablets e trazer novas API’s que

inicialmente estavam disponíveis apenas na versão Honeycomb para os

smartphones. (LECHETA, 2012)

De acordo com Monteiro (2012), a versão 4.0 do Android unificou a

plataforma para a sua utilização tanto em tablets como smartphones. Antes disso

havia a versão 3.x projetada especialmente para tablets e a versão 2.x amplamente

utilizada em smartphones e em alguns modelos de tablet.

Page 37: BOA GRAVIDEZ: APLICATIVO ANDROID PARAfateclins.edu.br/v4.0/trabalhoGraduacao/tEeTDocEWHoYAR78... · 2019-04-03 · CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA SOUZA FACULDADE

36

A versão seguinte foi 4.1 JellyBean. As versões mais recentes para tablets

são a 4.2 e 4.3, que ainda usam o nome de JellyBean, porém com algumas

alterações e melhorias em relação à versão anterior.

2.2.2 Portabilidade

Como descrito, o Android é uma plataforma de desenvolvimento para

aplicativos móveis e contêm um sistema operacional baseado em Linux.

Outra característica é que os usuários do Android podem utilizar este sistema

operacional em diversos aparelhos, não sendo restrito somente um tipo de

smartphone, por exemplo. E assim, torna-se relevante citar a portabilidade.

Em virtude da aliança entre diversas empresas do ramo de telefônica, a OHA,

estudos e desenvolvimento em conjunto garantem que o Android seja um sistema

bastante acessível.

Porém, com o lançamento de novas versões são necessários alguns ajustes

para que o hardware dos aparelhos de smartphone e tablets adaptem-se ao novo

sistema operacional. Sendo assim, é realizada uma sessão de testes e a versão é

enviada a certificação, somente após a aprovação dos testes pode ser distribuída

para os consumidores. No Brasil é a Agência Nacional de Telecomunicações

(ANATEL) que concede a certificação.

Para exemplificar como são feitas as adaptações, é utilizado um modelo

baseado nos aparelhos da Sony durante a adaptação para uso do 4.0, o Ice Cream

Sandwich. (NILSSON, 2011)

Figura 2.5 - Etapas Certificação Android Fonte: Nilsson, 2011

Page 38: BOA GRAVIDEZ: APLICATIVO ANDROID PARAfateclins.edu.br/v4.0/trabalhoGraduacao/tEeTDocEWHoYAR78... · 2019-04-03 · CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA SOUZA FACULDADE

37

O primeiro passo é integrar o mais recente código fonte Android disponível e

testar a compilação. Isso é feito pelas equipes de engenharia, que, além disso,

precisam confirmar que todas as ferramentas de teste e depuração estão

adequadas. Uma vez que se irá continuar a construir mais sobre esse conjunto

básico de código, a estabilidade do software é muito importante nesta fase.

Em segundo lugar, é necessário certificar e aprovar a nova versão do software

com todas as diferentes tecnologias, redes e hardware que um smartphone deve

trabalhar.

A primeira coisa a fazer é adaptar a Hardware Abstraction Layer (HAL), a

camada de abstração de hardware. Trata-se de uma camada de software que

realiza a integração das aplicações com os componentes de hardware e com os

processadores.

A HAL, conforme ilustra a Figura 2.6 é a camada principal de interação com

diversos componentes como: Wi-Fi, bluetooth, áudio, acelerômetro, giroscópio,

câmeras, GPS, componentes multimídia e gráficos. Se a HAL não for bem

configurada pode impactar na funcionalidade dos serviços do dispositivo.

Figura 2.6 lustração da camada HAL Fonte: Nilsson, 2011

Page 39: BOA GRAVIDEZ: APLICATIVO ANDROID PARAfateclins.edu.br/v4.0/trabalhoGraduacao/tEeTDocEWHoYAR78... · 2019-04-03 · CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA SOUZA FACULDADE

38

Depois disso, é feita a integração dos patches do Android, fornecidos pelo

Android Open Source Project (AOSP) como, tratamento de erros, novas

atualizações, customizações, funcionamento dos players de vídeo e música, USB,

entre outros.

Quando todas as funcionalidades são adaptadas ao código, são iniciados

testes de estabilidade para garantir que o software execute de maneira estável em

todos os tipos de casos de uso. Além de testes de laboratório puro, são feitos testes

com usuários ativos, quando são relatados defeitos.

Por último, a Sony realiza os testes para garantir a estabilidade do SO com o

dispositivo, garantido o suporte local, ou seja, suporte nativo de todas as linguagens

do Android.

Feito o processo, a versão portada é levada para os testes de certificação e,

após ser aprovada, pode ser distribuída para os consumidores.

2.2.3 Arquitetura

A arquitetura do Android é flexível e é possível integrar aplicações nativas

com uma nova aplicação desenvolvida pelo programador, ou até mesmo substituir

qualquer aplicação nativa existente.

Figura 2.7 – Arquitetura do Android Fonte: Elaborado pelas autoras, 2013

Aplicações (Contatos, Câmera...)

Frameworks (Gerenciador de

Recursos/Notificações...)

Núcleo Linux

Bibliotecas

Máquina Virtual

PLATAFORMA ANDROID

Page 40: BOA GRAVIDEZ: APLICATIVO ANDROID PARAfateclins.edu.br/v4.0/trabalhoGraduacao/tEeTDocEWHoYAR78... · 2019-04-03 · CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA SOUZA FACULDADE

39

Sua arquitetura é dividida em alguns componentes, de acordo com a figura

2.7:

Aplicativos: é a camada mais alta da arquitetura do sistema, composta pelo

conjunto de aplicativos nativos do sistema;

Framework nativo: disponibiliza aos desenvolvedores as mesmas

Application Programming Interface (APIs) usadas para criar as aplicações

originais do sistema. Este framework permite que o desenvolvedor tenha o

mesmo acesso ao sistema que os aplicativos da camada de aplicativos

possuem. Foi criado para abstrair a complexidade e simplificar o reuso de

procedimentos e funciona como um meio de ligação com a camada de

bibliotecas do sistema que serão acessadas através de APIs contidas no

framework;

Bibliotecas: provem funcionalidades para manipulação de áudio, vídeo,

gráficos, banco de dados e navegador, sendo acessadas pelo programador

via Java, através do framework do sistema;

Runtime android – Máquina Virtual Dalvik: permite que cada processo rode

sua própria instância da máquina virtual. Embora no desenvolvimento de

aplicativos seja utilizada a linguagem Java, as aplicações são executadas

em uma máquina virtual otimizada especialmente para dispositivos móveis.

Quando é realizada a compilação, os arquivos são convertidos para o

formato .dex, Dalvik Executable, que representa a aplicação do Android

compilada;

Kernel Linux: baseado no kernel 2.6 do Linux é responsável por gerenciar a

memória, os processos, threads e segurança.

A extensão que representa uma aplicação final Android, é a .apk (Android

Package File).

2.3 ANDROID SDK

O Android SDK fornece as bibliotecas da API e ferramentas de

desenvolvimento necessárias para construir, testar e depurar aplicativos para o

Android. (ANDROID DEVELOPERS, 2013)

É o software utilizado para desenvolver aplicações Android, possuindo um

emulador para simular o dispositivo móvel, ferramentas utilitárias e uma API

Page 41: BOA GRAVIDEZ: APLICATIVO ANDROID PARAfateclins.edu.br/v4.0/trabalhoGraduacao/tEeTDocEWHoYAR78... · 2019-04-03 · CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA SOUZA FACULDADE

40

completa para a linguagem Java. (LECHETA, 2012)

Os requisitos de software e sistema para utilização do SDK são:

Sistemas operacionais suportados: Windows XP (32-bit), Vista (32 ou 64-

bit) ou Windows 7 (32 ou 64-bit), Mac OS X 10.5.8 ou posterior (somente

x86), Linux Ubuntu;

Ambientes de desenvolvimento suportados: Ecplise 3.5 (Galileo), Eclipse

3.6 (Helios) ou superior, utilizando o plugin Android Development Tools

(ADT), JDK 5 ou JDK 6.

2.4 FACEBOOK SDK

O Facebook disponibiliza um SDK oficial para ajudar os desenvolvedores a

integrar a sua aplicação web ou mobile com o Facebook. São disponibilizadas SDKs

oficiais para iOS, Android, PHP e JavaScript. Todos os SDK são open source e

podem ser baixados através do compartilhamento de projetos GitHub. (FACEBOOK

DEVELOPERS, 2013)

Segundo Catone (2008), Git é um sistema de controle de versão

descentralizado criado por Linus Torvalds, o criador do Linux. O GitHub é um dos

principais meios de compartilhamento de projetos disponíveis na internet, lá,

encontram-se desde projetos simples até projetos extremamente complexos, como o

kernel do Linux. (MARTINS, 2013)

2.5 JAVA

Quanto à linguagem de programação, o Android permite o desenvolvimento

de aplicativos na linguagem Java combinada com Xtensible Markup Language

(XML).

O Java é a base para praticamente todos os tipos de aplicações em rede e é

o padrão global para o desenvolvimento e distribuição de aplicações móveis, jogos,

conteúdo baseado na web e softwares corporativos. (JAVA, 2013)

Java é multiplataforma. Quando um programa Java é compilado um código

intermediário é gerado, chamado de bytecode. Este bytecode é interpretado pelas

Máquinas Virtuais Java (JVMs) para a maioria dos sistemas operacionais. A

máquina virtual é a responsável por criar um ambiente multiplataforma, ou seja, se

Page 42: BOA GRAVIDEZ: APLICATIVO ANDROID PARAfateclins.edu.br/v4.0/trabalhoGraduacao/tEeTDocEWHoYAR78... · 2019-04-03 · CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA SOUZA FACULDADE

41

alguém construir um sistema operacional novo, basta criar uma máquina virtual Java

que traduza os bytecodes para código nativo. (PAMPLONA, 2013)

2.6 XML

XML trata-se de uma linguagem de marcação para representar qualquer tipo

de dados e, possibilita a troca desses dados entre qualquer tipo de aplicação. O

objetivo principal do XML é ser portável, não só quanto à plataforma como também

quanto à aplicação. Em outras palavras, um documento XML deve poder ser lido em

qualquer plataforma computacional e por qualquer aplicação capaz de ler e

processar texto. (PASSOS, 2009)

2.7 ECLIPSE

Eclipse é uma Integrated Development Environment(IDE) gratuita que serve

para a construção de programas de computador, usando diversas linguagens de

programação.

O projeto Eclipse foi originalmente criado pela IBM em 2001 e, apoiado por

um consórcio de fornecedores de software. (ECLIPSE, 2013)

Em 2004, com o objetivo de desvincular o projeto da IBM, foi criada a Eclipse

Foundation. Esta fundação é independente, não tem fins lucrativos, possui sua

própria equipe e é mantida através de doações das próprias organizações que dela

fazem parte como membros. (ARAÚJO, 2013)

Ainda de acordo com Araújo (2013), o Eclipse é um IDE conhecido

comumente para desenvolvimento em Java, no entanto, por meio de plug-ins, ele

pode ser usado para desenvolver aplicações em várias linguagens, como C/C++,

Python, PHP e inclusive para a plataforma Android. A SDK Android utiliza a IDE

Eclipse com o plugin ADT.

2.8 SQLITE

Um Sistema gerenciador de Banco de Dados (SGBD) consiste em um

conjunto de programas de computador responsáveis pelo gerenciamento de um

banco de dados. O principal objetivo é retirar da aplicação cliente a responsabilidade

Page 43: BOA GRAVIDEZ: APLICATIVO ANDROID PARAfateclins.edu.br/v4.0/trabalhoGraduacao/tEeTDocEWHoYAR78... · 2019-04-03 · CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA SOUZA FACULDADE

42

de gerenciar o acesso, manipulação e organização dos dados. O SGBD disponibiliza

uma interface para que os seus clientes possam incluir, alterar ou consultar dados.

(VASCONCELOS, 2012)

No contexto de aplicações para dispositivos móveis, muitas tecnologias para

desenvolvimento se baseiam em arquivos para armazenar dados. A plataforma

Android possui suporte nativo ao SQLite.

O SQLite é um banco de dados relacional, cuja toda a estrutura é salva em

um único arquivo de extensão .db. Desta forma, o banco de dados pode ser

compactado e distribuído juntamente com a aplicação, não necessitando a

instalação de um servidor de banco de dados como ocorre em banco de dados

cliente-servidor. (DALL'OGLIO, 2007)

De acordo com Vasconcelos(2012), o SQLite é uma biblioteca de banco de

dados baseado em Structured Query Language (SQL) que atua como um SGBD em

miniatura, capaz de controlar diversos bancos de dados que podem conter diversas

tabelas.

O código para SQLite é de domínio público e, portanto, seu uso é livre para

qualquer fim, comercial ou privado. (SQLITE, 2013)

O uso do SQLite é recomendado onde a simplicidade da administração,

implementação e manutenção são importantes. É uma boa escolha para dispositivos

ou serviços que devem funcionar de forma autônoma e que possuem memória

limitada tais como: celulares, Personal Digital Assistant (PDA) e MPEG-1/2

AudioLayer3 (MP3) Players. (SQLITE, 2013)

É possível criar o banco de dados e as tabelas, assim como manipular seus

dados através dos comandos DDL (Data Definition Language) e DML (Data

Manipulation Language) do SQL padrão. Os serviços para persistência de dados são

fornecidos pelo SQLite. (VASCONCELOS, 2012)

Os tipos de dados suportados pelo SQLite são BLOB, REAL, INTEGER,

TEXT e NULL, possuindo as seguintes classes de armazenamento (SQLITE, 2013):

NULL: o valor é um valor NULL;

INTEGER: o valor é um inteiro, armazenadas em 1, 2, 3, 4, 6, ou 8 bytes,

dependendo da magnitude do valor;

REAL: o valor é um valor de ponto flutuante;

TEXT: o valor é uma cadeia de texto, armazenado usando a codificação do

banco de dados (UTF-8, UTF-16BE ou UTF-16LE);

Page 44: BOA GRAVIDEZ: APLICATIVO ANDROID PARAfateclins.edu.br/v4.0/trabalhoGraduacao/tEeTDocEWHoYAR78... · 2019-04-03 · CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA SOUZA FACULDADE

43

BLOB: o valor é uma bolha de dados, armazenados exatamente como a

entrada de dado.

De acordo com SQLITE (2013), o SQLite não possui uma classe de

armazenamento para valores booleanos. Em vez disso, valores booleanos são

armazenados como inteiros 0 (falso) e 1 (verdadeiro). Também não há uma classe

de armazenamento reservada para datas ou horários. Em vez disso, o SQLite é

capaz de armazenar datas e horários como valores de texto, real ou inteiro.

2.9 ANDROID MARKET – GOOGLE PLAY

Para a distribuição das aplicações Android, foi criado o site Android Market,

que posteriormente denominou-se Google Play. É um site disponível ao público no

qual os desenvolvedores do Android podem ofertar produtos para dispositivos que

fazem uso do Google Android OS. É necessário adquirir e manter uma conta de

desenvolvedor válida. (GOOGLE PLAY, 2013).

De acordo com Lecheta (2012), o objetivo do site é fornecer aos

desenvolvedores de aplicativos um lugar comum para disponibilizar suas aplicações.

Para publicar uma aplicação, o desenvolvedor deve concordar com os termos de

uso e realizar o pagamento de uma taxa. Há uma taxa de registro de US$ 25

cobrados por uma conta de desenvolvedor do Google Play. De acordo com Google

Play (2013), a taxa é cobrada para incentivar produtos de alta qualidade, evitando,

por exemplo, produtos com spam.

Após a publicação, o aplicativo já pode ser instalado pelos usuários. Há

possibilidade de disponibilizar os aplicativos de forma gratuita ou paga. Segundo

Lecheta(2012), no caso de aplicativos pagos 70% dos lucros com os aplicativos

vendidos são repassados ao desenvolvedor.

Ainda de acordo com Google Play (2013), a distribuição dos aplicativos pelo

Google Play não é exclusiva. É possível distribuí-los por outros canais, porém as

versões publicadas no Google Play precisam estar em conformidade com todas as

políticas do site.

2.10 APLICATIVOS ANDROID PARA TABLETS

Para garantir qualidade aos aplicativos disponibilizados na Google Play são

Page 45: BOA GRAVIDEZ: APLICATIVO ANDROID PARAfateclins.edu.br/v4.0/trabalhoGraduacao/tEeTDocEWHoYAR78... · 2019-04-03 · CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA SOUZA FACULDADE

44

recomendados vários critérios de qualidade para aplicativos. A Google disponibilizou

um checklist específico para desenvolvimento de aplicativos para tablets. (MOURA,

2013)

As recomendações para aplicativos desenvolvidos para tablets compreendem

(TABLETS, 2013):

Teste de qualidade básica do aplicativo tablet: conferir se o aplicativo

atende as principais diretrizes de qualidade da Google Play, como

desempenho e estabilidade, funcionalidade do aplicativo e projeto visual;

Otimização dos layouts para telas maiores: garantir um bom desempenho

do aplicativo nas telas dos tablets, fazer uso de layouts específicos para

telas com tamanho maior;

Aproveitamento da área de tela extra dos tablets: certificar-se de que está

utilizando ao máximo a área de tela extra; fazer uso de layouts

fragmentados (fragments), que podem resultar em um equilíbrio visual

melhor em telas de tablet, oferecendo mais utilidade e legibilidade;

Usar ícones e outros ativos que são projetados para telas de tablet:

fornecer ícones e outros ativos de bitmap para cada densidade na faixa

comumente suportada por tablets. O aplicativo deve, pelo menos, fornecer

uma versão de ícone para as densidade de tela de tablets mais comuns

hdpi, xhdpi, xxddpi;

Ajustar o tamanho da tela e componentes sensíveis ao toque: realizar

testes para certificar-se que o aplicativo apresenta facilidade para uso em

tablets. Certificar-se de que as marcações são de tamanho apropriado para

os elementos de interface do usuário, garantir que não há quebras de linha

inadequados em rótulos, títulos e outros elementos;

Ajustar tamanho de widgets da tela inicial: se o aplicativo contém um

widget na tela inicial, deve-se observar se altura e largura estão definidos

de forma adequada para telas de tablets;

Oferecer um conjunto completo de recursos do aplicativo para usuários de

tablet: certificar-se que todas as funcionalidades disponíveis para o

aplicativo em smartphones também estejam disponíveis para tablets. Caso

o aplicativo tenha alguma função que não poderá ser utilizadas nos tablets,

como telefonia, por exemplo, oferecer outras funcionalidades em

Page 46: BOA GRAVIDEZ: APLICATIVO ANDROID PARAfateclins.edu.br/v4.0/trabalhoGraduacao/tEeTDocEWHoYAR78... · 2019-04-03 · CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA SOUZA FACULDADE

45

substituição ou, garantir que a chamada dessa funcionalidade não seja

acessível aos usuários de tablets.

Especificar as versões adequadamente: certificar-se que o aplicativo possui

declaração de suporte às versões do Android que suportam tablets. O

suporte inicial para tablets foi adicionado no Android 3.0(API nível 11); o

suporte unificado para tablets, telefones e outros dispositivos foi introduzido

no Android 4.0 (API nível 14) e é suportado em versões posteriores;

Declarar dependências de recursos de hardware corretamente: celulares e

tablets costumam oferecer suporte de hardware diferente para sensores,

câmeras, telefonia e outros recursos. Certificar-se de que o aplicativo não

declara requisitos de recursos de hardware que não estão normalmente

disponíveis em tablets. Podem-se declarar os recursos de hardware

como não obrigatório no manifesto do aplicativo, incluindo o atributo:

android: required = "false" (ANDROID, 2013);

Declarar suporte para telas de tablets: para garantir que o aplicativo seja

distribuído como um aplicativo com suporte para tablets é preciso declarar

a opção no manifesto como: android:largeScreens="true" e

android:xlargeScreens="true";

Apresentar o aplicativo no Google Play: certificar-se de permitir que os

usuários de tablets conheçam o aplicativo através de campanhas

promocionais, web site, mensagens sociais, anúncios, entre outras formas

de divulgação e marketing;

Seguir as práticas recomendadas para publicação no Google Play: o

Google Play oferece dicas de otimização para o aplicativo publicado; são

executas uma série de verificações para analisar os critérios básicos de

qualidade, caso seja encontrado algo em que o aplicativo pode ser

melhorado, o desenvolver é notificado e poderá adequar o item.

Se necessário, pode-se alternativamente, optar por publicar um APK para

cada tipo de hardware, porém é recomendado que fosse feito através de um único

APK, otimizado e adequado para atender diferentes tipos de resoluções de tela.

Por fim, é recomendado que sejam feitos quantos testes possíveis em

diferentes aparelhos para garantir a qualidade de performance do aplicativo. Não é

necessário que o desenvolvedor tenha acesso aos diferentes tipos de hardware, os

Page 47: BOA GRAVIDEZ: APLICATIVO ANDROID PARAfateclins.edu.br/v4.0/trabalhoGraduacao/tEeTDocEWHoYAR78... · 2019-04-03 · CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA SOUZA FACULDADE

46

testes podem ser feitos através do emulador Android Virtual Device (AVD) que é

acessado através da IDE Eclipse no Android SDK.

Neste capítulo foram descritas as ferramentas e conceitos utilizados neste

trabalho. Nos próximos capítulos serão apresentadas as análises e projeto de

sistema, bem como a implementação.

Page 48: BOA GRAVIDEZ: APLICATIVO ANDROID PARAfateclins.edu.br/v4.0/trabalhoGraduacao/tEeTDocEWHoYAR78... · 2019-04-03 · CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA SOUZA FACULDADE

47

3 ANÁLISE E PROJETO DE SISTEMA

Este capítulo apresenta as análises e os diagramas utilizados para o

desenvolvimento e implementação do aplicativo proposto. Foi utilizada a Unified

Modeling Language (UML).

De acordo com Guedes (2007), a UML é uma linguagem visual utilizada para

modelar softwares baseados no paradigma de orientação a objetos. É uma

linguagem de modelagem de propósito geral que pode ser aplicada a todos os

domínios de aplicação. Essa linguagem tornou-se, nos últimos anos, a linguagem-

padrão de modelagem adotada internacionalmente pela indústria de engenharia de

software.

3.1 ANÁLISE DE NEGÓCIO

A subseção apresenta os aspectos de mercado e análise de negócio em

relação ao aplicativo proposto.

O setor da saúde apresenta diversos aspectos para os quais é possível a

utilização de aplicativos móveis. Os serviços de saúde prestados por meio de

dispositivos móveis, como smartphones, podem chegar a 28,4 milhões de brasileiros

nos próximos quatro anos, segundo projeção que consta em pesquisa do Sistema

Global para Comunicações Móveis (GSMA), associação que representa as

operadoras de telefonia móvel no mundo. (PETRY, 2013)

De acordo com Bonome et. al. (2012), um dos principais setores atingidos

pelo uso crescente das tecnologias da informação e comunicação é o da saúde.

Essa intervenção tem modificado as estratégias de prestação de serviços gerais em

saúde por todo o mundo, de modo que seu potencial é reconhecido e incentivado

pela Organização das Nações Unidas (ONU) e Organização Mundial da Saúde

(OMS).

3.1.1 Instrução do problema

Durante o período gestacional, surgem dúvidas sobre os sinais, sintomas e

transformações no corpo da mulher, a necessidade de alimentação balanceada e

exercícios recomendados, entre outras mudanças que acontecem com a gestante.

Page 49: BOA GRAVIDEZ: APLICATIVO ANDROID PARAfateclins.edu.br/v4.0/trabalhoGraduacao/tEeTDocEWHoYAR78... · 2019-04-03 · CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA SOUZA FACULDADE

48

Para que as gestantes tenham acesso às informações sobre as

transformações da gravidez, desenvolvimento do bebê e acompanhamento da

gestação propôs-se desenvolver um aplicativo para dispositivos móveis, voltado

para dispositivos móveis.

Pela fácil mobilidade dos tablets e smartphones, a proposta é que as grávidas

tenham acesso às informações a qualquer momento, por meio do uso do aplicativo.

Desta forma, um aplicativo para dispositivos móveis que permita o

acompanhamento de gravidez por uma gestante, poderá ser uma ferramenta de

auxílio durante o período gestacional e as primeiras semanas de vida do bebê.

3.1.2 Análise de Mercado

Os tablets e smartphones ganharam espaço no mercado por oferecer

inovação e interatividade a todo tipo de usuário, são fáceis de usar, rápidos e leves

para transportar. Esta realidade traz um avanço tecnológico e uma gama de

possibilidades para as empresas, como novos canais de comunicação com seus

clientes e ferramentas de trabalho.

Sendo assim, o aplicativo visa atender diretamente às gestantes que desejam

estar conectadas com informações sobre o período gestacional e, acompanhar

dados de seu histórico de consultas médicas.

Poderá também ser utilizado como ferramenta para empresas como

consultórios médicos, operadoras de planos de saúde, entre outros seguimentos na

área, que poderão customizar o aplicativo de modo a atender as necessidades do

tipo de negócio.

Ressalta-se que o aplicativo não pretende substituir o acompanhamento

médico, ou fornecer qualquer tipo de diagnóstico; os objetivos do aplicativo são

oferecer referências quanto aos aspectos biológicos de uma gravidez e

desenvolvimento do bebê oferecendo dicas e utilitários para as gestantes.

3.1.3 Atores e Envolvidos no Processo

A gestante será a usuária do aplicativo e responsável por fornecer

informações sobre a data de última menstruação para que o aplicativo seja iniciado.

Deverá também registrar os dados de consulta médica, através do qual será gerado

o histórico da gestação.

Page 50: BOA GRAVIDEZ: APLICATIVO ANDROID PARAfateclins.edu.br/v4.0/trabalhoGraduacao/tEeTDocEWHoYAR78... · 2019-04-03 · CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA SOUZA FACULDADE

49

3.1.4 Descrição do Ambiente Atual

Durante o período gestacional, são realizadas consultas de acompanhamento

pré-natal. As consultas são feitas em horários agendados e em consultório médico.

Todo o histórico da gestação é registrado em documento ou sistema próprio

pelo médico, o qual tem acesso aos dados em seu consultório. A gestante agenda

sua consulta e, na data marcada, é atendida pelo médico para acompanhamento e

esclarecimento de dúvidas.

Para saber mais informações sobre mudanças no corpo, desenvolvimento dos

bebês ou mesmo alimentação, a gestante pode utilizar de informações em folhetos,

livros ou revistas na área, ou ainda, realiza busca na internet.

Caso queira verificar algum dado referente à sua consulta ou seu histórico da

gestação, a gestante deve possuir algum local com anotações para fazer o

acompanhamento, ou, salvo em casos de urgência médica, aguardar a próxima

consulta com o médico.

3.2 VISÃO GERAL DO PRODUTO

Nesta subseção são apresentadas as características e funcionalidades do

aplicativo como produto.

O aplicativo Boa Gravidez possui dicas semanais, além de diversos utilitários,

que são importantes para o desenvolvimento de uma gravidez saudável.

Possui, também, uma lista pré-definida para os produtos que são necessários

na hora da chegada do bebê. A gestante poderá marcar os produtos que ela já

possui e quais ainda não, tendo maior controle do que falta comprar. Este utilitário

pode atender, por exemplo, quem pretende fazer um chá de bebê, pois é possível

criar listas e, inclusive adicionar itens que não estão pré-cadastrados.

As informações sobre a gestação mudam de semana a semana, mostrando

sempre as dicas sobre a semana atual de gestação, informando sobre cuidados

durante a gravidez, os exames necessários, o pré-natal e desenvolvimento do bebê.

3.2.1 Perspectiva do Produto (Análise de Mercado)

O aplicativo é totalmente autônomo e independente, ou seja, não depende de

outro sistema, é realizada somente interação com a API Facebook.

Page 51: BOA GRAVIDEZ: APLICATIVO ANDROID PARAfateclins.edu.br/v4.0/trabalhoGraduacao/tEeTDocEWHoYAR78... · 2019-04-03 · CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA SOUZA FACULDADE

50

A proposta é que o aplicativo seja disponibilizado aos usuários Android através

da publicação no Google Play.

3.2.2 Premissas e Dependências

Para utilização de aplicativos Android, o usuário deverá possuir um

smartphone ou tablet com o sistema operacional Google Android.

Como premissa para o desenvolvimento deste protótipo, foi considerado que

não será necessário estar conectado com a Internet para utilização do aplicativo,

porém é necessário que se faça uso da conexão para realizar o download. Para tal,

o usuário deve possuir uma conta cadastrada na Play Store, a loja on-line de

aplicativos para Android, disponibilizada pela Google.

Observa-se que, para este trabalho foi desenvolvido apenas o protótipo do

aplicativo, desta forma o aplicativo apresentado ainda não se encontra disponível na

Play Store.

3.2.3 Características e Funcionalidades

O aplicativo visa atender as gestantes que utilizam da tecnologia de

dispositivos móveis. Através do aplicativo espera-se que a gestante possa ter maior

tranquilidade e informação durante o período gestacional, além de entretenimento

com o uso das funcionalidades de escolha do nome do bebê, listas de enxoval e

conexão com o Facebook.

Funcionalidades do aplicativo:

Perfil da Gestante: visualizar e manter o perfil cadastrado da gestante;

Calendário Semanal: permite visualizar informações sobre a gestação

semana a semana;

Consulta Médica: cadastro de consultas realizadas com o médico;

Histórico das consultas: funcionalidade onde será possível visualizar dados

referentes às consultas médicas de acordo com os dados registrados pela

gestante;

Nomes de bebês: possui listas pré-definidas de nomes de bebês do sexo

feminino e masculino, com a possibilidade de selecionar nomes que sejam

Page 52: BOA GRAVIDEZ: APLICATIVO ANDROID PARAfateclins.edu.br/v4.0/trabalhoGraduacao/tEeTDocEWHoYAR78... · 2019-04-03 · CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA SOUZA FACULDADE

51

favoritos pela gestante;

Lista Enxoval: funcionalidade que possui lista pré-definida com itens para

enxoval; prevê a possibilidade de inserção de novos produtos na lista;

Conexão com o Facebook: permite enviar uma mensagem ou uma foto ao

Facebook.

3.3 ANÁLISE DE REQUISITOS

De acordo com Guedes (2007), os diagramas da UML dividem-se em

diagramas estruturais e diagramas comportamentais. Os diagramas estruturais

abrangem os diagramas de classes, de estrutura composta, de objetos, de

componentes, de implantação e de pacotes, enquanto os comportamentais

englobam os de casos de uso, atividade, máquina de estados, sequência,

comunicação, visão geral de interação e tempo.

Para este trabalho foram desenvolvidos os diagramas: caso de uso, classes,

atividades, sequência e o MVC.

3.3.1 Caso de Uso

Figura 3.1 – Diagrama de Caso de Uso Fonte: Elaborado pelas autoras, 2013

3.3.2 Diagrama de Classes

Page 53: BOA GRAVIDEZ: APLICATIVO ANDROID PARAfateclins.edu.br/v4.0/trabalhoGraduacao/tEeTDocEWHoYAR78... · 2019-04-03 · CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA SOUZA FACULDADE

52

Figura 3.2– Diagrama de Classes Fonte: Elaborado pelas autoras, 2013

3.3.3 Especificações de Histórias e Diagramas

Esta subseção apresenta abstrações de pequenas histórias narrativas

envolvendo a interação entre a gestante e o aplicativo, representado as

funcionalidades do aplicativo. Apresenta também os diagramas de atividade,

sequência e MVC respectivos.

3.3.3.1 Manter Perfil

Para possuir acesso ao aplicativo, a gestante precisa fazer um cadastro

prévio, preenchendo um formulário com algumas informações relacionadas ao seu

perfil. Com essas informações o aplicativo autentica os dados, e realiza os cálculos

necessários, como por exemplo, o cálculo da semana gestacional.

Page 54: BOA GRAVIDEZ: APLICATIVO ANDROID PARAfateclins.edu.br/v4.0/trabalhoGraduacao/tEeTDocEWHoYAR78... · 2019-04-03 · CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA SOUZA FACULDADE

53

Figura 3.3 – Diagrama de Atividade. Manter Perfil Fonte: Elaborado pelas autoras, 2013

Figura 3.4 – Diagrama de Sequência. Manter Perfil Fonte: Elaborado pelas autoras, 2013

Page 55: BOA GRAVIDEZ: APLICATIVO ANDROID PARAfateclins.edu.br/v4.0/trabalhoGraduacao/tEeTDocEWHoYAR78... · 2019-04-03 · CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA SOUZA FACULDADE

54

Figura 3.5 – MVC. Manter Perfil Fonte: Elaborado pelas autoras, 2013

3.3.3.2 Manter Lista Enxoval

A gestante pode visualizar os itens previamente cadastrados ou adicionar

novos itens de produtos na lista de enxoval. O aplicativo atualiza a lista de enxoval

conforme os itens escolhidos pela gestante.

Figura 3.6 – Diagrama de Atividades. Manter Enxoval Fonte: Elaborado pelas autoras, 2013

Page 56: BOA GRAVIDEZ: APLICATIVO ANDROID PARAfateclins.edu.br/v4.0/trabalhoGraduacao/tEeTDocEWHoYAR78... · 2019-04-03 · CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA SOUZA FACULDADE

55

Figura 3.7 – Diagrama de Sequência. Manter Enxoval Fonte: Elaborado pelas autoras, 2013

Figura 3.8 - MVC. Manter Enxoval Fonte: Elaborado pelas autoras, 2013

Page 57: BOA GRAVIDEZ: APLICATIVO ANDROID PARAfateclins.edu.br/v4.0/trabalhoGraduacao/tEeTDocEWHoYAR78... · 2019-04-03 · CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA SOUZA FACULDADE

56

3.3.3.3 Selecionar nomes de bebê

O aplicativo fornece uma lista com diversos nomes, separados em femininos

e masculinos e a gestante pode adicionar novos nomes, ou selecionar os que mais

gostar, adicionando-os como favoritos.

Após os nomes serem adicionados como favoritos, o aplicativo fornece uma

tela exclusivamente com os nomes que a gestante adicionou. Caso a gestante

exclua algum nome que esteja nos favoritos, o aplicativo atualizará a lista.

Figura 3.9 – Diagrama de Atividades. Nomes Bebê Fonte: Elaborado pelas autoras, 2013

Page 58: BOA GRAVIDEZ: APLICATIVO ANDROID PARAfateclins.edu.br/v4.0/trabalhoGraduacao/tEeTDocEWHoYAR78... · 2019-04-03 · CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA SOUZA FACULDADE

57

Figura 3.10 – Diagrama de Sequência. Manter Nomes Bebê Fonte: Elaborado pelas autoras, 2013

Figura 3.11 – MVC. Manter Nomes Bebê Fonte: Elaborado pelas autoras, 2013

Page 59: BOA GRAVIDEZ: APLICATIVO ANDROID PARAfateclins.edu.br/v4.0/trabalhoGraduacao/tEeTDocEWHoYAR78... · 2019-04-03 · CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA SOUZA FACULDADE

58

3.3.3.4 Consultar Calendário Semanal

A partir do perfil da gestante, é possível saber em qual semana gestacional a

gestante se encontra, direcionando-a para a data em que ela está e com as

informações da semana atual. Toda semana o aplicativo fornece novas informações,

novas dicas e recomendações.

Também é possível acessar uma lista com todas as semanas, caso a

gestante queria obter informações de outras semanas.

Figura 3.12 – Diagrama de Atividades. Consultar Calendário Semanal Fonte: Elaborado pelas autoras, 2013

Page 60: BOA GRAVIDEZ: APLICATIVO ANDROID PARAfateclins.edu.br/v4.0/trabalhoGraduacao/tEeTDocEWHoYAR78... · 2019-04-03 · CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA SOUZA FACULDADE

59

Figura 3.13 – Diagrama de Sequência. Consultar Calendário Semanal Fonte: Elaborado pelas autoras, 2013

Figura 3.14 – MVC. Consultar Calendário Semanal Fonte: Elaborado pelas autoras, 2013

Page 61: BOA GRAVIDEZ: APLICATIVO ANDROID PARAfateclins.edu.br/v4.0/trabalhoGraduacao/tEeTDocEWHoYAR78... · 2019-04-03 · CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA SOUZA FACULDADE

60

3.3.3.5 Manter Consulta Médica

A gestante pode adicionar as consultas médicas, através de um cadastro de

datas, horários e descrição. O aplicativo armazena as informações e fornece

relatórios. É necessário sempre atualizar esses dados, pois a gestante tem um

aumento de peso constante, sendo necessários novos cálculos para que o aplicativo

possa ser eficaz e exato.

Figura 3.15 – Diagrama de Atividades. Manter Consulta Médica Fonte: Elaborado pelas autoras, 2013

Page 62: BOA GRAVIDEZ: APLICATIVO ANDROID PARAfateclins.edu.br/v4.0/trabalhoGraduacao/tEeTDocEWHoYAR78... · 2019-04-03 · CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA SOUZA FACULDADE

61

Figura 3.16 Diagrama de Sequência Manter Consulta Médica Fonte: Elaborado pelas autoras, 2013

Figura 3.17 – MVC. Manter Consulta Médica Fonte: Elaborado pelas autoras, 2013

Page 63: BOA GRAVIDEZ: APLICATIVO ANDROID PARAfateclins.edu.br/v4.0/trabalhoGraduacao/tEeTDocEWHoYAR78... · 2019-04-03 · CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA SOUZA FACULDADE

62

3.3.3.6 Consultar Dados da Gestação

O aplicativo fornece informações detalhadas a gestante, tais como IMC atual

e o IMC ideal, média de peso da gestante e última consulta realizada.

. Figura 3.18 – Diagrama de Atividades. Consultar Dados da Gestação Fonte: Elaborado pelas autoras, 2013

Figura 3.19 – Diagrama de Sequência Consultar Dados da Gestação Fonte: Elaborado pelas autoras, 2013

Page 64: BOA GRAVIDEZ: APLICATIVO ANDROID PARAfateclins.edu.br/v4.0/trabalhoGraduacao/tEeTDocEWHoYAR78... · 2019-04-03 · CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA SOUZA FACULDADE

63

Figura 3.20 - MVC. Consultar Dados da Gestação Fonte: Elaborado pelas autoras, 2013

3.3.3.7 Conexão com o Facebook

O aplicativo interage com o Facebook, possibilitando a gestante de enviar

mensagens e fotos diretamente para a rede social. Essa interação é feita acessando

uma API disponibilizada pelo Facebook SDK. (APÊNDICE B)

3.3.4 Projeto de Banco de Dados

Nesta subseção é apresentada a organização dos dados inseridos no banco

de dados do sistema. São apresentados os diagramas de dados (MER) e o

mapeamento para modelo relacional.

Page 65: BOA GRAVIDEZ: APLICATIVO ANDROID PARAfateclins.edu.br/v4.0/trabalhoGraduacao/tEeTDocEWHoYAR78... · 2019-04-03 · CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA SOUZA FACULDADE

64

3.3.4.1 Diagrama de Dados (MER)

Figura 3.21 – Diagrama de Dados Fonte: Elaborado pelas autoras, 2013

3.3.4.2 Mapeamento para Modelo Relacional e Projeto Físico

Figura 3.22 – Mapeamento Relacional Fonte: Elaborado pelas autoras, 2013

Page 66: BOA GRAVIDEZ: APLICATIVO ANDROID PARAfateclins.edu.br/v4.0/trabalhoGraduacao/tEeTDocEWHoYAR78... · 2019-04-03 · CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA SOUZA FACULDADE

65

4 IMPLEMENTAÇÃO

Este capítulo apresenta as interfaces gráficas da aplicação. Para o

desenvolvimento deste protótipo foram utilizadas referências de Lecheta(2010),

Lecheta(2012), além de tutorais disponíveis na internet que serão referenciados nos

tópicos seguintes deste capítulo.

4.1 Tela de Cadastro

A figura 4.1 representa a tela contendo o ícone do aplicativo Boa Gravidez e a

tela de cadastro da gestante.

Ao inicializar o aplicativo por meio do ícone será exibida a tela de cadastro da

gestante, essa tela é exibida somente na primeira vez que acessa o aplicativo, pois

não há necessidade da gestante efetuar seu cadastro toda vez que acessar o

aplicativo.

Figura 4.1 – Tela de Cadastro Fonte: Elaborado pelas autoras, 2013

4.2 Tela Principal

A figura 4.2 apresenta todas as funcionalidades do aplicativo, contém um

menu com vários botões que redireciona o usuário para a funcionalidade desejada.

Page 67: BOA GRAVIDEZ: APLICATIVO ANDROID PARAfateclins.edu.br/v4.0/trabalhoGraduacao/tEeTDocEWHoYAR78... · 2019-04-03 · CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA SOUZA FACULDADE

66

Figura 4.2 – Tela Principal Fonte: Elaborado pelas autoras, 2013

4.3 Perfil

A figura 4.3 exibe as informações da gestante: nome, data da última

menstruação, data provável do parto, nome do bebê, altura e peso da gestante. Os

dados de nome e data da última menstruação são preenchidos na tela inicial de

cadastro figura 4.1; a data provável do parto é calculada e apresentada pelo

aplicativo a partir dos dados iniciais. As demais informações devem ser cadastradas

ao acessar o perfil pela primeira vez, clicando na opção atualizar dados, conforme

figura 4.4.

Figura 4.3 – Perfil – Informações da Gestante Fonte: Elaborado pelas autoras, 2013

Page 68: BOA GRAVIDEZ: APLICATIVO ANDROID PARAfateclins.edu.br/v4.0/trabalhoGraduacao/tEeTDocEWHoYAR78... · 2019-04-03 · CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA SOUZA FACULDADE

67

Figura 4.4 – Perfil – Atualizar Dados Fonte: Elaborado pelas autoras, 2013

4.4 Meus Dados

A figura 4.5 mostra os dados da gestação. Essas informações são geradas a

partir de cálculos realizados com as informações da gestante cadastradas no perfil e

com informações referentes à última consulta realizada pela gestante.

Figura 4.5 – Dados da Gestação Fonte: Elaborado pelas autoras, 2013

4.5 Consulta

A gestante pode cadastrar todas suas consultas, tanto as realizadas como as

somente agendadas, conforme figura 4.6.

Page 69: BOA GRAVIDEZ: APLICATIVO ANDROID PARAfateclins.edu.br/v4.0/trabalhoGraduacao/tEeTDocEWHoYAR78... · 2019-04-03 · CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA SOUZA FACULDADE

68

Figura 4.6 – Consulta Fonte: Elaborado pelas autoras, 2013

4.6 Minhas Consultas

A figura 4.7 exibe todas as consultas cadastradas da gestante, sendo possível

editar ou excluir qualquer consulta.

Figura 4.7 – Minhas Consultas Fonte: Elaborado pelas autoras, 2013

4.7 Semanas

A figura 4.8 apresenta informações referentes à semana gestacional atual.

Caso a gestante queira visualizar informações referentes a outras semanas, é

Page 70: BOA GRAVIDEZ: APLICATIVO ANDROID PARAfateclins.edu.br/v4.0/trabalhoGraduacao/tEeTDocEWHoYAR78... · 2019-04-03 · CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA SOUZA FACULDADE

69

possível visualizar uma lista com as semanas do período gestacional e escolher a

semana desejada de acordo com a figura 4.9. Os dados fornecidos foram obtidos de

Gravidez (2013).

Figura 4.8 – Semana Atual Gestante Fonte: Elaborado pelas autoras, 2013

Figura 4.9 – Semanal Geral Fonte: Elaborado pelas autoras, 2013

4.8 Enxoval

A figura 4.10 apresenta um submenu de enxoval, que possui um utilitário no

qual a gestante pode visualizar uma lista geral conforme figura 4.11, com diversos

produtos previamente cadastrados, como também é possível adicionar novos

Page 71: BOA GRAVIDEZ: APLICATIVO ANDROID PARAfateclins.edu.br/v4.0/trabalhoGraduacao/tEeTDocEWHoYAR78... · 2019-04-03 · CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA SOUZA FACULDADE

70

produtos de acordo com a figura 4.12. A figura 4.13 apresenta uma lista especial da

gestante, nessa lista são apresentados todos os produtos selecionados pela

gestante através da lista geral, figura 4.12, sendo possível remover esses produtos

desta lista especial.

Para desenvolvimento do layout da tela ilustrada na figura 4.11 foram

utilizadas referências dos tutoriais de Gupta(2013) e Montebugnoli(2012), que tratam

do uso do componente ListView. (APÊNDICE C)

Figura 4.10 – Enxoval Fonte: Elaborado pelas autoras, 2013

Figura 4.11 – Enxoval – Lista Geral Fonte: Elaborado pelas autoras, 2013

Page 72: BOA GRAVIDEZ: APLICATIVO ANDROID PARAfateclins.edu.br/v4.0/trabalhoGraduacao/tEeTDocEWHoYAR78... · 2019-04-03 · CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA SOUZA FACULDADE

71

Figura 4.12 – Enxoval – Novo Produto Fonte: Elaborado pelas autoras, 2013

Figura 4.13 – Enxoval – Lista Especial Fonte: Elaborado pelas autoras, 2013

4.9 Nomes de Bebê

O aplicativo possui submenu de nomes, conforme figura 4.14. Exibe vários

nomes de bebê, separados por sexo e previamente cadastrados no banco de dados,

conforme figura 4.15. A gestante pode adicionar um novo nome, como exibe na

figura 4.16 e também pode selecionar todos os nomes favoritos e gerar uma lista

especial de favoritos contendo todos os nomes selecionados pela gestante, de

acordo com a figura 4.17.

Page 73: BOA GRAVIDEZ: APLICATIVO ANDROID PARAfateclins.edu.br/v4.0/trabalhoGraduacao/tEeTDocEWHoYAR78... · 2019-04-03 · CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA SOUZA FACULDADE

72

Figura 4.14 – Nomes de Bebê Fonte: Elaborado pelas autoras, 2013

Figura 4.15 – Nomes de Bebê – Por sexo Fonte: Elaborado pelas autoras, 2013

Figura 4.16 – Nomes de Bebê – Adicionar novo Fonte: Elaborado pelas autoras, 2013

Page 74: BOA GRAVIDEZ: APLICATIVO ANDROID PARAfateclins.edu.br/v4.0/trabalhoGraduacao/tEeTDocEWHoYAR78... · 2019-04-03 · CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA SOUZA FACULDADE

73

Figura 4.17 – Nomes de Bebê – Favoritos Fonte: Elaborado pelas autoras, 2013

4.10 Facebook

A figura 4.17 representa a conexão com o aplicativo e a API Facebook, sendo

possível publicar uma mensagem ou uma foto diretamente para o perfil Facebook da

gestante. Para desenvolvimento dessa funcionalidade foram obtidas referências de

FACEBOOK DEVELOPERS(2013), além dos tutoriais de Leal(2012) e

Medeiros(2013). (APÊNDICE B)

Figura 4.18 – Facebook Fonte: Elaborado pelas autoras, 2013

Ao finalizar este capítulo, foram relatadas todas as etapas de

desenvolvimento deste trabalho e a seguir são apresentadas as conclusões.

Page 75: BOA GRAVIDEZ: APLICATIVO ANDROID PARAfateclins.edu.br/v4.0/trabalhoGraduacao/tEeTDocEWHoYAR78... · 2019-04-03 · CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA SOUZA FACULDADE

74

CONCLUSÃO

Os dispositivos móveis ganharam o mercado, abrindo assim mais um nicho

de oportunidades para os desenvolvedores de softwares. Por ser uma plataforma

única e de código aberto, que tem com responsáveis um grupo de desenvolvedores

contando com o Google e a OHA, o Google Android OS apresenta-se como um

sistema operacional flexível e confiável.

O Android pode ser utilizado em diferentes tipos de hardware para

dispositivos móveis e essa característica contribuiu para aprimoramento do sistema

operacional e popularização no mercado.

Este trabalho teve como objetivo o desenvolvimento de um aplicativo móvel

para gestantes, levando em consideração o uso em smartphones e tablets.

Para o desenvolvimento de aplicativos Android utiliza-se da linguagem de

programação JAVA e XML. O entendimento inicial da linguagem foi simples por se

tratar de linguagem já estudada durante o curso, porém o KIT SDK possui diversos

componentes nativos, e algumas regras específicas que requerem estudo. Um dos

componentes bastante utilizados é o ListView, que realiza o carregamento de dados

na tela através de um adaptador que pode ser nativo (SimpleAdapter) ou adaptado

pelo desenvolvedor (ArrayAdapter). O componente proporciona diversas

possibilidades, porém seu uso se torna trabalhoso quando utilizado com layouts

complexos. Também foi encontrada dificuldade quanto à utilização do modelo MVC,

pois grande parte das documentações e tutoriais disponíveis não conta com o uso

dessa ferramenta.

No aplicativo foi desenvolvido layout para que a gestante possa fazer uma

publicação com envio de mensagem e foto diretamente para seu perfil Facebook.

Para fazer a conexão com a rede social Facebook, foi utilizada a APIGraph do

Facebook que fornece elementos para que o aplicativo desenvolvido tenha acesso

aos dados públicos do perfil dos usuários da rede. Observa-se, porém que, apesar

das documentações fornecerem a base para o desenvolvimento, foi encontrada

dificuldade quanto a métodos que são retirados das APIs por serem considerados

obsoletos.

As adversidades encontradas foram superadas por meio de pesquisas, onde

se procurou referências em documentações oficiais e tutoriais disponibilizados na

Page 76: BOA GRAVIDEZ: APLICATIVO ANDROID PARAfateclins.edu.br/v4.0/trabalhoGraduacao/tEeTDocEWHoYAR78... · 2019-04-03 · CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA SOUZA FACULDADE

75

Internet. Buscaram-se referências para utilização do modelo MVC, prevendo

reutilização do código e aplicação de boas práticas de desenvolvimento.

Acredita-se que o objetivo foi atendido, com a criação de um aplicativo

disponível tanto para uso em smartphones e tablets, contando com os utilitários

propostos para serem utilizados por uma gestante. Não foi realizada a publicação

oficial do aplicativo no Google Play, por este protótipo fazer uso de diversas fontes

quanto aos aspectos da gestação e uso de imagens que requerem de licenças de

uso.

Durante o desenvolvimento do trabalho, observou-se a possibilidade de

criação de alguns outros utilitários que serão estudados para implantação em versão

oficial e, que podem ser consideradas também para trabalhos futuros: interatividade

com site ou blog no qual a gestante possa ter interação com outras usuárias do

aplicativo, links para acesso a notícias sobre gestação, integração com câmera do

dispositivo para manutenção de álbum de fotos, notificação de datas de consultas

agendadas e utilização vídeos sobre as fases período gestacional.

Page 77: BOA GRAVIDEZ: APLICATIVO ANDROID PARAfateclins.edu.br/v4.0/trabalhoGraduacao/tEeTDocEWHoYAR78... · 2019-04-03 · CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA SOUZA FACULDADE

76

REFERÊNCIAS BIBLOGRÁFICAS

ANDROID. Configurações do Android. Adobe AIR. Disponível em: <http://help.adobe.com/pt_BR/air/build/WSfffb011ac560372f-5d0f4f25128cc9cd0cb-7ffc.html>. Acesso em: 17 nov. 2013. ANDROID DEVELOPERS. 2013. Disponível em: <https://developer.android.com/sdk/index.html>. Acesso em: 01 set. 2013. ANDROID 1.5. Android 1.5 Platform Highlights. 2009. Disponível em: <http://developer.android.com/sdk/android-1.5-highlights.html> Acesso em: 30 julho. 2013. ARAÚJO, C. O IDE Eclipse. Java Magazine. 2013. Disponível em: <www.devmedia.com.br/articles/viewcomp_forprint.asp?comp=24796>. Acesso em: 18 ago. 2013. BLACKBERRY. BlackBerry. TechTudo. Disponível em: <http://www.techtudo.com.br/tudo-sobre/blackberry.html>. Acesso em: 01 set. 2013. BONOME, K. S.et. al. Disseminação no uso de aplicativos móveis em atenção à saúde. 2012. CBIS: XIII Congresso Brasileiro em Informática em Saúde. BUDAG, D. Symbian Agora é 100% Open Source - Conheça um Pouco da História. 2010. Disponível em: <http://www.usuarionokia.com.br/symbian-agora-e-100-open-source-conheca-um-pouco-da-historia/> Acesso em: 01 maio 2013. DALL'OGLIO, P. Usando o SQLite. 2007. Disponível em: <http://pablo.blog.br/49>. Acesso em: 01 set. 2013. DIAS, T. M. Tablets superarão notebooks em 2013. Estadão, São Paulo, 08 jan. 2013. Disponível em: <http://blogs.estadao.com.br/link/tablets-superarao-notebooks-em-2013/>. Acesso em: 20 abr. 2013. DISPOSITIVOS. Dispositivos móveis: revolução e tendência – entrevista com Diretor de Comunicação da Associação de Marketing Móvel do Brasil. LG Sistemas, Goiânia. 09 set. 2010. Disponível em: <http://www.lg.com.br/canais/mais-ti/entrevistas/dispositivos-moveis-revolucao-e-tendencia>. Acesso em: 21 mar. 2013. ECLIPSE. 2013. Disponível em: <www.eclipse.org>. Acesso em: 08 ago. 2013. FACEBOOK DEVELOPERS. 2013. Disponível em: <https://developers.facebook.com/docs/sdks/>. Acesso em: 01 set. 2013. FLIP STUDIO. Tablets e smartphones: como será seu próximo computador?. 2011. Disponível em: <www.flipstudio.net/site/tablets-e-smartphones-como-sera-seu-prox imo-computador/>. Acesso em: 21 maio 2013.

Page 78: BOA GRAVIDEZ: APLICATIVO ANDROID PARAfateclins.edu.br/v4.0/trabalhoGraduacao/tEeTDocEWHoYAR78... · 2019-04-03 · CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA SOUZA FACULDADE

77

GOOGLE PLAY. Registro de desenvolvedores. 2013. Disponível em: <https://support.google.com/googleplay/android-developer/answer/113468?hl=pt>. Acesso em: 24 nov. 2013. GRAVIDEZ. Gravidez. Bebe.com.br. 2013. Disponível em: <http://bebe.abril.com.br/gravidez>. Acesso em: 12 out. 2013. GUEDES, G. T. A. UML 2: guia prático. 1. ed. São Paulo: Novatec, 2007. GUPTA, A. Android Listview with CheckBox and a button to get the selected option. Android Application Development. 2013. Disponível em: <http://amitandroid.blogspot.com.br/2013/03/android-listview-with-checkbox-and.html>. Acesso em: 17 nov. 2013. HONEYCOMB. Android Developers. 2013. Disponível em: <http://developer.android.com/about/versions/android-3.0-highlights.html>. Acesso em: 21 maio 2013. IOM. Dietary Reference Intakes (DRIs): Recommended Dietary Allowances and Adequate Intakes, Total Water and Macronutrients. 2011. Disponível em: <http://www.iom.edu/Activities/Nutrition/SummaryDRIs/~/media/Files/Activity%20Files/Nutrition/DRIs/5_Summary%20Table%20Tables%201-4.pdf>. Acesso em: 21 maio 2013. JAVA. 2013. Disponível em: <http://www.java.com/pt_BR/about/>. Acesso em: 08 ago. 2013. LANDERDAHL, M.C. et al. A percepção de mulheres sobre atenção pré-natal em uma Unidade Básica de Saúde. Escola Anna Nery Revista de Enfermagem, v. 11, n. 1, p. 105-11, Mar. 2007. Disponível em: <http://www.scielo.br/pdf/ean/v11n1/v11n1a15.pdf>. Acesso em: 02 mar. 2013. LEAL, N. G. V. Facebook API no Android. 2012. Disponível em: <http://nglauber.blogspot.com.br/2012/05/facebook-api-no-android.html>. Acesso em: 01 set. 2013. LECHETA, R. R. Google Android: aprenda a criar aplicações para dispositivos móveis com o Android SDK. 2. ed. São Paulo: Novatec, 2010. LECHETA, R. R. Google Android para tablets: aprenda a desenvolver aplicações para o Android: de smartphones a tablets. 1. ed. São Paulo: Novatec, 2012. LEE, V. et. al. Aplicações Móveis: arquitetura, projeto e desenvolvimento. São Paulo: Pearson, 2005. LOWE, S. WWDC 2010 Keynote Live Blog. 2010. Disponível em: <http://www.ign.com/articles/2010/06/07/wwdc-2010-keynote-live-blog>. Acesso em: 15 maio 2013.

Page 79: BOA GRAVIDEZ: APLICATIVO ANDROID PARAfateclins.edu.br/v4.0/trabalhoGraduacao/tEeTDocEWHoYAR78... · 2019-04-03 · CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA SOUZA FACULDADE

78

MARTINS, W. Criando páginas para seus repositórios com o GitHub Pages. 2013. Tableless. Disponível em: <tableless.com.br/criando-paginas-web-para-seus-repositorios-com-o-github-pages/>. Acesso em: 16 dez. 2013. MEDEIROS, W. N. Integrando aplicações Android com o Facebook. Devmedia. Disponível em: <http://www.devmedia.com.br/integrando-aplicacoes-android-com-o-facebook/27567>. Acesso em: 01 set. 2013. MINISTÉRIO DA SAÚDE. Normas e Manuais Técnicos: Vigilância alimentar e nutricional - Sisvan: orientações básicas para a coleta, processamento, análise de dados e informação em serviços de saúde. Série A. Brasília, DF, 2004. 120 p. ______. Normas e Manuais Técnicos: pré-natal e Puerpério: atenção qualificada e humanizada – manual técnico. Série A. 3. ed. Brasília, DF, 2006. 163 p. ______. Maternidade: do pré-natal ao pós-parto, saiba como garantir a saúde das gestantes, mães e bebês. Disponível em: <http://www.brasil.gov.br/sobre/saude/maternidade>. Acesso em: 16 mar. 2013. MONTEBUGNOLI, T. C. Android - Aprendendo a utilizar o ListView. The Club. 2012. Disponível em: <http://www.theclub.com.br/Restrito/Revistas/201211/ANDR1112.AS PX>. Acesso em: 08 nov. 2013. MOURA, O. Google incentiva o desenvolvimento de Apps Android para tablets. TecnoDroid. 2012. Disponível em: <http://tecnodroid.com.br/noticias/google/google-incentiva-desenvolvedores-de-apps-android-para-tablets-629.html>. Acesso em: 17 nov. 2013. MONTEIRO, J. B. Google Android: crie aplicações para celulares e tablets. E-book. São Paulo: Casa do Código, 2012. NILSSON, T. Ice Cream Sandwich – from source code release to software upgrade. SonyMobile. 2011. Disponível em <http://developer.sonymobile.com/2011/12/07/ice-cream-sandwich-from-source-code-release-to-software-upgrade/>. Acesso em: 09/09/2012. NÚCLEO TREINAMENTOS. O que é Windows Phone 7 e por que ter um celular com ele. 2011. Disponível em: <http://www.nucleotreinamentos.com.br/novo/detalheNoticias.php?e=150> Acesso em: 20 julho. 2013. PAMPLONA, V. F. Tutorial Java: o que é Java?. JavaFree.org. 2013. Disponível em: <http://javafree.uol.com.br/artigo/871498/Tutorial-Java-O-que-e-Java.html>. Acesso em: 21 maio 2013. PASSOS, T. S. Android, Arquitetura e Desenvolvimento. 2009. Monografia (Bacharelado em Ciência da Computação). Curso de Ciência da Computação, Pontifícia Universidade Católica de Minas Gerais – Poços de Caldas. PETRY, R. Serviços de saúde por celular estão em alta. Estadão, 21 maio 2013, Disponível em: <http://blogs.estadao.com.br/link/servicos-de-saude-por-celular-

Page 80: BOA GRAVIDEZ: APLICATIVO ANDROID PARAfateclins.edu.br/v4.0/trabalhoGraduacao/tEeTDocEWHoYAR78... · 2019-04-03 · CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA SOUZA FACULDADE

79

estao-em-alta/>. Acesso em: 08 ago. 2013. PINTO, P. M. T. N. L.; GOMES, A. R. C. Segurança na conectividade WIFI em dispositivos móveis: estudo de caso do Iphone. E-xacta. Belo Horizonte: Editora UniBH, v. 4, n. 3, p. 203-217. 2011. Disponível em: <www.unibh.br/revistas/exacta/>. Acesso em: 21 maio 2013. SANTAREM SEGUNDO, J. E. Representação Iterativa: um modelo para repositórios digitais. 2010. Tese (Doutorado em Ciência da Informação) – Faculdade de Filosofia e Ciências, Universidade Estadual Paulista, Marília. SILVA, P. Auditoria web do IVC constata recorde nos acessos de dispositivos móveis em janeiro. IVC Brasil. 2013. Disponível em: <http://www.ivcbrasil.org.br/artigoBlog.asp?Artigo=264>. Acesso em: 10 mar. 2013. SQLITE, About. SQLite. 2013. Disponível em: <http://www.sqlite.org/about.html>. Acesso em: 01 set. 2013. TABLET App Quality Checklist. Android Developers. 2013. Disponível em: <http://developer.android.com/distribute/googleplay/quality/tablet.html>. Acesso em: 17 nov. 2013. TECNOINFOBRASIL. Como surgiu o Android. 2011. Disponível em: <http://www.tecnoinfobrasil.com/2011/11/como-surgiu-o-android.html>. Acesso em: 18 ago. 2012. VARELLA, D. Problemas na gravidez: incompatibilidade sanguínea. Dr. Draúzio. 2013. Disponível em: <http://drauziovarella.com.br/mulher-2/gravidez/incompatibilidade-sanguinea/>. Acesso em: 01 maio 2013. VASCONCELOS, G. B. SQLite no Android. Web Mobile Magazine. Ed. 34. 2012. Disponível em: <http://www.devmedia.com.br/sqlite-no-android-artigo-web-mobile-34/19201>. Acesso em: 08 set. 2012.

Page 81: BOA GRAVIDEZ: APLICATIVO ANDROID PARAfateclins.edu.br/v4.0/trabalhoGraduacao/tEeTDocEWHoYAR78... · 2019-04-03 · CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA SOUZA FACULDADE

80

APÊNDICE A - CONFIGURAÇÃO DO AMBIENTE

Para iniciar o desenvolvimento de aplicações para o Android, é necessário

instalar o SDK, que contém o emulador e todas as ferramentas necessárias para o

desenvolvimento.

1 INSTALAÇÃO JAVA DEVELOPMENT KIT(JDK)

O primeiro passo é verificar se o JDK já está instalado na máquina, para isso

acessar os seguintes passos:

Clicar no menu Iniciar e logo após em Executar;

Digitar ‘cmd’ e pressiona enter;

No prompt de comando digitar “java –version” e apertar enter.

Após os comandos, deve aparecer a versão do JDK instalada, caso contrário,

o JDK precisa ser baixado no seguinte endereço:

http://www.oracle.com/technetwork/java/javase/downloads/index.html.

2 INSTALAÇÃO DO SDK

O SDK do Android pode ser baixado neste endereço:

https://developer.android.com/sdk/index.html.

Deve-se escolher o pacote mais adequado de acordo com o sistema

operacional onde será instalado.

Depois de instalado o Android SDK, abra o SDK Manager, localizado na pasta

de nome SDK. O aplicativo buscará informações sobre as versões disponíveis e

trará a versão mais recente selecionada, conforme figura A1. Para o protótipo Boa

Gravidez foi baixado somente a versão 2.3.3.

Foi utilizada a versão 2.3.3, pois esta versão teve uma distribuição de 64,6%,

sendo considerada a versão mais utilizada nos dispositivos com o sistema

operacional Android, conforme ilustra a figura A2.

Desenvolvendo para esta versão, todos os smartphones ou tablets que

tiverem uma versão superior a essa podem executar o aplicativo. Esta será a versão

mínima necessária para a instalação do aplicativo.

Page 82: BOA GRAVIDEZ: APLICATIVO ANDROID PARAfateclins.edu.br/v4.0/trabalhoGraduacao/tEeTDocEWHoYAR78... · 2019-04-03 · CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA SOUZA FACULDADE

81

Figura A1 - SDK Manager

Figura A2 - Versões Android

3 IDE ECLIPSE

É necessário uma IDE para auxiliar o desenvolvimento, a SDK Android utiliza

a IDE Eclipse com o plugin ADT.

4 EMULADOR

Page 83: BOA GRAVIDEZ: APLICATIVO ANDROID PARAfateclins.edu.br/v4.0/trabalhoGraduacao/tEeTDocEWHoYAR78... · 2019-04-03 · CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA SOUZA FACULDADE

82

O emulador do Android simula completamente o sistema operacional real, e é

possível acessar a estrutura do emulador.

Para visualizar as aplicações instaladas foi utilizado o próprio plug-in do

Eclipse. Para acessar utilizando o plug-in do Eclipse deve-se seguir com os

seguintes passos:

Acesse o menu Window e em seguida clicar em Android Virtual Device

Manager. Abrirá a seguinte tela, conforme figura A3.

Figura A3 - Android Virtual Device Manager

Clique em New para adicionar um novo emulador; será exibida uma nova tela,

conforme figura A4. Selecione o nome desse emulador e em Device coloque a

resolução que deseja executar, depois clique em OK.

Figura A4 - Criando Emulador

Aparecerá o emulador criado, conforme figura A5. Clicar em Start para iniciar

Page 84: BOA GRAVIDEZ: APLICATIVO ANDROID PARAfateclins.edu.br/v4.0/trabalhoGraduacao/tEeTDocEWHoYAR78... · 2019-04-03 · CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA SOUZA FACULDADE

83

o emulador.

Figura A5 - Emulador Criado

Nessa nova janela, conforme figura A6 pressione Launch e aguarde carregar

o emulador.

Figura A6 - Executar Emulador

Feitos os procedimentos, o emulador está pronto para uso, conforme ilustrada

execução na figura A7.

Page 85: BOA GRAVIDEZ: APLICATIVO ANDROID PARAfateclins.edu.br/v4.0/trabalhoGraduacao/tEeTDocEWHoYAR78... · 2019-04-03 · CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA SOUZA FACULDADE

84

Figura A7 - Execução Emulador Android

Para a execução de um projeto específico que se está desenvolvendo, é

possível fazer a simulação através do emulador. Basta selecionar o projeto que

deseja executar, clicar com o botão direito do mouse sobre ele e em seguida

selecionar a opção Run As > Android Aplication, conforme figura A8. O emulador

será iniciado, acrescentando um ícone para acesso a aplicação em

desenvolvimento.

Figura A8 - Executar Projeto

Page 86: BOA GRAVIDEZ: APLICATIVO ANDROID PARAfateclins.edu.br/v4.0/trabalhoGraduacao/tEeTDocEWHoYAR78... · 2019-04-03 · CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA SOUZA FACULDADE

85

Também é possível executar uma aplicação criada diretamente em um

dispositivo móvel que contenha o sistema operacional Android. Para isso, deve-se

habilitar o dispositivo com a opção de Depuração USB. Geralmente essa opção

pode ser habilitada em Configurar > Opções > Depuração USB. Alguns dispositivos

necessitam de uso de drivers ou plug-ins do fabricante.

Com um dispositivo conectado ao computador através de conector USB, a

SDK irá reconhecer o dispositivo e quando for selecionada a execução do projeto, a

IDE não irá chamar o Emulador, mas sim exibir uma tela com a opção para que seja

escolhido o dispositivo onde o projeto será executado, como ilustra a figura A9.

Onde se lê, Choose a running Android device será exibida a lista de

dispositivos conectados ao computador, onde o aplicativo será instalado e

executado. Onde se lê Launch a new Android Virtual Device, será exibida a lista com

os dispositivos virtuais criados via Emulador.

Figura A9 - Executando em um dispositivo móvel

Neste apêndice foi demonstrada a configuração do ambiente eclipse para uso

da SDK Android, o download dos requisitos necessários para utilização da IDE e

configuração do ambiente para testes do projeto através do Emulador Android.

Também foi demonstrada como é possível realizar a depuração em um dispositivo

real.

Page 87: BOA GRAVIDEZ: APLICATIVO ANDROID PARAfateclins.edu.br/v4.0/trabalhoGraduacao/tEeTDocEWHoYAR78... · 2019-04-03 · CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA SOUZA FACULDADE

86

APÊNDICE B – Integrando o aplicativo ao Facebook

Como demonstrado, a interação do aplicativo Boa Gravidez com o Facebook

é feita por meio do acesso à API Facebook, possibilitando o envio de uma

mensagem e/ou foto para o perfil da gestante na rede social.

Para que possa ser realizada essa interação, primeiramente, é necessário

possuir uma conta de desenvolvedor e fazer o registro do aplicativo no Facebook.

Neste apêndice são demonstrados os passos para obtenção da conta de

desenvolvedor no Facebook, registro do aplicativo e o processo de criação das telas

e classes no protótipo desenvolvido. Foram utilizadas referências de Facebook

Developers (2013), Leal (2012) e Medeiros (2013).

1 CONTA DE DESENVOLVEDOR E REGISTRO DO APLICATIVO NO FACEBOOK

Para a criação de conta no Facebook, deve-se acessar:

www.facebook.com.br, e realizar o registro inserindo os dados solicitados na página

inicial, ilustrada na figura B1.

Figura B1 - Acesso ao Facebook

Para fazer o registro como desenvolvedor é necessário acessar o Facebook

Developer, pelo site https://developers.facebook.com/, e fazer o login com o e-mail e

senha cadastrados. Na página seguinte, selecionar Aplicativos > Registrar como

Page 88: BOA GRAVIDEZ: APLICATIVO ANDROID PARAfateclins.edu.br/v4.0/trabalhoGraduacao/tEeTDocEWHoYAR78... · 2019-04-03 · CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA SOUZA FACULDADE

87

Desenvolvedor, como mostra a figura B2.

Figura B2 - Registro como Desenvolvedor

Após acessar a opção, irá aparecer uma tela como mostra a figura B3, deve-

se marcar a opção I accept the Facebook Platform Policy and the Facebook Privacy

Policy e em seguida clique em Continuar.

Figura B3 - Aceitar Termos Facebook

Para continuar o processo de registro será solicitado um número de celular

para que o Facebook possa enviar uma mensagem SMS, esse é um procedimento

de segurança para o Facebook. Após digitar o número do telefone, clicar em

continuar, como mostra a figura B4. Será enviada uma mensagem de texto com um

código para confirmação do número, esse código será solicitado para dar

prosseguimento ao registro.

Page 89: BOA GRAVIDEZ: APLICATIVO ANDROID PARAfateclins.edu.br/v4.0/trabalhoGraduacao/tEeTDocEWHoYAR78... · 2019-04-03 · CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA SOUZA FACULDADE

88

Figura B4 - Verificação da conta

Após será aberta tela para seleção da linguagem na qual estará

desenvolvendo a aplicação, e a opção de tipo de aplicativo. Foram selecionadas as

opções Android e o tipo Saúde e Fitnnes para o aplicativo Boa Gravidez, como

ilustra a figura B5. Em seguida será exibida tela confirmando o registro de

desenvolvedor, ilustrada na figura B6.

Figura B5 - Seleção da linguagem e tipo de aplicativo

Page 90: BOA GRAVIDEZ: APLICATIVO ANDROID PARAfateclins.edu.br/v4.0/trabalhoGraduacao/tEeTDocEWHoYAR78... · 2019-04-03 · CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA SOUZA FACULDADE

89

Figura B6 - Confirmação de registro de desenvolvedor

Dessa forma, é possível acessar novamente o item Aplicativos, e selecionar a

nova opção que será exibida Create a New App, figura B7. Na tela seguinte,

preencha as informações solicitadas de acordo com seu software e clique em

Continuar, como na figura B8.

Figura B7 - Criar um novo aplicativo Facebook

Figura B8 - Inserir dados do aplicativo

Clicar em Continuar, e após a validação dos nomes escolhidos, será exibida a

página de Painel de Controle do Aplicativo, ilustrada na figura B9.

Page 91: BOA GRAVIDEZ: APLICATIVO ANDROID PARAfateclins.edu.br/v4.0/trabalhoGraduacao/tEeTDocEWHoYAR78... · 2019-04-03 · CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA SOUZA FACULDADE

90

Figura B9 - Painel de controle do aplicativo Fabebook

Serão gerados o ID do aplicativo e o App Secret; o ID é o código que irá

identificar o aplicativo ao fazer a chamada da API Facebook pelo aplicativo

desenvolvido.

Observa-se que devem ser configuradas solicitações de permissão para que

o aplicativo tenha o acesso ao perfil público do usuário. Para acessar as

configurações deve-se clicar em App Details e em seguida acessar Configure App

Center Permissions, conforme figura B10.

Figura B10 - Configuração das permissões do aplicativo

Page 92: BOA GRAVIDEZ: APLICATIVO ANDROID PARAfateclins.edu.br/v4.0/trabalhoGraduacao/tEeTDocEWHoYAR78... · 2019-04-03 · CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA SOUZA FACULDADE

91

As permissões publish_stream e photo_upload são necessárias para que o

aplicativo Boa Gravidez possa fazer a publicação de mensagem e envio de fotos.

Devem-se declarar essas permissões, conforme figura B11.

Figura B11 - Declaração das permissões

Ainda, para que o aplicativo esteja disponível para os testes com o protótipo é

necessário torná-lo acessível ao público, selecionando Status & Review, e

habilitando a opção, como ilustra a figura B12.

Figura B12 - Habilitando o aplicativo para acesso ao público

Também é necessário que seja gerada uma Key Hash, que é uma assinatura

do projeto. A chave é usada pelo Facebook como uma verificação de segurança

para a autenticidade. Por padrão, o pacote do aplicativo é assinado com uma chave

de depuração específico da máquina. Ao publicar o aplicativo é normalmente

Page 93: BOA GRAVIDEZ: APLICATIVO ANDROID PARAfateclins.edu.br/v4.0/trabalhoGraduacao/tEeTDocEWHoYAR78... · 2019-04-03 · CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA SOUZA FACULDADE

92

assinado com uma chave de liberação diferente.

Para geração da Key Hash, devem-se seguir os passos:

Baixar o OpenSSL: https://code.google.com/p/openssl-for-windows/;

Desempacotar o zip na pasta C:;

No prompt de comando digite a seguinte diretiva para adicionar o diretório

do OpenSSL ao path: set PATH=%PATH%;C:\openssl-0.9.8k_WIN32\bin;

Digitar o comando seguinte para geração do Key Hash: keytool -exportcert

-alias androiddebugkey -keystore ~/.android/debug.keystore | openssl sha1

-binary | openssl base64;

Salvar a Key Hash gerada, para que seja salva nas configurações do

aplicativo criado no Facebook.

No Facebook, acessar Configurações na navegação à esquerda, em seguida,

clicar no botão Adicionar Plataforma (figura B13), e selecionar a plataforma Android

(figura B14). Na tela seguinte, adicionar a Key Hash de depuração gerada e clicar

em Salvar Alterações (figura B15).

Figura B13 - Configurações Facebook

Figura B14 - Seleção de Plataforma

Page 94: BOA GRAVIDEZ: APLICATIVO ANDROID PARAfateclins.edu.br/v4.0/trabalhoGraduacao/tEeTDocEWHoYAR78... · 2019-04-03 · CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA SOUZA FACULDADE

93

Figura B15 - Adicionar Key Hash

Assim, foi realizado o registro do aplicativo no Facebook, o próximo passo é o

download do Facebook SDK, para que possa utilizado na aplicação.

2 DOWNLOAD DA API FACEBOOK PARA ANDROID E CONFIGURAÇÃO NO

AMBIENTE ECLIPSE

Após registrar a aplicação junto ao Facebook, deve-se acessar a

página https://developers.facebook.com/docs/android/ e fazer o download da API.

O SDK contém um projeto que será integrado ao projeto desenvolvido. Neste

trabalho foi utilizada a versão 3.5 da SDK Facebook.

Feito o download, deve-se criar um novo projeto na IDE Eclipse. Clicar em

File > New > Project > Android > Android Project from Existing Code. Clicar em

Browse e escolher o diretório onde foi salva a API do Facebook, que foi baixada.

Deve-se escolher a pasta facebook dentro do projeto e clicar em OK. Feito isso

clicar em Finish.

O próximo passo é importar a biblioteca android-support-v4.jar, ela está na

pasta libs do projeto do Facebook que foi baixado. Para importar a biblioteca, deve-

se adicioná-la ao Build Path. Para fazer isso, clicar com o botão direito sobre o

projeto e selecionar Build Path > Configure Build Path. Na janela que for exibida, na

aba Libraries, clicar no botão Add External JARs e, no diretório onde está salvo o

projeto do Facebook, acessar a pasta libs, selecionar o arquivo .jar e em seguida

clicar em Abrir, conforme ilustrado na figura B16.

Page 95: BOA GRAVIDEZ: APLICATIVO ANDROID PARAfateclins.edu.br/v4.0/trabalhoGraduacao/tEeTDocEWHoYAR78... · 2019-04-03 · CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA SOUZA FACULDADE

94

Figura B16 - Seleção do arquivo .jar

Após esses procedimentos, o projeto da API Facebook está importado ao

ambiente eclipse. Na sequência será demonstrada como foi feita a conexão com o

projeto do protótipo Boa Gravidez.

3 INTEGRAÇÃO COM PROJETO BOA GRAVIDEZ

Para utilização do projeto Facebook, deve ser adicionado uma referência ao

projeto Facebook no projeto que se está desenvolvendo.

Para adicionar a referência ao projeto Facebook, deve-se clicar com o botão

direito sobre o projeto que está sendo desenvolvido, neste caso o projeto Boa

Gravidez. Após, selecionar Properties e na tela que será exibida, selecionar Android,

na parte inferior adicionar a referência ao projeto clicando em Add. Será exibida uma

tela com os projetos disponíveis, conforme ilustrado na figura B17, deve-se

selecionar o FacebookSDK que foi importado na etapa anterior.

Page 96: BOA GRAVIDEZ: APLICATIVO ANDROID PARAfateclins.edu.br/v4.0/trabalhoGraduacao/tEeTDocEWHoYAR78... · 2019-04-03 · CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA SOUZA FACULDADE

95

Figura B17 - Adicionando referência ao projeto FacebookSDK

Ao fazer a referência ao projeto FacebookSDK, será possível ter acesso a

importação das classes deste para uso no projeto que se está desenvolvendo. Na

sequência, será demonstrado o projeto implementado para realização da publicação

de mensagem e/ou foto no perfil do usuário no Facebook por meio da aplicação Boa

Gravidez.

4 IMPLEMENTAÇÃO BOA GRAVIDEZ INTEGRAÇÃO FACEBOOK

Serão demonstrados os códigos usados para implementação; o código está

comentado para melhor entendimento do uso dos métodos. Neste protótipo foi feita

uma integração simples, sem a recuperação de dados do usuário.

Primeiramente, como será feito uso da Internet e acesso as imagens do

dispositivo que terá o aplicativo instalado, deve-se observar se constam as

declarações de permissão para acesso no arquivo de manifesto,

AndroidManifest.xml. As permissões necessárias são demonstradas na figura B18:

Page 97: BOA GRAVIDEZ: APLICATIVO ANDROID PARAfateclins.edu.br/v4.0/trabalhoGraduacao/tEeTDocEWHoYAR78... · 2019-04-03 · CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA SOUZA FACULDADE

96

Figura B18 - Permissões AndroidManfest.xml

4.1 Tela do aplicativo

Para a tela do aplicativo que faz a conexão com o Facebook foi gerado o

seguinte XML, no qual foi criado um campo texto para digitação da mensagem

(EditText), um campo de imagem (ImageView), no qual será retornada a imagem

escolhida pelo usuário e um botão com ação ao clicar (Button).

<LinearLayout

xmlns:android="http://schemas.android.com/apk/res/android"

android:layout_width="fill_parent"

android:layout_height="fill_parent"

android:background="@color/fundo"

android:gravity="left"

android:orientation="vertical" >

<LinearLayout

android:layout_width="fill_parent"

android:layout_height="0dp"

android:layout_weight="1"

android:orientation="vertical"

android:padding="12dp" >

<ScrollView

android:id="@+id/scrollView1"

android:layout_width="match_parent"

android:layout_height="wrap_content" >

Page 98: BOA GRAVIDEZ: APLICATIVO ANDROID PARAfateclins.edu.br/v4.0/trabalhoGraduacao/tEeTDocEWHoYAR78... · 2019-04-03 · CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA SOUZA FACULDADE

97

<LinearLayout

android:layout_width="match_parent"

android:layout_height="match_parent"

android:layout_alignParentLeft="true"

android:layout_alignParentTop="true"

android:orientation="vertical" >

<TextView

android:id="@+id/textView1"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:text="O que você está pensando?"

android:textAppearance="?android:attr/textA

ppearanceLarge" />

<EditText

android:id="@+id/editText1"

android:layout_width="match_parent"

android:layout_height="wrap_content"

android:hint="Digite algo para seus amigos"

/>

<ImageView

android:id="@+id/imageView1"

android:layout_width="200dp"

android:layout_height="200dp"

android:layout_gravity="center"

android:maxHeight="64dp"

android:maxWidth="64dp"

android:minHeight="64dp"

android:minWidth="64dp"

android:scaleType="fitXY" />

Page 99: BOA GRAVIDEZ: APLICATIVO ANDROID PARAfateclins.edu.br/v4.0/trabalhoGraduacao/tEeTDocEWHoYAR78... · 2019-04-03 · CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA SOUZA FACULDADE

98

<LinearLayout

android:id="@+id/linearLayout2"

android:layout_width="match_parent"

android:layout_height="wrap_content" >

<Button

android:id="@+id/button3"

android:layout_width="match_parent"

android:layout_height="wrap_content"

android:onClick="galleryButtonClick"

android:text="Buscar Imagem" />

</LinearLayout>

<LinearLayout

android:id="@+id/linearLayout1"

android:layout_width="match_parent"

android:layout_height="wrap_content" >

<Button

android:id="@+id/button1"

android:layout_width="match_parent"

android:layout_height="wrap_content"

android:onClick="updateStatusBotao"

android:text="Postar" />

</LinearLayout>

</LinearLayout>

</ScrollView>

</LinearLayout>

</LinearLayout>

4.2 Implementação dos métodos

Os trechos de códigos a seguir demonstram a implementação da classe

criada para enviar postagens ao Facebook, para isso será necessário utilizar o app

Page 100: BOA GRAVIDEZ: APLICATIVO ANDROID PARAfateclins.edu.br/v4.0/trabalhoGraduacao/tEeTDocEWHoYAR78... · 2019-04-03 · CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA SOUZA FACULDADE

99

ID, que foi gerado pela API do Facebook para identificar a aplicação.

Foi declarada uma variável com o número identificador, conforme trecho

abaixo que mostra as variáveis declaradas na classe:

private static final String APP_ID = "776804079001458"; private static final String ACCESS_EXPIRES = "access_expires"; private static final String ACCESS_TOKEN = "access_token"; private Facebook facebook; private SharedPreferences prefs; private Bitmap fotoTirada; private ImageView imageView1; private File caminhoFoto; private Bitmap image; String[] salvarimg = new String[0]; String corpo; private int cont = 0;

Dentro do método onCreate(), foi implementada a chamada da tela do login

do Facebook, o código contem as descrições das funções chamadas nos

comentários.

public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_facebook); facebook = new Facebook(APP_ID); prefs = getPreferences(MODE_PRIVATE); // Carrega a accessToken pra saber se o usuário já se autenticou. loadAccessToken(); // Caso não tenha se autenticado, abre o login if (!facebook.isSessionValid()) { // Chama a tela de login do facebook facebook.authorize(this, new String[] { "publish_stream" }, new DialogListener() { // Login com sucesso, salva o accessToken public void onComplete(Bundle values) { saveAccessToken(); } // Os métodos abaixo devem ser implementados para tratamento dos fluxos alternativos, respostas do acesso ao Facebook public void onFacebookError(FacebookError error) { } public void onError(DialogError e) {

Page 101: BOA GRAVIDEZ: APLICATIVO ANDROID PARAfateclins.edu.br/v4.0/trabalhoGraduacao/tEeTDocEWHoYAR78... · 2019-04-03 · CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA SOUZA FACULDADE

100

} public void onCancel() { } }); this.setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT); //manter orientação da tela } imageView1 = (ImageView) findViewById(R.id.imageView1); }

Na sequência, estão demonstrados os métodos para buscar imagem na

galeria de imagens, identificar se será enviado apenas mensagem ou mensagem e

foto juntos, e os demais métodos de envio.

public void galleryButtonClick(View v) { Intent intent = new Intent(Intent.ACTION_GET_CONTENT); intent.setType("image/*"); startActivityForResult(intent, 0); cont++; } // Evento de clique do botão para atualizar o status public void updateStatusBotao(View v) { EditText edt = (EditText) findViewById(R.id.editText1);

if ((edt.getText().toString().trim().equals("")) || (edt.getText().toString() == null)) { Toast.makeText(this, "Ops!!!, Digite algo para seus amigos...", Toast.LENGTH_LONG).show(); }

else if ((edt.getText().toString().trim().equals("")) || (edt.getText().toString() == null) || cont > 0) {

corpo = edt.getText().toString(); sendPhoto(edt.getText().toString()); edt.setText("Digite algo para seus amigos..."); edt.setEnabled(false); } else if (cont == 0) { corpo = edt.getText().toString(); updateStatus(edt.getText().toString()); edt.setHint("Digite algo para seus amigos..."); } }

@SuppressWarnings("deprecation") private RequestListener requestListener = new RequestListener() {

Page 102: BOA GRAVIDEZ: APLICATIVO ANDROID PARAfateclins.edu.br/v4.0/trabalhoGraduacao/tEeTDocEWHoYAR78... · 2019-04-03 · CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA SOUZA FACULDADE

101

public void onMalformedURLException(MalformedURLException e, Object state) {

showToast("URL mal formada"); } public void onIOException(IOException e, Object state) { showToast("Problema de comunicação"); }

public void onFileNotFoundException(FileNotFoundException e, Object state) {

showToast("Recurso não existe"); }

public void onFacebookError(FacebookError e, Object state) { showToast("Erro no Facebook: " + e.getLocalizedMessage()); }

public void onComplete(String response, Object state) {

showToast("Publicação realizada com sucesso"); }

}; // Método que efetivamente atualiza o status @SuppressWarnings("deprecation") private void updateStatus(String status) { @SuppressWarnings("deprecation")

AsyncFacebookRunner runner = new AsyncFacebookRunner(facebook);

Bundle params = new Bundle(); params.putString("message", status);

runner.request("me/feed", params, "POST", requestListener, null);

} // Método que efetivamente atualiza o status com imagem @SuppressWarnings("deprecation") private void sendPhoto(String status) { @SuppressWarnings("deprecation")

AsyncFacebookRunner runner = new AsyncFacebookRunner(facebook);

ByteArrayOutputStream baos = new ByteArrayOutputStream(); image.compress(Bitmap.CompressFormat.PNG, 100, baos); byte[] bytes = baos.toByteArray(); Bundle params = new Bundle(); params.putByteArray("picture", bytes); params.putString("message", status);

runner.request("me/photos", params, "POST", requestListener, null);

}

Page 103: BOA GRAVIDEZ: APLICATIVO ANDROID PARAfateclins.edu.br/v4.0/trabalhoGraduacao/tEeTDocEWHoYAR78... · 2019-04-03 · CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA SOUZA FACULDADE

102

private void showToast(final String s) { final Context ctx = FacebookActivity.this; runOnUiThread(new Runnable() { public void run() { Toast.makeText(ctx, s, Toast.LENGTH_SHORT).show(); } }); } private void saveAccessToken() { SharedPreferences.Editor editor = prefs.edit(); editor.putString(ACCESS_TOKEN, facebook.getAccessToken());

editor.putLong(ACCESS_EXPIRES, facebook.getAccessExpires());

editor.commit(); } private void loadAccessToken() { String access_token = prefs.getString(ACCESS_TOKEN, null); long expires = prefs.getLong(ACCESS_EXPIRES, 0); if (access_token != null) { facebook.setAccessToken(access_token); } if (expires != 0) { facebook.setAccessExpires(expires); } } @SuppressWarnings("deprecation")

public void onActivityResult(int requestCode, int resultCode, Intent data) {

super.onActivityResult(requestCode, resultCode, data); if (cont == 0) { // A API do Facebook exige essa chamada para // concluir o processo de login. facebook.authorizeCallback(requestCode, resultCode, data); } else { if (resultCode == RESULT_OK) { switch (requestCode) { case 0: Uri selectedImage = data.getData(); String[] filePathColumn = { MediaStore.Images.Media.DATA }; Cursor cursor = getContentResolver().query(selectedImage, filePathColumn, null, null, null); cursor.moveToFirst();

int columnIndex = cursor.getColumnIndex(filePathColumn[0]);

String filePath = cursor.getString(columnIndex); //filePath - caminho da imagem selecionada cursor.close();

Bitmap yourSelectedImage = BitmapFactory.decodeFile(filePath);

imageView1.setImageBitmap(yourSelectedImage); image = yourSelectedImage;

Page 104: BOA GRAVIDEZ: APLICATIVO ANDROID PARAfateclins.edu.br/v4.0/trabalhoGraduacao/tEeTDocEWHoYAR78... · 2019-04-03 · CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA SOUZA FACULDADE

103

break; case 1: fotoTirada = BitmapFactory.decodeFile(caminhoFoto.getAbsolutePath());

imageView1.setImageBitmap(fotoTirada); break; }// fim switch }//fim do if - result ok }// fim do cont==0 }// fim do onActivityResult

Foram demonstradas nesse tópico as declarações de permissão necessárias

para uso da funcionalidade no dispositivo onde será instalado o aplicativo, o layout

de tela XML e a classe com o código métodos para acesso aos métodos do projeto

Facebook.

Ressalta-se que alguns métodos utilizados neste protótipo encontram-se

obsoletos, pois durante o desenvolvimento desse trabalho foram lançadas novas

versões da SDK com métodos que foram substituídos ou atualizados, porém não foi

afetada a funcionalidade deste protótipo.

Recomenda-se que para criação de novos projetos sejam buscadas

referências quanto ao uso dos recursos mais recentes disponíveis.

5 UTILIZANDO A APLICAÇÃO

Após a implementação de todas as funcionalidades, serão demonstradas as

etapas do acesso por meio do aplicativo Boa Gravidez.

Ao selecionar o ícone na aplicação, será verificar se o usuário está logado.

Caso não esteja, será aberta a tela de login do Facebook para que o usuário faça o

acesso.

Depois de realizado o login no Facebook, será a tela que irá instalar o serviço

do Facebook no aparelho e de fato sincronizar a aplicação com a API Facebook.

Serão exibidas ao usuário as permissões que o aplicativo requer, e em sequência

será exibida a tela com o layout do aplicativo Boa Gravidez para que se faça a

publicação, conforme etapas ilustradas na figura B19.

Page 105: BOA GRAVIDEZ: APLICATIVO ANDROID PARAfateclins.edu.br/v4.0/trabalhoGraduacao/tEeTDocEWHoYAR78... · 2019-04-03 · CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA SOUZA FACULDADE

104

Figura B19 - Demonstração do aplicativo integrado ao Facebook

Neste apêndice foram demonstrados como fazer o registro de um aplicativo

no Facebook, o download da API Facebook e configuração do ambiente eclipse para

uso do Facebook SDK, além da demonstração dos códigos utilizados para criação

da funcionalidade de postagens por meio do aplicativo Boa Gravidez.

Page 106: BOA GRAVIDEZ: APLICATIVO ANDROID PARAfateclins.edu.br/v4.0/trabalhoGraduacao/tEeTDocEWHoYAR78... · 2019-04-03 · CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA SOUZA FACULDADE

105

APÊNDICE C – CÓDIGO LISTVIEW

Uma das dificuldades encontradas no desenvolvimento do protótipo foi o uso

do recurso ListView em um layout contendo a opção de seleção com checkbox.

Esse recurso foi utilizado nas telas de seleção de nomes de bebês e produtos de

enxoval, ilustrada na figura C1.

Segundo Montebugnoli(2012), o ListView é um grupo de exibição que mostra

uma lista de itens com possibilidade de rolagem. Os itens da lista são

automaticamente inseridos usando um adaptador que utiliza o conteúdo de uma

fonte, como uma listagem definida ou o retorno de uma consulta ao banco de dados,

convertendo cada item e resultando em uma visão que por fim é mostrado ao

usuário final.

Neste apêndice são descritos os códigos utilizados para essa solução

mostrando como exemplo a funcionalidade Enxoval; para tal foram utilizadas

referências de Gupta(2013) e Montebugnoli(2012).

Figura C1 - Tela Produtos Enxoval

1 Layouts XML

Foi criado um Listview padrão, que contém o fundo da tela. Este layout

poderá ser chamado para qualquer tela onde se faz uso da ListView.

Também foi criado o layout específico para a tela produtos, que conterá os

Page 107: BOA GRAVIDEZ: APLICATIVO ANDROID PARAfateclins.edu.br/v4.0/trabalhoGraduacao/tEeTDocEWHoYAR78... · 2019-04-03 · CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA SOUZA FACULDADE

106

dados específicos desta tela, como o campo de texto e o checkbox.

1.1 XML com layout ListView padrão

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" android:background="@color/fundo" android:gravity="left" android:orientation="vertical" > <LinearLayout android:layout_width="fill_parent" android:layout_height="0dp" android:layout_weight="1" android:orientation="vertical" android:padding="10dp" > <ListView android:id="@+id/lvMain" android:layout_width="fill_parent" android:layout_height="wrap_content" android:footerDividersEnabled="true" android:headerDividersEnabled="true" > </ListView> </LinearLayout> </LinearLayout>

1.2 XML com layout específico para Lista de Enxoval

<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:background="@color/rosa_d" android:orientation="horizontal" > <CheckBox android:id="@+id/minhaLista" style="?android:attr/starStyle" android:layout_width="wrap_content" android:layout_height="wrap_content" /> <LinearLayout

Page 108: BOA GRAVIDEZ: APLICATIVO ANDROID PARAfateclins.edu.br/v4.0/trabalhoGraduacao/tEeTDocEWHoYAR78... · 2019-04-03 · CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA SOUZA FACULDADE

107

android:id="@+id/linearLayout1" android:layout_width="0dp" android:layout_height="wrap_content" android:layout_marginLeft="5dp" android:layout_weight="1" android:orientation="vertical" > <TextView android:id="@+id/nomeProduto" android:layout_width="wrap_content" android:layout_height="wrap_content" android:textColor="@color/branco" android:textSize="20sp" android:textStyle="bold" /> </LinearLayout> </LinearLayout>

2 Modelo Enxoval

Para utilização da funcionalidade Enxoval, foi criada uma classe Enxoval, que

irá receber o retorno dos dados armazenados em banco de dados.

2.1 Código fonte da classe Modelo Enxoval

public class ProdutosEnxoval { private Integer id; private String nome; private Boolean minhaLista; public ProdutosEnxoval() { }

public ProdutosEnxoval(Integer id, String nome, Boolean minhaLista) {

super(); this.id = id; this.nome = nome; this.minhaLista = minhaLista; } public Integer getId() { return id; } public void setId(Integer id) {

Page 109: BOA GRAVIDEZ: APLICATIVO ANDROID PARAfateclins.edu.br/v4.0/trabalhoGraduacao/tEeTDocEWHoYAR78... · 2019-04-03 · CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA SOUZA FACULDADE

108

this.id = id; } public String getNome() { return nome; } public void setNome(String nome) { this.nome = nome; } public Boolean getMinhaLista() { return minhaLista; } public void setMinhaLista(Boolean minhaLista) { this.minhaLista = minhaLista; } public static final String TABELA = "produtos"; public static final String _ID = "_id"; public static final String NOME = "nome"; public static final String MINHA_LISTA = "minhaLista";

public static final String[] COLUNAS = new String[] { _ID, NOME,MINHA_LISTA };

}

3 ArrayAdapter

É necessário o uso de um adaptador que conterá os métodos a serem

utilizados pela Classe Enxoval. O Android possui o SimpleAdapter, CursorAdapter e

ArrayAdapter, que pode ser utilizados de acordo com a necessidade do

desenvolvedor. Para o Boa Gravidez foi utilizado ArrayAdapter.

3.1 Código fonte da classe ArrayAdapter

public class EnxovalListAdapter extends BaseAdapter { Context ctx; LayoutInflater lInflater; ArrayList<ProdutosEnxoval> objects; public EnxovalListAdapter(Context context, ArrayList<ProdutosEnxoval> produtosEnxoval) { ctx = context;

Page 110: BOA GRAVIDEZ: APLICATIVO ANDROID PARAfateclins.edu.br/v4.0/trabalhoGraduacao/tEeTDocEWHoYAR78... · 2019-04-03 · CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA SOUZA FACULDADE

109

objects = produtosEnxoval; lInflater = (LayoutInflater) ctx .getSystemService(Context.LAYOUT_INFLATER_SERVICE); } @Override public int getCount() { return objects.size(); } @Override public Object getItem(int position) { return objects.get(position); } @Override public long getItemId(int position) { return position; } @Override public View getView(int position, View convertView, ViewGroup parent) { View view = convertView; if (view == null) {

view = lInflater.inflate(R.layout.activity_lista_enxoval_geral, parent, false);

} ProdutosEnxoval p = getProdutosEnxoval(position);

((TextView) view.findViewById(R.id.nomeProduto)). setText(p.getNome());

CheckBox cbMarcar = (CheckBox) view.findViewById(R.id.minhaLista);

cbMarcar.setOnCheckedChangeListener(myCheckChangList);

cbMarcar.setTag(position); cbMarcar.setChecked(p.getMinhaLista()); return view; } public ProdutosEnxoval getProdutosEnxoval(int position) { return ((ProdutosEnxoval) getItem(position)); } public ArrayList<ProdutosEnxoval> getBox() {

ArrayList<ProdutosEnxoval> box = new

Page 111: BOA GRAVIDEZ: APLICATIVO ANDROID PARAfateclins.edu.br/v4.0/trabalhoGraduacao/tEeTDocEWHoYAR78... · 2019-04-03 · CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA SOUZA FACULDADE

110

ArrayList<ProdutosEnxoval>(); for (ProdutosEnxoval p : objects) { if (p.getMinhaLista()) box.add(p); } return box; }

OnCheckedChangeListener myCheckChangList = new OnCheckedChangeListener() {

public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {

getProdutosEnxoval((Integer) buttonView.getTag()).setMinhaLista(

isChecked); if (!getProdutosEnxoval((Integer) buttonView.getTag()).getMinhaLista()) {

ProdutosEnxovalDao produtosEnxovalDao = new ProdutosEnxovalDao(

ctx); produtosEnxovalDao.updateRemove(getProdutosEnxoval(

(Integer) buttonView.getTag()).getId());

} } }; }

4 Classe Enxoval

Por fim, foi criada a classe que será chamada quando o usuário acessar essa

funcionalidade. Essa classe irá carregar os XML dos layouts de telas e conterá os

métodos para acessar o ArrayAdapter criado.

4.1 Código fonte classe Activity Enxoval

public class EnxovalListaActivity extends Activity {

ArrayList<ProdutosEnxoval> enxoval = new ArrayList<ProdutosEnxoval>();

EnxovalListAdapter boxAdapter; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState);

Page 112: BOA GRAVIDEZ: APLICATIVO ANDROID PARAfateclins.edu.br/v4.0/trabalhoGraduacao/tEeTDocEWHoYAR78... · 2019-04-03 · CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA SOUZA FACULDADE

111

setContentView(R.layout.activity_fundo_adapter); fillData(); boxAdapter = new EnxovalListAdapter(this, enxoval);

ListView lvMain = (ListView) findViewById(R.id.lvMain);

lvMain.setAdapter(boxAdapter); } void fillData() { ArrayList<ProdutosEnxoval> listEnxoval;

ProdutosEnxovalDao enxovalDao = new ProdutosEnxovalDao(this);

listEnxoval = enxovalDao.all(); for (int i = 0; i < listEnxoval.size(); i++) { enxoval.add(listEnxoval.get(i)); } } public void onDestroy() { super.onDestroy(); for (ProdutosEnxoval p : boxAdapter.getBox()) { if (p.getMinhaLista()) {

ProdutosEnxovalDao enxovalDao = new ProdutosEnxovalDao(this);

enxovalDao.update(p.getId()); } } } }

5 Classe DAO – acesso ao banco de dados

O banco de dados foi criado conforme Modelagem Relacional ilustrada neste

trabalho. Para que a Classe Enxoval possa ter acesso aos dados, foi criada a classe

DAO.

5.1 Código fonte classe DAO

public class ProdutosEnxovalDao { private Context context; private DatabaseHelper helper; private SQLiteDatabase db;

Page 113: BOA GRAVIDEZ: APLICATIVO ANDROID PARAfateclins.edu.br/v4.0/trabalhoGraduacao/tEeTDocEWHoYAR78... · 2019-04-03 · CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA SOUZA FACULDADE

112

public ProdutosEnxovalDao(Context context) { this.context = context; helper = new DatabaseHelper(this.context); } private SQLiteDatabase getDb() { if (db == null) { db = helper.getWritableDatabase(); } return db; } public void close() { getDb().close(); db = null; } public void insert(ProdutosEnxoval cadastro) { ContentValues contentValues = new ContentValues();

contentValues.put(ProdutosEnxoval.NOME, cadastro.getNome());

contentValues .put(ProdutosEnxoval.MINHA_LISTA, cadastro.getMinhaLista());

try {

getDb().insert(ProdutosEnxoval.TABELA, null, contentValues);

} catch (SQLException e) {

Log.e("CADASTROPRODUTOSDAO", "Erro ao tentar inserir");

} finally { getDb().close(); } } public void update(Integer id) { ContentValues contentValues = new ContentValues(); contentValues.put(ProdutosEnxoval.MINHA_LISTA, 1); getDb().update(ProdutosEnxoval.TABELA, contentValues, "_id = " + id, null); getDb().close(); } public void updateRemove(Integer id) { ContentValues contentValues = new ContentValues(); contentValues.put(ProdutosEnxoval.MINHA_LISTA, 0);

getDb().update(ProdutosEnxoval.TABELA, contentValues, "_id = " + id, null);

Page 114: BOA GRAVIDEZ: APLICATIVO ANDROID PARAfateclins.edu.br/v4.0/trabalhoGraduacao/tEeTDocEWHoYAR78... · 2019-04-03 · CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA SOUZA FACULDADE

113

getDb().close(); } public ArrayList<ProdutosEnxoval> all() {

ArrayList<ProdutosEnxoval> list = new ArrayList<ProdutosEnxoval>(0);

// busca no banco

Cursor cursor = getDb().query(ProdutosEnxoval.TABELA, null, null, null, null, null, null);

boolean status = cursor.moveToFirst(); if (status == false) { getDb().close(); return new ArrayList<ProdutosEnxoval>(0); } for (int i = 0; i < cursor.getCount(); i++) { // recebendo do banco Integer id = cursor.getInt(0); String nome = cursor.getString(1); Integer minhaLista = cursor.getInt(2); // colocando num objeto do tipo Enxoval

ProdutosEnxoval cadastro = new ProdutosEnxoval();

cadastro.setId(id); cadastro.setNome(nome); if (minhaLista == 0) { cadastro.setMinhaLista(false); } else if (minhaLista == 1) { cadastro.setMinhaLista(true); } // adiciona esse objeto na lista list.add(cadastro); // busca o proximo registro no banco cursor.moveToNext(); } // buscar um objeto do cursor cursor.close(); getDb().close(); return list; } }

Neste apêndice foram demonstrados os código fonte utilizados para a solução

de uso de ListView com layout contendo checkbox.