Buscar

atv-comp-p-disp-moveis-aresolver

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 4 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

Questão 01) 
Considerando os conteúdos abordados ao longo da disciplina sobre desenvolvimento 
de aplicações móveis, em uma criação mobile, um dos requisitos que o desenvolvedor 
tem que considerar é o sistema operacional. Atualmente, existem dois sistemas, o 
iOS e Android, como as duas principais plataformas mobile. 
Com relação ao sistema Android, descreva um ambiente de desenvolvimento para 
iniciar a construção de uma aplicação para plataforma Android e compare-a com a 
plataforma iOS. Sugestão: faça uma separação entre softwares necessários e 
estruturas do projeto Android. 
 
Resposta: O sistema operacional Android foi criado pela empresa iniciante homônima 
Android Inc. Em outubro de 2003. Em agosto de 2005, foi comprada pelo Google, que 
lançou o OHA (Open Handset Alliance) em novembro de 2007, juntamente com o 
sistema de código aberto Android. No núcleo do Linux. Uma semana depois, a 
primeira versão do Android SDK foi lançada. O sistema foi originalmente projetado 
para câmeras fotográficas, mas seus criadores viram um mercado de telefonia mais 
amplo e o foco mudou para smartphones, que competem diretamente com Symbian e 
Windows Mobile. A arquitetura do Android é baseada em camadas: 
A camada superior é o Application Framework, onde são instalados os 
aplicativos criados pelos desenvolvedores. 
A camada abaixo da estrutura do aplicativo são os proxies Binder IPC, onde 
IPC significa comunicação entre processos. É uma camada que forma uma ponte 
entre os aplicativos instalados na camada superior e a camada seguinte, os serviços 
do sistema. É uma interface que permite que APIs de alto nível se comuniquem com 
serviços do sistema na camada subjacente. 
Os proxies Binder IPC são serviços do sistema que permitem acesso a 
hardware específico por meio de módulos. Cada serviço dessa camada é 
desenvolvido para gerenciar um componente específico, como busca e notificações. 
Os serviços foram divididos em duas categorias: mídia e sistema: 
Servidor do sistema: são serviços responsáveis por gerenciar outros tipos de 
serviços do sistema, como notificações, janelas, gravação e reprodução de áudio. 
Abaixo da camada de serviços do sistema está a camada de abstração de 
hardware (HAL), que permite que os fabricantes de dispositivos criem interfaces e 
controles para o hardware que fornecem. Com isso, é possível criar novas funções e 
programá-las sem afetar outras camadas do sistema. 
A camada mais baixa é o kernel do Linux, uma versão do kernel do Linux que 
inclui algumas mudanças, como gerenciamento de memória aprimorado adequado 
para dispositivos móveis e recursos para dispositivos embarcados. 
O desenvolvimento de aplicativos Android tem tudo a ver com a linguagem de 
programação Java. Nenhum sistema operacional especial é necessário e o IDE 
anunciado pelo Google é o Android Studio, o desenvolvimento oficial do aplicativo 
Android. Há uma taxa única de US$ 25 para publicar na Google Play Store. Antes de 
serem lançados, os aplicativos passam por uma revisão para garantir que não violem 
as políticas da loja. 
O SO (Sistema Operacional) iOS foi lançado em janeiro de 2007 com o 
primeiro iPhone e serve como uma interface de usuário entre aplicativos (apps) 
desenvolvidos por desenvolvedores e dispositivos (iPhone, iPad, iPod). Dessa forma, 
a comunicação com o hardware do dispositivo ocorre por meio de um conjunto bem 
definido de interfaces do sistema, o que facilita o desenvolvimento de aplicativos que 
funcionem com os diferentes tipos de hardware de dispositivos Apple. 
A arquitetura do iOS é baseada em camadas e, como recomendação, a Apple 
explica que as camadas superiores devem ser preferidas porque as camadas contêm 
abstrações de objetos de funções implementadas nas camadas inferiores. Isso facilita 
o desenvolvimento, reduzindo a quantidade de código gerado e mantendo funções 
complexas de nível inferior encapsuladas por interfaces. No entanto, é permitido usar 
funções em camadas inferiores se elas não estiverem disponíveis por meio de 
abstrações de camadas superiores. 
A maioria das interfaces disponíveis estão disponíveis no Xcode por meio de 
frameworks adicionados ao projeto, que contém DSLs (Dynamic Shared Libraries) e 
recursos necessários como imagens, helpers e arquivos de cabeçalho para o bom 
funcionamento do framework. 
Conforme declarado anteriormente, a arquitetura do iOS é baseada nas 
camadas listadas: 
A camada Cocoa Touch é a camada superior que fornece serviços básicos de 
interação do usuário, como entrada por toque, notificações push e outras tecnologias 
para melhorar a experiência do usuário, como multitarefa, handoff e AirDrop. Além de 
estruturas avançadas que fornecem acesso a funções do sistema, como Catálogo de 
endereços para contatos, EventKit para eventos de calendário e MapKit para mapas. 
 A camada abaixo do Cocoa Touch é a camada de mídia, que contém as 
tecnologias e estruturas necessárias para implementar experiências multimídia com 
áudio, vídeo e gráficos. 
 A próxima camada, logo abaixo da camada de mídia, é a camada de serviço 
central. Essa camada está mais próxima do hardware e, portanto, tem acesso a 
funções de nível inferior, como localização, chamadas, threads e SQLite. Existem duas 
estruturas principais do iOS que são Foundation e Core Foundation. Ambos estão 
relacionados ao gerenciamento de dados e alguns serviços, e definem todos os dados 
básicos usados por todas as aplicações, como coleções, strings, data e hora, sockets 
e threads. . 
A última camada é a camada do Core OS, onde a funcionalidade de nível mais 
baixo é criada e provavelmente usada por outras estruturas em outras camadas. Caso 
a aplicação possua requisitos de segurança ou comunicação mais complexos com 
periféricos externos, é possível utilizar as funções desta camada. 
Desenvolvimento iOS O iOS SDK permite que os desenvolvedores criem seus 
próprios aplicativos e os testem com emuladores. No entanto, usar e distribuir recursos 
avançados da App Store da Apple requer uma licença do Apple Developer Program, 
que custa US$ 99 por ano. 
Para distribuir aplicativos iOS, além da licença mencionada acima, um 
aplicativo deve ser enviado à Apple para avaliação e aprovação antes de passar para 
a App Store. Para agilizar o processo de aprovação, seu aplicativo deve seguir as 
diretrizes estabelecidas pela Apple, como diretrizes de GUI e diretrizes de revisão da 
App Store. 
Para desenvolver aplicativos para a plataforma iOS, você precisa de um 
computador com Mac OS e o ambiente de desenvolvimento Xcode. 
O desenvolvimento está interligado a duas linguagens de programação, 
Objective-C e Swift. A Apple lançou o Swift como o sucessor do Objective-C. É uma 
linguagem de código aberto e pode ser integrada ao código Objective-C. 
Logo após seu lançamento, tornou-se uma das linguagens de programação 
mais utilizadas no mundo. 
 
Questão 02) 
Leia o excerto a seguir: 
Em qualquer sistema, o controle de versões é fundamental para o planejamento de 
atualizações e manutenibilidade da aplicação. A importância está associada ao 
versionamento da aplicação instalada no dispositivo, pois os usuários precisam saber 
qual versão é a atual e qual versão está disponível para atualização; o controle de 
versão precisa sinalizar para outros aplicativos, mesmo os publicados como pacote, 
qual a versão atual da aplicação corrente no dispositivo, a fim de determinar a 
compatibilidade e identificar dependências; os serviços usados para publicar seu app 
também podem precisar consultar a versão para exibi-la aos usuários; esses 
mesmos serviços de publicação também podem ter de conferir a versão do app para 
determinar a compatibilidade e estabelecer relações de upgrade/downgrade 
(CONTROLAR VERSÕES…, 2020, on-line). 
Fonte: CONTROLAR versões do app. Android Studio, [2020]. Disponível 
em: https://developer.android.com/studio/publish/versioning?hl=pt-BR.Acesso em: 28 
nov. 2019. 
 
Considerando o trecho anterior e os conteúdos abordados ao longo da disciplina 
Desenvolvimento de Aplicações Móveis, descreva a importância de ferramentas de 
automação de processos em frameworks de desenvolvimento de 
produtos mobile como Gradle. 
 
Resposta: O sistema de compilação do Android Studio é baseado no Gradle, e o plug-
in Gradle para Android adiciona vários recursos relacionados à criação de aplicativos 
Android. Embora um plug-in do Android geralmente seja atualizado durante a fase 
principal do Android Studio, o plug-in (e o restante do sistema Gradle) pode ser 
executado independentemente do Android Studio e atualizado separadamente. 
O Gradle é executado no sistema operacional Android. Sua missão é a 
automação avançada do processamento da construção. Ele combina a flexibilidade do 
Ant e executa a manipulação de dependência do Maven. O Android ANT SDK permite 
que os desenvolvedores conectem aplicativos Android a dispositivos ANT. 
Ele permite que você se conecte aos seus dispositivos e crie topologias 
complexas com recursos ANT avançados, como varredura em segundo plano e 
aplicativos móveis. 
Portanto, permite que os aplicativos cubram todos os fabricantes de celulares 
sem fragmentação entre as versões do Android. 
 
https://developer.android.com/studio/publish/versioning?hl=pt-BR
O plug-in Android Maven é usado para criar aplicativos para o sistema 
operacional Android e pode usar o Apache Maven para criar bibliotecas para uso no 
formato legado APKLIB. Enquanto as compilações do Maven usam arquivos XML para 
definir a compilação, as compilações do Gradle são escritas em Groovy. Como os 
arquivos Gradle são baseados em script, eles permitem que tarefas de programação 
sejam executadas em arquivos de configuração. Além disso, o Gradle possui um plug-
in que adiciona novos recursos. 
A Integração Contínua (CI) força os desenvolvedores a integrar o código em 
um repositório para compartilhamento contínuo. Este é o processo de execução 
automática de testes em uma máquina não desenvolvedora quando um novo código 
é enviado para o repositório de origem. A imagem a seguir mostra a integração 
contínua com o sistema operacional Android. 
Use ferramentas de automação para desenvolver aplicativos mais poderosos 
usando as ferramentas Gradle e Jenkins.

Mais conteúdos dessa disciplina