SlideShare une entreprise Scribd logo
1  sur  25
Télécharger pour lire hors ligne
Programação 1
IFES, SERRA-ES.
App Inventor 2
André Felipe Santos Martins
Programação 1
IFES, SERRA-ES.
Sumário
1. O que é o App Inventor 2................................................. 3
2. Como instalar e Utilizar.................................................... 4
3. Exemplo de aplicação .................................................... 11
4. Criando um App semelhante ........................................ 14
Programação 1
IFES, SERRA-ES.
1. O que é o App Inventor 2
Conhecido como MIT App Inventor, o App Inventor é uma
aplicação de código aberto criada pela Google lançada em 15 de
Dezembro de 2010, e hoje mantida pelo Massachusetts Institute of
Technology (MIT).
Com ele os programadores iniciantes podem criar aplicativos
para o SO Android. Utilizando uma interface gráfica, que permite ao
usuário programar por meio de blocos visuais, que serão
posteriormente executados em um dispositivo android.
Na criação do App Inventor o Google deu bastante atenção à
informação educativa e também em ambientes de desenvolvimento
Online.
Programação 1
IFES, SERRA-ES.
2. Como instalar e Utilizar
Para que tu possas iniciar o desenvolvimento no App Inventor,
apenas é necessário ter instalado Chrome ou Firefox no seu
computador. Então acesse esse LINK e clique em Projects -> Start
a new Project, digite um nome para seu novo projeto e a tela inicial
de desenvolvimento irá abrir.
Programação 1
IFES, SERRA-ES.
Após teu novo projedo ser criado, tu podes iniciar o
desenvolvimento, simplesmente selecionando elementos na Aba
“Pallete” no lado esquerdo da tela e arrastando para dentro da tela.
Na aba “Properties” do lado direito da tela estão propriedades
do elemento selecionado, que podem ser alterados conforme
desejado. Na aba components estão todos os componentes que
foram arrastados para a tela.
Programação 1
IFES, SERRA-ES.
Faremos aqui um exemplo onde o usuário digita algum texto
na textbox, clica no botão e altera o valor da label para o texto
digitado, em seguida apaga o que está digitado na textbox.
Iniciando por alterar o nome das variáveis. Para isso, na
acaba de componentes, apenas selecione o componente e clique
em “Rename”, digite o novo nome e confirme.
Programação 1
IFES, SERRA-ES.
Após adicionar os elementos e mudar o nome para o
desejado, para iniciar a desenvolver a parte lógica é necessário ir
para a área de blocos, clicando no botão “Blocks” no canto superior
direito, acima da aba de propriedades.
Nessa área, na aba “Blocks” é onde ficam todos os blocos da
área lógica do aplicativo. Para iniciar o desenvolvimento é
necessário apenas que selecione o que deseja ser usado e arrastar
Programação 1
IFES, SERRA-ES.
para o quadro branco. Organizando de forma lógica os passos a
serem seguidos.
Nesse exemplo os seguintes blocos/eventos foram feitos:
 Quando clicar no botão:
 Setar valor da saida como o valor que foi digitado
 Setar valor da textbox como vazio
Tudo pronto, vamos para a etapa de testes! Para usar um
emulador no windows, é necessário baixar o driver aiStarter. Após
o download, é necessário fazer a instalação. Ao finalizar a
instalação só é necessário abrir o ícone do aiStarter na área de
trabalho. Então, na página do App Inventor clicar em Connect ->
Emulator. Assim o emulador irá iniciar.
Todavia, a melhor opção para testar o aplicativo é utilizando
um aparelho android. Para isso é só instalar este App no seu
dispositivo android, e ao abri-lo, selecionar para ler um codigo QR.
O código QR a ser lido é encontrado ao clicar em Connect ->
Al Companion.
Programação 1
IFES, SERRA-ES.
Após a leitura do código, o que foi desenvolvido no App
Inventor vai automaticamente ser executado no aparelho. E assim
pode ser testado.
Programação 1
IFES, SERRA-ES.
E como foi demonstrado, está tudo funcionando corretamente
nesse teste.
O App Inventor possui muitos elementos e pode sim ter
aplicações muito mais complexas desenvolvidas nele. Visto que o
que fizemos aqui foi apenas um exemplo.
Para gerar o .apk do aplicativo, é só clicar em Build >
App(Save .apk on my computer).
Programação 1
IFES, SERRA-ES.
3. Exemplo de aplicação
Como exemplo de aplicação, desenvolvi um cronômetro. O
CronôDroid.
O app tem um uso bem simples, sendo que ao clicar em
Iniciar o cronômetro começa a contar.
Programação 1
IFES, SERRA-ES.
Ao clicar em volta, é criada uma lista de voltas, que são
usadas para marcar voltas ou algum tempo específico desejado.
Ao clicar em parar o contador para, e o botão torna-se em “Zerar”.
Ao clicar em zerar o contador é zerado e todas as voltas são
apagadas.
Programação 1
IFES, SERRA-ES.
Link para teste: https://goo.gl/kTNaiw
Programação 1
IFES, SERRA-ES.
4. Criando um App semelhante
O primeiro passo para criar um App semelhante ao CronôDroid é
cirar um novo projeto.
Com um novo projeto criado, o
primeiro elemento a ser adicionado é
o HorizontalArrangement, que é um
elemento de layout utilizado para
organizar outros elementos de forma
horizontal, que são posicionados
dentro dele.
Apenas clique e arraste-o pela tela. Ele é representado por um
painel em branco na tela.
Programação 1
IFES, SERRA-ES.
Na aba de componentes vamos renomea-lo para
painelBotoes. Na aba de propriedades vamos alterar a
prorpriedade AlignHorizontal para “center” e a propriedade Width
para 100%.
Agora vamos arrastar dois botões para dentro do
painelBotoes. Em cada botão a propriedade Width deve ser setada
para 50%, resultando no seguinte:
Agora vamos adicionar um novo elemento de layout chamado
VerticalArrangement, que serve para organizar elementos dentro
dele de forma vertical. Vamos renomear esse painel para
painelCronometro e setar suas propriedades AlignHorizontal para
“center”, AlignVertical para “Top” e Width para 100%.
Programação 1
IFES, SERRA-ES.
Agora, dentro do painelCronograma vamos inserir um label,
que é um elemento de texto, que servira de contador. Vamos
renomear o label para txtClock. Esse label deve ter as seguintes
propriedades setadas:
 FontBold: Checado
 FontSize: 45
 Text: “00:00:00”
 TextAlign: Center
Logo abaixo do painelCronometro vamos inserir um botão, com a
propriedade Width em 100%.
Após esse novo botão vamos inserir um novo elemento cahamdo
ListView, que é um elemento para fazer a exibição de listas, no
qual, usaremos para contar as voltas do cronômetro.
O resultado é o seguinte:
Programação 1
IFES, SERRA-ES.
Por fim vamos alterar o label de cada botão, na propriedade
Text, como na imagem seguinte. O tamanho e estilo da fonte
encontram-se todas na aba de propriedades, como mostrado
anteriormente.
Por fim temos que adicionar um novo elemento chamado
Clock que se encontra na aba Sensors da palheta. Basta arrastar
para tela que ele será adicionado. Esse elemento não é visível. Ele
será utilizado para fazer a contagem usando o timer. O relógio tem
uma propriedade chamada TimerInterval que deve ser setada em
100.
Após isso, verifique se os nomes de cada elemento
corresponde ao meu exemplo, assim podemos prosseguir para a
parte lógica.
Programação 1
IFES, SERRA-ES.
 Parte Lógica
Dando inicio na parte logica da aplicação, a primeira coisa que fiz
foi declarar as váriaveis globais, como seguinte:
Sendo:
 min, seg e mili relativos ao tempo, e seriam usados para
contar e atualizar a label do cronograma.
 volta utilizada para contar a quantidade de voltas
 tempo que seria o texto equivalente a concatenação do tempo
das variaveis min, seg e mili.
Programação 1
IFES, SERRA-ES.
 timeToShow, é o conjunto de todos os tempos a serem
mostrados na lista, separados por virgula, que faz a quebra de
linha na tela.
Em seguida, o primeiro evento que usei foi o de inicialização de
tela, para que o Timer esteja parado e o botão volta desativado
enquanto o cronômetro não está a correr.
O próximo passo foi implementar o clique do botão de
iniciar(btnStart), que usa o bloco seguinte:
A sequencia de eventos é a seguinte:
 Seta a propriedade Text do botão btnCleanReset para
“PARAR”, para ficar mais claro ao usuário onde clicar para
que o cronômetro pare.
 Alterar a propriedade TimerEnabled do relógio para True,
assim o timer começa a correr, acionando os eventos que
veremos a seguir.
 Seta o botão btnVolta como ativado, para que o usuário possa
clicar e marcar voltas, adicionando-as na lista.
Programação 1
IFES, SERRA-ES.
Quando setamos a propriedade do relogio TimerEnabled como
true, um evento é iniciado, e é nele que fazemos a contagem do
tempo, como demonstrado no bloco a seguir.
Onde GetTimeRunning é uma procedure(função), onde é feita
a contagem e OrganizeTime é a função que organiza o label do
cronômetro a ser exibido na tela.
Na função GetTimeRunning está toda a lógica de contagem.
Onde mili sempre é incrementada em +1, e caso seja maior que 9,
ela volta a 0 e incrementa 1 a seg e assim sucessivamente,
efetuando toda a contagem.
Programação 1
IFES, SERRA-ES.
A função OrganizeTime simplesmente faz uma concatenação
de texto do tempo. Verificando se o numero tem apenas um
algarismo para colocar o zero na frente, para ficar visualmente
melhor. Ex: “01:10:01”
Como último passo do evento Timer, o valor da variável tempo
é setado na label txtClock para que seja exibido na tela o valor
atual.
Programação 1
IFES, SERRA-ES.
Para o evento do botão btnVolta foi utilizado os seguintes
blocos.
Esse evento é responsável por concatenar um novo tempo a string
timeToShow. Sendo que os tempos tem de ficar separados por
vírgula para ter uma quebra de linha, visualmente na lista.
Programação 1
IFES, SERRA-ES.
Para o evento do botão btnCleanReset, foram utilizados os
seguintes blocos.
Aqui foi utilizado uma lógica simples na qual, a primeira vez
que o botão é apertado, o botão de volta é desativado, o label do
botão é alterado para “ZERAR” e o Timer é parado.
Caso haja um segundo clique seguido no botão, caso o Timer
esteja parado, a condição do If é verdadeira todas as variaveis
globais são zeradas para o estado inicial.
Programação 1
IFES, SERRA-ES.
Programação 1
IFES, SERRA-ES.
Como resultado final temos o conjunto de blocos na pagina anterior, e o
aplicativo com o seguinte visual.
As questões de cores, tamanhos, posições e entre outras questões
visuais vão de cada pessoa. Todas elas podem ser alteradas nas
propriedades de cada elemento, podendo varias de pessoa para pessoa sem
problemas. O importante para que o aplicativo funcione corretamente está na
parte lógica.

Contenu connexe

Tendances

Partes do Computador
Partes do ComputadorPartes do Computador
Partes do ComputadorAnabelazita
 
Informática Básica - Aula 05 - Sistema Operacional Windows
Informática Básica - Aula 05 - Sistema Operacional WindowsInformática Básica - Aula 05 - Sistema Operacional Windows
Informática Básica - Aula 05 - Sistema Operacional WindowsJoeldson Costa Damasceno
 
Teclas de atalho do windows 8
Teclas de atalho do windows 8Teclas de atalho do windows 8
Teclas de atalho do windows 8Wagner Oliveira
 
Slides - minicurso app inventor
Slides - minicurso app inventorSlides - minicurso app inventor
Slides - minicurso app inventorMichel de Souza
 
curso de computador bom e completo
curso de computador bom e completocurso de computador bom e completo
curso de computador bom e completomurilosoldier
 
Algoritmos e Técnicas de Programação - Curso Completo
Algoritmos e Técnicas de Programação - Curso CompletoAlgoritmos e Técnicas de Programação - Curso Completo
Algoritmos e Técnicas de Programação - Curso Completothomasdacosta
 
Aula 01 - Sistemas Operacionais - Windows 10
Aula 01 - Sistemas Operacionais - Windows 10Aula 01 - Sistemas Operacionais - Windows 10
Aula 01 - Sistemas Operacionais - Windows 10LucasMansueto
 
Planilhas eletrônicas introdução ao excel
Planilhas eletrônicas   introdução ao excelPlanilhas eletrônicas   introdução ao excel
Planilhas eletrônicas introdução ao excelClausia Antoneli
 
Curso completo de excel
Curso completo de excelCurso completo de excel
Curso completo de excelCDIM Daniel
 
Excel Intermediário
Excel IntermediárioExcel Intermediário
Excel Intermediárioaprcds
 
Apostila Microsoft Office Excel 2016
Apostila Microsoft Office Excel 2016Apostila Microsoft Office Excel 2016
Apostila Microsoft Office Excel 2016Cibele Kanegae
 
Excel Básico
Excel BásicoExcel Básico
Excel Básicoaprcds
 
Ferramentas do Office
Ferramentas do OfficeFerramentas do Office
Ferramentas do OfficeIva Leão
 
Introdução à Informática (Módulo 1)
Introdução à Informática (Módulo 1)Introdução à Informática (Módulo 1)
Introdução à Informática (Módulo 1)marconesilfer
 
Informática e suas tecnologias
Informática e suas tecnologiasInformática e suas tecnologias
Informática e suas tecnologiasAndrey Martins
 
Apresentação do Teclado e Mouse
Apresentação do Teclado e MouseApresentação do Teclado e Mouse
Apresentação do Teclado e MouseFraan Bittencourt
 
Apostila Microsoft Office Power Point 2016
Apostila Microsoft Office Power Point 2016Apostila Microsoft Office Power Point 2016
Apostila Microsoft Office Power Point 2016Cibele Kanegae
 

Tendances (20)

Partes do Computador
Partes do ComputadorPartes do Computador
Partes do Computador
 
Informática Básica - Aula 05 - Sistema Operacional Windows
Informática Básica - Aula 05 - Sistema Operacional WindowsInformática Básica - Aula 05 - Sistema Operacional Windows
Informática Básica - Aula 05 - Sistema Operacional Windows
 
Teclas de atalho do windows 8
Teclas de atalho do windows 8Teclas de atalho do windows 8
Teclas de atalho do windows 8
 
Slides - minicurso app inventor
Slides - minicurso app inventorSlides - minicurso app inventor
Slides - minicurso app inventor
 
curso de computador bom e completo
curso de computador bom e completocurso de computador bom e completo
curso de computador bom e completo
 
Algoritmos e Técnicas de Programação - Curso Completo
Algoritmos e Técnicas de Programação - Curso CompletoAlgoritmos e Técnicas de Programação - Curso Completo
Algoritmos e Técnicas de Programação - Curso Completo
 
Aula 01 - Sistemas Operacionais - Windows 10
Aula 01 - Sistemas Operacionais - Windows 10Aula 01 - Sistemas Operacionais - Windows 10
Aula 01 - Sistemas Operacionais - Windows 10
 
Planilhas eletrônicas introdução ao excel
Planilhas eletrônicas   introdução ao excelPlanilhas eletrônicas   introdução ao excel
Planilhas eletrônicas introdução ao excel
 
Curso completo de excel
Curso completo de excelCurso completo de excel
Curso completo de excel
 
Informatica Básica - Sexta Básica
Informatica Básica - Sexta BásicaInformatica Básica - Sexta Básica
Informatica Básica - Sexta Básica
 
Excel Intermediário
Excel IntermediárioExcel Intermediário
Excel Intermediário
 
Apostila Microsoft Office Excel 2016
Apostila Microsoft Office Excel 2016Apostila Microsoft Office Excel 2016
Apostila Microsoft Office Excel 2016
 
Excel Básico
Excel BásicoExcel Básico
Excel Básico
 
EXCEL 2019
EXCEL 2019EXCEL 2019
EXCEL 2019
 
Ferramentas do Office
Ferramentas do OfficeFerramentas do Office
Ferramentas do Office
 
Introdução à Informática (Módulo 1)
Introdução à Informática (Módulo 1)Introdução à Informática (Módulo 1)
Introdução à Informática (Módulo 1)
 
Informática e suas tecnologias
Informática e suas tecnologiasInformática e suas tecnologias
Informática e suas tecnologias
 
Apresentação do Teclado e Mouse
Apresentação do Teclado e MouseApresentação do Teclado e Mouse
Apresentação do Teclado e Mouse
 
Tutorial de Microsoft Office Word
Tutorial de Microsoft Office WordTutorial de Microsoft Office Word
Tutorial de Microsoft Office Word
 
Apostila Microsoft Office Power Point 2016
Apostila Microsoft Office Power Point 2016Apostila Microsoft Office Power Point 2016
Apostila Microsoft Office Power Point 2016
 

En vedette

Capítulo 03 - Formulários, menus e navegação entre telas
Capítulo 03 - Formulários, menus e navegação entre telasCapítulo 03 - Formulários, menus e navegação entre telas
Capítulo 03 - Formulários, menus e navegação entre telasMarcio Palheta
 
Appinventor - Faça simples apps android
Appinventor - Faça simples apps androidAppinventor - Faça simples apps android
Appinventor - Faça simples apps androidPedro Cardoso
 
AppInventor - Blocos condicionais e explorando alguns recursos do smartphone
AppInventor - Blocos condicionais e explorando alguns recursos do smartphoneAppInventor - Blocos condicionais e explorando alguns recursos do smartphone
AppInventor - Blocos condicionais e explorando alguns recursos do smartphoneSérgio Souza Costa
 
Criando aplicações em Android brincando de quebra-cabeça!
Criando aplicações em Android brincando de quebra-cabeça!Criando aplicações em Android brincando de quebra-cabeça!
Criando aplicações em Android brincando de quebra-cabeça!Comunidade Tá safo!
 
Cronómetro con MIT App Inventor 2
Cronómetro con MIT App Inventor 2Cronómetro con MIT App Inventor 2
Cronómetro con MIT App Inventor 2jubacalo
 
Capítulo 09 - Serviços em Background
Capítulo 09 - Serviços em BackgroundCapítulo 09 - Serviços em Background
Capítulo 09 - Serviços em BackgroundMarcio Palheta
 
Capítulo 01 - Fundamentos de Android e o HelloWorld
Capítulo 01 - Fundamentos de Android e o HelloWorldCapítulo 01 - Fundamentos de Android e o HelloWorld
Capítulo 01 - Fundamentos de Android e o HelloWorldMarcio Palheta
 
Introdução ao Pensamento Inventivo Sistemático
Introdução ao Pensamento Inventivo SistemáticoIntrodução ao Pensamento Inventivo Sistemático
Introdução ao Pensamento Inventivo SistemáticoSylvio Silveira Santos
 
Projeto viagem a fernando de noronha entregar dia 14-04-13
Projeto   viagem a fernando de noronha entregar dia 14-04-13Projeto   viagem a fernando de noronha entregar dia 14-04-13
Projeto viagem a fernando de noronha entregar dia 14-04-13Keila Feltran
 
Desafios para a modelagem de sistemas terrestres (2008)
Desafios para a modelagem de sistemas terrestres (2008)Desafios para a modelagem de sistemas terrestres (2008)
Desafios para a modelagem de sistemas terrestres (2008)Sérgio Souza Costa
 
Informação Geográfica nos Dispositivos Móveis
Informação Geográfica nos Dispositivos MóveisInformação Geográfica nos Dispositivos Móveis
Informação Geográfica nos Dispositivos MóveisSérgio Souza Costa
 
Relações (composição e agregação)
Relações (composição e agregação)Relações (composição e agregação)
Relações (composição e agregação)Sérgio Souza Costa
 
From remote sensing to agent-based models
From remote sensing to agent-based modelsFrom remote sensing to agent-based models
From remote sensing to agent-based modelsSérgio Souza Costa
 
Programamos con App Inventor 3: Mi primera App (III)
Programamos con App Inventor 3: Mi primera App (III)Programamos con App Inventor 3: Mi primera App (III)
Programamos con App Inventor 3: Mi primera App (III)Programamos
 
Programamos con App Inventor 5: BallBounce (juego paso a paso)
Programamos con App Inventor 5: BallBounce (juego paso a paso)Programamos con App Inventor 5: BallBounce (juego paso a paso)
Programamos con App Inventor 5: BallBounce (juego paso a paso)Programamos
 

En vedette (20)

Capítulo 03 - Formulários, menus e navegação entre telas
Capítulo 03 - Formulários, menus e navegação entre telasCapítulo 03 - Formulários, menus e navegação entre telas
Capítulo 03 - Formulários, menus e navegação entre telas
 
App inventor
App inventorApp inventor
App inventor
 
Appinventor - Faça simples apps android
Appinventor - Faça simples apps androidAppinventor - Faça simples apps android
Appinventor - Faça simples apps android
 
App Inventor
App InventorApp Inventor
App Inventor
 
App inventor - aula 03
App inventor  - aula 03App inventor  - aula 03
App inventor - aula 03
 
AppInventor - Blocos condicionais e explorando alguns recursos do smartphone
AppInventor - Blocos condicionais e explorando alguns recursos do smartphoneAppInventor - Blocos condicionais e explorando alguns recursos do smartphone
AppInventor - Blocos condicionais e explorando alguns recursos do smartphone
 
Criando aplicações em Android brincando de quebra-cabeça!
Criando aplicações em Android brincando de quebra-cabeça!Criando aplicações em Android brincando de quebra-cabeça!
Criando aplicações em Android brincando de quebra-cabeça!
 
Android - Notas de aula
Android - Notas de aulaAndroid - Notas de aula
Android - Notas de aula
 
Cronómetro con MIT App Inventor 2
Cronómetro con MIT App Inventor 2Cronómetro con MIT App Inventor 2
Cronómetro con MIT App Inventor 2
 
Capítulo 09 - Serviços em Background
Capítulo 09 - Serviços em BackgroundCapítulo 09 - Serviços em Background
Capítulo 09 - Serviços em Background
 
Capítulo 01 - Fundamentos de Android e o HelloWorld
Capítulo 01 - Fundamentos de Android e o HelloWorldCapítulo 01 - Fundamentos de Android e o HelloWorld
Capítulo 01 - Fundamentos de Android e o HelloWorld
 
Introdução ao Pensamento Inventivo Sistemático
Introdução ao Pensamento Inventivo SistemáticoIntrodução ao Pensamento Inventivo Sistemático
Introdução ao Pensamento Inventivo Sistemático
 
Projeto viagem a fernando de noronha entregar dia 14-04-13
Projeto   viagem a fernando de noronha entregar dia 14-04-13Projeto   viagem a fernando de noronha entregar dia 14-04-13
Projeto viagem a fernando de noronha entregar dia 14-04-13
 
Desafios para a modelagem de sistemas terrestres (2008)
Desafios para a modelagem de sistemas terrestres (2008)Desafios para a modelagem de sistemas terrestres (2008)
Desafios para a modelagem de sistemas terrestres (2008)
 
Informação Geográfica nos Dispositivos Móveis
Informação Geográfica nos Dispositivos MóveisInformação Geográfica nos Dispositivos Móveis
Informação Geográfica nos Dispositivos Móveis
 
Relações (composição e agregação)
Relações (composição e agregação)Relações (composição e agregação)
Relações (composição e agregação)
 
Herança e Encapsulamento
Herança e EncapsulamentoHerança e Encapsulamento
Herança e Encapsulamento
 
From remote sensing to agent-based models
From remote sensing to agent-based modelsFrom remote sensing to agent-based models
From remote sensing to agent-based models
 
Programamos con App Inventor 3: Mi primera App (III)
Programamos con App Inventor 3: Mi primera App (III)Programamos con App Inventor 3: Mi primera App (III)
Programamos con App Inventor 3: Mi primera App (III)
 
Programamos con App Inventor 5: BallBounce (juego paso a paso)
Programamos con App Inventor 5: BallBounce (juego paso a paso)Programamos con App Inventor 5: BallBounce (juego paso a paso)
Programamos con App Inventor 5: BallBounce (juego paso a paso)
 

Similaire à App Inventor Cronômetro

Apostila informativos técnicos clp - ihm
Apostila informativos técnicos   clp - ihmApostila informativos técnicos   clp - ihm
Apostila informativos técnicos clp - ihmconfidencial
 
Introdução ao desenvolvimento de apps para Android - Dia 2/2
Introdução ao desenvolvimento de apps para Android - Dia 2/2Introdução ao desenvolvimento de apps para Android - Dia 2/2
Introdução ao desenvolvimento de apps para Android - Dia 2/2Matheus Calegaro
 
Tutorial - Como criar sua primeira app para Android
Tutorial - Como criar sua primeira app para AndroidTutorial - Como criar sua primeira app para Android
Tutorial - Como criar sua primeira app para AndroidSidney Roberto
 
Como criar uma calculadora no Game Maker 8.0 (GML Console)
Como criar uma calculadora no Game Maker 8.0 (GML Console)Como criar uma calculadora no Game Maker 8.0 (GML Console)
Como criar uma calculadora no Game Maker 8.0 (GML Console)Rodrigo Cavalcante
 
Libre office (calc_aulas)
Libre office (calc_aulas)Libre office (calc_aulas)
Libre office (calc_aulas)Isaias_Bass
 
Appinventor 120429141244-phpapp02
Appinventor 120429141244-phpapp02Appinventor 120429141244-phpapp02
Appinventor 120429141244-phpapp02Cesar Luis Teixeira
 
Lazarus tutor exerc_db_faq_-_v16
Lazarus tutor exerc_db_faq_-_v16Lazarus tutor exerc_db_faq_-_v16
Lazarus tutor exerc_db_faq_-_v16Alex Rodrigues
 
Apostila de Introdução aos Algoritmos - usando o Visualg
Apostila de Introdução aos Algoritmos - usando o VisualgApostila de Introdução aos Algoritmos - usando o Visualg
Apostila de Introdução aos Algoritmos - usando o VisualgRegis Magalhães
 
Apostila:Curso de java II
Apostila:Curso de java II  Apostila:Curso de java II
Apostila:Curso de java II Verônica Veiga
 
Manual Rest Manager
Manual Rest ManagerManual Rest Manager
Manual Rest Managerfeka69
 
TREINAMENTO EM LOGICA DE PROGRAMAÇÃO (Sandra Rita) (z-lib.org).pdf
TREINAMENTO EM LOGICA DE PROGRAMAÇÃO (Sandra Rita) (z-lib.org).pdfTREINAMENTO EM LOGICA DE PROGRAMAÇÃO (Sandra Rita) (z-lib.org).pdf
TREINAMENTO EM LOGICA DE PROGRAMAÇÃO (Sandra Rita) (z-lib.org).pdfssuser059c2c1
 
Internet I - Aula 07 - Primeiros Passos com JavaScript
Internet I - Aula 07 - Primeiros Passos com JavaScriptInternet I - Aula 07 - Primeiros Passos com JavaScript
Internet I - Aula 07 - Primeiros Passos com JavaScriptManoel Afonso
 
Visualg 1231617089791929-2
Visualg 1231617089791929-2Visualg 1231617089791929-2
Visualg 1231617089791929-2jaoozinhoqi123
 

Similaire à App Inventor Cronômetro (20)

Apostila informativos técnicos clp - ihm
Apostila informativos técnicos   clp - ihmApostila informativos técnicos   clp - ihm
Apostila informativos técnicos clp - ihm
 
Introdução ao desenvolvimento de apps para Android - Dia 2/2
Introdução ao desenvolvimento de apps para Android - Dia 2/2Introdução ao desenvolvimento de apps para Android - Dia 2/2
Introdução ao desenvolvimento de apps para Android - Dia 2/2
 
CURSO JAVA 02
CURSO JAVA 02CURSO JAVA 02
CURSO JAVA 02
 
Tutorial - Como criar sua primeira app para Android
Tutorial - Como criar sua primeira app para AndroidTutorial - Como criar sua primeira app para Android
Tutorial - Como criar sua primeira app para Android
 
Como criar uma calculadora no Game Maker 8.0 (GML Console)
Como criar uma calculadora no Game Maker 8.0 (GML Console)Como criar uma calculadora no Game Maker 8.0 (GML Console)
Como criar uma calculadora no Game Maker 8.0 (GML Console)
 
Libre office (calc_aulas)
Libre office (calc_aulas)Libre office (calc_aulas)
Libre office (calc_aulas)
 
Appinventor 120429141244-phpapp02
Appinventor 120429141244-phpapp02Appinventor 120429141244-phpapp02
Appinventor 120429141244-phpapp02
 
Lazarus tutor exerc_db_faq_-_v16
Lazarus tutor exerc_db_faq_-_v16Lazarus tutor exerc_db_faq_-_v16
Lazarus tutor exerc_db_faq_-_v16
 
Apostila de Introdução aos Algoritmos - usando o Visualg
Apostila de Introdução aos Algoritmos - usando o VisualgApostila de Introdução aos Algoritmos - usando o Visualg
Apostila de Introdução aos Algoritmos - usando o Visualg
 
Apostila:Curso de java II
Apostila:Curso de java II  Apostila:Curso de java II
Apostila:Curso de java II
 
Manual Rest Manager
Manual Rest ManagerManual Rest Manager
Manual Rest Manager
 
TREINAMENTO EM LOGICA DE PROGRAMAÇÃO (Sandra Rita) (z-lib.org).pdf
TREINAMENTO EM LOGICA DE PROGRAMAÇÃO (Sandra Rita) (z-lib.org).pdfTREINAMENTO EM LOGICA DE PROGRAMAÇÃO (Sandra Rita) (z-lib.org).pdf
TREINAMENTO EM LOGICA DE PROGRAMAÇÃO (Sandra Rita) (z-lib.org).pdf
 
Internet I - Aula 07 - Primeiros Passos com JavaScript
Internet I - Aula 07 - Primeiros Passos com JavaScriptInternet I - Aula 07 - Primeiros Passos com JavaScript
Internet I - Aula 07 - Primeiros Passos com JavaScript
 
Visualg 1231617089791929-2
Visualg 1231617089791929-2Visualg 1231617089791929-2
Visualg 1231617089791929-2
 
Visualg
VisualgVisualg
Visualg
 
Guia Rápido TI-NSpire
Guia Rápido TI-NSpireGuia Rápido TI-NSpire
Guia Rápido TI-NSpire
 
Guia Rápido TI N-Spire
Guia Rápido TI N-SpireGuia Rápido TI N-Spire
Guia Rápido TI N-Spire
 
Apostila android
Apostila androidApostila android
Apostila android
 
Apostila android
Apostila androidApostila android
Apostila android
 
Apostila android
Apostila androidApostila android
Apostila android
 

Plus de André Felipe Santos Martins (10)

Lipídios
LipídiosLipídios
Lipídios
 
Revolução Industrial - Argentina e México
Revolução Industrial - Argentina e MéxicoRevolução Industrial - Argentina e México
Revolução Industrial - Argentina e México
 
Introdução ao tratamento de exceções(Try-Catch)
Introdução ao tratamento de exceções(Try-Catch)Introdução ao tratamento de exceções(Try-Catch)
Introdução ao tratamento de exceções(Try-Catch)
 
Sistema de arquivos e Software Livre e Proprietário
Sistema de arquivos e Software Livre e ProprietárioSistema de arquivos e Software Livre e Proprietário
Sistema de arquivos e Software Livre e Proprietário
 
Propaganda Nazista
Propaganda NazistaPropaganda Nazista
Propaganda Nazista
 
Polinização
PolinizaçãoPolinização
Polinização
 
Manuelzão e Miguilim
Manuelzão e MiguilimManuelzão e Miguilim
Manuelzão e Miguilim
 
Amebíase
AmebíaseAmebíase
Amebíase
 
Virtualização - Máquinas Virtuais
Virtualização - Máquinas VirtuaisVirtualização - Máquinas Virtuais
Virtualização - Máquinas Virtuais
 
A revolta da vacina
A revolta da vacinaA revolta da vacina
A revolta da vacina
 

App Inventor Cronômetro

  • 1. Programação 1 IFES, SERRA-ES. App Inventor 2 André Felipe Santos Martins
  • 2. Programação 1 IFES, SERRA-ES. Sumário 1. O que é o App Inventor 2................................................. 3 2. Como instalar e Utilizar.................................................... 4 3. Exemplo de aplicação .................................................... 11 4. Criando um App semelhante ........................................ 14
  • 3. Programação 1 IFES, SERRA-ES. 1. O que é o App Inventor 2 Conhecido como MIT App Inventor, o App Inventor é uma aplicação de código aberto criada pela Google lançada em 15 de Dezembro de 2010, e hoje mantida pelo Massachusetts Institute of Technology (MIT). Com ele os programadores iniciantes podem criar aplicativos para o SO Android. Utilizando uma interface gráfica, que permite ao usuário programar por meio de blocos visuais, que serão posteriormente executados em um dispositivo android. Na criação do App Inventor o Google deu bastante atenção à informação educativa e também em ambientes de desenvolvimento Online.
  • 4. Programação 1 IFES, SERRA-ES. 2. Como instalar e Utilizar Para que tu possas iniciar o desenvolvimento no App Inventor, apenas é necessário ter instalado Chrome ou Firefox no seu computador. Então acesse esse LINK e clique em Projects -> Start a new Project, digite um nome para seu novo projeto e a tela inicial de desenvolvimento irá abrir.
  • 5. Programação 1 IFES, SERRA-ES. Após teu novo projedo ser criado, tu podes iniciar o desenvolvimento, simplesmente selecionando elementos na Aba “Pallete” no lado esquerdo da tela e arrastando para dentro da tela. Na aba “Properties” do lado direito da tela estão propriedades do elemento selecionado, que podem ser alterados conforme desejado. Na aba components estão todos os componentes que foram arrastados para a tela.
  • 6. Programação 1 IFES, SERRA-ES. Faremos aqui um exemplo onde o usuário digita algum texto na textbox, clica no botão e altera o valor da label para o texto digitado, em seguida apaga o que está digitado na textbox. Iniciando por alterar o nome das variáveis. Para isso, na acaba de componentes, apenas selecione o componente e clique em “Rename”, digite o novo nome e confirme.
  • 7. Programação 1 IFES, SERRA-ES. Após adicionar os elementos e mudar o nome para o desejado, para iniciar a desenvolver a parte lógica é necessário ir para a área de blocos, clicando no botão “Blocks” no canto superior direito, acima da aba de propriedades. Nessa área, na aba “Blocks” é onde ficam todos os blocos da área lógica do aplicativo. Para iniciar o desenvolvimento é necessário apenas que selecione o que deseja ser usado e arrastar
  • 8. Programação 1 IFES, SERRA-ES. para o quadro branco. Organizando de forma lógica os passos a serem seguidos. Nesse exemplo os seguintes blocos/eventos foram feitos:  Quando clicar no botão:  Setar valor da saida como o valor que foi digitado  Setar valor da textbox como vazio Tudo pronto, vamos para a etapa de testes! Para usar um emulador no windows, é necessário baixar o driver aiStarter. Após o download, é necessário fazer a instalação. Ao finalizar a instalação só é necessário abrir o ícone do aiStarter na área de trabalho. Então, na página do App Inventor clicar em Connect -> Emulator. Assim o emulador irá iniciar. Todavia, a melhor opção para testar o aplicativo é utilizando um aparelho android. Para isso é só instalar este App no seu dispositivo android, e ao abri-lo, selecionar para ler um codigo QR. O código QR a ser lido é encontrado ao clicar em Connect -> Al Companion.
  • 9. Programação 1 IFES, SERRA-ES. Após a leitura do código, o que foi desenvolvido no App Inventor vai automaticamente ser executado no aparelho. E assim pode ser testado.
  • 10. Programação 1 IFES, SERRA-ES. E como foi demonstrado, está tudo funcionando corretamente nesse teste. O App Inventor possui muitos elementos e pode sim ter aplicações muito mais complexas desenvolvidas nele. Visto que o que fizemos aqui foi apenas um exemplo. Para gerar o .apk do aplicativo, é só clicar em Build > App(Save .apk on my computer).
  • 11. Programação 1 IFES, SERRA-ES. 3. Exemplo de aplicação Como exemplo de aplicação, desenvolvi um cronômetro. O CronôDroid. O app tem um uso bem simples, sendo que ao clicar em Iniciar o cronômetro começa a contar.
  • 12. Programação 1 IFES, SERRA-ES. Ao clicar em volta, é criada uma lista de voltas, que são usadas para marcar voltas ou algum tempo específico desejado. Ao clicar em parar o contador para, e o botão torna-se em “Zerar”. Ao clicar em zerar o contador é zerado e todas as voltas são apagadas.
  • 13. Programação 1 IFES, SERRA-ES. Link para teste: https://goo.gl/kTNaiw
  • 14. Programação 1 IFES, SERRA-ES. 4. Criando um App semelhante O primeiro passo para criar um App semelhante ao CronôDroid é cirar um novo projeto. Com um novo projeto criado, o primeiro elemento a ser adicionado é o HorizontalArrangement, que é um elemento de layout utilizado para organizar outros elementos de forma horizontal, que são posicionados dentro dele. Apenas clique e arraste-o pela tela. Ele é representado por um painel em branco na tela.
  • 15. Programação 1 IFES, SERRA-ES. Na aba de componentes vamos renomea-lo para painelBotoes. Na aba de propriedades vamos alterar a prorpriedade AlignHorizontal para “center” e a propriedade Width para 100%. Agora vamos arrastar dois botões para dentro do painelBotoes. Em cada botão a propriedade Width deve ser setada para 50%, resultando no seguinte: Agora vamos adicionar um novo elemento de layout chamado VerticalArrangement, que serve para organizar elementos dentro dele de forma vertical. Vamos renomear esse painel para painelCronometro e setar suas propriedades AlignHorizontal para “center”, AlignVertical para “Top” e Width para 100%.
  • 16. Programação 1 IFES, SERRA-ES. Agora, dentro do painelCronograma vamos inserir um label, que é um elemento de texto, que servira de contador. Vamos renomear o label para txtClock. Esse label deve ter as seguintes propriedades setadas:  FontBold: Checado  FontSize: 45  Text: “00:00:00”  TextAlign: Center Logo abaixo do painelCronometro vamos inserir um botão, com a propriedade Width em 100%. Após esse novo botão vamos inserir um novo elemento cahamdo ListView, que é um elemento para fazer a exibição de listas, no qual, usaremos para contar as voltas do cronômetro. O resultado é o seguinte:
  • 17. Programação 1 IFES, SERRA-ES. Por fim vamos alterar o label de cada botão, na propriedade Text, como na imagem seguinte. O tamanho e estilo da fonte encontram-se todas na aba de propriedades, como mostrado anteriormente. Por fim temos que adicionar um novo elemento chamado Clock que se encontra na aba Sensors da palheta. Basta arrastar para tela que ele será adicionado. Esse elemento não é visível. Ele será utilizado para fazer a contagem usando o timer. O relógio tem uma propriedade chamada TimerInterval que deve ser setada em 100. Após isso, verifique se os nomes de cada elemento corresponde ao meu exemplo, assim podemos prosseguir para a parte lógica.
  • 18. Programação 1 IFES, SERRA-ES.  Parte Lógica Dando inicio na parte logica da aplicação, a primeira coisa que fiz foi declarar as váriaveis globais, como seguinte: Sendo:  min, seg e mili relativos ao tempo, e seriam usados para contar e atualizar a label do cronograma.  volta utilizada para contar a quantidade de voltas  tempo que seria o texto equivalente a concatenação do tempo das variaveis min, seg e mili.
  • 19. Programação 1 IFES, SERRA-ES.  timeToShow, é o conjunto de todos os tempos a serem mostrados na lista, separados por virgula, que faz a quebra de linha na tela. Em seguida, o primeiro evento que usei foi o de inicialização de tela, para que o Timer esteja parado e o botão volta desativado enquanto o cronômetro não está a correr. O próximo passo foi implementar o clique do botão de iniciar(btnStart), que usa o bloco seguinte: A sequencia de eventos é a seguinte:  Seta a propriedade Text do botão btnCleanReset para “PARAR”, para ficar mais claro ao usuário onde clicar para que o cronômetro pare.  Alterar a propriedade TimerEnabled do relógio para True, assim o timer começa a correr, acionando os eventos que veremos a seguir.  Seta o botão btnVolta como ativado, para que o usuário possa clicar e marcar voltas, adicionando-as na lista.
  • 20. Programação 1 IFES, SERRA-ES. Quando setamos a propriedade do relogio TimerEnabled como true, um evento é iniciado, e é nele que fazemos a contagem do tempo, como demonstrado no bloco a seguir. Onde GetTimeRunning é uma procedure(função), onde é feita a contagem e OrganizeTime é a função que organiza o label do cronômetro a ser exibido na tela. Na função GetTimeRunning está toda a lógica de contagem. Onde mili sempre é incrementada em +1, e caso seja maior que 9, ela volta a 0 e incrementa 1 a seg e assim sucessivamente, efetuando toda a contagem.
  • 21. Programação 1 IFES, SERRA-ES. A função OrganizeTime simplesmente faz uma concatenação de texto do tempo. Verificando se o numero tem apenas um algarismo para colocar o zero na frente, para ficar visualmente melhor. Ex: “01:10:01” Como último passo do evento Timer, o valor da variável tempo é setado na label txtClock para que seja exibido na tela o valor atual.
  • 22. Programação 1 IFES, SERRA-ES. Para o evento do botão btnVolta foi utilizado os seguintes blocos. Esse evento é responsável por concatenar um novo tempo a string timeToShow. Sendo que os tempos tem de ficar separados por vírgula para ter uma quebra de linha, visualmente na lista.
  • 23. Programação 1 IFES, SERRA-ES. Para o evento do botão btnCleanReset, foram utilizados os seguintes blocos. Aqui foi utilizado uma lógica simples na qual, a primeira vez que o botão é apertado, o botão de volta é desativado, o label do botão é alterado para “ZERAR” e o Timer é parado. Caso haja um segundo clique seguido no botão, caso o Timer esteja parado, a condição do If é verdadeira todas as variaveis globais são zeradas para o estado inicial.
  • 25. Programação 1 IFES, SERRA-ES. Como resultado final temos o conjunto de blocos na pagina anterior, e o aplicativo com o seguinte visual. As questões de cores, tamanhos, posições e entre outras questões visuais vão de cada pessoa. Todas elas podem ser alteradas nas propriedades de cada elemento, podendo varias de pessoa para pessoa sem problemas. O importante para que o aplicativo funcione corretamente está na parte lógica.