
Desenvolvimento Mobile Android – Módulo 3
A matrícula nesse curso é apenas por convite
Plano de ensino
Curso: Desenvolvimento Mobile Android – Módulo 3
Instrutor: André Luiz Toyama Carneiro
Objetivo geral: Proporcionar o aprendizado do setor de desenvolvimento de aplicativos para Android. O módulo visa utilizar componentes de nível intermediário e avançado da plataforma Flutter para desenvolvimento de Android.
Nível: Avançado
Tipo do Curso: Teórico-prático
Modalidade de Ensino: Online - Zoom
Público Alvo: colaboradores da Flextronics e FIT- Instituto de Tecnologia que possuem interesse em tecnologias e desenvolvimento mobile ou profissionais na área de desenvolvimento de software que queiram expandir seus conhecimentos.
Requisitos mínimos: o aluno deve possuir conhecimentos em Lógica de Programação; ter realizado o curso “Desenvolvimento Mobile Android – Módulo 2” para conseguir desenvolver as atividades práticas.
Duração total do curso e distribuição da carga horária: o curso está com carga total de 20 horas distribuídos em 3 horas por dia de aula e apenas 2 horas na última aula, com ensinos teóricos e práticos.
Quantidade de vagas: máximo 25 alunos.
Ementa:
Abaixo a lista com os tópicos a serem desenvolvidos no curso:
1. Apresentações
· Apresentação do curso em geral com explicação sobre os objetivos e pontos de aprendizado
· Apresentação do instrutor, com experiência e exemplos de projetos de mercado
2. Revisão geral do módulo 2
· Revisão dos principais pontos abordados no módulo anterior
3. Componente Câmera
· Abrir imagem da galeria
· Tirar foto
· Salvar imagem
4. Gravando e exibindo vídeo
· Abrir a câmera e gravar um vídeo
· Acessando a galeria de vídeos
· Exibindo um vídeo na tela
5. Informações Geolocalizadas
· O que são coordenadas GPS
· Funcionamento da localização GPS
· Configurando na prática o aparelho para permitir uso da geolocalização
· Programação na prática de obter a localização do usuário
· Níveis de precisão da localização e consumo de bateria
· Exemplo de componentes de mapas
· Programando um aplicativo utilizando o componente de mapa
· Conceito de markers
6. Acelerômetro e Giroscópio
· Conceito e funcionamento de acelerômetro e giroscópio
· Programação do acelerômetro e giroscópio
7. Aplicativos dinâmicos
· Conceito e arquitetura dos aplicativos dinâmicos
· Sistemas de API REST
· Arquivos do tipo JSON
· Programação na prática para solicitar uma requisição rest
· Programação na prática recebendo a resposta do servidor
8. Gravar dados com segurança
· Gravar dados locais
· Gravar informações no preferences
9. Sistema de push notification
· Conceito e aplicações
10. Configurando um aplicativo na loja Playstore
· Acessando o portal de desenvolvedor
· Configurando um aplicativo final no Google
11. Conceito de chaves de segurança dos aplicativos
· Conceito das chaves keystore
12. Publicação de um aplicativo
· Upload final do arquivo AppBundle
Instrumentos:
O aluno deverá providenciar:
· Computador com Windows/Mac/Linux com a plataforma ZOOM instalada para assistir as aulas;
· Desejável ter um celular Android com cabo USB para conectar no computador.
O FIT providenciará:
· A criação do link do zoom e o envio por e-mail aos alunos inscritos;
· Permissão de instalação de softwares no computador para a instalação e configuração da plataforma Flutter que será realizado durante o curso.
Metodologia: Metodologia Ativa (MA) com Aprendizagem Baseada em Problemas (ABP), utilizando exemplos e conceitos teórico-prático sobre o universo do desenvolvimento de aplicativos mobile.
Processo Avaliativo: exercícios práticos, podendo ser verificado o resultado pelo próprio aluno. Os exercícios práticos têm objetivos e podem ser validados através da execução dos softwares criados em aula enviando evidencias na plataforma.
Bibliografia básica:
- FLUTTER DEV , Take a picture using the camera. Disponível em: <https://docs.flutter.dev/cookbook/plugins/picture-using-camera>. Acessado em: Março/2022.
- OHASHI, ORLANDO (2020), App Flutter utilizando a Câmera e/ou acessando a Galeria. Disponível em: <https://medium.com/@orlandoohashi/app-flutter-utilizando-a-camera-e-ou-acessando-a-galeria-647ad6237d77>. Acessado em: Março/2022.
- FLUTTER DEV (2022), image_picker 0.8.4+11. Disponível em: <https://pub.dev/packages/image_picker/example>. Acessado em: Março/2022.
- PENA, RODOLFO ALVES, Coordenadas Geográficas. Disponível em: <https://brasilescola.uol.com.br/geografia/coordenadas-geograficas.htm>. Acesasdo em: Março/2022.
- FLUTTER DEV (2022), geolocator 8.2.0. Disponível em: <https://pub.dev/packages/geolocator/example>. Acessado em: Março/2022.
- ANDROID DEVELOPER, Otimizar localização para poupar bateria. Disponível em <https://developer.android.com/guide/topics/location/battery?hl=pt-br>. Acessado em: Março/2022.
- BALTIERI, ANDRÉ (2020), Flutter e Google Maps | por André Baltieri. Disponível em: <https://www.youtube.com/watch?v=opKKPMok1zc>. Acessado em: Março/2022.
- FLUTTER DEV (2022), sensors_plus 1.3.0. Disponível em: <https://pub.dev/packages/sensors_plus/example>. Acessado em: Março/2022.
- MATRAKAS, MIGUEL (2016), Introdução a web services RESTful. Disponível em: <https://www.devmedia.com.br/introducao-a-web-services-restful/37387>. Acessado em: Março/2022.
- MOZZILA.ORG, Trabalhando com JSON. Disponível em: <https://developer.mozilla.org/pt-BR/docs/Learn/JavaScript/Objects/JSON>. Acessado em: Março/2022.
- FLUTTER DEV, “http 0.13.4”. Disponível em: <https://pub.dev/packages/http/example>. Acessado em: Março/2022.
- ANDROID DEVELOPER (2022), Visão geral do armazenamento de dados e arquivos. Disponível em: < https://developer.android.com/training/data-storage?hl=pt-br>. Acessado em: Março/2022.
- ANDROID DEVELOPER (2021), Visão geral de notificações. Disponível em: < https://developer.android.com/guide/topics/ui/notifiers/notifications>. Acessado em: Março/2022.
- FLUTTER DEV, Build and release an Android app. Disponível em: < https://docs.flutter.dev/deployment/android >. Acessado em: Março/2022.
- ANDROID DEVELOPER, Preparar e lançar uma versão. Disponível em: <https://support.google.com/googleplay/android-developer/answer/9859348?hl=pt-BR>. Acessado em: Março/2022.